From 8f90238d73c9da9afcd7844d1704c6906ea03045 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 22 Jun 2024 13:41:31 +0100 Subject: [PATCH 001/277] ECC-1847: GRIB: Setting invalid value for 'typeOfLevel' does not fail --- definitions/grib1/local.98.2.def | 2 +- definitions/grib1/ls_labeling.82.def | 12 +++++------- definitions/grib1/mars_labeling.82.def | 2 +- definitions/grib1/section.1.def | 4 ++-- .../grib2/local/ecmf/section4_extras.def | 4 ++-- definitions/grib2/ls_labeling.82.def | 11 +++++------ definitions/grib2/mars_labeling.82.def | 2 +- definitions/grib2/template.4.horizontal.def | 2 +- definitions/grib3/ls_labeling.82.def | 12 ++++-------- definitions/grib3/mars_labeling.82.def | 2 +- definitions/grib3/template.4.horizontal.def | 2 +- definitions/grib3/template.component.5.0.def | 2 +- definitions/grib3/template.component.5.1.def | 2 +- tests/grib_typeOfLevel.sh | 18 +++++++++++++++++- 14 files changed, 43 insertions(+), 34 deletions(-) diff --git a/definitions/grib1/local.98.2.def b/definitions/grib1/local.98.2.def index df56d0ad6..6e96be41e 100644 --- a/definitions/grib1/local.98.2.def +++ b/definitions/grib1/local.98.2.def @@ -41,6 +41,6 @@ padto padding_loc2_2(offsetSection1 + 328); constant unknown="-"; -concept_nofail clusteringDomain(unknown,"cluster_domain.def",conceptsMasterDir,conceptsLocalDirAll); +concept clusteringDomain(unknown,"cluster_domain.def",conceptsMasterDir,conceptsLocalDirAll); alias number = clusterNumber; alias domain = clusteringDomain; diff --git a/definitions/grib1/ls_labeling.82.def b/definitions/grib1/ls_labeling.82.def index a76689eaa..94fb3511f 100644 --- a/definitions/grib1/ls_labeling.82.def +++ b/definitions/grib1/ls_labeling.82.def @@ -2,14 +2,12 @@ # created: 6 Oct 2011 # modified: 13 Sep 2013 # - -alias ls.dataType = marsType; +alias ls.dataType = marsType; if (localDefinitionNumber == 83 ) { - - concept_nofail ls.timerepres (unknown,"timeRepresConcept.def",conceptsLocalDirAll,conceptsMasterDir); - concept_nofail ls.sort (unknown,"sortConcept.def",conceptsLocalDirAll,conceptsMasterDir); - concept_nofail ls.landtype (unknown,"landTypeConcept.def",conceptsLocalDirAll,conceptsMasterDir); - concept_nofail ls.aerosolbinnumber (unknown,"aerosolConcept.def",conceptsLocalDirAll,conceptsMasterDir); + concept ls.timerepres (unknown,"timeRepresConcept.def",conceptsLocalDirAll,conceptsMasterDir); + concept ls.sort (unknown,"sortConcept.def",conceptsLocalDirAll,conceptsMasterDir); + concept ls.landtype (unknown,"landTypeConcept.def",conceptsLocalDirAll,conceptsMasterDir); + concept ls.aerosolbinnumber (unknown,"aerosolConcept.def",conceptsLocalDirAll,conceptsMasterDir); } diff --git a/definitions/grib1/mars_labeling.82.def b/definitions/grib1/mars_labeling.82.def index c38a8bfe1..3a38c3ee5 100644 --- a/definitions/grib1/mars_labeling.82.def +++ b/definitions/grib1/mars_labeling.82.def @@ -24,6 +24,6 @@ if ( localDefinitionNumber == 83 ) { alias mars.landtype = matchLandType; alias mars.aerosolbinnumber = matchAerosolBinNumber; - concept_nofail matchAerosolPacking (unknown,"aerosolPackingConcept.def",conceptsLocalMarsDirAll,conceptsMasterMarsDir); + concept matchAerosolPacking (unknown,"aerosolPackingConcept.def",conceptsLocalMarsDirAll,conceptsMasterMarsDir); alias mars.aerosolpacking = matchAerosolPacking; } diff --git a/definitions/grib1/section.1.def b/definitions/grib1/section.1.def index d62300f27..1c3edb5ac 100644 --- a/definitions/grib1/section.1.def +++ b/definitions/grib1/section.1.def @@ -58,8 +58,8 @@ alias levelType=indicatorOfTypeOfLevel; transient pressureUnits="hPa"; -concept_nofail typeOfLevelECMF (unknown, "typeOfLevel.def",conceptsMasterDir,conceptsLocalDirECMF); -concept_nofail vertical.typeOfLevel (typeOfLevelECMF, "typeOfLevel.def",conceptsDir2,conceptsDir1); +concept typeOfLevelECMF (unknown, "typeOfLevel.def",conceptsMasterDir,conceptsLocalDirECMF); +concept vertical.typeOfLevel (typeOfLevelECMF, "typeOfLevel.def",conceptsDir2,conceptsDir1); when ( typeOfLevel is "isobaricInPa" ) { set pressureUnits="Pa"; } else { set pressureUnits="hPa";} diff --git a/definitions/grib2/local/ecmf/section4_extras.def b/definitions/grib2/local/ecmf/section4_extras.def index 0727c4b9a..2477b2481 100644 --- a/definitions/grib2/local/ecmf/section4_extras.def +++ b/definitions/grib2/local/ecmf/section4_extras.def @@ -2,10 +2,10 @@ # See ECC-1846 if (centre is "ecmf" or datasetForLocal is "era6") { - concept_nofail modelName(unknown, "modelNameConcept.def", conceptsMasterDir, conceptsLocalDirAll): no_copy, dump, read_only; + concept modelName(unknown, "modelNameConcept.def", conceptsMasterDir, conceptsLocalDirAll): no_copy, dump, read_only; if (!(modelName is "unknown")) { - concept_nofail modelVersion(unknown, "modelVersionConcept_[modelName].def", conceptsMasterDir, conceptsLocalDirAll): no_copy, dump, read_only; + concept modelVersion(unknown, "modelVersionConcept_[modelName].def", conceptsMasterDir, conceptsLocalDirAll): no_copy, dump, read_only; # alias ls.model = modelName; # alias mars.model = modelName; } diff --git a/definitions/grib2/ls_labeling.82.def b/definitions/grib2/ls_labeling.82.def index 42f68e0ea..2207abc7f 100644 --- a/definitions/grib2/ls_labeling.82.def +++ b/definitions/grib2/ls_labeling.82.def @@ -1,16 +1,15 @@ # author: Sebastien Villaume # created: 14 Feb 2014 # - constant g1conceptsMasterDir="grib1" : hidden; constant g1conceptsLocalDirAll="grib1/localConcepts/[centre:s]" : hidden; -alias ls.dataType = marsType; +alias ls.dataType = marsType; if (localDefinitionNumber == 83 ) { - concept_nofail ls.timerepres (unknown,"timeRepresConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); - concept_nofail ls.sort (unknown,"sortConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); - concept_nofail ls.landtype (unknown,"landTypeConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); - concept_nofail ls.aerosolbinnumber (unknown,"aerosolConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); + concept ls.timerepres (unknown,"timeRepresConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); + concept ls.sort (unknown,"sortConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); + concept ls.landtype (unknown,"landTypeConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); + concept ls.aerosolbinnumber (unknown,"aerosolConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); } diff --git a/definitions/grib2/mars_labeling.82.def b/definitions/grib2/mars_labeling.82.def index 13942b638..4621e581d 100644 --- a/definitions/grib2/mars_labeling.82.def +++ b/definitions/grib2/mars_labeling.82.def @@ -22,7 +22,7 @@ if ( localDefinitionNumber == 83 ) { alias mars.landtype = matchLandType; alias mars.aerosolbinnumber = matchAerosolBinNumber; - concept_nofail matchAerosolPacking (unknown,"aerosolPackingConcept.def",conceptsLocalMarsDirAll,conceptsMasterMarsDir); + concept matchAerosolPacking (unknown,"aerosolPackingConcept.def",conceptsLocalMarsDirAll,conceptsMasterMarsDir); alias mars.aerosolpacking = matchAerosolPacking; } diff --git a/definitions/grib2/template.4.horizontal.def b/definitions/grib2/template.4.horizontal.def index 2dc64c033..4702e0319 100644 --- a/definitions/grib2/template.4.horizontal.def +++ b/definitions/grib2/template.4.horizontal.def @@ -24,7 +24,7 @@ unsigned[4] scaledValueOfSecondFixedSurface = missing() : can_be_missing,dump,ed transient pressureUnits="hPa"; -concept_nofail vertical.typeOfLevel (unknown,"typeOfLevelConcept.def",conceptsDir2,conceptsDir1); +concept vertical.typeOfLevel (unknown,"typeOfLevelConcept.def",conceptsDir2,conceptsDir1); alias levelType=typeOfFirstFixedSurface; diff --git a/definitions/grib3/ls_labeling.82.def b/definitions/grib3/ls_labeling.82.def index d0eb0a320..1c22b9c75 100644 --- a/definitions/grib3/ls_labeling.82.def +++ b/definitions/grib3/ls_labeling.82.def @@ -4,19 +4,15 @@ # created: 14 Feb 2014 # ######################### - constant g1conceptsMasterDir="grib1" : hidden; constant g1conceptsLocalDirAll="grib1/localConcepts/[centre:s]" : hidden; - alias ls.dataType = marsType; if (localDefinitionNumber == 83 ) { - - concept_nofail ls.timerepres (unknown,"timeRepresConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); - concept_nofail ls.sort (unknown,"sortConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); - concept_nofail ls.landtype (unknown,"landTypeConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); - concept_nofail ls.aerosolbinnumber (unknown,"aerosolConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); - + concept ls.timerepres (unknown,"timeRepresConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); + concept ls.sort (unknown,"sortConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); + concept ls.landtype (unknown,"landTypeConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); + concept ls.aerosolbinnumber (unknown,"aerosolConcept.def",g1conceptsLocalDirAll,g1conceptsMasterDir); } diff --git a/definitions/grib3/mars_labeling.82.def b/definitions/grib3/mars_labeling.82.def index 88328c1a2..be488f14a 100644 --- a/definitions/grib3/mars_labeling.82.def +++ b/definitions/grib3/mars_labeling.82.def @@ -40,7 +40,7 @@ if ( localDefinitionNumber == 83 ) { alias mars.landtype = matchLandType; alias mars.aerosolbinnumber = matchAerosolBinNumber; - concept_nofail matchAerosolPacking (unknown,"aerosolPackingConcept.def",conceptsLocalMarsDirAll,conceptsMasterMarsDir); + concept matchAerosolPacking (unknown,"aerosolPackingConcept.def",conceptsLocalMarsDirAll,conceptsMasterMarsDir); alias mars.aerosolpacking = matchAerosolPacking; } diff --git a/definitions/grib3/template.4.horizontal.def b/definitions/grib3/template.4.horizontal.def index ed1bc6025..01ae2be22 100644 --- a/definitions/grib3/template.4.horizontal.def +++ b/definitions/grib3/template.4.horizontal.def @@ -24,7 +24,7 @@ unsigned[4] scaledValueOfSecondFixedSurface = missing() : can_be_missing,dump,ed transient pressureUnits="hPa"; -concept_nofail vertical.typeOfLevel (unknown) { +concept vertical.typeOfLevel (unknown) { #set uses the last one #get returns the first match 'surface' = { typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=255; } diff --git a/definitions/grib3/template.component.5.0.def b/definitions/grib3/template.component.5.0.def index 0170577a6..e97bf4a17 100644 --- a/definitions/grib3/template.component.5.0.def +++ b/definitions/grib3/template.component.5.0.def @@ -14,7 +14,7 @@ unsigned[4] scaledValueOfFirstFixedSurface = missing() : can_be_missing,dump,ed #### transient pressureUnits="hPa"; -concept_nofail vertical.typeOfLevel (unknown) { +concept vertical.typeOfLevel (unknown) { #set uses the last one #get returns the first match 'surface' = { typeOfFirstFixedSurface=1; } diff --git a/definitions/grib3/template.component.5.1.def b/definitions/grib3/template.component.5.1.def index dc3b84ac8..edd4add36 100644 --- a/definitions/grib3/template.component.5.1.def +++ b/definitions/grib3/template.component.5.1.def @@ -26,7 +26,7 @@ unsigned[4] scaledValueOfSecondFixedSurface = missing() : can_be_missing,dump,ed ####### transient pressureUnits="hPa"; -concept_nofail vertical.typeOfLevel (unknown) { +concept vertical.typeOfLevel (unknown) { #set uses the last one #get returns the first match 'surface' = { typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=255; } diff --git a/tests/grib_typeOfLevel.sh b/tests/grib_typeOfLevel.sh index fa9a7634d..54d12dee2 100755 --- a/tests/grib_typeOfLevel.sh +++ b/tests/grib_typeOfLevel.sh @@ -12,12 +12,16 @@ label="grib_typeOfLevel_test" temp=temp.$label.txt +tempGrib=temp.$label.grib if [ ! -d "$ECCODES_DEFINITION_PATH" ]; then echo "Test $0 disabled. No definitions directory" exit 0 fi +sample_g1=$ECCODES_SAMPLES_PATH/GRIB1.tmpl +sample_g2=$ECCODES_SAMPLES_PATH/GRIB2.tmpl + # Make sure all typeOfLevel values are unique def_file="$ECCODES_DEFINITION_PATH/grib2/typeOfLevelConcept.def" @@ -35,4 +39,16 @@ else echo "No duplicates in $def_file" fi -rm -f $temp +# ECC-1847: Setting invalid value for 'typeOfLevel' does not fail +for sample in $sample_g1 $sample_g2; do + set +e + ${tools_dir}/grib_set -s typeOfLevel=rubbish $sample $tempGrib 2>$temp + status=$? + set -e + [ $status -ne 0 ] + grep -q "Concept no match" $temp +done + + +# Clean up +rm -f $temp $tempGrib From 142601f603e5049b70110f7d4017e6a893694b96 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 22 Jun 2024 13:41:52 +0100 Subject: [PATCH 002/277] Bump up version --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 3a05135cd..c94fd315f 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.36.0 +2.37.0 From 19d71254f75c826cec4838581c27840fbe5cf199 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 22 Jun 2024 13:58:24 +0100 Subject: [PATCH 003/277] ECC-1847: Fix padding test --- definitions/grib1/local.98.2.def | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/definitions/grib1/local.98.2.def b/definitions/grib1/local.98.2.def index 6e96be41e..df56d0ad6 100644 --- a/definitions/grib1/local.98.2.def +++ b/definitions/grib1/local.98.2.def @@ -41,6 +41,6 @@ padto padding_loc2_2(offsetSection1 + 328); constant unknown="-"; -concept clusteringDomain(unknown,"cluster_domain.def",conceptsMasterDir,conceptsLocalDirAll); +concept_nofail clusteringDomain(unknown,"cluster_domain.def",conceptsMasterDir,conceptsLocalDirAll); alias number = clusterNumber; alias domain = clusteringDomain; From 97dd1741aa1974f8651c99b1bd19627bd58f4342 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 22 Jun 2024 15:02:57 +0100 Subject: [PATCH 004/277] ECC-1847: Fix case when input has typeOfLevel=unknown --- definitions/grib2/typeOfLevelConcept.def | 1 + tests/grib_typeOfLevel.sh | 27 ++++++++++++++++-------- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/definitions/grib2/typeOfLevelConcept.def b/definitions/grib2/typeOfLevelConcept.def index a32abd7e0..2f350d663 100644 --- a/definitions/grib2/typeOfLevelConcept.def +++ b/definitions/grib2/typeOfLevelConcept.def @@ -97,3 +97,4 @@ 'road' = {typeOfFirstFixedSurface=187; typeOfSecondFixedSurface=255;} 'roadLayer' = {typeOfFirstFixedSurface=187; typeOfSecondFixedSurface=187;} 'urbanCanyon' = {typeOfFirstFixedSurface=187; typeOfSecondFixedSurface=185;} +'unknown' = {dummy=0;} diff --git a/tests/grib_typeOfLevel.sh b/tests/grib_typeOfLevel.sh index 54d12dee2..a036f3e72 100755 --- a/tests/grib_typeOfLevel.sh +++ b/tests/grib_typeOfLevel.sh @@ -11,8 +11,9 @@ . ./include.ctest.sh label="grib_typeOfLevel_test" -temp=temp.$label.txt -tempGrib=temp.$label.grib +tempText=temp.$label.txt +tempGribA=temp.$label.A.grib +tempGribB=temp.$label.B.grib if [ ! -d "$ECCODES_DEFINITION_PATH" ]; then echo "Test $0 disabled. No definitions directory" @@ -23,32 +24,40 @@ sample_g1=$ECCODES_SAMPLES_PATH/GRIB1.tmpl sample_g2=$ECCODES_SAMPLES_PATH/GRIB2.tmpl # Make sure all typeOfLevel values are unique +# -------------------------------------------- def_file="$ECCODES_DEFINITION_PATH/grib2/typeOfLevelConcept.def" -rm -f $temp +rm -f $tempText # uniq -d outputs a single copy of each line that is repeated in the input -grep "^'" $def_file | awk -F= '{print $1}' | tr -d "' " | sort | uniq -d > $temp +grep "^'" $def_file | awk -F= '{print $1}' | tr -d "' " | sort | uniq -d > $tempText -if [ -s "$temp" ]; then +if [ -s "$tempText" ]; then # File exists and has a size greater than zero echo "ERROR: Duplicates found in $def_file" >&2 - cat $temp + cat $tempText exit 1 else echo "No duplicates in $def_file" fi # ECC-1847: Setting invalid value for 'typeOfLevel' does not fail +# ---------------------------------------------------------------- for sample in $sample_g1 $sample_g2; do set +e - ${tools_dir}/grib_set -s typeOfLevel=rubbish $sample $tempGrib 2>$temp + ${tools_dir}/grib_set -s typeOfLevel=rubbish $sample $tempGribA 2>$tempText status=$? set -e [ $status -ne 0 ] - grep -q "Concept no match" $temp + grep -q "Concept no match" $tempText done +# Change of PDT with typeOfLevel=unknown +${tools_dir}/grib_set -s productDefinitionTemplateNumber=0,typeOfFirstFixedSurface=0 $sample_g2 $tempGribA +grib_check_key_equals $tempGribA typeOfLevel 'unknown' +${tools_dir}/grib_set -s productDefinitionTemplateNumber=1 $tempGribA $tempGribB +grib_check_key_equals $tempGribB typeOfLevel,productDefinitionTemplateNumber 'unknown 1' + # Clean up -rm -f $temp $tempGrib +rm -f $tempText $tempGribA $tempGribB From afa948a180d6bc205cd3585ad154accaa2016f2b Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 24 Jun 2024 13:19:08 +0100 Subject: [PATCH 005/277] ECC-1848: Tools: Deprecate grib_merge, gg_sub_area_check and big2gribex --- tests/CMakeLists.txt | 3 --- tools/CMakeLists.txt | 4 +--- tools/{ => deprecated}/big2gribex.cc | 0 tools/{ => deprecated}/gg_sub_area_check.cc | 0 tools/{ => deprecated}/grib_merge.cc | 0 5 files changed, 1 insertion(+), 6 deletions(-) rename tools/{ => deprecated}/big2gribex.cc (100%) rename tools/{ => deprecated}/gg_sub_area_check.cc (100%) rename tools/{ => deprecated}/grib_merge.cc (100%) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 1c6cad8d9..9a4464136 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -230,9 +230,6 @@ if( HAVE_BUILD_TOOLS ) grib_geo_iter grib_to_json grib_to_ppm - grib_merge - big2gribex - grib_sub_area_check grib_list_keys grib_histogram bufr_get_element diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index cddce7c33..d4b256770 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -28,7 +28,7 @@ ecbuild_add_library( TARGET ecc_tools # tools binaries list( APPEND ecc_tools_binaries codes_info codes_count codes_split_file - grib_histogram grib_filter grib_ls grib_dump grib_merge + grib_histogram grib_filter grib_ls grib_dump grib2ppm grib_set grib_get grib_get_data grib_copy grib_compare codes_parser grib_index_build bufr_index_build bufr_ls bufr_dump bufr_set bufr_get @@ -37,8 +37,6 @@ list( APPEND ecc_tools_binaries metar_dump metar_ls metar_compare metar_get metar_filter metar_copy ) list( APPEND ecc_tools_binaries_extra - big2gribex - gg_sub_area_check grib_repair grib_to_json codes_export_resource diff --git a/tools/big2gribex.cc b/tools/deprecated/big2gribex.cc similarity index 100% rename from tools/big2gribex.cc rename to tools/deprecated/big2gribex.cc diff --git a/tools/gg_sub_area_check.cc b/tools/deprecated/gg_sub_area_check.cc similarity index 100% rename from tools/gg_sub_area_check.cc rename to tools/deprecated/gg_sub_area_check.cc diff --git a/tools/grib_merge.cc b/tools/deprecated/grib_merge.cc similarity index 100% rename from tools/grib_merge.cc rename to tools/deprecated/grib_merge.cc From 79c27d0ae2915611169a25bdc253b57c9a18d468 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 25 Jun 2024 12:01:22 +0100 Subject: [PATCH 006/277] Testing: Check sections in grib_dump output --- tests/grib_dump.sh | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tests/grib_dump.sh b/tests/grib_dump.sh index c413f93f1..00a6412c0 100755 --- a/tests/grib_dump.sh +++ b/tests/grib_dump.sh @@ -82,6 +82,7 @@ done # Test for dumping a section +# --------------------------- if [ $HAVE_JPEG -eq 0 ]; then # No JPEG decoding enabled so dumping section 7 will issue errors # but dumping non-data sections should work @@ -110,6 +111,27 @@ ${tools_dir}/grib_dump -w count=4 $file > $temp 2>&1 file=$data_dir/sample.grib2 ECCODES_DEBUG=1 ${tools_dir}/grib_dump $file > $temp 2>&1 +# Check the right number of sections are listed in the dump +# --------------------------------------------------------- +file=$data_dir/sample.grib2 +${tools_dir}/grib_dump -O $file > $temp +count=$(grep -c SECTION_ $temp) +[ $count -eq 8 ] + +file=$data_dir/test_uuid.grib2 +${tools_dir}/grib_dump -wcount=1 -O $file > $temp +count=$(grep -c SECTION_ $temp) +[ $count -eq 7 ] + +file=$data_dir/regular_gaussian_model_level.grib1 +${tools_dir}/grib_dump -O $file > $temp +count=$(grep -c SECTION_ $temp) +[ $count -eq 4 ] + +file=$data_dir/missing_field.grib1 +${tools_dir}/grib_dump -O $file > $temp +count=$(grep -c SECTION_ $temp) +[ $count -eq 5 ] # Repeated key numberOfSection file=$data_dir/sample.grib2 From 12c078566f335a997ee118a3fa324ce5b9e4cf3b Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 25 Jun 2024 12:28:40 +0100 Subject: [PATCH 007/277] Testing: Function to check GRIB key is scalar --- tests/utils.sh | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/utils.sh b/tests/utils.sh index d51373a3d..a1de94279 100644 --- a/tests/utils.sh +++ b/tests/utils.sh @@ -38,3 +38,14 @@ grib_check_key_exists() # grib_get will fail if the key is not found $tools_dir/grib_get -p $a_key $a_file >/dev/null } + +# This is useful in situations where we intend a key to have +# a single value (size=1). For example when we redefine a transient +grib_check_key_is_scalar() +{ + a_file=$1 + a_key=$2 + a_val=$3 + result=$(echo "print '|[$a_key]|';" | ${tools_dir}/grib_filter - $a_file) + [ "$result" = "|$a_val|" ] +} From 8269f7f2753d059c889bde54dcdd6637fa6ee83b Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 26 Jun 2024 15:45:44 +0100 Subject: [PATCH 008/277] ECC-1808: Release candidate --- definitions/grib2/tables/33/4.2.0.17.table | 3 +++ definitions/grib2/tables/33/4.2.3.2.table | 3 +++ definitions/grib2/tables/33/4.2.3.3.table | 3 +++ definitions/grib2/tables/33/4.2.3.4.table | 3 +++ definitions/grib2/tables/33/4.2.3.5.table | 3 +++ definitions/grib2/tables/33/4.2.3.6.table | 3 +++ definitions/grib2/tables/33/4.252.table | 3 --- 7 files changed, 18 insertions(+), 3 deletions(-) diff --git a/definitions/grib2/tables/33/4.2.0.17.table b/definitions/grib2/tables/33/4.2.0.17.table index 90ef72d87..3c7b284f2 100644 --- a/definitions/grib2/tables/33/4.2.0.17.table +++ b/definitions/grib2/tables/33/4.2.0.17.table @@ -5,3 +5,6 @@ 3 3 Cloud-to-cloud lightning flash density (km-2 day-1) 4 4 Total lightning flash density (km-2 day-1) 5 5 Subgrid-scale lightning potential index (J kg-1) +# 6-191 Reserved +# 192-254 Reserved for local use +255 255 Missing diff --git a/definitions/grib2/tables/33/4.2.3.2.table b/definitions/grib2/tables/33/4.2.3.2.table index a97ce4942..2471f0ba7 100644 --- a/definitions/grib2/tables/33/4.2.3.2.table +++ b/definitions/grib2/tables/33/4.2.3.2.table @@ -22,3 +22,6 @@ 38 38 Lower layer cloud top pressure (Pa) 39 39 Error in lower layer cloud optical depth (Numeric) 40 40 Error in lower layer cloud top pressure (Pa) +# 41-191 Reserved +# 192-254 Reserved for local use +255 255 Missing diff --git a/definitions/grib2/tables/33/4.2.3.3.table b/definitions/grib2/tables/33/4.2.3.3.table index c487a578e..3a53cdc81 100644 --- a/definitions/grib2/tables/33/4.2.3.3.table +++ b/definitions/grib2/tables/33/4.2.3.3.table @@ -2,3 +2,6 @@ 0 0 Probability of encountering marginal visual flight rule conditions (%) 1 1 Probability of encountering low instrument flight rule conditions (%) 2 2 Probability of encountering instrument flight rule conditions (%) +# 3-191 Reserved +# 192-254 Reserved for local use +255 255 Missing diff --git a/definitions/grib2/tables/33/4.2.3.4.table b/definitions/grib2/tables/33/4.2.3.4.table index 7f832ff3c..d26b12bd5 100644 --- a/definitions/grib2/tables/33/4.2.3.4.table +++ b/definitions/grib2/tables/33/4.2.3.4.table @@ -8,3 +8,6 @@ 6 6 Volcanic ash cloud optical depth (Numeric) 7 7 Volcanic ash column density (kg m-2) 8 8 Volcanic ash particle effective radius (m) +# 9-191 Reserved +# 192-254 Reserved for local use +255 255 Missing diff --git a/definitions/grib2/tables/33/4.2.3.5.table b/definitions/grib2/tables/33/4.2.3.5.table index 58a3f12cb..ef8096f82 100644 --- a/definitions/grib2/tables/33/4.2.3.5.table +++ b/definitions/grib2/tables/33/4.2.3.5.table @@ -5,3 +5,6 @@ 3 3 Foundation sea-surface temperature (K) 4 4 Estimated bias between sea-surface temperature and standard (K) 5 5 Estimated standard deviation between sea surface temperature and standard (K) +# 6-191 Reserved +# 192-254 Reserved for local use +255 255 Missing diff --git a/definitions/grib2/tables/33/4.2.3.6.table b/definitions/grib2/tables/33/4.2.3.6.table index 62a5ba656..34a5c307c 100644 --- a/definitions/grib2/tables/33/4.2.3.6.table +++ b/definitions/grib2/tables/33/4.2.3.6.table @@ -5,3 +5,6 @@ 3 3 Direct solar exposure (J m-2) 4 4 Diffuse solar irradiance (W m-2) 5 5 Diffuse solar exposure (J m-2) +# 6-191 Reserved +# 192-254 Reserved for local use +255 255 Missing diff --git a/definitions/grib2/tables/33/4.252.table b/definitions/grib2/tables/33/4.252.table index 3baf4064c..187d3ee43 100644 --- a/definitions/grib2/tables/33/4.252.table +++ b/definitions/grib2/tables/33/4.252.table @@ -48,7 +48,6 @@ 1039 TENEU Urban temperate needleleaf evergreen 1040 BONDU Urban boreal needleleaf deciduous # 1041-1500 Reserved for tile class entries for tile models using the ECOCLIMAP-SG land cover survey -# v8.1 groupings 1501 GNATU Nature grouping (NO + ROCK + SNOW + BOBD + TEBD + TRBD + TEBE + TRBE + BONE + TENE + BOND + SHRB + BOGR + GRAS + TROG + C3W + C3S + C4 + FLTR + FLGR) 1502 GNOFO Non-forest grouping (NO + ROCK + SNOW + BOGR + GRAS + TROG + C3W + C3S + C4 + FLTR + FLGR) 1503 GFORE Forest grouping (BOBD + TEBD + TRBD + TEBE + TRBE + BONE + TENE + BOND + SHRB) @@ -64,7 +63,6 @@ 1513 GNFOR Needleleaf forest grouping (BONE + TENE + BOND) 1514 GDBFO Deciduous broadleaf forest grouping (BOBD + TEBD + TRBD + TEBE + SHRB) 1515 GTGRA Temperate grassland grouping (BOGR + GRAS) -# v9.0 groupings 1516 GNFNF Non-forest (no FLTR) grouping (NO + ROCK + SNOW + BOGR + GRAS + TROG + C3W + C3S + C4 + FLGR) 1517 GBFFT Broadleaf forest (with FLTR) grouping (BOBD + TEBD + TRBD + TEBE + TRBE + SHRB + FLTR) 1518 GBTRE Broadleaf trees grouping (BOBD + TEBD + TRBD + TEBE + TRBE + FLTR) @@ -72,7 +70,6 @@ 1520 GBDTR Broadleaf deciduous trees grouping (BOBD + TEBD + TRBD + FLTR) 1521 GBETR Broadleaf evergreen trees grouping (TEBE + TRBE) 1522 GNETR Needleleaf evergreen trees grouping (BONE + TENE) -# Other groupings 1523 GLCZU LCZ or urban grouping (LCZ1 + LCZ2 + LCZ3 + LCZ4 + LCZ5 + LCZ6 + LCZ7 + LCZ8 + LCZ9 + LCZ10) 1524 GIWAT Inland water grouping (LAKE + RIVE) 1525 GPTEBD Urban parks and gardens TEBD grouping (NO + GRAS + TEBDU) From d857f4771b67d703191a49b6005bf2d6675e5c85 Mon Sep 17 00:00:00 2001 From: Matthew Griffith Date: Wed, 26 Jun 2024 11:08:55 +0000 Subject: [PATCH 009/277] ECC-1850: Extended metadata keys along with corresponding test. --- definitions/grib2/local.98.43.def | 15 ++++++++++++++- tests/grib_ecc-1766.sh | 11 +++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/definitions/grib2/local.98.43.def b/definitions/grib2/local.98.43.def index 3728cd185..2db85ceaf 100644 --- a/definitions/grib2/local.98.43.def +++ b/definitions/grib2/local.98.43.def @@ -10,12 +10,25 @@ alias mars.activity = activity; codetable[2] experiment "grib2/destine_experiment.table" ; alias mars.experiment = experiment; +# Generation keyword - synergise with DestinE ClimateDT and use this to version the dataset +unsigned[1] generation = 255 : dump; +alias mars.generation = generation; + +# Model keyword to index multiple models within EERIE +codetable[2] model "grib2/destine_model.table" : dump; +alias mars.model = model; + # Climate run realization keyword, which relates to an initial condition perturbation unsigned[1] realization = 255 ; alias mars.realization = realization; +# Allows simultaneous archiving of resolutions +# high resolution for best available vs standard resolution for quick access and plotting +codetable[2] resolution "grib2/destine_resolution.table" : dump; +alias mars.resolution = resolution; + # Remove mars domain from this data unalias mars.domain; # Add some padding just in case we want more keys in the future -pad padding_loc43(30); +pad padding_loc43(25); diff --git a/tests/grib_ecc-1766.sh b/tests/grib_ecc-1766.sh index 79e273b1d..172fdae9a 100755 --- a/tests/grib_ecc-1766.sh +++ b/tests/grib_ecc-1766.sh @@ -41,5 +41,16 @@ ${tools_dir}/grib_set -s activity=1,experiment=1,realization=1 $eerie_sample $te grib_check_key_equals $temp_grib "activity,experiment,realization" "1 1 1" grib_check_key_equals $temp_grib "activity:s,experiment:s" "CMIP6 hist" +# ECC-1850: Additional keys added +# Check additional keys are present and correct +grib_check_key_exists $eerie_sample generation,model,resolution +grib_check_key_equals $eerie_sample "generation,model,resolution" "255 0 0" + +# Check an example where a few additional things are set +${tools_dir}/grib_set -s generation=1,model=2,resolution=1 $eerie_sample $temp_grib + +grib_check_key_equals $temp_grib "generation,model,resolution" "1 2 1" +grib_check_key_equals $temp_grib "model:s,resolution:s" "IFS-NEMO standard" + # Clean up rm -f $temp_grib $eerie_sample From 38d7f8b9c03b2944b971530be94e995dd8cddcbc Mon Sep 17 00:00:00 2001 From: Matthew Griffith Date: Wed, 26 Jun 2024 15:23:19 +0000 Subject: [PATCH 010/277] ECC-1850: Back to 30 octets of padding given old data will be discarded. --- definitions/grib2/local.98.43.def | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/definitions/grib2/local.98.43.def b/definitions/grib2/local.98.43.def index 2db85ceaf..18846b7f7 100644 --- a/definitions/grib2/local.98.43.def +++ b/definitions/grib2/local.98.43.def @@ -31,4 +31,4 @@ alias mars.resolution = resolution; unalias mars.domain; # Add some padding just in case we want more keys in the future -pad padding_loc43(25); +pad padding_loc43(30); From 0c2d677c33dfaefc73bca75ab959143fab4c83c1 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 26 Jun 2024 18:08:59 +0100 Subject: [PATCH 011/277] Use the better key name numberOfTimeRanges --- definitions/grib2/template.4.statistical.def | 14 +++--- .../grib_accessor_class_g2end_step.cc | 50 +++++++++---------- src/accessor/grib_accessor_class_g2end_step.h | 2 +- tests/grib_filter.sh | 2 +- 4 files changed, 34 insertions(+), 34 deletions(-) diff --git a/definitions/grib2/template.4.statistical.def b/definitions/grib2/template.4.statistical.def index a2286e453..a98b8f212 100644 --- a/definitions/grib2/template.4.statistical.def +++ b/definitions/grib2/template.4.statistical.def @@ -19,12 +19,12 @@ unsigned[1] minuteOfEndOfOverallTimeInterval =0 : edition_specific; unsigned[1] secondOfEndOfOverallTimeInterval =0 : edition_specific; # Number of time range specifications describing the time intervals used to calculate the statistically-processed field -unsigned[1] numberOfTimeRange = 1 : edition_specific; -alias n = numberOfTimeRange; -alias numberOfTimeRanges = numberOfTimeRange; +unsigned[1] numberOfTimeRanges = 1 : edition_specific; +alias n = numberOfTimeRanges; +alias numberOfTimeRange = numberOfTimeRanges; # Total number of data values missing in statistical process -unsigned[4] numberOfMissingInStatisticalProcess = 0 : edition_specific; +unsigned[4] numberOfMissingInStatisticalProcess = 0 : edition_specific; alias totalNumberOfDataValuesMissingInStatisticalProcess=numberOfMissingInStatisticalProcess; statisticalProcessesList list(numberOfTimeRanges) @@ -33,17 +33,17 @@ statisticalProcessesList list(numberOfTimeRanges) codetable[1] typeOfStatisticalProcessing ('4.10.table',masterDir,localDir) : edition_specific; # Type of time increment between successive fields used in the statistical processing - codetable[1] typeOfTimeIncrement ('4.11.table',masterDir,localDir) = 2 : edition_specific; + codetable[1] typeOfTimeIncrement ('4.11.table',masterDir,localDir) = 2 : edition_specific; alias typeOfTimeIncrementBetweenSuccessiveFieldsUsedInTheStatisticalProcessing=typeOfTimeIncrement; # Indicator of unit of time for time range over which statistical processing is done - codetable[1] indicatorOfUnitForTimeRange ('4.4.table',masterDir,localDir) =1 ; + codetable[1] indicatorOfUnitForTimeRange ('4.4.table',masterDir,localDir) =1 ; # Length of the time range over which statistical processing is done, in units defined by the previous octet unsigned[4] lengthOfTimeRange=0 ; # Indicator of unit of time for the increment between the successive fields used - codetable[1] indicatorOfUnitForTimeIncrement ('4.4.table',masterDir,localDir)=255 ; + codetable[1] indicatorOfUnitForTimeIncrement ('4.4.table',masterDir,localDir)=255 ; # Time increment between successive fields, in units defined by the previous octet unsigned[4] timeIncrement=0 ; diff --git a/src/accessor/grib_accessor_class_g2end_step.cc b/src/accessor/grib_accessor_class_g2end_step.cc index 6e8cfcda3..7d3c2c225 100644 --- a/src/accessor/grib_accessor_class_g2end_step.cc +++ b/src/accessor/grib_accessor_class_g2end_step.cc @@ -45,7 +45,7 @@ void grib_accessor_class_g2end_step_t::init(grib_accessor* a, const long l, grib self->time_range_unit = grib_arguments_get_name(h, c, n++); self->time_range_value = grib_arguments_get_name(h, c, n++); self->typeOfTimeIncrement = grib_arguments_get_name(h, c, n++); - self->numberOfTimeRange = grib_arguments_get_name(h, c, n++); + self->numberOfTimeRanges = grib_arguments_get_name(h, c, n++); } void grib_accessor_class_g2end_step_t::dump(grib_accessor* a, grib_dumper* dumper) @@ -201,7 +201,7 @@ static int unpack_multiple_time_ranges_long_(grib_accessor* a, long* val, size_t grib_accessor_g2end_step_t* self = (grib_accessor_g2end_step_t*)a; int i = 0, err = 0; grib_handle* h = grib_handle_of_accessor(a); - long numberOfTimeRange = 0, step_units = 0, start_step_value = 0; + long numberOfTimeRanges = 0, step_units = 0, start_step_value = 0; size_t count = 0; long arr_typeOfTimeIncrement[MAX_NUM_TIME_RANGES] = { @@ -218,14 +218,14 @@ static int unpack_multiple_time_ranges_long_(grib_accessor* a, long* val, size_t return err; if ((err = grib_get_long_internal(h, self->step_units, &step_units))) return err; - if ((err = grib_get_long_internal(h, self->numberOfTimeRange, &numberOfTimeRange))) + if ((err = grib_get_long_internal(h, self->numberOfTimeRanges, &numberOfTimeRanges))) return err; - if (numberOfTimeRange > MAX_NUM_TIME_RANGES) { + if (numberOfTimeRanges > MAX_NUM_TIME_RANGES) { grib_context_log(h->context, GRIB_LOG_ERROR, "Too many time range specifications!"); return GRIB_DECODING_ERROR; } - count = numberOfTimeRange; + count = numberOfTimeRanges; /* Get the arrays for the N time ranges */ if ((err = grib_get_long_array(h, self->typeOfTimeIncrement, arr_typeOfTimeIncrement, &count))) return err; @@ -259,11 +259,11 @@ static int unpack_multiple_time_ranges_double_(grib_accessor* a, double* val, si { grib_accessor_g2end_step_t* self = (grib_accessor_g2end_step_t*)a; int i = 0, err = 0; - grib_handle* h = grib_handle_of_accessor(a); - long numberOfTimeRange = 0; - long step_units = 0; - long start_step_value = 0; - long start_step_unit = 0; + grib_handle* h = grib_handle_of_accessor(a); + long numberOfTimeRanges = 0; + long step_units = 0; + long start_step_value = 0; + long start_step_unit = 0; size_t count = 0; long arr_typeOfTimeIncrement[MAX_NUM_TIME_RANGES] = { @@ -286,14 +286,14 @@ static int unpack_multiple_time_ranges_double_(grib_accessor* a, double* val, si if ((err = grib_get_long_internal(h, self->step_units, &step_units))) return err; - if ((err = grib_get_long_internal(h, self->numberOfTimeRange, &numberOfTimeRange))) + if ((err = grib_get_long_internal(h, self->numberOfTimeRanges, &numberOfTimeRanges))) return err; - if (numberOfTimeRange > MAX_NUM_TIME_RANGES) { + if (numberOfTimeRanges > MAX_NUM_TIME_RANGES) { grib_context_log(h->context, GRIB_LOG_ERROR, "Too many time range specifications!"); return GRIB_DECODING_ERROR; } - count = numberOfTimeRange; + count = numberOfTimeRanges; /* Get the arrays for the N time ranges */ if ((err = grib_get_long_array(h, self->typeOfTimeIncrement, arr_typeOfTimeIncrement, &count))) return err; @@ -329,9 +329,9 @@ int grib_accessor_class_g2end_step_t::unpack_long(grib_accessor* a, long* val, s grib_accessor_g2end_step_t* self = (grib_accessor_g2end_step_t*)a; grib_handle* h = grib_handle_of_accessor(a); int ret = 0; - long start_step_value; - long start_step_unit; - long numberOfTimeRange; + long start_step_value = 0; + long start_step_unit = 0; + long numberOfTimeRanges = 0; if ((ret = grib_get_long_internal(h, self->start_step_value, &start_step_value))) return ret; @@ -346,13 +346,13 @@ int grib_accessor_class_g2end_step_t::unpack_long(grib_accessor* a, long* val, s return 0; } - Assert(self->numberOfTimeRange); - if ((ret = grib_get_long_internal(h, self->numberOfTimeRange, &numberOfTimeRange))) + Assert(self->numberOfTimeRanges); + if ((ret = grib_get_long_internal(h, self->numberOfTimeRanges, &numberOfTimeRanges))) return ret; - Assert(numberOfTimeRange == 1 || numberOfTimeRange == 2); + Assert(numberOfTimeRanges == 1 || numberOfTimeRanges == 2); try { - if (numberOfTimeRange == 1) { + if (numberOfTimeRanges == 1) { ret = unpack_one_time_range_long_(a, val, len); } else { @@ -374,7 +374,7 @@ int grib_accessor_class_g2end_step_t::unpack_double(grib_accessor* a, double* va int ret = 0; long start_step_value; long start_step_unit; - long numberOfTimeRange; + long numberOfTimeRanges; if ((ret = grib_get_long_internal(h, self->start_step_value, &start_step_value))) return ret; @@ -389,13 +389,13 @@ int grib_accessor_class_g2end_step_t::unpack_double(grib_accessor* a, double* va return 0; } - Assert(self->numberOfTimeRange); - if ((ret = grib_get_long_internal(h, self->numberOfTimeRange, &numberOfTimeRange))) + Assert(self->numberOfTimeRanges); + if ((ret = grib_get_long_internal(h, self->numberOfTimeRanges, &numberOfTimeRanges))) return ret; - Assert(numberOfTimeRange == 1 || numberOfTimeRange == 2); + Assert(numberOfTimeRanges == 1 || numberOfTimeRanges == 2); try { - if (numberOfTimeRange == 1) { + if (numberOfTimeRanges == 1) { ret = unpack_one_time_range_double_(a, val, len); } else { diff --git a/src/accessor/grib_accessor_class_g2end_step.h b/src/accessor/grib_accessor_class_g2end_step.h index d3a3b1433..2a39aa1dd 100644 --- a/src/accessor/grib_accessor_class_g2end_step.h +++ b/src/accessor/grib_accessor_class_g2end_step.h @@ -34,7 +34,7 @@ class grib_accessor_g2end_step_t : public grib_accessor_long_t const char* time_range_unit; const char* time_range_value; const char* typeOfTimeIncrement; - const char* numberOfTimeRange; + const char* numberOfTimeRanges; }; class grib_accessor_class_g2end_step_t : public grib_accessor_class_long_t diff --git a/tests/grib_filter.sh b/tests/grib_filter.sh index 42e4eccdf..2799c45de 100755 --- a/tests/grib_filter.sh +++ b/tests/grib_filter.sh @@ -148,7 +148,7 @@ echo "Test ECC-648: Set codetable key to array" # --------------------------------------------- cat >$tempFilt < Date: Thu, 21 Dec 2023 16:38:32 +0000 Subject: [PATCH 012/277] ECC-1228: Add support for step range for instantaneous data --- src/step.cc | 41 +++++++++++++++++++++++++++++++++-------- 1 file changed, 33 insertions(+), 8 deletions(-) diff --git a/src/step.cc b/src/step.cc index 90c8ea2e1..ff5560378 100644 --- a/src/step.cc +++ b/src/step.cc @@ -24,7 +24,7 @@ namespace eccodes { Step step_from_string(const std::string& step, const Unit& force_unit) { - std::regex re("([0-9.]+)([smhDMYC]?)"); + std::regex re("([-]?[0-9.]+)([smhDMYC]?)"); std::smatch match; if (std::regex_match(step, match, re)) { if (match.size() == 3) { @@ -52,19 +52,44 @@ Step step_from_string(const std::string& step, const Unit& force_unit) return ret; } } - throw std::runtime_error("Could not parse step: " + step); + throw std::runtime_error("Could not parse step: \"" + step + "\""); } std::vector parse_range(const std::string& range_str, const Unit& force_unit) { + std::regex re1("([-]?[0-9.]+[smhDMYC]?)-([-]?[0-9.]+[smhDMYC]?)"); + std::regex re2("[-]?[0-9.]+[smhDMYC]?"); + + std::smatch match; std::vector steps; - std::string::size_type pos = 0; - std::string::size_type prev = 0; - while ((pos = range_str.find("-", prev)) != std::string::npos) { - steps.push_back(step_from_string(range_str.substr(prev, pos - prev), force_unit)); - prev = pos + 1; + if (std::regex_match(range_str, match, re1)) { + if (match.size() == 3) { + std::string v1 = match[1]; + std::string v2 = match[2]; + steps.push_back(step_from_string(v1, force_unit)); + steps.push_back(step_from_string(v2, force_unit)); + } + else if (match.size() == 2) { + std::string v1 = match[1]; + steps.push_back(step_from_string(v1, force_unit)); + } + else { + throw std::runtime_error("Could not parse step range for accumulated data: \"" + range_str + "\""); + } } - steps.push_back(step_from_string(range_str.substr(prev), force_unit)); + else if(std::regex_match(range_str, match, re2)) { + if (match.size() == 1) { + std::string v1 = match[0]; + steps.push_back(step_from_string(v1, force_unit)); + } + else { + throw std::runtime_error("Could not parse step range for instantaneous data: \"" + range_str + "\""); + } + } + else { + throw std::runtime_error("Could not parse step range: \"" + range_str + "\""); + } + return steps; } From 8b275bce2cb11ed1c3aa6977dd65f277a8ef2824 Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Thu, 27 Jun 2024 10:49:56 +0000 Subject: [PATCH 013/277] ECC-1228: Add test --- tests/grib_sub_hourly.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/grib_sub_hourly.sh b/tests/grib_sub_hourly.sh index dfbf145f5..a49a90a6a 100755 --- a/tests/grib_sub_hourly.sh +++ b/tests/grib_sub_hourly.sh @@ -62,6 +62,11 @@ fi instantaneous_field=$data_dir/reduced_gaussian_surface.grib2 accumulated_field=$data_dir/reduced_gaussian_sub_area.grib2 +# ECC-1228: Changing template with negative forecast time +${tools_dir}/grib_set -s stepRange=-48s--24s $accumulated_field $temp +${tools_dir}/grib_set -s productDefinitionTemplateNumber=8 $temp $temp2 +grib_check_key_equals $temp2 "-p forecastTime,indicatorOfUnitOfTimeRange,lengthOfTimeRange,indicatorOfUnitForTimeRange" "-48 13 24 13" + # ECC-1802: Relaxation of the "Step Units Rule": # The updated rule permits the simultaneous assignment of the same step unit to both 'stepUnits' and 'step*' keys in="$instantaneous_field" From 90d2d5ce0f331392186cfce5ab699b144108a9c5 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 28 Jun 2024 10:56:23 +0000 Subject: [PATCH 014/277] ECC-1851: GRIB2: Time-processed parameters for Most-Unstable CAPE --- definitions/grib2/cfVarName.def | 40 +++++++++++++++++++++++++++++++++ definitions/grib2/name.def | 40 +++++++++++++++++++++++++++++++++ definitions/grib2/paramId.def | 40 +++++++++++++++++++++++++++++++++ definitions/grib2/shortName.def | 40 +++++++++++++++++++++++++++++++++ definitions/grib2/units.def | 40 +++++++++++++++++++++++++++++++++ 5 files changed, 200 insertions(+) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index 59d5cb399..ec7335aa4 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -4958,6 +4958,16 @@ parameterNumber = 32 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean most-unstable CAPE +'avg_mucape' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'avg_z' = { discipline = 0 ; @@ -5254,6 +5264,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum most-unstable CAPE +'max_mucape' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture 'min_vsw' = { discipline = 2 ; @@ -5261,6 +5281,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum most-unstable CAPE +'min_mucape' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture 'std_vsw' = { discipline = 2 ; @@ -5268,6 +5298,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 6 ; } +#Time-standard-deviation most-unstable CAPE +'std_mucape' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 6 ; + } #Cross sectional area of flow in channel 'chcross' = { discipline = 1 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 1ebf330ac..64a3da1a7 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -4958,6 +4958,16 @@ parameterNumber = 32 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean most-unstable CAPE +'Time-mean most-unstable CAPE' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'Time-mean geopotential' = { discipline = 0 ; @@ -5254,6 +5264,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum most-unstable CAPE +'Time-maximum most-unstable CAPE' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture 'Time-minimum volumetric soil moisture' = { discipline = 2 ; @@ -5261,6 +5281,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum most-unstable CAPE +'Time-minimum most-unstable CAPE' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture 'Time-standard-deviation volumetric soil moisture' = { discipline = 2 ; @@ -5268,6 +5298,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 6 ; } +#Time-standard-deviation most-unstable CAPE +'Time-standard-deviation most-unstable CAPE' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 6 ; + } #Cross sectional area of flow in channel 'Cross sectional area of flow in channel' = { discipline = 1 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 440df8d15..00069255d 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -4958,6 +4958,16 @@ parameterNumber = 32 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean most-unstable CAPE +'235117' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential '235129' = { discipline = 0 ; @@ -5254,6 +5264,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum most-unstable CAPE +'237117' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture '238077' = { discipline = 2 ; @@ -5261,6 +5281,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum most-unstable CAPE +'238117' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture '239077' = { discipline = 2 ; @@ -5268,6 +5298,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 6 ; } +#Time-standard-deviation most-unstable CAPE +'239117' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 6 ; + } #Cross sectional area of flow in channel '240011' = { discipline = 1 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index c49d61bba..7aa4259b2 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -4958,6 +4958,16 @@ parameterNumber = 32 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean most-unstable CAPE +'avg_mucape' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'avg_z' = { discipline = 0 ; @@ -5254,6 +5264,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum most-unstable CAPE +'max_mucape' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture 'min_vsw' = { discipline = 2 ; @@ -5261,6 +5281,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum most-unstable CAPE +'min_mucape' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture 'std_vsw' = { discipline = 2 ; @@ -5268,6 +5298,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 6 ; } +#Time-standard-deviation most-unstable CAPE +'std_mucape' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 6 ; + } #Cross sectional area of flow in channel 'chcross' = { discipline = 1 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index eceea516a..de6a94650 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -4958,6 +4958,16 @@ parameterNumber = 32 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean most-unstable CAPE +'J kg**-1' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'm**2 s**-2' = { discipline = 0 ; @@ -5254,6 +5264,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum most-unstable CAPE +'J kg**-1' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture 'm**3 m**-3' = { discipline = 2 ; @@ -5261,6 +5281,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum most-unstable CAPE +'J kg**-1' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture 'm**3 m**-3' = { discipline = 2 ; @@ -5268,6 +5298,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 6 ; } +#Time-standard-deviation most-unstable CAPE +'J kg**-1' = { + discipline = 0 ; + parameterCategory = 7 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 17 ; + scaledValueOfFirstFixedSurface = missing() ; + scaleFactorOfFirstFixedSurface = missing() ; + typeOfStatisticalProcessing = 6 ; + } #Cross sectional area of flow in channel 'm**2' = { discipline = 1 ; From 4934023b8fc2f3cb1719b56922448c0de24f8669 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 28 Jun 2024 13:12:04 +0100 Subject: [PATCH 015/277] ECC-1808: New GRIB table version --- definitions/grib2/boot.def | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/definitions/grib2/boot.def b/definitions/grib2/boot.def index b92116397..bcfa873ed 100644 --- a/definitions/grib2/boot.def +++ b/definitions/grib2/boot.def @@ -8,8 +8,8 @@ # # This gets updated twice a year by WMO. -# See https://community.wmo.int/activity-areas/wmo-codes/manual-codes/latest-version -constant tablesVersionLatestOfficial = 32 : edition_specific; +# See https://community.wmo.int/en/wis/latest-version +constant tablesVersionLatestOfficial = 33 : edition_specific; # If this is different from the official version, then it is the pre-operational version constant tablesVersionLatest = 33 : edition_specific; From 482c26ef350336bc944f797972b0dde6a6ecd17e Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 28 Jun 2024 13:12:18 +0100 Subject: [PATCH 016/277] Cosmetics --- src/accessor/grib_accessor_class_bits.cc | 88 +++++++++++-------- src/accessor/grib_accessor_class_budgdate.cc | 19 ++-- ...rib_accessor_class_bufr_extract_subsets.cc | 19 ++-- ...essor_class_bufrdc_expanded_descriptors.cc | 65 ++++++++------ .../grib_accessor_class_dictionary.cc | 29 +++--- src/accessor/grib_accessor_class_divdouble.cc | 8 +- src/accessor/grib_accessor_class_double.cc | 33 ++++--- ...or_class_from_scale_factor_scaled_value.cc | 56 +++++++----- ...ib_accessor_class_g1_half_byte_codeflag.cc | 17 ++-- .../grib_accessor_class_g1_message_length.cc | 18 ++-- .../grib_accessor_class_g1_section4_length.cc | 15 ++-- src/accessor/grib_accessor_class_g2_eps.cc | 33 ++++--- src/accessor/grib_accessor_class_g2bitmap.cc | 19 ++-- .../grib_accessor_class_g2bitmap_present.cc | 17 ++-- 14 files changed, 255 insertions(+), 181 deletions(-) diff --git a/src/accessor/grib_accessor_class_bits.cc b/src/accessor/grib_accessor_class_bits.cc index e0a9e7d8d..3e7826bfe 100644 --- a/src/accessor/grib_accessor_class_bits.cc +++ b/src/accessor/grib_accessor_class_bits.cc @@ -11,16 +11,17 @@ #include "grib_accessor_class_bits.h" -grib_accessor_class_bits_t _grib_accessor_class_bits{"bits"}; +grib_accessor_class_bits_t _grib_accessor_class_bits{ "bits" }; grib_accessor_class* grib_accessor_class_bits = &_grib_accessor_class_bits; -void grib_accessor_class_bits_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_bits_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_gen_t::init(a, l, c); grib_accessor_bits_t* self = (grib_accessor_bits_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - grib_expression* e = NULL; - int n = 0; + grib_handle* hand = grib_handle_of_accessor(a); + grib_expression* e = NULL; + int n = 0; self->argument = grib_arguments_get_name(hand, c, n++); self->start = grib_arguments_get_long(hand, c, n++); @@ -43,11 +44,12 @@ void grib_accessor_class_bits_t::init(grib_accessor* a, const long l, grib_argum a->length = 0; } -int grib_accessor_class_bits_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_bits_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_bits_t* self = (grib_accessor_bits_t*)a; - grib_accessor* x = NULL; - unsigned char* p = NULL; - grib_handle* h = grib_handle_of_accessor(a); + grib_accessor* x = NULL; + unsigned char* p = NULL; + grib_handle* h = grib_handle_of_accessor(a); long start, length; int ret = 0; @@ -61,18 +63,20 @@ int grib_accessor_class_bits_t::unpack_long(grib_accessor* a, long* val, size_t* if (!x) return GRIB_NOT_FOUND; - p = h->buffer->data + x->byte_offset(); *val = grib_decode_unsigned_long(p, &start, length); + p = h->buffer->data + x->byte_offset(); + *val = grib_decode_unsigned_long(p, &start, length); *len = 1; return ret; } -int grib_accessor_class_bits_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_bits_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_bits_t* self = (grib_accessor_bits_t*)a; - grib_accessor* x = NULL; - unsigned char* p = NULL; - grib_handle* h = grib_handle_of_accessor(a); + grib_accessor* x = NULL; + unsigned char* p = NULL; + grib_handle* h = grib_handle_of_accessor(a); long start, length; int ret = 0; @@ -86,7 +90,8 @@ int grib_accessor_class_bits_t::unpack_double(grib_accessor* a, double* val, siz if (!x) return GRIB_NOT_FOUND; - p = h->buffer->data + x->byte_offset(); *val = grib_decode_unsigned_long(p, &start, length); + p = h->buffer->data + x->byte_offset(); + *val = grib_decode_unsigned_long(p, &start, length); *val = ((long)*val + self->referenceValue) / self->scale; @@ -95,11 +100,12 @@ int grib_accessor_class_bits_t::unpack_double(grib_accessor* a, double* val, siz return ret; } -int grib_accessor_class_bits_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_bits_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_bits_t* self = (grib_accessor_bits_t*)a; - grib_accessor* x = NULL; - grib_handle* h = grib_handle_of_accessor(a); - unsigned char* p = NULL; + grib_accessor* x = NULL; + grib_handle* h = grib_handle_of_accessor(a); + unsigned char* p = NULL; long start, length, lval; if (*len != 1) @@ -112,16 +118,17 @@ int grib_accessor_class_bits_t::pack_double(grib_accessor* a, const double* val, if (!x) return GRIB_NOT_FOUND; - p = h->buffer->data + x->byte_offset(); + p = h->buffer->data + x->byte_offset(); lval = round(*val * self->scale) - self->referenceValue; return grib_encode_unsigned_longb(p, lval, &start, length); } -int grib_accessor_class_bits_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_bits_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_bits_t* self = (grib_accessor_bits_t*)a; - grib_accessor* x = NULL; - grib_handle* h = grib_handle_of_accessor(a); - unsigned char* p = NULL; + grib_accessor* x = NULL; + grib_handle* h = grib_handle_of_accessor(a); + unsigned char* p = NULL; long start, length, maxval; if (*len != 1) @@ -148,12 +155,12 @@ int grib_accessor_class_bits_t::pack_long(grib_accessor* a, const long* val, siz #ifdef DEBUG { - const long numbits = (x->length)*8; + const long numbits = (x->length) * 8; if (start + length > numbits) { grib_context_log(h->context, GRIB_LOG_ERROR, - "grib_accessor_class_bits::pack_long: key=%s (x=%s): " - "Invalid start/length. x->length=%ld, start=%ld, length=%ld", - a->name, x->name, numbits, start, length); + "grib_accessor_class_bits::pack_long: key=%s (x=%s): " + "Invalid start/length. x->length=%ld, start=%ld, length=%ld", + a->name, x->name, numbits, start, length); return GRIB_ENCODING_ERROR; } } @@ -167,11 +174,13 @@ int grib_accessor_class_bits_t::pack_long(grib_accessor* a, const long* val, siz return GRIB_ENCODING_ERROR; } - p = h->buffer->data + x->byte_offset(); return grib_encode_unsigned_longb(p, *val, &start, length); + p = h->buffer->data + x->byte_offset(); + return grib_encode_unsigned_longb(p, *val, &start, length); } -int grib_accessor_class_bits_t::get_native_type(grib_accessor* a){ - int type = GRIB_TYPE_BYTES; +int grib_accessor_class_bits_t::get_native_type(grib_accessor* a) +{ + int type = GRIB_TYPE_BYTES; grib_accessor_bits_t* self = (grib_accessor_bits_t*)a; if (a->flags & GRIB_ACCESSOR_FLAG_STRING_TYPE) @@ -186,11 +195,12 @@ int grib_accessor_class_bits_t::get_native_type(grib_accessor* a){ return type; } -int grib_accessor_class_bits_t::unpack_string(grib_accessor* a, char* v, size_t* len){ - int ret = 0; - double dval = 0; - long lval = 0; - size_t llen = 1; +int grib_accessor_class_bits_t::unpack_string(grib_accessor* a, char* v, size_t* len) +{ + int ret = 0; + double dval = 0; + long lval = 0; + size_t llen = 1; switch (get_native_type(a)) { case GRIB_TYPE_LONG: @@ -211,12 +221,14 @@ int grib_accessor_class_bits_t::unpack_string(grib_accessor* a, char* v, size_t* return ret; } -long grib_accessor_class_bits_t::byte_count(grib_accessor* a){ +long grib_accessor_class_bits_t::byte_count(grib_accessor* a) +{ grib_context_log(a->context, GRIB_LOG_DEBUG, "byte_count of %s = %ld", a->name, a->length); return a->length; } -int grib_accessor_class_bits_t::unpack_bytes(grib_accessor* a, unsigned char* buffer, size_t* len){ +int grib_accessor_class_bits_t::unpack_bytes(grib_accessor* a, unsigned char* buffer, size_t* len) +{ if (*len < a->length) { *len = a->length; return GRIB_ARRAY_TOO_SMALL; diff --git a/src/accessor/grib_accessor_class_budgdate.cc b/src/accessor/grib_accessor_class_budgdate.cc index 4c58c20f2..3efb0b79e 100644 --- a/src/accessor/grib_accessor_class_budgdate.cc +++ b/src/accessor/grib_accessor_class_budgdate.cc @@ -11,22 +11,24 @@ #include "grib_accessor_class_budgdate.h" -grib_accessor_class_budgdate_t _grib_accessor_class_budgdate{"budgdate"}; +grib_accessor_class_budgdate_t _grib_accessor_class_budgdate{ "budgdate" }; grib_accessor_class* grib_accessor_class_budgdate = &_grib_accessor_class_budgdate; -void grib_accessor_class_budgdate_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_budgdate_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); grib_accessor_budgdate_t* self = (grib_accessor_budgdate_t*)a; - int n = 0; + int n = 0; self->year = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->month = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->day = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); } -int grib_accessor_class_budgdate_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - int ret = 0; +int grib_accessor_class_budgdate_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ + int ret = 0; grib_accessor_budgdate_t* self = (grib_accessor_budgdate_t*)a; long year = 0; @@ -49,9 +51,10 @@ int grib_accessor_class_budgdate_t::unpack_long(grib_accessor* a, long* val, siz } /* TODO: Check for a valid date */ -int grib_accessor_class_budgdate_t::pack_long(grib_accessor* a, const long* val, size_t* len){ - int ret = 0; - long v = val[0]; +int grib_accessor_class_budgdate_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ + int ret = 0; + long v = val[0]; grib_accessor_budgdate_t* self = (grib_accessor_budgdate_t*)a; long year = 0; diff --git a/src/accessor/grib_accessor_class_bufr_extract_subsets.cc b/src/accessor/grib_accessor_class_bufr_extract_subsets.cc index 7d5a23652..3826d0b32 100644 --- a/src/accessor/grib_accessor_class_bufr_extract_subsets.cc +++ b/src/accessor/grib_accessor_class_bufr_extract_subsets.cc @@ -11,11 +11,12 @@ #include "grib_accessor_class_bufr_extract_subsets.h" -grib_accessor_class_bufr_extract_subsets_t _grib_accessor_class_bufr_extract_subsets{"bufr_extract_subsets"}; +grib_accessor_class_bufr_extract_subsets_t _grib_accessor_class_bufr_extract_subsets{ "bufr_extract_subsets" }; grib_accessor_class* grib_accessor_class_bufr_extract_subsets = &_grib_accessor_class_bufr_extract_subsets; -void get_accessors(grib_accessor* a){ +void get_accessors(grib_accessor* a) +{ grib_accessor_bufr_extract_subsets_t* self = (grib_accessor_bufr_extract_subsets_t*)a; const grib_handle* h = grib_handle_of_accessor(a); @@ -25,10 +26,11 @@ void get_accessors(grib_accessor* a){ self->packAccessor = grib_find_accessor(h, self->pack); } -void grib_accessor_class_bufr_extract_subsets_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_bufr_extract_subsets_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); - int n = 0; grib_accessor_bufr_extract_subsets_t* self = (grib_accessor_bufr_extract_subsets_t*)a; + int n = 0; a->length = 0; self->numericValues = grib_arguments_get_name(grib_handle_of_accessor(a), arg, n++); @@ -36,11 +38,13 @@ void grib_accessor_class_bufr_extract_subsets_t::init(grib_accessor* a, const lo a->flags |= GRIB_ACCESSOR_FLAG_FUNCTION; } -int grib_accessor_class_bufr_extract_subsets_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_bufr_extract_subsets_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } -int grib_accessor_class_bufr_extract_subsets_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_bufr_extract_subsets_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_bufr_extract_subsets_t* self = (grib_accessor_bufr_extract_subsets_t*)a; size_t l = 1; long v[1]; @@ -48,7 +52,8 @@ int grib_accessor_class_bufr_extract_subsets_t::pack_long(grib_accessor* a, cons get_accessors(a); v[0] = 1; - int err = self->packAccessor->pack_long(v, &l); if (err) { + int err = self->packAccessor->pack_long(v, &l); + if (err) { if (err == GRIB_ENCODING_ERROR) grib_context_log(a->context, GRIB_LOG_ERROR, "Could not extract subset(s).\n\tHint: Did you forget to set unpack=1?"); return err; diff --git a/src/accessor/grib_accessor_class_bufrdc_expanded_descriptors.cc b/src/accessor/grib_accessor_class_bufrdc_expanded_descriptors.cc index bd411d510..777fa351c 100644 --- a/src/accessor/grib_accessor_class_bufrdc_expanded_descriptors.cc +++ b/src/accessor/grib_accessor_class_bufrdc_expanded_descriptors.cc @@ -11,17 +11,18 @@ #include "grib_accessor_class_bufrdc_expanded_descriptors.h" -grib_accessor_class_bufrdc_expanded_descriptors_t _grib_accessor_class_bufrdc_expanded_descriptors{"bufrdc_expanded_descriptors"}; +grib_accessor_class_bufrdc_expanded_descriptors_t _grib_accessor_class_bufrdc_expanded_descriptors{ "bufrdc_expanded_descriptors" }; grib_accessor_class* grib_accessor_class_bufrdc_expanded_descriptors = &_grib_accessor_class_bufrdc_expanded_descriptors; -void grib_accessor_class_bufrdc_expanded_descriptors_t::init(grib_accessor* a, const long len, grib_arguments* args){ +void grib_accessor_class_bufrdc_expanded_descriptors_t::init(grib_accessor* a, const long len, grib_arguments* args) +{ grib_accessor_class_long_t::init(a, len, args); grib_accessor_bufrdc_expanded_descriptors_t* self = (grib_accessor_bufrdc_expanded_descriptors_t*)a; - int n = 0; - self->expandedDescriptors = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); - self->expandedDescriptorsAccessor = 0; - a->length = 0; + int n = 0; + self->expandedDescriptors = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); + self->expandedDescriptorsAccessor = 0; + a->length = 0; a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } @@ -34,18 +35,20 @@ static grib_accessor* get_accessor(grib_accessor* a) return self->expandedDescriptorsAccessor; } -int grib_accessor_class_bufrdc_expanded_descriptors_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_bufrdc_expanded_descriptors_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor* descriptors = 0; - size_t rlen = 0, l; - long lenall = 0; - size_t i = 0; - long* v = 0; - grib_context* c = a->context; + size_t rlen = 0, l; + long lenall = 0; + size_t i = 0; + long* v = 0; + grib_context* c = a->context; descriptors = get_accessor(a); if (!descriptors) return GRIB_NOT_FOUND; - a->value_count(&lenall); v = (long*)grib_context_malloc_clear(c, sizeof(long) * lenall); + a->value_count(&lenall); + v = (long*)grib_context_malloc_clear(c, sizeof(long) * lenall); l = lenall; descriptors->unpack_long(v, &l); rlen = 0; @@ -54,46 +57,52 @@ int grib_accessor_class_bufrdc_expanded_descriptors_t::unpack_long(grib_accessor val[rlen++] = v[i]; } *len = rlen; - grib_context_free(c,v); + grib_context_free(c, v); return GRIB_SUCCESS; } -int grib_accessor_class_bufrdc_expanded_descriptors_t::unpack_string_array(grib_accessor* a, char** buffer, size_t* len){ - int err = 0; +int grib_accessor_class_bufrdc_expanded_descriptors_t::unpack_string_array(grib_accessor* a, char** buffer, size_t* len) +{ + int err = 0; grib_accessor* descriptors = 0; - size_t l = 0; - long lenall = 0; - size_t i = 0; - long* v = 0; - char buf[25] = {0,}; + size_t l = 0; + long lenall = 0; + size_t i = 0; + long* v = 0; + char buf[25] = {0,}; grib_context* c = a->context; descriptors = get_accessor(a); if (!descriptors) return GRIB_NOT_FOUND; - err = a->value_count(&lenall); if (err) return err; + err = a->value_count(&lenall); + if (err) return err; l = lenall; if (l > *len) return GRIB_ARRAY_TOO_SMALL; - v = (long*)grib_context_malloc_clear(c, sizeof(long) * l); - err = descriptors->unpack_long(v, &l); if (err) return err; + v = (long*)grib_context_malloc_clear(c, sizeof(long) * l); + err = descriptors->unpack_long(v, &l); + if (err) return err; for (i = 0; i < l; i++) { snprintf(buf, sizeof(buf), "%06ld", v[i]); buffer[i] = grib_context_strdup(c, buf); } *len = l; - grib_context_free(c,v); + grib_context_free(c, v); return GRIB_SUCCESS; } -int grib_accessor_class_bufrdc_expanded_descriptors_t::value_count(grib_accessor* a, long* rlen){ +int grib_accessor_class_bufrdc_expanded_descriptors_t::value_count(grib_accessor* a, long* rlen) +{ grib_accessor* descriptors = get_accessor(a); - return descriptors->value_count(rlen);} + return descriptors->value_count(rlen); +} -void grib_accessor_class_bufrdc_expanded_descriptors_t::destroy(grib_context* c, grib_accessor* a){ +void grib_accessor_class_bufrdc_expanded_descriptors_t::destroy(grib_context* c, grib_accessor* a) +{ grib_accessor_class_long_t::destroy(c, a); } diff --git a/src/accessor/grib_accessor_class_dictionary.cc b/src/accessor/grib_accessor_class_dictionary.cc index 9a0b3307d..617bc8a75 100644 --- a/src/accessor/grib_accessor_class_dictionary.cc +++ b/src/accessor/grib_accessor_class_dictionary.cc @@ -11,13 +11,14 @@ #include "grib_accessor_class_dictionary.h" -grib_accessor_class_dictionary_t _grib_accessor_class_dictionary{"dictionary"}; +grib_accessor_class_dictionary_t _grib_accessor_class_dictionary{ "dictionary" }; grib_accessor_class* grib_accessor_class_dictionary = &_grib_accessor_class_dictionary; -void grib_accessor_class_dictionary_t::init(grib_accessor* a, const long len, grib_arguments* params){ +void grib_accessor_class_dictionary_t::init(grib_accessor* a, const long len, grib_arguments* params) +{ grib_accessor_class_gen_t::init(a, len, params); - int n = 0; + int n = 0; grib_accessor_dictionary_t* self = (grib_accessor_dictionary_t*)a; self->dictionary = grib_arguments_get_string(grib_handle_of_accessor(a), params, n++); @@ -146,7 +147,8 @@ static grib_trie* load_dictionary(grib_accessor* a, int* err) return dictionary; } -void grib_accessor_class_dictionary_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_dictionary_t::dump(grib_accessor* a, grib_dumper* dumper) +{ switch (get_native_type(a)) { case GRIB_TYPE_STRING: grib_dump_string(dumper, a, NULL); @@ -160,10 +162,11 @@ void grib_accessor_class_dictionary_t::dump(grib_accessor* a, grib_dumper* dumpe } } -int grib_accessor_class_dictionary_t::unpack_string(grib_accessor* a, char* buffer, size_t* len){ +int grib_accessor_class_dictionary_t::unpack_string(grib_accessor* a, char* buffer, size_t* len) +{ grib_accessor_dictionary_t* self = (grib_accessor_dictionary_t*)a; - int err = GRIB_SUCCESS; - char key[1024] = {0,}; + int err = GRIB_SUCCESS; + char key[1024] = {0,}; size_t size = 1024; char* list = NULL; char* start = NULL; @@ -214,12 +217,14 @@ int grib_accessor_class_dictionary_t::unpack_string(grib_accessor* a, char* buff return err; } -int grib_accessor_class_dictionary_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_dictionary_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -int grib_accessor_class_dictionary_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_dictionary_t::get_native_type(grib_accessor* a) +{ int type = GRIB_TYPE_DOUBLE; if (a->flags & GRIB_ACCESSOR_FLAG_LONG_TYPE) type = GRIB_TYPE_LONG; @@ -228,7 +233,8 @@ int grib_accessor_class_dictionary_t::get_native_type(grib_accessor* a){ return type; } -int grib_accessor_class_dictionary_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_dictionary_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ int err = 0; char buffer[1024] = {0,}; size_t size = 1024; @@ -243,7 +249,8 @@ int grib_accessor_class_dictionary_t::unpack_long(grib_accessor* a, long* val, s return GRIB_SUCCESS; } -int grib_accessor_class_dictionary_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_dictionary_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ int err = 0; char buffer[1024] = {0,}; size_t size = 1024; diff --git a/src/accessor/grib_accessor_class_divdouble.cc b/src/accessor/grib_accessor_class_divdouble.cc index a652752fa..49e675230 100644 --- a/src/accessor/grib_accessor_class_divdouble.cc +++ b/src/accessor/grib_accessor_class_divdouble.cc @@ -11,11 +11,12 @@ #include "grib_accessor_class_divdouble.h" -grib_accessor_class_divdouble_t _grib_accessor_class_divdouble{"divdouble"}; +grib_accessor_class_divdouble_t _grib_accessor_class_divdouble{ "divdouble" }; grib_accessor_class* grib_accessor_class_divdouble = &_grib_accessor_class_divdouble; -void grib_accessor_class_divdouble_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_divdouble_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); grib_accessor_divdouble_t* self = (grib_accessor_divdouble_t*)a; int n = 0; @@ -24,7 +25,8 @@ void grib_accessor_class_divdouble_t::init(grib_accessor* a, const long l, grib_ self->divisor = grib_arguments_get_double(grib_handle_of_accessor(a), c, n++); } -int grib_accessor_class_divdouble_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_divdouble_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ const grib_accessor_divdouble_t* self = (grib_accessor_divdouble_t*)a; int ret = GRIB_SUCCESS; double value = 0; diff --git a/src/accessor/grib_accessor_class_double.cc b/src/accessor/grib_accessor_class_double.cc index a0e3a49b5..2a78446bc 100644 --- a/src/accessor/grib_accessor_class_double.cc +++ b/src/accessor/grib_accessor_class_double.cc @@ -11,26 +11,29 @@ #include "grib_accessor_class_double.h" -grib_accessor_class_double_t _grib_accessor_class_double{"double"}; +grib_accessor_class_double_t _grib_accessor_class_double{ "double" }; grib_accessor_class* grib_accessor_class_double = &_grib_accessor_class_double; -int grib_accessor_class_double_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_double_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_DOUBLE; } -int grib_accessor_class_double_t::unpack_string(grib_accessor* a, char* v, size_t* len){ +int grib_accessor_class_double_t::unpack_string(grib_accessor* a, char* v, size_t* len) +{ double val = 0; size_t l = 1; char repres[1024]; - char format[32] = "%g"; - grib_handle* h = grib_handle_of_accessor(a); + char format[32] = "%g"; + grib_handle* h = grib_handle_of_accessor(a); const char* cclass_name = a->cclass->name; a->unpack_double(&val, &l); if ((val == GRIB_MISSING_DOUBLE) && ((a->flags & GRIB_ACCESSOR_FLAG_CAN_BE_MISSING) != 0)) { snprintf(repres, sizeof(repres), "MISSING"); - } else { + } + else { size_t size = sizeof(format); grib_get_string(h, "formatForDoubles", format, &size); snprintf(repres, sizeof(repres), format, val); @@ -53,11 +56,13 @@ int grib_accessor_class_double_t::unpack_string(grib_accessor* a, char* v, size_ return GRIB_SUCCESS; } -void grib_accessor_class_double_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_double_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_values(dumper, a); } -int grib_accessor_class_double_t::compare(grib_accessor* a, grib_accessor* b){ +int grib_accessor_class_double_t::compare(grib_accessor* a, grib_accessor* b) +{ int retval = 0; double* aval = 0; double* bval = 0; @@ -67,11 +72,13 @@ int grib_accessor_class_double_t::compare(grib_accessor* a, grib_accessor* b){ long count = 0; int err = 0; - err = a->value_count(&count); if (err) + err = a->value_count(&count); + if (err) return err; alen = count; - err = b->value_count(&count); if (err) + err = b->value_count(&count); + if (err) return err; blen = count; @@ -81,7 +88,8 @@ int grib_accessor_class_double_t::compare(grib_accessor* a, grib_accessor* b){ aval = (double*)grib_context_malloc(a->context, alen * sizeof(double)); bval = (double*)grib_context_malloc(b->context, blen * sizeof(double)); - a->unpack_double(aval, &alen); b->unpack_double(bval, &blen); + a->unpack_double(aval, &alen); + b->unpack_double(bval, &blen); retval = GRIB_SUCCESS; while (alen != 0) { if (*bval != *aval) @@ -95,7 +103,8 @@ int grib_accessor_class_double_t::compare(grib_accessor* a, grib_accessor* b){ return retval; } -int grib_accessor_class_double_t::pack_missing(grib_accessor* a){ +int grib_accessor_class_double_t::pack_missing(grib_accessor* a) +{ size_t len = 1; double value = GRIB_MISSING_DOUBLE; diff --git a/src/accessor/grib_accessor_class_from_scale_factor_scaled_value.cc b/src/accessor/grib_accessor_class_from_scale_factor_scaled_value.cc index 4168e1476..f2c598f8f 100644 --- a/src/accessor/grib_accessor_class_from_scale_factor_scaled_value.cc +++ b/src/accessor/grib_accessor_class_from_scale_factor_scaled_value.cc @@ -11,33 +11,36 @@ #include "grib_accessor_class_from_scale_factor_scaled_value.h" -grib_accessor_class_from_scale_factor_scaled_value_t _grib_accessor_class_from_scale_factor_scaled_value{"from_scale_factor_scaled_value"}; +grib_accessor_class_from_scale_factor_scaled_value_t _grib_accessor_class_from_scale_factor_scaled_value{ "from_scale_factor_scaled_value" }; grib_accessor_class* grib_accessor_class_from_scale_factor_scaled_value = &_grib_accessor_class_from_scale_factor_scaled_value; -void grib_accessor_class_from_scale_factor_scaled_value_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_from_scale_factor_scaled_value_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); grib_accessor_from_scale_factor_scaled_value_t* self = (grib_accessor_from_scale_factor_scaled_value_t*)a; - int n = 0; - grib_handle* hand = grib_handle_of_accessor(a); + int n = 0; + grib_handle* hand = grib_handle_of_accessor(a); self->scaleFactor = grib_arguments_get_name(hand, c, n++); - self->scaledValue = grib_arguments_get_name(hand, c, n++); // Can be scalar or array + self->scaledValue = grib_arguments_get_name(hand, c, n++); // Can be scalar or array // ECC-979: Allow user to encode // a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_from_scale_factor_scaled_value_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_from_scale_factor_scaled_value_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ // See ECC-979 and ECC-1416 // Evaluate self->scaleFactor and self->scaledValue from input double '*val' grib_accessor_from_scale_factor_scaled_value_t* self = (grib_accessor_from_scale_factor_scaled_value_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - int err = 0; + grib_handle* hand = grib_handle_of_accessor(a); + + int err = 0; int64_t factor = 0; - int64_t value = 0; - double exact = *val; // the input - int64_t maxval_value, maxval_factor; // maximum allowable values + int64_t value = 0; + double exact = *val; // the input + int64_t maxval_value, maxval_factor; // maximum allowable values int value_accessor_num_bits = 0, factor_accessor_num_bits = 0; grib_accessor *factor_accessor, *value_accessor; @@ -65,9 +68,9 @@ int grib_accessor_class_from_scale_factor_scaled_value_t::pack_double(grib_acces } value_accessor_num_bits = value_accessor->length * 8; factor_accessor_num_bits = factor_accessor->length * 8; - maxval_value = (1UL << value_accessor_num_bits) - 2; // exclude missing - maxval_factor = (1UL << factor_accessor_num_bits) - 2; // exclude missing - if (strcmp(factor_accessor->cclass->name,"signed")==0) { + maxval_value = (1UL << value_accessor_num_bits) - 2; // exclude missing + maxval_factor = (1UL << factor_accessor_num_bits) - 2; // exclude missing + if (strcmp(factor_accessor->cclass->name, "signed") == 0) { maxval_factor = (1UL << (factor_accessor_num_bits - 1)) - 1; } @@ -85,13 +88,14 @@ int grib_accessor_class_from_scale_factor_scaled_value_t::pack_double(grib_acces return GRIB_SUCCESS; } -int grib_accessor_class_from_scale_factor_scaled_value_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_from_scale_factor_scaled_value_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_from_scale_factor_scaled_value_t* self = (grib_accessor_from_scale_factor_scaled_value_t*)a; int err = 0; long scaleFactor = 0, scaledValue = 0; grib_handle* hand = grib_handle_of_accessor(a); - grib_context* c = a->context; - size_t vsize = 0; + grib_context* c = a->context; + size_t vsize = 0; if ((err = grib_get_long_internal(hand, self->scaleFactor, &scaleFactor)) != GRIB_SUCCESS) return err; @@ -107,11 +111,12 @@ int grib_accessor_class_from_scale_factor_scaled_value_t::unpack_double(grib_acc *val = GRIB_MISSING_DOUBLE; *len = 1; return GRIB_SUCCESS; - } else { + } + else { // ECC-966: If scale factor is missing, print error and treat it as zero (as a fallback) if (grib_is_missing(hand, self->scaleFactor, &err) && err == GRIB_SUCCESS) { grib_context_log(a->context, GRIB_LOG_ERROR, - "unpack_double for %s: %s is missing! Using zero instead", a->name, self->scaleFactor); + "unpack_double for %s: %s is missing! Using zero instead", a->name, self->scaleFactor); scaleFactor = 0; } } @@ -132,7 +137,8 @@ int grib_accessor_class_from_scale_factor_scaled_value_t::unpack_double(grib_acc if (err == GRIB_SUCCESS) *len = 1; - } else { + } + else { size_t i; long* lvalues = (long*)grib_context_malloc(c, vsize * sizeof(long)); if (!lvalues) @@ -143,7 +149,7 @@ int grib_accessor_class_from_scale_factor_scaled_value_t::unpack_double(grib_acc } for (i = 0; i < vsize; i++) { long sf = scaleFactor; - val[i] = lvalues[i]; + val[i] = lvalues[i]; while (sf < 0) { val[i] *= 10; sf++; @@ -160,7 +166,8 @@ int grib_accessor_class_from_scale_factor_scaled_value_t::unpack_double(grib_acc return err; } -int grib_accessor_class_from_scale_factor_scaled_value_t::is_missing(grib_accessor* a){ +int grib_accessor_class_from_scale_factor_scaled_value_t::is_missing(grib_accessor* a) +{ grib_accessor_from_scale_factor_scaled_value_t* self = (grib_accessor_from_scale_factor_scaled_value_t*)a; grib_handle* hand = grib_handle_of_accessor(a); int err = 0; @@ -175,11 +182,12 @@ int grib_accessor_class_from_scale_factor_scaled_value_t::is_missing(grib_access return ((scaleFactor == GRIB_MISSING_LONG) || (scaledValue == GRIB_MISSING_LONG)); } -int grib_accessor_class_from_scale_factor_scaled_value_t::value_count(grib_accessor* a, long* len){ +int grib_accessor_class_from_scale_factor_scaled_value_t::value_count(grib_accessor* a, long* len) +{ grib_accessor_from_scale_factor_scaled_value_t* self = (grib_accessor_from_scale_factor_scaled_value_t*)a; int err = 0; grib_handle* hand = grib_handle_of_accessor(a); - size_t vsize; + size_t vsize = 0; if ((err = grib_get_size(hand, self->scaledValue, &vsize)) != GRIB_SUCCESS) return err; diff --git a/src/accessor/grib_accessor_class_g1_half_byte_codeflag.cc b/src/accessor/grib_accessor_class_g1_half_byte_codeflag.cc index 2f757addc..f73a146dc 100644 --- a/src/accessor/grib_accessor_class_g1_half_byte_codeflag.cc +++ b/src/accessor/grib_accessor_class_g1_half_byte_codeflag.cc @@ -11,22 +11,25 @@ #include "grib_accessor_class_g1_half_byte_codeflag.h" -grib_accessor_class_g1_half_byte_codeflag_t _grib_accessor_class_g1_half_byte_codeflag{"g1_half_byte_codeflag"}; +grib_accessor_class_g1_half_byte_codeflag_t _grib_accessor_class_g1_half_byte_codeflag{ "g1_half_byte_codeflag" }; grib_accessor_class* grib_accessor_class_g1_half_byte_codeflag = &_grib_accessor_class_g1_half_byte_codeflag; -void grib_accessor_class_g1_half_byte_codeflag_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_g1_half_byte_codeflag_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); a->length = 0; a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; a->flags |= GRIB_ACCESSOR_FLAG_EDITION_SPECIFIC; } -void grib_accessor_class_g1_half_byte_codeflag_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_g1_half_byte_codeflag_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_long(dumper, a, NULL); } -int grib_accessor_class_g1_half_byte_codeflag_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_g1_half_byte_codeflag_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ unsigned char dat = 0; if (*len < 1) { grib_context_log(a->context, GRIB_LOG_ERROR, "Wrong size for %s it contains %d values ", a->name, 1); @@ -40,7 +43,8 @@ int grib_accessor_class_g1_half_byte_codeflag_t::unpack_long(grib_accessor* a, l return GRIB_SUCCESS; } -int grib_accessor_class_g1_half_byte_codeflag_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_g1_half_byte_codeflag_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ int ret = 0; if (*len < 1) { grib_context_log(a->context, GRIB_LOG_ERROR, "Wrong size for %s it contains %d values ", a->name, 1); @@ -55,6 +59,7 @@ int grib_accessor_class_g1_half_byte_codeflag_t::pack_long(grib_accessor* a, con return ret; } -int grib_accessor_class_g1_half_byte_codeflag_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_g1_half_byte_codeflag_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_g1_message_length.cc b/src/accessor/grib_accessor_class_g1_message_length.cc index 89ce742c5..af06d2e98 100644 --- a/src/accessor/grib_accessor_class_g1_message_length.cc +++ b/src/accessor/grib_accessor_class_g1_message_length.cc @@ -11,14 +11,15 @@ #include "grib_accessor_class_g1_message_length.h" -grib_accessor_class_g1_message_length_t _grib_accessor_class_g1_message_length{"g1_message_length"}; +grib_accessor_class_g1_message_length_t _grib_accessor_class_g1_message_length{ "g1_message_length" }; grib_accessor_class* grib_accessor_class_g1_message_length = &_grib_accessor_class_g1_message_length; -void grib_accessor_class_g1_message_length_t::init(grib_accessor* a, const long len, grib_arguments* args){ +void grib_accessor_class_g1_message_length_t::init(grib_accessor* a, const long len, grib_arguments* args) +{ grib_accessor_class_section_length_t::init(a, len, args); grib_accessor_g1_message_length_t* self = (grib_accessor_g1_message_length_t*)a; - self->sec4_length = grib_arguments_get_name(grib_handle_of_accessor(a), args, 0); + self->sec4_length = grib_arguments_get_name(grib_handle_of_accessor(a), args, 0); } int grib_get_g1_message_size(grib_handle* h, grib_accessor* tl, grib_accessor* s4, @@ -60,7 +61,8 @@ int grib_get_g1_message_size(grib_handle* h, grib_accessor* tl, grib_accessor* s return GRIB_SUCCESS; } -int grib_accessor_class_g1_message_length_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_g1_message_length_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_g1_message_length_t* self = (grib_accessor_g1_message_length_t*)a; /*grib_accessor_class* super = *(a->cclass->super);*/ @@ -113,7 +115,7 @@ int grib_accessor_class_g1_message_length_t::pack_long(grib_accessor* a, const l grib_context_log(a->context, GRIB_LOG_ERROR, "%s %s: Failed to set GRIB1 message length to %ld" " (actual length=%ld)", - cclass_name, __func__, *val, total_length); + cclass_name, __func__, *val, total_length); grib_context_log(a->context, GRIB_LOG_ERROR, "Hint: Try encoding as GRIB2\n"); return GRIB_ENCODING_ERROR; } @@ -122,15 +124,15 @@ int grib_accessor_class_g1_message_length_t::pack_long(grib_accessor* a, const l return GRIB_SUCCESS; } -int grib_accessor_class_g1_message_length_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_g1_message_length_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_g1_message_length_t* self = (grib_accessor_g1_message_length_t*)a; int ret; long total_length, sec4_length; if ((ret = grib_get_g1_message_size(grib_handle_of_accessor(a), a, grib_find_accessor(grib_handle_of_accessor(a), self->sec4_length), - &total_length, &sec4_length)) != GRIB_SUCCESS) - { + &total_length, &sec4_length)) != GRIB_SUCCESS) { return ret; } diff --git a/src/accessor/grib_accessor_class_g1_section4_length.cc b/src/accessor/grib_accessor_class_g1_section4_length.cc index 8eea656b0..fe80e70e8 100644 --- a/src/accessor/grib_accessor_class_g1_section4_length.cc +++ b/src/accessor/grib_accessor_class_g1_section4_length.cc @@ -11,17 +11,19 @@ #include "grib_accessor_class_g1_section4_length.h" -grib_accessor_class_g1_section4_length_t _grib_accessor_class_g1_section4_length{"g1_section4_length"}; +grib_accessor_class_g1_section4_length_t _grib_accessor_class_g1_section4_length{ "g1_section4_length" }; grib_accessor_class* grib_accessor_class_g1_section4_length = &_grib_accessor_class_g1_section4_length; -void grib_accessor_class_g1_section4_length_t::init(grib_accessor* a, const long len, grib_arguments* args){ +void grib_accessor_class_g1_section4_length_t::init(grib_accessor* a, const long len, grib_arguments* args) +{ grib_accessor_class_section_length_t::init(a, len, args); grib_accessor_g1_section4_length_t* self = (grib_accessor_g1_section4_length_t*)a; - self->total_length = grib_arguments_get_name(grib_handle_of_accessor(a), args, 0); + self->total_length = grib_arguments_get_name(grib_handle_of_accessor(a), args, 0); } -int grib_accessor_class_g1_section4_length_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_g1_section4_length_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ // Old implementation: // Here we assume that the totalLength will be coded AFTER the section4 length, and // the section4 length will be overwritten by the totalLength accessor for large GRIBs @@ -34,9 +36,10 @@ int grib_accessor_class_g1_section4_length_t::pack_long(grib_accessor* a, const return pack_long_unsigned_helper(a, val, len, /*check=*/0); } -int grib_accessor_class_g1_section4_length_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_g1_section4_length_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_g1_section4_length_t* self = (grib_accessor_g1_section4_length_t*)a; - int ret = 0; + int ret = 0; long total_length = 0, sec4_length = 0; if ((ret = grib_get_g1_message_size(grib_handle_of_accessor(a), diff --git a/src/accessor/grib_accessor_class_g2_eps.cc b/src/accessor/grib_accessor_class_g2_eps.cc index 6b6c42fd7..dfe88ad28 100644 --- a/src/accessor/grib_accessor_class_g2_eps.cc +++ b/src/accessor/grib_accessor_class_g2_eps.cc @@ -11,14 +11,15 @@ #include "grib_accessor_class_g2_eps.h" -grib_accessor_class_g2_eps_t _grib_accessor_class_g2_eps{"g2_eps"}; +grib_accessor_class_g2_eps_t _grib_accessor_class_g2_eps{ "g2_eps" }; grib_accessor_class* grib_accessor_class_g2_eps = &_grib_accessor_class_g2_eps; -void grib_accessor_class_g2_eps_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g2_eps_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_unsigned_t::init(a, l, c); grib_accessor_g2_eps_t* self = (grib_accessor_g2_eps_t*)a; - int n = 0; + int n = 0; self->productDefinitionTemplateNumber = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->type = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); @@ -27,11 +28,12 @@ void grib_accessor_class_g2_eps_t::init(grib_accessor* a, const long l, grib_arg self->derivedForecast = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); } -int grib_accessor_class_g2_eps_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - grib_accessor_g2_eps_t* self = (grib_accessor_g2_eps_t*)a; +int grib_accessor_class_g2_eps_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ + grib_accessor_g2_eps_t* self = (grib_accessor_g2_eps_t*)a; long productDefinitionTemplateNumber = 0; - int err = 0; - grib_handle* hand = grib_handle_of_accessor(a); + int err = 0; + grib_handle* hand = grib_handle_of_accessor(a); err = grib_get_long(hand, self->productDefinitionTemplateNumber, &productDefinitionTemplateNumber); if (err) return err; @@ -40,15 +42,17 @@ int grib_accessor_class_g2_eps_t::unpack_long(grib_accessor* a, long* val, size_ if (grib_is_defined(hand, "perturbationNumber")) { *val = 1; } - //if (grib2_is_PDTN_EPS(productDefinitionTemplateNumber)) - // *val = 1; + // if (grib2_is_PDTN_EPS(productDefinitionTemplateNumber)) + // *val = 1; return GRIB_SUCCESS; } -int grib_accessor_class_g2_eps_t::pack_long(grib_accessor* a, const long* val, size_t* len){ - grib_accessor_g2_eps_t* self = (grib_accessor_g2_eps_t*)a; +int grib_accessor_class_g2_eps_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ + grib_accessor_g2_eps_t* self = (grib_accessor_g2_eps_t*)a; grib_handle* hand = grib_handle_of_accessor(a); + long productDefinitionTemplateNumber = -1; long productDefinitionTemplateNumberNew = -1; long type = -1; @@ -143,13 +147,13 @@ int grib_accessor_class_g2_eps_t::pack_long(grib_accessor* a, const long* val, s productDefinitionTemplateNumberNew = 45; } else { - //productDefinitionTemplateNumberNew = 47; This PDT is deprecated + // productDefinitionTemplateNumberNew = 47; This PDT is deprecated productDefinitionTemplateNumberNew = 85; } } else { if (isInstant) { - productDefinitionTemplateNumberNew = 48; //44 is deprecated*/ + productDefinitionTemplateNumberNew = 48; // 44 is deprecated*/ } else { productDefinitionTemplateNumberNew = 46; @@ -166,7 +170,8 @@ int grib_accessor_class_g2_eps_t::pack_long(grib_accessor* a, const long* val, s return 0; } -int grib_accessor_class_g2_eps_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_g2_eps_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } diff --git a/src/accessor/grib_accessor_class_g2bitmap.cc b/src/accessor/grib_accessor_class_g2bitmap.cc index d5af880b3..551715e4a 100644 --- a/src/accessor/grib_accessor_class_g2bitmap.cc +++ b/src/accessor/grib_accessor_class_g2bitmap.cc @@ -12,29 +12,29 @@ #include "grib_accessor_class_g2bitmap.h" #include "shared_functions.h" -grib_accessor_class_g2bitmap_t _grib_accessor_class_g2bitmap{"g2bitmap"}; +grib_accessor_class_g2bitmap_t _grib_accessor_class_g2bitmap{ "g2bitmap" }; grib_accessor_class* grib_accessor_class_g2bitmap = &_grib_accessor_class_g2bitmap; -void grib_accessor_class_g2bitmap_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_g2bitmap_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_bitmap_t::init(a, len, arg); grib_accessor_g2bitmap_t* self = (grib_accessor_g2bitmap_t*)a; self->numberOfValues = grib_arguments_get_name(grib_handle_of_accessor(a), arg, 4); } -int grib_accessor_class_g2bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_g2bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_g2bitmap_t* self = (grib_accessor_g2bitmap_t*)a; - size_t tlen; - unsigned char* buf = NULL; size_t i; - int err = 0; - long pos = 0; + int err = 0; + long pos = 0; // long bmaplen = 0; double miss_values = 0; - tlen = (*len + 7) / 8; + size_t tlen = (*len + 7) / 8; if ((err = grib_get_double_internal(grib_handle_of_accessor(a), self->missing_value, &miss_values)) != GRIB_SUCCESS) return err; @@ -65,7 +65,8 @@ int grib_accessor_class_g2bitmap_t::pack_double(grib_accessor* a, const double* } -int grib_accessor_class_g2bitmap_t::value_count(grib_accessor* a, long* tlen){ +int grib_accessor_class_g2bitmap_t::value_count(grib_accessor* a, long* tlen) +{ grib_accessor_g2bitmap_t* self = (grib_accessor_g2bitmap_t*)a; int err; *tlen = 0; diff --git a/src/accessor/grib_accessor_class_g2bitmap_present.cc b/src/accessor/grib_accessor_class_g2bitmap_present.cc index 1444783fe..3ba7f6c99 100644 --- a/src/accessor/grib_accessor_class_g2bitmap_present.cc +++ b/src/accessor/grib_accessor_class_g2bitmap_present.cc @@ -11,20 +11,22 @@ #include "grib_accessor_class_g2bitmap_present.h" -grib_accessor_class_g2bitmap_present_t _grib_accessor_class_g2bitmap_present{"g2bitmap_present"}; +grib_accessor_class_g2bitmap_present_t _grib_accessor_class_g2bitmap_present{ "g2bitmap_present" }; grib_accessor_class* grib_accessor_class_g2bitmap_present = &_grib_accessor_class_g2bitmap_present; -void grib_accessor_class_g2bitmap_present_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g2bitmap_present_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); - int n = 0; + int n = 0; grib_accessor_g2bitmap_present_t* self = (grib_accessor_g2bitmap_present_t*)a; - self->bitmapIndicator = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->bitmapIndicator = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); a->length = 0; } -int grib_accessor_class_g2bitmap_present_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_g2bitmap_present_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ int ret = GRIB_SUCCESS; long bitmapIndicator = 0; @@ -48,9 +50,10 @@ int grib_accessor_class_g2bitmap_present_t::unpack_long(grib_accessor* a, long* return ret; } -int grib_accessor_class_g2bitmap_present_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_g2bitmap_present_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_g2bitmap_present_t* self = (grib_accessor_g2bitmap_present_t*)a; - long bitmapIndicator = 0; + long bitmapIndicator = 0; if (*val == 0) bitmapIndicator = 255; From 0dfbe96e50af0782b9fce93383714a8582521d2c Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 28 Jun 2024 15:04:47 +0000 Subject: [PATCH 017/277] ECC-1853: GRIB: Lambert conformal longitudes greater than 360 --- src/grib_iterator_class_lambert_conformal.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/src/grib_iterator_class_lambert_conformal.cc b/src/grib_iterator_class_lambert_conformal.cc index 5d15a67b6..fe261b5be 100644 --- a/src/grib_iterator_class_lambert_conformal.cc +++ b/src/grib_iterator_class_lambert_conformal.cc @@ -243,6 +243,7 @@ static int init_sphere(const grib_handle* h, const long index = i + j * nx; x = x0 + i * Dx; xy2lonlat(radius, n, f, rho0_bare, LoVInRadians, x, y, &lonDeg, &latDeg); + lonDeg = normalise_longitude_in_degrees(lonDeg); self->lons[index] = lonDeg; self->lats[index] = latDeg; } From f4e9528f739bf268eaa728ae1983ad49869a9c65 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 28 Jun 2024 17:07:46 +0100 Subject: [PATCH 018/277] Formatting --- src/accessor/grib_accessor_class_g2date.cc | 19 ++++---- .../grib_accessor_class_longitudes.cc | 44 +++++++++++-------- .../grib_accessor_class_number_of_points.cc | 25 ++++++----- ...grib_accessor_class_octahedral_gaussian.cc | 20 +++++---- .../grib_accessor_class_smart_table_column.cc | 32 ++++++++------ .../grib_accessor_class_statistics.cc | 44 +++++++++++-------- ...grib_accessor_class_statistics_spectral.cc | 39 +++++++++------- src/accessor/grib_accessor_class_sum.cc | 42 ++++++++++-------- src/accessor/grib_accessor_class_time.cc | 24 +++++----- src/accessor/grib_accessor_class_to_double.cc | 41 ++++++++++------- .../grib_accessor_class_to_integer.cc | 44 ++++++++++++------- src/accessor/grib_accessor_class_to_string.cc | 33 +++++++++----- .../grib_accessor_class_transient_darray.cc | 35 +++++++++------ src/accessor/grib_accessor_class_trim.cc | 39 +++++++++------- 14 files changed, 285 insertions(+), 196 deletions(-) diff --git a/src/accessor/grib_accessor_class_g2date.cc b/src/accessor/grib_accessor_class_g2date.cc index 238da76f7..827df44df 100644 --- a/src/accessor/grib_accessor_class_g2date.cc +++ b/src/accessor/grib_accessor_class_g2date.cc @@ -11,23 +11,25 @@ #include "grib_accessor_class_g2date.h" -grib_accessor_class_g2date_t _grib_accessor_class_g2date{"g2date"}; +grib_accessor_class_g2date_t _grib_accessor_class_g2date{ "g2date" }; grib_accessor_class* grib_accessor_class_g2date = &_grib_accessor_class_g2date; -void grib_accessor_class_g2date_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g2date_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); grib_accessor_g2date_t* self = (grib_accessor_g2date_t*)a; - int n = 0; + int n = 0; self->year = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->month = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->day = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); } -int grib_accessor_class_g2date_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_g2date_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ const grib_accessor_g2date_t* self = (grib_accessor_g2date_t*)a; - int ret = 0; + int ret = 0; long year = 0; long month = 0; long day = 0; @@ -47,11 +49,12 @@ int grib_accessor_class_g2date_t::unpack_long(grib_accessor* a, long* val, size_ return GRIB_SUCCESS; } -int grib_accessor_class_g2date_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_g2date_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ const grib_accessor_g2date_t* self = (grib_accessor_g2date_t*)a; - int ret = GRIB_SUCCESS; - long v = val[0]; + int ret = GRIB_SUCCESS; + long v = val[0]; long year = 0; long month = 0; long day = 0; diff --git a/src/accessor/grib_accessor_class_longitudes.cc b/src/accessor/grib_accessor_class_longitudes.cc index a9ae31309..80e4e2e7b 100644 --- a/src/accessor/grib_accessor_class_longitudes.cc +++ b/src/accessor/grib_accessor_class_longitudes.cc @@ -11,13 +11,14 @@ #include "grib_accessor_class_longitudes.h" -grib_accessor_class_longitudes_t _grib_accessor_class_longitudes{"longitudes"}; +grib_accessor_class_longitudes_t _grib_accessor_class_longitudes{ "longitudes" }; grib_accessor_class* grib_accessor_class_longitudes = &_grib_accessor_class_longitudes; static int get_distinct(grib_accessor* a, double** val, long* len); int compare_doubles(const void* a, const void* b); -void grib_accessor_class_longitudes_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_longitudes_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); grib_accessor_longitudes_t* self = (grib_accessor_longitudes_t*)a; int n = 0; @@ -30,18 +31,20 @@ void grib_accessor_class_longitudes_t::init(grib_accessor* a, const long l, grib a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_longitudes_t::unpack_double(grib_accessor* a, double* val, size_t* len){ - grib_context* c = a->context; +int grib_accessor_class_longitudes_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_longitudes_t* self = (grib_accessor_longitudes_t*)a; - int ret = 0; - double* v = val; - double dummyLat = 0; - size_t size = 0; - long count = 0; + + grib_context* c = a->context; + int ret = 0; + double* v = val; + double dummyLat = 0; + size_t size = 0; + long count = 0; grib_iterator* iter = NULL; self->save = 1; - ret = value_count(a, &count); + ret = value_count(a, &count); if (ret) return ret; size = count; @@ -84,11 +87,12 @@ int grib_accessor_class_longitudes_t::unpack_double(grib_accessor* a, double* va return ret; } -int grib_accessor_class_longitudes_t::value_count(grib_accessor* a, long* len){ +int grib_accessor_class_longitudes_t::value_count(grib_accessor* a, long* len) +{ grib_accessor_longitudes_t* self = (grib_accessor_longitudes_t*)a; - grib_handle* h = grib_handle_of_accessor(a); - grib_context* c = a->context; - double* val = NULL; + grib_handle* h = grib_handle_of_accessor(a); + grib_context* c = a->context; + double* val = NULL; int ret; size_t size; *len = 0; @@ -121,15 +125,16 @@ int grib_accessor_class_longitudes_t::value_count(grib_accessor* a, long* len){ return ret; } -static int get_distinct(grib_accessor* a, double** val, long* len){ +static int get_distinct(grib_accessor* a, double** val, long* len) +{ long count = 0; double prev; double* v = NULL; double* v1 = NULL; double dummyLat = 0; - int ret = 0; - size_t size = *len; - grib_context* c = a->context; + int ret = 0; + size_t size = *len; + grib_context* c = a->context; // Performance: We do not need the values to be decoded grib_iterator* iter = grib_iterator_new(grib_handle_of_accessor(a), GRIB_GEOITERATOR_NO_VALUES, &ret); @@ -177,7 +182,8 @@ static int get_distinct(grib_accessor* a, double** val, long* len){ return GRIB_SUCCESS; } -int compare_doubles(const void* a, const void* b){ +int compare_doubles(const void* a, const void* b) +{ double* arg1 = (double*)a; double* arg2 = (double*)b; if (*arg1 < *arg2) diff --git a/src/accessor/grib_accessor_class_number_of_points.cc b/src/accessor/grib_accessor_class_number_of_points.cc index c1b63f2a2..d12eabeae 100644 --- a/src/accessor/grib_accessor_class_number_of_points.cc +++ b/src/accessor/grib_accessor_class_number_of_points.cc @@ -11,34 +11,37 @@ #include "grib_accessor_class_number_of_points.h" -grib_accessor_class_number_of_points_t _grib_accessor_class_number_of_points{"number_of_points"}; +grib_accessor_class_number_of_points_t _grib_accessor_class_number_of_points{ "number_of_points" }; grib_accessor_class* grib_accessor_class_number_of_points = &_grib_accessor_class_number_of_points; -void grib_accessor_class_number_of_points_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_number_of_points_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); int n = 0; grib_handle* hand = grib_handle_of_accessor(a); grib_accessor_number_of_points_t* self = (grib_accessor_number_of_points_t*)a; - self->ni = grib_arguments_get_name(hand, c, n++); - self->nj = grib_arguments_get_name(hand, c, n++); - self->plpresent = grib_arguments_get_name(hand, c, n++); - self->pl = grib_arguments_get_name(hand, c, n++); + + self->ni = grib_arguments_get_name(hand, c, n++); + self->nj = grib_arguments_get_name(hand, c, n++); + self->plpresent = grib_arguments_get_name(hand, c, n++); + self->pl = grib_arguments_get_name(hand, c, n++); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; a->flags |= GRIB_ACCESSOR_FLAG_FUNCTION; a->length = 0; } -int grib_accessor_class_number_of_points_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_number_of_points_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_number_of_points_t* self = (grib_accessor_number_of_points_t*)a; int ret = GRIB_SUCCESS; long ni = 0, nj = 0, plpresent = 0; - size_t plsize = 0; - long* pl = NULL; - int i = 0; - grib_context* c = a->context; + size_t plsize = 0; + long* pl = NULL; + int i = 0; + grib_context* c = a->context; grib_handle* hand = grib_handle_of_accessor(a); if ((ret = grib_get_long_internal(hand, self->ni, &ni)) != GRIB_SUCCESS) diff --git a/src/accessor/grib_accessor_class_octahedral_gaussian.cc b/src/accessor/grib_accessor_class_octahedral_gaussian.cc index 8c556e84a..eda90763f 100644 --- a/src/accessor/grib_accessor_class_octahedral_gaussian.cc +++ b/src/accessor/grib_accessor_class_octahedral_gaussian.cc @@ -11,15 +11,16 @@ #include "grib_accessor_class_octahedral_gaussian.h" -grib_accessor_class_octahedral_gaussian_t _grib_accessor_class_octahedral_gaussian{"octahedral_gaussian"}; +grib_accessor_class_octahedral_gaussian_t _grib_accessor_class_octahedral_gaussian{ "octahedral_gaussian" }; grib_accessor_class* grib_accessor_class_octahedral_gaussian = &_grib_accessor_class_octahedral_gaussian; -void grib_accessor_class_octahedral_gaussian_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_octahedral_gaussian_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); grib_accessor_octahedral_gaussian_t* self = (grib_accessor_octahedral_gaussian_t*)a; - int n = 0; - grib_handle* hand = grib_handle_of_accessor(a); + int n = 0; + grib_handle* hand = grib_handle_of_accessor(a); self->N = grib_arguments_get_name(hand, c, n++); self->Ni = grib_arguments_get_name(hand, c, n++); @@ -36,7 +37,8 @@ void grib_accessor_class_octahedral_gaussian_t::init(grib_accessor* a, const lon * -4 ..-4 All below equator * Anything else is considered not octahedral */ -static int is_pl_octahedral(const long pl[], size_t size){ +static int is_pl_octahedral(const long pl[], size_t size) +{ long i; long prev_diff = -1; for (i = 1; i < size; ++i) { @@ -69,9 +71,10 @@ static int is_pl_octahedral(const long pl[], size_t size){ return 1; /* it's octahedral */ } -int grib_accessor_class_octahedral_gaussian_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_octahedral_gaussian_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_octahedral_gaussian_t* self = (grib_accessor_octahedral_gaussian_t*)a; - int ret = GRIB_SUCCESS; + int ret = GRIB_SUCCESS; long Ni; long plpresent = 0; long* pl = NULL; /* pl array */ @@ -115,6 +118,7 @@ int grib_accessor_class_octahedral_gaussian_t::unpack_long(grib_accessor* a, lon return ret; } -int grib_accessor_class_octahedral_gaussian_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_octahedral_gaussian_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } diff --git a/src/accessor/grib_accessor_class_smart_table_column.cc b/src/accessor/grib_accessor_class_smart_table_column.cc index 7d352471d..d9d44bc49 100644 --- a/src/accessor/grib_accessor_class_smart_table_column.cc +++ b/src/accessor/grib_accessor_class_smart_table_column.cc @@ -12,24 +12,25 @@ #include "grib_accessor_class_smart_table_column.h" #include "grib_accessor_class_smart_table.h" -grib_accessor_class_smart_table_column_t _grib_accessor_class_smart_table_column{"smart_table_column"}; +grib_accessor_class_smart_table_column_t _grib_accessor_class_smart_table_column{ "smart_table_column" }; grib_accessor_class* grib_accessor_class_smart_table_column = &_grib_accessor_class_smart_table_column; - -void grib_accessor_class_smart_table_column_t::init(grib_accessor* a, const long len, grib_arguments* params){ +void grib_accessor_class_smart_table_column_t::init(grib_accessor* a, const long len, grib_arguments* params) +{ grib_accessor_class_gen_t::init(a, len, params); int n = 0; grib_accessor_smart_table_column_t* self = (grib_accessor_smart_table_column_t*)a; self->smartTable = grib_arguments_get_name(grib_handle_of_accessor(a), params, n++); - self->index = grib_arguments_get_long(grib_handle_of_accessor(a), params, n++); + self->index = grib_arguments_get_long(grib_handle_of_accessor(a), params, n++); a->length = 0; a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -void grib_accessor_class_smart_table_column_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_smart_table_column_t::dump(grib_accessor* a, grib_dumper* dumper) +{ int type = get_native_type(a); switch (type) { @@ -42,7 +43,8 @@ void grib_accessor_class_smart_table_column_t::dump(grib_accessor* a, grib_dumpe } } -int grib_accessor_class_smart_table_column_t::unpack_string_array(grib_accessor* a, char** buffer, size_t* len){ +int grib_accessor_class_smart_table_column_t::unpack_string_array(grib_accessor* a, char** buffer, size_t* len) +{ grib_accessor_smart_table_column_t* self = (grib_accessor_smart_table_column_t*)a; grib_accessor_smart_table_t* tableAccessor = NULL; grib_smart_table* table = NULL; @@ -96,7 +98,8 @@ int grib_accessor_class_smart_table_column_t::unpack_string_array(grib_accessor* return GRIB_SUCCESS; } -int grib_accessor_class_smart_table_column_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_smart_table_column_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_smart_table_column_t* self = (grib_accessor_smart_table_column_t*)a; grib_accessor_smart_table_t* tableAccessor = NULL; grib_smart_table* table = NULL; @@ -146,21 +149,23 @@ int grib_accessor_class_smart_table_column_t::unpack_long(grib_accessor* a, long return GRIB_SUCCESS; } -int grib_accessor_class_smart_table_column_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_smart_table_column_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_smart_table_column_t* self = (grib_accessor_smart_table_column_t*)a; size_t size = 0; - int err = 0; - *count = 0; + int err = 0; + *count = 0; if (!self->smartTable) return 0; - err = grib_get_size(grib_handle_of_accessor(a), self->smartTable, &size); + err = grib_get_size(grib_handle_of_accessor(a), self->smartTable, &size); *count = size; return err; } -void grib_accessor_class_smart_table_column_t::destroy(grib_context* context, grib_accessor* a){ +void grib_accessor_class_smart_table_column_t::destroy(grib_context* context, grib_accessor* a) +{ if (a->vvalue != NULL) { grib_context_free(context, a->vvalue); a->vvalue = NULL; @@ -169,7 +174,8 @@ void grib_accessor_class_smart_table_column_t::destroy(grib_context* context, gr grib_accessor_class_gen_t::destroy(context, a); } -int grib_accessor_class_smart_table_column_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_smart_table_column_t::get_native_type(grib_accessor* a) +{ int type = GRIB_TYPE_LONG; /*printf("---------- %s flags=%ld GRIB_ACCESSOR_FLAG_STRING_TYPE=%d\n", a->name,a->flags,GRIB_ACCESSOR_FLAG_STRING_TYPE);*/ diff --git a/src/accessor/grib_accessor_class_statistics.cc b/src/accessor/grib_accessor_class_statistics.cc index 2d5cfd756..1e56f8a12 100644 --- a/src/accessor/grib_accessor_class_statistics.cc +++ b/src/accessor/grib_accessor_class_statistics.cc @@ -11,14 +11,15 @@ #include "grib_accessor_class_statistics.h" -grib_accessor_class_statistics_t _grib_accessor_class_statistics{"statistics"}; +grib_accessor_class_statistics_t _grib_accessor_class_statistics{ "statistics" }; grib_accessor_class* grib_accessor_class_statistics = &_grib_accessor_class_statistics; -void grib_accessor_class_statistics_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_statistics_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_abstract_vector_t::init(a, l, c); grib_accessor_statistics_t* self = (grib_accessor_statistics_t*)a; - int n = 0; + int n = 0; self->missing_value = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->values = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); @@ -27,24 +28,24 @@ void grib_accessor_class_statistics_t::init(grib_accessor* a, const long l, grib a->flags |= GRIB_ACCESSOR_FLAG_HIDDEN; self->number_of_elements = 8; - self->v = (double*)grib_context_malloc(a->context, - sizeof(double) * self->number_of_elements); + self->v = (double*)grib_context_malloc(a->context, sizeof(double) * self->number_of_elements); a->length = 0; a->dirty = 1; } -int grib_accessor_class_statistics_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_statistics_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_statistics_t* self = (grib_accessor_statistics_t*)a; int ret = 0; double* values = NULL; size_t i = 0, size = 0, real_size = 0; double max, min, avg, sd, value, skew, kurt, m2 = 0, m3 = 0, m4 = 0; - double missing = 0; + double missing = 0; long missingValuesPresent = 0; size_t number_of_missing = 0; - grib_context* c = a->context; - grib_handle* h = grib_handle_of_accessor(a); + grib_context* c = a->context; + grib_handle* h = grib_handle_of_accessor(a); if (!a->dirty) return GRIB_SUCCESS; @@ -166,19 +167,22 @@ int grib_accessor_class_statistics_t::unpack_double(grib_accessor* a, double* va return ret; } -int grib_accessor_class_statistics_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_statistics_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_statistics_t* self = (grib_accessor_statistics_t*)a; - *count = self->number_of_elements; + *count = self->number_of_elements; return 0; } -void grib_accessor_class_statistics_t::destroy(grib_context* c, grib_accessor* a){ +void grib_accessor_class_statistics_t::destroy(grib_context* c, grib_accessor* a) +{ grib_accessor_statistics_t* self = (grib_accessor_statistics_t*)a; grib_context_free(c, self->v); grib_accessor_class_abstract_vector_t::destroy(c, a); } -int grib_accessor_class_statistics_t::compare(grib_accessor* a, grib_accessor* b){ +int grib_accessor_class_statistics_t::compare(grib_accessor* a, grib_accessor* b) +{ int retval = GRIB_SUCCESS; double* aval = 0; double* bval = 0; @@ -188,11 +192,13 @@ int grib_accessor_class_statistics_t::compare(grib_accessor* a, grib_accessor* b int err = 0; long count = 0; - err = a->value_count(&count); if (err) + err = a->value_count(&count); + if (err) return err; alen = count; - err = b->value_count(&count); if (err) + err = b->value_count(&count); + if (err) return err; blen = count; @@ -205,9 +211,10 @@ int grib_accessor_class_statistics_t::compare(grib_accessor* a, grib_accessor* b b->dirty = 1; a->dirty = 1; - a->unpack_double(aval, &alen); b->unpack_double(bval, &blen); + a->unpack_double(aval, &alen); + b->unpack_double(bval, &blen); retval = GRIB_SUCCESS; - for (size_t i=0; ivalues = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->J = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); @@ -30,14 +31,14 @@ void grib_accessor_class_statistics_spectral_t::init(grib_accessor* a, const lon a->flags |= GRIB_ACCESSOR_FLAG_FUNCTION; self->number_of_elements = 4; - self->v = (double*)grib_context_malloc(a->context, - sizeof(double) * self->number_of_elements); + self->v = (double*)grib_context_malloc(a->context, sizeof(double) * self->number_of_elements); a->length = 0; a->dirty = 1; } -int grib_accessor_class_statistics_spectral_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_statistics_spectral_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_statistics_spectral_t* self = (grib_accessor_statistics_spectral_t*)a; int ret = 0, i = 0; double* values; @@ -85,8 +86,8 @@ int grib_accessor_class_statistics_spectral_t::unpack_double(grib_accessor* a, d return ret; } - avg = values[0]; - sd = 0; + avg = values[0]; + sd = 0; for (i = 2; i < 2 * J; i += 2) sd += values[i] * values[i]; @@ -114,19 +115,22 @@ int grib_accessor_class_statistics_spectral_t::unpack_double(grib_accessor* a, d return ret; } -int grib_accessor_class_statistics_spectral_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_statistics_spectral_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_statistics_spectral_t* self = (grib_accessor_statistics_spectral_t*)a; - *count = self->number_of_elements; + *count = self->number_of_elements; return 0; } -void grib_accessor_class_statistics_spectral_t::destroy(grib_context* c, grib_accessor* a){ +void grib_accessor_class_statistics_spectral_t::destroy(grib_context* c, grib_accessor* a) +{ grib_accessor_statistics_spectral_t* self = (grib_accessor_statistics_spectral_t*)a; grib_context_free(c, self->v); grib_accessor_class_abstract_vector_t::destroy(c, a); } -int grib_accessor_class_statistics_spectral_t::compare(grib_accessor* a, grib_accessor* b){ +int grib_accessor_class_statistics_spectral_t::compare(grib_accessor* a, grib_accessor* b) +{ int retval = GRIB_SUCCESS; double* aval = 0; double* bval = 0; @@ -136,11 +140,13 @@ int grib_accessor_class_statistics_spectral_t::compare(grib_accessor* a, grib_ac int err = 0; long count = 0; - err = a->value_count(&count); if (err) + err = a->value_count(&count); + if (err) return err; alen = count; - err = b->value_count(&count); if (err) + err = b->value_count(&count); + if (err) return err; blen = count; @@ -153,9 +159,10 @@ int grib_accessor_class_statistics_spectral_t::compare(grib_accessor* a, grib_ac b->dirty = 1; a->dirty = 1; - a->unpack_double(aval, &alen); b->unpack_double(bval, &blen); + a->unpack_double(aval, &alen); + b->unpack_double(bval, &blen); retval = GRIB_SUCCESS; - for (size_t i=0; ivalues = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - a->length = 0; + int n = 0; + self->values = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + a->length = 0; a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_sum_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_sum_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_sum_t* self = (grib_accessor_sum_t*)a; - int ret = 0; - size_t size = 0; - long* values = 0; - long i; - long count = 0; + int ret = 0; + size_t size = 0; + long* values = 0; + size_t i = 0; + long count = 0; ret = value_count(a, &count); if (ret) @@ -56,12 +58,13 @@ int grib_accessor_class_sum_t::unpack_long(grib_accessor* a, long* val, size_t* return GRIB_SUCCESS; } -int grib_accessor_class_sum_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_sum_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_sum_t* self = (grib_accessor_sum_t*)a; - int ret = 0; - size_t size = 0; - double* values = 0; - long i; + int ret = 0; + size_t size = 0; + double* values = 0; + size_t i = 0; long count = 0; ret = value_count(a, &count); @@ -91,10 +94,11 @@ int grib_accessor_class_sum_t::unpack_double(grib_accessor* a, double* val, size return GRIB_SUCCESS; } -int grib_accessor_class_sum_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_sum_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_sum_t* self = (grib_accessor_sum_t*)a; - size_t n = 0; - int ret = 0; + size_t n = 0; + int ret = GRIB_SUCCESS; ret = grib_get_size(grib_handle_of_accessor(a), self->values, &n); *count = n; diff --git a/src/accessor/grib_accessor_class_time.cc b/src/accessor/grib_accessor_class_time.cc index debb1a2f4..e70fc3d49 100644 --- a/src/accessor/grib_accessor_class_time.cc +++ b/src/accessor/grib_accessor_class_time.cc @@ -11,25 +11,27 @@ #include "grib_accessor_class_time.h" -grib_accessor_class_time_t _grib_accessor_class_time{"time"}; +grib_accessor_class_time_t _grib_accessor_class_time{ "time" }; grib_accessor_class* grib_accessor_class_time = &_grib_accessor_class_time; -void grib_accessor_class_time_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_time_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); grib_accessor_time_t* self = (grib_accessor_time_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - int n = 0; + grib_handle* hand = grib_handle_of_accessor(a); + int n = 0; self->hour = grib_arguments_get_name(hand, c, n++); self->minute = grib_arguments_get_name(hand, c, n++); self->second = grib_arguments_get_name(hand, c, n++); } -int grib_accessor_class_time_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_time_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ const grib_accessor_time_t* self = (grib_accessor_time_t*)a; - int ret = 0; + int ret = 0; long hour = 0, minute = 0, second = 0; grib_handle* hand = grib_handle_of_accessor(a); @@ -43,7 +45,7 @@ int grib_accessor_class_time_t::unpack_long(grib_accessor* a, long* val, size_t* /* We ignore the 'seconds' in our time calculation! */ if (second != 0) { grib_context_log(a->context, GRIB_LOG_ERROR, - "Key %s (%s): Truncating time: non-zero seconds(%ld) ignored", a->name, __func__, second); + "Key %s (%s): Truncating time: non-zero seconds(%ld) ignored", a->name, __func__, second); } if (*len < 1) @@ -60,11 +62,12 @@ int grib_accessor_class_time_t::unpack_long(grib_accessor* a, long* val, size_t* return GRIB_SUCCESS; } -int grib_accessor_class_time_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_time_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ const grib_accessor_time_t* self = (grib_accessor_time_t*)a; int ret = 0; - long v = val[0]; + long v = val[0]; grib_handle* hand = grib_handle_of_accessor(a); long hour = 0, minute = 0, second = 0; @@ -92,7 +95,8 @@ int grib_accessor_class_time_t::pack_long(grib_accessor* a, const long* val, siz return GRIB_SUCCESS; } -int grib_accessor_class_time_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_time_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ long v = 0; size_t lsize = 1, lmin = 5; diff --git a/src/accessor/grib_accessor_class_to_double.cc b/src/accessor/grib_accessor_class_to_double.cc index 854a32ffc..2983be487 100644 --- a/src/accessor/grib_accessor_class_to_double.cc +++ b/src/accessor/grib_accessor_class_to_double.cc @@ -11,11 +11,12 @@ #include "grib_accessor_class_to_double.h" -grib_accessor_class_to_double_t _grib_accessor_class_to_double{"to_double"}; +grib_accessor_class_to_double_t _grib_accessor_class_to_double{ "to_double" }; grib_accessor_class* grib_accessor_class_to_double = &_grib_accessor_class_to_double; -void grib_accessor_class_to_double_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_to_double_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); grib_accessor_to_double_t* self = (grib_accessor_to_double_t*)a; @@ -30,9 +31,10 @@ void grib_accessor_class_to_double_t::init(grib_accessor* a, const long len, gri a->length = 0; } -int grib_accessor_class_to_double_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_to_double_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_to_double_t* self = (grib_accessor_to_double_t*)a; - size_t size = 0; + size_t size = 0; int err = grib_get_size(grib_handle_of_accessor(a), self->key, &size); *count = size; @@ -40,9 +42,10 @@ int grib_accessor_class_to_double_t::value_count(grib_accessor* a, long* count){ return err; } -size_t grib_accessor_class_to_double_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_to_double_t::string_length(grib_accessor* a) +{ grib_accessor_to_double_t* self = (grib_accessor_to_double_t*)a; - size_t size = 0; + size_t size = 0; if (self->length) return self->length; @@ -51,25 +54,28 @@ size_t grib_accessor_class_to_double_t::string_length(grib_accessor* a){ return size; } -void grib_accessor_class_to_double_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_to_double_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -int grib_accessor_class_to_double_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_to_double_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } -int grib_accessor_class_to_double_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_to_double_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_to_double_t* self = (grib_accessor_to_double_t*)a; int err = 0; char buff[512] = {0,}; - size_t size = 512; + size_t size = 512; size_t length = string_length(a); if (*len < length + 1) { grib_context_log(a->context, GRIB_LOG_ERROR, "unpack_string: Wrong size (%lu) for %s, it contains %ld values", - *len, a->name, a->length + 1); + *len, a->name, a->length + 1); *len = length + 1; return GRIB_ARRAY_TOO_SMALL; } @@ -89,9 +95,10 @@ int grib_accessor_class_to_double_t::unpack_string(grib_accessor* a, char* val, return err; } -int grib_accessor_class_to_double_t::unpack_long(grib_accessor* a, long* v, size_t* len){ +int grib_accessor_class_to_double_t::unpack_long(grib_accessor* a, long* v, size_t* len) +{ grib_accessor_to_double_t* self = (grib_accessor_to_double_t*)a; - char val[1024] = {0,}; + char val[1024] = {0,}; size_t l = sizeof(val); char* last = NULL; int err = a->unpack_string(val, &l); @@ -107,9 +114,10 @@ int grib_accessor_class_to_double_t::unpack_long(grib_accessor* a, long* v, size return err; } -int grib_accessor_class_to_double_t::unpack_double(grib_accessor* a, double* v, size_t* len){ +int grib_accessor_class_to_double_t::unpack_double(grib_accessor* a, double* v, size_t* len) +{ grib_accessor_to_double_t* self = (grib_accessor_to_double_t*)a; - char val[1024] = {0,}; + char val[1024] = {0,}; size_t l = sizeof(val); char* last = NULL; int err = a->unpack_string(val, &l); @@ -125,6 +133,7 @@ int grib_accessor_class_to_double_t::unpack_double(grib_accessor* a, double* v, return err; } -long grib_accessor_class_to_double_t::next_offset(grib_accessor* a){ +long grib_accessor_class_to_double_t::next_offset(grib_accessor* a) +{ return a->offset + a->length; } diff --git a/src/accessor/grib_accessor_class_to_integer.cc b/src/accessor/grib_accessor_class_to_integer.cc index bc58f31c6..a4b621b8d 100644 --- a/src/accessor/grib_accessor_class_to_integer.cc +++ b/src/accessor/grib_accessor_class_to_integer.cc @@ -11,11 +11,12 @@ #include "grib_accessor_class_to_integer.h" -grib_accessor_class_to_integer_t _grib_accessor_class_to_integer{"to_integer"}; +grib_accessor_class_to_integer_t _grib_accessor_class_to_integer{ "to_integer" }; grib_accessor_class* grib_accessor_class_to_integer = &_grib_accessor_class_to_integer; -void grib_accessor_class_to_integer_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_to_integer_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); grib_accessor_to_integer_t* self = (grib_accessor_to_integer_t*)a; @@ -27,9 +28,10 @@ void grib_accessor_class_to_integer_t::init(grib_accessor* a, const long len, gr a->length = 0; } -int grib_accessor_class_to_integer_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_to_integer_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_to_integer_t* self = (grib_accessor_to_integer_t*)a; - size_t size = 0; + size_t size = 0; int err = grib_get_size(grib_handle_of_accessor(a), self->key, &size); *count = size; @@ -37,9 +39,10 @@ int grib_accessor_class_to_integer_t::value_count(grib_accessor* a, long* count) return err; } -size_t grib_accessor_class_to_integer_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_to_integer_t::string_length(grib_accessor* a) +{ grib_accessor_to_integer_t* self = (grib_accessor_to_integer_t*)a; - size_t size = 0; + size_t size = 0; if (self->length) return self->length; @@ -48,15 +51,18 @@ size_t grib_accessor_class_to_integer_t::string_length(grib_accessor* a){ return size; } -void grib_accessor_class_to_integer_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_to_integer_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_long(dumper, a, NULL); } -int grib_accessor_class_to_integer_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_to_integer_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } -int grib_accessor_class_to_integer_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_to_integer_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_to_integer_t* self = (grib_accessor_to_integer_t*)a; int err = 0; @@ -69,7 +75,7 @@ int grib_accessor_class_to_integer_t::unpack_string(grib_accessor* a, char* val, const char* cclass_name = a->cclass->name; grib_context_log(a->context, GRIB_LOG_ERROR, "%s: Buffer too small for %s. It is %zu bytes long (len=%zu)", - cclass_name, a->name, length+1, *len); + cclass_name, a->name, length + 1, *len); *len = length + 1; return GRIB_BUFFER_TOO_SMALL; } @@ -89,21 +95,25 @@ int grib_accessor_class_to_integer_t::unpack_string(grib_accessor* a, char* val, return GRIB_SUCCESS; } -int grib_accessor_class_to_integer_t::pack_string(grib_accessor* a, const char* val, size_t* len){ +int grib_accessor_class_to_integer_t::pack_string(grib_accessor* a, const char* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_to_integer_t::pack_long(grib_accessor* a, const long* v, size_t* len){ +int grib_accessor_class_to_integer_t::pack_long(grib_accessor* a, const long* v, size_t* len) +{ grib_context_log(a->context, GRIB_LOG_ERROR, "Should not pack %s as an integer", a->name); return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_to_integer_t::pack_double(grib_accessor* a, const double* v, size_t* len){ +int grib_accessor_class_to_integer_t::pack_double(grib_accessor* a, const double* v, size_t* len) +{ grib_context_log(a->context, GRIB_LOG_ERROR, "Should not pack %s as a double", a->name); return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_to_integer_t::unpack_long(grib_accessor* a, long* v, size_t* len){ +int grib_accessor_class_to_integer_t::unpack_long(grib_accessor* a, long* v, size_t* len) +{ char val[1024] = {0,}; size_t l = sizeof(val); char* last = NULL; @@ -118,7 +128,8 @@ int grib_accessor_class_to_integer_t::unpack_long(grib_accessor* a, long* v, siz return GRIB_SUCCESS; } -int grib_accessor_class_to_integer_t::unpack_double(grib_accessor* a, double* v, size_t* len){ +int grib_accessor_class_to_integer_t::unpack_double(grib_accessor* a, double* v, size_t* len) +{ size_t l = 1; long val = 0; int err = unpack_long(a, &val, &l); @@ -127,6 +138,7 @@ int grib_accessor_class_to_integer_t::unpack_double(grib_accessor* a, double* v, return err; } -long grib_accessor_class_to_integer_t::next_offset(grib_accessor* a){ +long grib_accessor_class_to_integer_t::next_offset(grib_accessor* a) +{ return a->offset + a->length; } diff --git a/src/accessor/grib_accessor_class_to_string.cc b/src/accessor/grib_accessor_class_to_string.cc index 4f1150ffb..d0fd72727 100644 --- a/src/accessor/grib_accessor_class_to_string.cc +++ b/src/accessor/grib_accessor_class_to_string.cc @@ -11,11 +11,12 @@ #include "grib_accessor_class_to_string.h" -grib_accessor_class_to_string_t _grib_accessor_class_to_string{"to_string"}; +grib_accessor_class_to_string_t _grib_accessor_class_to_string{ "to_string" }; grib_accessor_class* grib_accessor_class_to_string = &_grib_accessor_class_to_string; -void grib_accessor_class_to_string_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_to_string_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); grib_accessor_to_string_t* self = (grib_accessor_to_string_t*)a; @@ -27,9 +28,10 @@ void grib_accessor_class_to_string_t::init(grib_accessor* a, const long len, gri a->length = 0; } -int grib_accessor_class_to_string_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_to_string_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_to_string_t* self = (grib_accessor_to_string_t*)a; - size_t size = 0; + size_t size = 0; int err = grib_get_size(grib_handle_of_accessor(a), self->key, &size); *count = size; @@ -37,7 +39,8 @@ int grib_accessor_class_to_string_t::value_count(grib_accessor* a, long* count){ return err; } -size_t grib_accessor_class_to_string_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_to_string_t::string_length(grib_accessor* a) +{ grib_accessor_to_string_t* self = (grib_accessor_to_string_t*)a; if (self->length) @@ -48,15 +51,18 @@ size_t grib_accessor_class_to_string_t::string_length(grib_accessor* a){ return size; } -void grib_accessor_class_to_string_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_to_string_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -int grib_accessor_class_to_string_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_to_string_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_STRING; } -int grib_accessor_class_to_string_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_to_string_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_to_string_t* self = (grib_accessor_to_string_t*)a; int err = 0; @@ -68,7 +74,7 @@ int grib_accessor_class_to_string_t::unpack_string(grib_accessor* a, char* val, const char* cclass_name = a->cclass->name; grib_context_log(a->context, GRIB_LOG_ERROR, "%s: Buffer too small for %s. It is %zu bytes long (len=%zu)", - cclass_name, a->name, length+1, *len); + cclass_name, a->name, length + 1, *len); *len = length + 1; return GRIB_BUFFER_TOO_SMALL; } @@ -89,7 +95,8 @@ int grib_accessor_class_to_string_t::unpack_string(grib_accessor* a, char* val, return GRIB_SUCCESS; } -int grib_accessor_class_to_string_t::unpack_long(grib_accessor* a, long* v, size_t* len){ +int grib_accessor_class_to_string_t::unpack_long(grib_accessor* a, long* v, size_t* len) +{ char val[1024] = {0,}; size_t l = sizeof(val); char* last = NULL; @@ -106,7 +113,8 @@ int grib_accessor_class_to_string_t::unpack_long(grib_accessor* a, long* v, size return err; } -int grib_accessor_class_to_string_t::unpack_double(grib_accessor* a, double* v, size_t* len){ +int grib_accessor_class_to_string_t::unpack_double(grib_accessor* a, double* v, size_t* len) +{ size_t l = 1; long val = 0; int err = unpack_long(a, &val, &l); @@ -115,6 +123,7 @@ int grib_accessor_class_to_string_t::unpack_double(grib_accessor* a, double* v, return err; } -long grib_accessor_class_to_string_t::next_offset(grib_accessor* a){ +long grib_accessor_class_to_string_t::next_offset(grib_accessor* a) +{ return a->offset + a->length; } diff --git a/src/accessor/grib_accessor_class_transient_darray.cc b/src/accessor/grib_accessor_class_transient_darray.cc index d45ec3478..71d404f0d 100644 --- a/src/accessor/grib_accessor_class_transient_darray.cc +++ b/src/accessor/grib_accessor_class_transient_darray.cc @@ -11,23 +11,26 @@ #include "grib_accessor_class_transient_darray.h" -grib_accessor_class_transient_darray_t _grib_accessor_class_transient_darray{"transient_darray"}; +grib_accessor_class_transient_darray_t _grib_accessor_class_transient_darray{ "transient_darray" }; grib_accessor_class* grib_accessor_class_transient_darray = &_grib_accessor_class_transient_darray; -void grib_accessor_class_transient_darray_t::init(grib_accessor* a, const long length, grib_arguments* args){ +void grib_accessor_class_transient_darray_t::init(grib_accessor* a, const long length, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, length, args); grib_accessor_transient_darray_t* self = (grib_accessor_transient_darray_t*)a; - self->arr = NULL; - self->type = GRIB_TYPE_DOUBLE; - a->length = 0; + self->arr = NULL; + self->type = GRIB_TYPE_DOUBLE; + a->length = 0; } -void grib_accessor_class_transient_darray_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_transient_darray_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_double(dumper, a, NULL); } -int grib_accessor_class_transient_darray_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_transient_darray_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_transient_darray_t* self = (grib_accessor_transient_darray_t*)a; if (self->arr) @@ -40,7 +43,8 @@ int grib_accessor_class_transient_darray_t::pack_double(grib_accessor* a, const return GRIB_SUCCESS; } -int grib_accessor_class_transient_darray_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_transient_darray_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_transient_darray_t* self = (grib_accessor_transient_darray_t*)a; if (self->arr) @@ -53,7 +57,8 @@ int grib_accessor_class_transient_darray_t::pack_long(grib_accessor* a, const lo return GRIB_SUCCESS; } -int grib_accessor_class_transient_darray_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_transient_darray_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_transient_darray_t* self = (grib_accessor_transient_darray_t*)a; long count = 0; @@ -71,7 +76,8 @@ int grib_accessor_class_transient_darray_t::unpack_double(grib_accessor* a, doub return GRIB_SUCCESS; } -int grib_accessor_class_transient_darray_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_transient_darray_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_transient_darray_t* self = (grib_accessor_transient_darray_t*)a; long count = 0; @@ -89,14 +95,16 @@ int grib_accessor_class_transient_darray_t::unpack_long(grib_accessor* a, long* return GRIB_SUCCESS; } -void grib_accessor_class_transient_darray_t::destroy(grib_context* c, grib_accessor* a){ +void grib_accessor_class_transient_darray_t::destroy(grib_context* c, grib_accessor* a) +{ grib_accessor_transient_darray_t* self = (grib_accessor_transient_darray_t*)a; if (self->arr) grib_darray_delete(a->context, self->arr); grib_accessor_class_gen_t::destroy(c, a); } -int grib_accessor_class_transient_darray_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_transient_darray_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_transient_darray_t* self = (grib_accessor_transient_darray_t*)a; if (self->arr) *count = grib_darray_used_size(self->arr); @@ -106,7 +114,8 @@ int grib_accessor_class_transient_darray_t::value_count(grib_accessor* a, long* return 0; } -int grib_accessor_class_transient_darray_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_transient_darray_t::get_native_type(grib_accessor* a) +{ const grib_accessor_transient_darray_t* self = (grib_accessor_transient_darray_t*)a; return self->type; } diff --git a/src/accessor/grib_accessor_class_trim.cc b/src/accessor/grib_accessor_class_trim.cc index a7db4f3ff..7f18a36b9 100644 --- a/src/accessor/grib_accessor_class_trim.cc +++ b/src/accessor/grib_accessor_class_trim.cc @@ -11,31 +11,33 @@ #include "grib_accessor_class_trim.h" -grib_accessor_class_trim_t _grib_accessor_class_trim{"trim"}; +grib_accessor_class_trim_t _grib_accessor_class_trim{ "trim" }; grib_accessor_class* grib_accessor_class_trim = &_grib_accessor_class_trim; -void grib_accessor_class_trim_t::init(grib_accessor* a, const long l, grib_arguments* arg){ +void grib_accessor_class_trim_t::init(grib_accessor* a, const long l, grib_arguments* arg) +{ grib_accessor_class_ascii_t::init(a, l, arg); - int n = 0; + int n = 0; grib_accessor_trim_t* self = (grib_accessor_trim_t*)a; - grib_handle* h = grib_handle_of_accessor(a); + grib_handle* h = grib_handle_of_accessor(a); - self->input = grib_arguments_get_name(h, arg, n++); - self->trim_left = grib_arguments_get_long(h, arg, n++); - self->trim_right= grib_arguments_get_long(h, arg, n++); + self->input = grib_arguments_get_name(h, arg, n++); + self->trim_left = grib_arguments_get_long(h, arg, n++); + self->trim_right = grib_arguments_get_long(h, arg, n++); DEBUG_ASSERT(self->trim_left == 0 || self->trim_left == 1); DEBUG_ASSERT(self->trim_right == 0 || self->trim_right == 1); } -int grib_accessor_class_trim_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_trim_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_trim_t* self = (grib_accessor_trim_t*)a; - int err = 0; - grib_handle* h = grib_handle_of_accessor(a); + int err = 0; + grib_handle* h = grib_handle_of_accessor(a); char input[256] = {0,}; - size_t size = sizeof(input) / sizeof(*input); - char* pInput = input; + size_t size = sizeof(input) / sizeof(*input); + char* pInput = input; err = grib_get_string(h, self->input, input, &size); if (err) return err; @@ -47,15 +49,16 @@ int grib_accessor_class_trim_t::unpack_string(grib_accessor* a, char* val, size_ return GRIB_SUCCESS; } -int grib_accessor_class_trim_t::pack_string(grib_accessor* a, const char* val, size_t* len){ +int grib_accessor_class_trim_t::pack_string(grib_accessor* a, const char* val, size_t* len) +{ char input[256] = {0,}; size_t inputLen = 256; char buf[256] = {0,}; char* pBuf = NULL; int err; - grib_handle* h = grib_handle_of_accessor(a); - grib_accessor_trim_t* self = (grib_accessor_trim_t*)a; + grib_handle* h = grib_handle_of_accessor(a); + grib_accessor_trim_t* self = (grib_accessor_trim_t*)a; grib_accessor* inputAccesstor = grib_find_accessor(h, self->input); if (!inputAccesstor) { grib_context_log(a->context, GRIB_LOG_ERROR, "Accessor for %s not found", self->input); @@ -69,8 +72,10 @@ int grib_accessor_class_trim_t::pack_string(grib_accessor* a, const char* val, s pBuf = buf; string_lrtrim(&pBuf, self->trim_left, self->trim_right); - return inputAccesstor->pack_string(pBuf, len);} + return inputAccesstor->pack_string(pBuf, len); +} -size_t grib_accessor_class_trim_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_trim_t::string_length(grib_accessor* a) +{ return 1024; } From f0a46c9c3c13c1b2a2dc0d2b989639949196bfd1 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 29 Jun 2024 12:50:45 +0100 Subject: [PATCH 019/277] ECC-1809: BUFR: Update tables with the latest WMO V42.0.0 --- definitions/bufr/boot.def | 4 +- .../tables/0/wmo/42/codetables/1003.table | 8 + .../tables/0/wmo/42/codetables/10063.table | 10 + .../tables/0/wmo/42/codetables/10064.table | 4 + .../tables/0/wmo/42/codetables/1007.table | 263 +++ .../tables/0/wmo/42/codetables/1024.table | 9 + .../tables/0/wmo/42/codetables/1028.table | 7 + .../tables/0/wmo/42/codetables/1029.table | 8 + .../tables/0/wmo/42/codetables/1033.table | 240 +++ .../tables/0/wmo/42/codetables/1034.table | 104 + .../tables/0/wmo/42/codetables/1035.table | 308 +++ .../tables/0/wmo/42/codetables/1036.table | 42 + .../tables/0/wmo/42/codetables/1038.table | 7 + .../tables/0/wmo/42/codetables/1044.table | 9 + .../tables/0/wmo/42/codetables/1052.table | 4 + .../tables/0/wmo/42/codetables/1090.table | 5 + .../tables/0/wmo/42/codetables/1092.table | 6 + .../tables/0/wmo/42/codetables/1101.table | 202 ++ .../tables/0/wmo/42/codetables/11030.table | 25 + .../tables/0/wmo/42/codetables/11031.table | 16 + .../tables/0/wmo/42/codetables/11037.table | 30 + .../tables/0/wmo/42/codetables/11038.table | 17 + .../tables/0/wmo/42/codetables/11039.table | 17 + .../tables/0/wmo/42/codetables/1150.table | 7 + .../tables/0/wmo/42/codetables/1151.table | 3 + .../tables/0/wmo/42/codetables/1155.table | 8 + .../tables/0/wmo/42/codetables/13038.table | 4 + .../tables/0/wmo/42/codetables/13039.table | 3 + .../tables/0/wmo/42/codetables/13040.table | 14 + .../tables/0/wmo/42/codetables/13041.table | 10 + .../tables/0/wmo/42/codetables/13051.table | 8 + .../tables/0/wmo/42/codetables/13056.table | 11 + .../tables/0/wmo/42/codetables/13057.table | 11 + .../tables/0/wmo/42/codetables/15025.table | 4 + .../tables/0/wmo/42/codetables/19001.table | 7 + .../tables/0/wmo/42/codetables/19008.table | 5 + .../tables/0/wmo/42/codetables/19010.table | 3 + .../tables/0/wmo/42/codetables/19100.table | 9 + .../tables/0/wmo/42/codetables/19101.table | 10 + .../tables/0/wmo/42/codetables/19102.table | 8 + .../tables/0/wmo/42/codetables/19103.table | 12 + .../tables/0/wmo/42/codetables/19104.table | 12 + .../tables/0/wmo/42/codetables/19105.table | 10 + .../tables/0/wmo/42/codetables/19107.table | 11 + .../tables/0/wmo/42/codetables/19108.table | 8 + .../tables/0/wmo/42/codetables/19109.table | 12 + .../tables/0/wmo/42/codetables/19110.table | 8 + .../tables/0/wmo/42/codetables/19113.table | 8 + .../tables/0/wmo/42/codetables/19117.table | 4 + .../tables/0/wmo/42/codetables/19119.table | 4 + .../tables/0/wmo/42/codetables/20003.table | 266 +++ .../tables/0/wmo/42/codetables/20004.table | 21 + .../tables/0/wmo/42/codetables/20005.table | 21 + .../tables/0/wmo/42/codetables/20006.table | 5 + .../tables/0/wmo/42/codetables/20008.table | 19 + .../tables/0/wmo/42/codetables/20009.table | 7 + .../tables/0/wmo/42/codetables/2001.table | 4 + .../tables/0/wmo/42/codetables/20011.table | 16 + .../tables/0/wmo/42/codetables/20012.table | 55 + .../tables/0/wmo/42/codetables/20017.table | 11 + .../tables/0/wmo/42/codetables/20018.table | 4 + .../tables/0/wmo/42/codetables/2002.table | 3 + .../tables/0/wmo/42/codetables/20021.table | 23 + .../tables/0/wmo/42/codetables/20022.table | 7 + .../tables/0/wmo/42/codetables/20023.table | 14 + .../tables/0/wmo/42/codetables/20024.table | 8 + .../tables/0/wmo/42/codetables/20025.table | 13 + .../tables/0/wmo/42/codetables/20026.table | 16 + .../tables/0/wmo/42/codetables/20027.table | 8 + .../tables/0/wmo/42/codetables/20028.table | 4 + .../tables/0/wmo/42/codetables/20029.table | 4 + .../tables/0/wmo/42/codetables/2003.table | 13 + .../tables/0/wmo/42/codetables/20032.table | 6 + .../tables/0/wmo/42/codetables/20033.table | 3 + .../tables/0/wmo/42/codetables/20034.table | 12 + .../tables/0/wmo/42/codetables/20035.table | 12 + .../tables/0/wmo/42/codetables/20036.table | 12 + .../tables/0/wmo/42/codetables/20037.table | 12 + .../tables/0/wmo/42/codetables/2004.table | 11 + .../tables/0/wmo/42/codetables/20040.table | 9 + .../tables/0/wmo/42/codetables/20041.table | 14 + .../tables/0/wmo/42/codetables/20042.table | 4 + .../tables/0/wmo/42/codetables/20045.table | 4 + .../tables/0/wmo/42/codetables/20048.table | 5 + .../tables/0/wmo/42/codetables/20050.table | 10 + .../tables/0/wmo/42/codetables/20055.table | 12 + .../tables/0/wmo/42/codetables/20056.table | 8 + .../tables/0/wmo/42/codetables/2006.table | 11 + .../tables/0/wmo/42/codetables/20062.table | 21 + .../tables/0/wmo/42/codetables/20063.table | 72 + .../tables/0/wmo/42/codetables/2007.table | 11 + .../tables/0/wmo/42/codetables/20071.table | 11 + .../tables/0/wmo/42/codetables/20079.table | 4 + .../tables/0/wmo/42/codetables/2008.table | 7 + .../tables/0/wmo/42/codetables/20085.table | 3 + .../tables/0/wmo/42/codetables/20086.table | 11 + .../tables/0/wmo/42/codetables/20087.table | 6 + .../tables/0/wmo/42/codetables/20089.table | 11 + .../tables/0/wmo/42/codetables/2009.table | 4 + .../tables/0/wmo/42/codetables/20090.table | 7 + .../tables/0/wmo/42/codetables/20101.table | 11 + .../tables/0/wmo/42/codetables/20102.table | 11 + .../tables/0/wmo/42/codetables/20103.table | 11 + .../tables/0/wmo/42/codetables/20104.table | 11 + .../tables/0/wmo/42/codetables/20105.table | 12 + .../tables/0/wmo/42/codetables/20106.table | 7 + .../tables/0/wmo/42/codetables/20107.table | 11 + .../tables/0/wmo/42/codetables/20108.table | 9 + .../tables/0/wmo/42/codetables/2011.table | 100 + .../tables/0/wmo/42/codetables/20119.table | 4 + .../tables/0/wmo/42/codetables/20124.table | 4 + .../tables/0/wmo/42/codetables/2013.table | 11 + .../tables/0/wmo/42/codetables/20136.table | 44 + .../tables/0/wmo/42/codetables/20137.table | 11 + .../tables/0/wmo/42/codetables/20138.table | 9 + .../tables/0/wmo/42/codetables/20139.table | 7 + .../tables/0/wmo/42/codetables/2014.table | 51 + .../tables/0/wmo/42/codetables/20143.table | 4 + .../tables/0/wmo/42/codetables/2015.table | 7 + .../tables/0/wmo/42/codetables/2016.table | 4 + .../tables/0/wmo/42/codetables/2017.table | 6 + .../tables/0/wmo/42/codetables/2019.table | 414 ++++ .../tables/0/wmo/42/codetables/2020.table | 37 + .../tables/0/wmo/42/codetables/2021.table | 8 + .../tables/0/wmo/42/codetables/2022.table | 5 + .../tables/0/wmo/42/codetables/2023.table | 11 + .../tables/0/wmo/42/codetables/2024.table | 4 + .../tables/0/wmo/42/codetables/2025.table | 16 + .../tables/0/wmo/42/codetables/2030.table | 8 + .../tables/0/wmo/42/codetables/2031.table | 21 + .../tables/0/wmo/42/codetables/2032.table | 4 + .../tables/0/wmo/42/codetables/2033.table | 5 + .../tables/0/wmo/42/codetables/2034.table | 7 + .../tables/0/wmo/42/codetables/2036.table | 4 + .../tables/0/wmo/42/codetables/2037.table | 8 + .../tables/0/wmo/42/codetables/2038.table | 16 + .../tables/0/wmo/42/codetables/2039.table | 5 + .../tables/0/wmo/42/codetables/2040.table | 8 + .../tables/0/wmo/42/codetables/2041.table | 6 + .../tables/0/wmo/42/codetables/2042.table | 4 + .../tables/0/wmo/42/codetables/2044.table | 6 + .../tables/0/wmo/42/codetables/2045.table | 5 + .../tables/0/wmo/42/codetables/2046.table | 4 + .../tables/0/wmo/42/codetables/2047.table | 9 + .../tables/0/wmo/42/codetables/2048.table | 16 + .../tables/0/wmo/42/codetables/2049.table | 4 + .../tables/0/wmo/42/codetables/2050.table | 19 + .../tables/0/wmo/42/codetables/2051.table | 5 + .../tables/0/wmo/42/codetables/2052.table | 5 + .../tables/0/wmo/42/codetables/2053.table | 5 + .../tables/0/wmo/42/codetables/2054.table | 6 + .../tables/0/wmo/42/codetables/2055.table | 10 + .../tables/0/wmo/42/codetables/2056.table | 6 + .../tables/0/wmo/42/codetables/2057.table | 7 + .../tables/0/wmo/42/codetables/2058.table | 5 + .../tables/0/wmo/42/codetables/2059.table | 5 + .../tables/0/wmo/42/codetables/2060.table | 7 + .../tables/0/wmo/42/codetables/2061.table | 3 + .../tables/0/wmo/42/codetables/2062.table | 7 + .../tables/0/wmo/42/codetables/2064.table | 4 + .../tables/0/wmo/42/codetables/2066.table | 9 + .../tables/0/wmo/42/codetables/2070.table | 13 + .../tables/0/wmo/42/codetables/2080.table | 7 + .../tables/0/wmo/42/codetables/2081.table | 11 + .../tables/0/wmo/42/codetables/2083.table | 7 + .../tables/0/wmo/42/codetables/2084.table | 5 + .../tables/0/wmo/42/codetables/2092.table | 4 + .../tables/0/wmo/42/codetables/2095.table | 7 + .../tables/0/wmo/42/codetables/2096.table | 9 + .../tables/0/wmo/42/codetables/2097.table | 26 + .../tables/0/wmo/42/codetables/2099.table | 5 + .../tables/0/wmo/42/codetables/2101.table | 10 + .../tables/0/wmo/42/codetables/21026.table | 4 + .../tables/0/wmo/42/codetables/2103.table | 1 + .../tables/0/wmo/42/codetables/2104.table | 9 + .../tables/0/wmo/42/codetables/21066.table | 11 + .../tables/0/wmo/42/codetables/21067.table | 12 + .../tables/0/wmo/42/codetables/21068.table | 7 + .../tables/0/wmo/42/codetables/21069.table | 9 + .../tables/0/wmo/42/codetables/21070.table | 22 + .../tables/0/wmo/42/codetables/21072.table | 3 + .../tables/0/wmo/42/codetables/21073.table | 8 + .../tables/0/wmo/42/codetables/21076.table | 4 + .../tables/0/wmo/42/codetables/21109.table | 7 + .../tables/0/wmo/42/codetables/21115.table | 10 + .../tables/0/wmo/42/codetables/21116.table | 16 + .../tables/0/wmo/42/codetables/21119.table | 14 + .../tables/0/wmo/42/codetables/21144.table | 1 + .../tables/0/wmo/42/codetables/21148.table | 2 + .../tables/0/wmo/42/codetables/2115.table | 7 + .../tables/0/wmo/42/codetables/21150.table | 4 + .../tables/0/wmo/42/codetables/21155.table | 16 + .../tables/0/wmo/42/codetables/21158.table | 4 + .../tables/0/wmo/42/codetables/21159.table | 4 + .../tables/0/wmo/42/codetables/21169.table | 4 + .../tables/0/wmo/42/codetables/2119.table | 8 + .../tables/0/wmo/42/codetables/2131.table | 1 + .../tables/0/wmo/42/codetables/2137.table | 4 + .../tables/0/wmo/42/codetables/2138.table | 3 + .../tables/0/wmo/42/codetables/2139.table | 3 + .../tables/0/wmo/42/codetables/2143.table | 21 + .../tables/0/wmo/42/codetables/2144.table | 8 + .../tables/0/wmo/42/codetables/2145.table | 9 + .../tables/0/wmo/42/codetables/2146.table | 11 + .../tables/0/wmo/42/codetables/2147.table | 11 + .../tables/0/wmo/42/codetables/2148.table | 12 + .../tables/0/wmo/42/codetables/2149.table | 38 + .../tables/0/wmo/42/codetables/2150.table | 55 + .../tables/0/wmo/42/codetables/2151.table | 11 + .../tables/0/wmo/42/codetables/2152.table | 13 + .../tables/0/wmo/42/codetables/2158.table | 8 + .../tables/0/wmo/42/codetables/2159.table | 7 + .../tables/0/wmo/42/codetables/2160.table | 11 + .../tables/0/wmo/42/codetables/2161.table | 5 + .../tables/0/wmo/42/codetables/2162.table | 19 + .../tables/0/wmo/42/codetables/2163.table | 16 + .../tables/0/wmo/42/codetables/2164.table | 5 + .../tables/0/wmo/42/codetables/2165.table | 7 + .../tables/0/wmo/42/codetables/2166.table | 6 + .../tables/0/wmo/42/codetables/2167.table | 4 + .../tables/0/wmo/42/codetables/2169.table | 5 + .../tables/0/wmo/42/codetables/2170.table | 5 + .../tables/0/wmo/42/codetables/2172.table | 5 + .../tables/0/wmo/42/codetables/2175.table | 9 + .../tables/0/wmo/42/codetables/2176.table | 6 + .../tables/0/wmo/42/codetables/2177.table | 6 + .../tables/0/wmo/42/codetables/2178.table | 5 + .../tables/0/wmo/42/codetables/2179.table | 6 + .../tables/0/wmo/42/codetables/2180.table | 8 + .../tables/0/wmo/42/codetables/2181.table | 5 + .../tables/0/wmo/42/codetables/2182.table | 7 + .../tables/0/wmo/42/codetables/2183.table | 9 + .../tables/0/wmo/42/codetables/2184.table | 9 + .../tables/0/wmo/42/codetables/2185.table | 7 + .../tables/0/wmo/42/codetables/2186.table | 24 + .../tables/0/wmo/42/codetables/2187.table | 11 + .../tables/0/wmo/42/codetables/2188.table | 10 + .../tables/0/wmo/42/codetables/2189.table | 4 + .../tables/0/wmo/42/codetables/2191.table | 4 + .../tables/0/wmo/42/codetables/22056.table | 4 + .../tables/0/wmo/42/codetables/22060.table | 4 + .../tables/0/wmo/42/codetables/22061.table | 11 + .../tables/0/wmo/42/codetables/22067.table | 129 ++ .../tables/0/wmo/42/codetables/22068.table | 43 + .../tables/0/wmo/42/codetables/22120.table | 13 + .../tables/0/wmo/42/codetables/22121.table | 9 + .../tables/0/wmo/42/codetables/22122.table | 8 + .../tables/0/wmo/42/codetables/22123.table | 9 + .../tables/0/wmo/42/codetables/22178.table | 12 + .../tables/0/wmo/42/codetables/23001.table | 5 + .../tables/0/wmo/42/codetables/23002.table | 16 + .../tables/0/wmo/42/codetables/23003.table | 8 + .../tables/0/wmo/42/codetables/23004.table | 6 + .../tables/0/wmo/42/codetables/23005.table | 4 + .../tables/0/wmo/42/codetables/23006.table | 8 + .../tables/0/wmo/42/codetables/23007.table | 5 + .../tables/0/wmo/42/codetables/23008.table | 4 + .../tables/0/wmo/42/codetables/23009.table | 4 + .../tables/0/wmo/42/codetables/23016.table | 4 + .../tables/0/wmo/42/codetables/23018.table | 6 + .../tables/0/wmo/42/codetables/23031.table | 4 + .../tables/0/wmo/42/codetables/23032.table | 4 + .../tables/0/wmo/42/codetables/24003.table | 5 + .../tables/0/wmo/42/codetables/25004.table | 4 + .../tables/0/wmo/42/codetables/25005.table | 4 + .../tables/0/wmo/42/codetables/25006.table | 5 + .../tables/0/wmo/42/codetables/25009.table | 4 + .../tables/0/wmo/42/codetables/25010.table | 8 + .../tables/0/wmo/42/codetables/25011.table | 4 + .../tables/0/wmo/42/codetables/25012.table | 4 + .../tables/0/wmo/42/codetables/25013.table | 1 + .../tables/0/wmo/42/codetables/25015.table | 1 + .../tables/0/wmo/42/codetables/25017.table | 1 + .../tables/0/wmo/42/codetables/25020.table | 4 + .../tables/0/wmo/42/codetables/25021.table | 5 + .../tables/0/wmo/42/codetables/25022.table | 8 + .../tables/0/wmo/42/codetables/25023.table | 8 + .../tables/0/wmo/42/codetables/25024.table | 13 + .../tables/0/wmo/42/codetables/25029.table | 5 + .../tables/0/wmo/42/codetables/25030.table | 4 + .../tables/0/wmo/42/codetables/25031.table | 6 + .../tables/0/wmo/42/codetables/25032.table | 4 + .../tables/0/wmo/42/codetables/25033.table | 4 + .../tables/0/wmo/42/codetables/25034.table | 3 + .../tables/0/wmo/42/codetables/25035.table | 8 + .../tables/0/wmo/42/codetables/25036.table | 4 + .../tables/0/wmo/42/codetables/25040.table | 10 + .../tables/0/wmo/42/codetables/25041.table | 4 + .../tables/0/wmo/42/codetables/25042.table | 4 + .../tables/0/wmo/42/codetables/25053.table | 6 + .../tables/0/wmo/42/codetables/25063.table | 4 + .../tables/0/wmo/42/codetables/25069.table | 7 + .../tables/0/wmo/42/codetables/25086.table | 4 + .../tables/0/wmo/42/codetables/25090.table | 11 + .../tables/0/wmo/42/codetables/25093.table | 3 + .../tables/0/wmo/42/codetables/25095.table | 1 + .../tables/0/wmo/42/codetables/25096.table | 4 + .../tables/0/wmo/42/codetables/25097.table | 11 + .../tables/0/wmo/42/codetables/25098.table | 8 + .../tables/0/wmo/42/codetables/25099.table | 6 + .../tables/0/wmo/42/codetables/25110.table | 6 + .../tables/0/wmo/42/codetables/25112.table | 5 + .../tables/0/wmo/42/codetables/25113.table | 3 + .../tables/0/wmo/42/codetables/25120.table | 4 + .../tables/0/wmo/42/codetables/25122.table | 4 + .../tables/0/wmo/42/codetables/25123.table | 4 + .../tables/0/wmo/42/codetables/25124.table | 4 + .../tables/0/wmo/42/codetables/25139.table | 3 + .../tables/0/wmo/42/codetables/25150.table | 3 + .../tables/0/wmo/42/codetables/25174.table | 13 + .../tables/0/wmo/42/codetables/25181.table | 3 + .../tables/0/wmo/42/codetables/25182.table | 3 + .../tables/0/wmo/42/codetables/25184.table | 3 + .../tables/0/wmo/42/codetables/25185.table | 2 + .../tables/0/wmo/42/codetables/25187.table | 3 + .../tables/0/wmo/42/codetables/25188.table | 6 + .../tables/0/wmo/42/codetables/25190.table | 7 + .../tables/0/wmo/42/codetables/25191.table | 4 + .../tables/0/wmo/42/codetables/26010.table | 25 + .../tables/0/wmo/42/codetables/29001.table | 8 + .../tables/0/wmo/42/codetables/29002.table | 4 + .../tables/0/wmo/42/codetables/3001.table | 12 + .../tables/0/wmo/42/codetables/3003.table | 8 + .../tables/0/wmo/42/codetables/30031.table | 13 + .../tables/0/wmo/42/codetables/30032.table | 9 + .../tables/0/wmo/42/codetables/3004.table | 11 + .../tables/0/wmo/42/codetables/3008.table | 4 + .../tables/0/wmo/42/codetables/3010.table | 12 + .../tables/0/wmo/42/codetables/3011.table | 4 + .../tables/0/wmo/42/codetables/3012.table | 3 + .../tables/0/wmo/42/codetables/3016.table | 9 + .../tables/0/wmo/42/codetables/3017.table | 5 + .../tables/0/wmo/42/codetables/3018.table | 22 + .../tables/0/wmo/42/codetables/3019.table | 8 + .../tables/0/wmo/42/codetables/3020.table | 5 + .../tables/0/wmo/42/codetables/3021.table | 4 + .../tables/0/wmo/42/codetables/3022.table | 4 + .../tables/0/wmo/42/codetables/3023.table | 8 + .../tables/0/wmo/42/codetables/3027.table | 8 + .../tables/0/wmo/42/codetables/3028.table | 8 + .../tables/0/wmo/42/codetables/3029.table | 3 + .../tables/0/wmo/42/codetables/3030.table | 3 + .../tables/0/wmo/42/codetables/31021.table | 10 + .../tables/0/wmo/42/codetables/31031.table | 1 + .../tables/0/wmo/42/codetables/33002.table | 4 + .../tables/0/wmo/42/codetables/33003.table | 5 + .../tables/0/wmo/42/codetables/33005.table | 23 + .../tables/0/wmo/42/codetables/33006.table | 5 + .../tables/0/wmo/42/codetables/33015.table | 16 + .../tables/0/wmo/42/codetables/33020.table | 8 + .../tables/0/wmo/42/codetables/33021.table | 4 + .../tables/0/wmo/42/codetables/33022.table | 4 + .../tables/0/wmo/42/codetables/33023.table | 4 + .../tables/0/wmo/42/codetables/33024.table | 10 + .../tables/0/wmo/42/codetables/33025.table | 5 + .../tables/0/wmo/42/codetables/33026.table | 17 + .../tables/0/wmo/42/codetables/33027.table | 6 + .../tables/0/wmo/42/codetables/33028.table | 7 + .../tables/0/wmo/42/codetables/33030.table | 7 + .../tables/0/wmo/42/codetables/33031.table | 21 + .../tables/0/wmo/42/codetables/33032.table | 7 + .../tables/0/wmo/42/codetables/33033.table | 3 + .../tables/0/wmo/42/codetables/33035.table | 10 + .../tables/0/wmo/42/codetables/33037.table | 19 + .../tables/0/wmo/42/codetables/33038.table | 9 + .../tables/0/wmo/42/codetables/33039.table | 12 + .../tables/0/wmo/42/codetables/33041.table | 4 + .../tables/0/wmo/42/codetables/33042.table | 5 + .../tables/0/wmo/42/codetables/33043.table | 4 + .../tables/0/wmo/42/codetables/33044.table | 14 + .../tables/0/wmo/42/codetables/33047.table | 27 + .../tables/0/wmo/42/codetables/33048.table | 4 + .../tables/0/wmo/42/codetables/33049.table | 4 + .../tables/0/wmo/42/codetables/33050.table | 9 + .../tables/0/wmo/42/codetables/33054.table | 5 + .../tables/0/wmo/42/codetables/33055.table | 13 + .../tables/0/wmo/42/codetables/33056.table | 13 + .../tables/0/wmo/42/codetables/33060.table | 4 + .../tables/0/wmo/42/codetables/33066.table | 4 + .../tables/0/wmo/42/codetables/33070.table | 14 + .../tables/0/wmo/42/codetables/33071.table | 10 + .../tables/0/wmo/42/codetables/33072.table | 18 + .../tables/0/wmo/42/codetables/33075.table | 5 + .../tables/0/wmo/42/codetables/33076.table | 2 + .../tables/0/wmo/42/codetables/33077.table | 12 + .../tables/0/wmo/42/codetables/33078.table | 5 + .../tables/0/wmo/42/codetables/33079.table | 10 + .../tables/0/wmo/42/codetables/33080.table | 13 + .../tables/0/wmo/42/codetables/33081.table | 9 + .../tables/0/wmo/42/codetables/33082.table | 10 + .../tables/0/wmo/42/codetables/33083.table | 10 + .../tables/0/wmo/42/codetables/33084.table | 10 + .../tables/0/wmo/42/codetables/33085.table | 14 + .../tables/0/wmo/42/codetables/33086.table | 5 + .../tables/0/wmo/42/codetables/33087.table | 10 + .../tables/0/wmo/42/codetables/33088.table | 12 + .../tables/0/wmo/42/codetables/33092.table | 2 + .../tables/0/wmo/42/codetables/33093.table | 19 + .../tables/0/wmo/42/codetables/33094.table | 8 + .../tables/0/wmo/42/codetables/33095.table | 7 + .../tables/0/wmo/42/codetables/33096.table | 15 + .../tables/0/wmo/42/codetables/33097.table | 10 + .../tables/0/wmo/42/codetables/33098.table | 8 + .../tables/0/wmo/42/codetables/33099.table | 15 + .../tables/0/wmo/42/codetables/33100.table | 7 + .../tables/0/wmo/42/codetables/33101.table | 12 + .../tables/0/wmo/42/codetables/33102.table | 9 + .../tables/0/wmo/42/codetables/33103.table | 8 + .../tables/0/wmo/42/codetables/33104.table | 15 + .../tables/0/wmo/42/codetables/33105.table | 9 + .../tables/0/wmo/42/codetables/33106.table | 12 + .../tables/0/wmo/42/codetables/33107.table | 15 + .../tables/0/wmo/42/codetables/33108.table | 12 + .../tables/0/wmo/42/codetables/33109.table | 6 + .../tables/0/wmo/42/codetables/33110.table | 8 + .../tables/0/wmo/42/codetables/33111.table | 31 + .../tables/0/wmo/42/codetables/33113.table | 11 + .../tables/0/wmo/42/codetables/33114.table | 16 + .../tables/0/wmo/42/codetables/33115.table | 6 + .../tables/0/wmo/42/codetables/33116.table | 16 + .../tables/0/wmo/42/codetables/33117.table | 16 + .../tables/0/wmo/42/codetables/35000.table | 1 + .../tables/0/wmo/42/codetables/35001.table | 4 + .../tables/0/wmo/42/codetables/35030.table | 10 + .../tables/0/wmo/42/codetables/35031.table | 20 + .../tables/0/wmo/42/codetables/35032.table | 10 + .../tables/0/wmo/42/codetables/35033.table | 12 + .../tables/0/wmo/42/codetables/35034.table | 7 + .../tables/0/wmo/42/codetables/35035.table | 20 + .../tables/0/wmo/42/codetables/40005.table | 5 + .../tables/0/wmo/42/codetables/40006.table | 8 + .../tables/0/wmo/42/codetables/40011.table | 4 + .../tables/0/wmo/42/codetables/40012.table | 3 + .../tables/0/wmo/42/codetables/40013.table | 5 + .../tables/0/wmo/42/codetables/40020.table | 16 + .../tables/0/wmo/42/codetables/40023.table | 4 + .../tables/0/wmo/42/codetables/40024.table | 5 + .../tables/0/wmo/42/codetables/40025.table | 4 + .../tables/0/wmo/42/codetables/40028.table | 16 + .../tables/0/wmo/42/codetables/40036.table | 6 + .../tables/0/wmo/42/codetables/40043.table | 4 + .../tables/0/wmo/42/codetables/40045.table | 4 + .../tables/0/wmo/42/codetables/40046.table | 5 + .../tables/0/wmo/42/codetables/40047.table | 4 + .../tables/0/wmo/42/codetables/40048.table | 4 + .../tables/0/wmo/42/codetables/40049.table | 12 + .../tables/0/wmo/42/codetables/40050.table | 3 + .../tables/0/wmo/42/codetables/40051.table | 8 + .../tables/0/wmo/42/codetables/40052.table | 4 + .../tables/0/wmo/42/codetables/40054.table | 12 + .../tables/0/wmo/42/codetables/40055.table | 20 + .../tables/0/wmo/42/codetables/40056.table | 4 + .../tables/0/wmo/42/codetables/40057.table | 30 + .../tables/0/wmo/42/codetables/40068.table | 4 + .../tables/0/wmo/42/codetables/40074.table | 10 + .../tables/0/wmo/42/codetables/40077.table | 4 + .../tables/0/wmo/42/codetables/40080.table | 4 + .../tables/0/wmo/42/codetables/4059.table | 5 + .../tables/0/wmo/42/codetables/4080.table | 6 + .../tables/0/wmo/42/codetables/42004.table | 3 + .../tables/0/wmo/42/codetables/42017.table | 5 + .../tables/0/wmo/42/codetables/42018.table | 6 + .../tables/0/wmo/42/codetables/5069.table | 4 + .../tables/0/wmo/42/codetables/8001.table | 6 + .../tables/0/wmo/42/codetables/8002.table | 19 + .../tables/0/wmo/42/codetables/8003.table | 12 + .../tables/0/wmo/42/codetables/8004.table | 6 + .../tables/0/wmo/42/codetables/8005.table | 7 + .../tables/0/wmo/42/codetables/8006.table | 8 + .../tables/0/wmo/42/codetables/8007.table | 5 + .../tables/0/wmo/42/codetables/8008.table | 8 + .../tables/0/wmo/42/codetables/8009.table | 16 + .../tables/0/wmo/42/codetables/8010.table | 14 + .../tables/0/wmo/42/codetables/8011.table | 27 + .../tables/0/wmo/42/codetables/8012.table | 4 + .../tables/0/wmo/42/codetables/8013.table | 4 + .../tables/0/wmo/42/codetables/8014.table | 10 + .../tables/0/wmo/42/codetables/8015.table | 4 + .../tables/0/wmo/42/codetables/8016.table | 5 + .../tables/0/wmo/42/codetables/8017.table | 4 + .../tables/0/wmo/42/codetables/8018.table | 4 + .../tables/0/wmo/42/codetables/8019.table | 8 + .../tables/0/wmo/42/codetables/8021.table | 32 + .../tables/0/wmo/42/codetables/8023.table | 15 + .../tables/0/wmo/42/codetables/8024.table | 12 + .../tables/0/wmo/42/codetables/8025.table | 5 + .../tables/0/wmo/42/codetables/8026.table | 5 + .../tables/0/wmo/42/codetables/8029.table | 24 + .../tables/0/wmo/42/codetables/8032.table | 7 + .../tables/0/wmo/42/codetables/8033.table | 6 + .../tables/0/wmo/42/codetables/8034.table | 10 + .../tables/0/wmo/42/codetables/8035.table | 8 + .../tables/0/wmo/42/codetables/8036.table | 8 + .../tables/0/wmo/42/codetables/8037.table | 4 + .../tables/0/wmo/42/codetables/8038.table | 3 + .../tables/0/wmo/42/codetables/8039.table | 8 + .../tables/0/wmo/42/codetables/8040.table | 49 + .../tables/0/wmo/42/codetables/8041.table | 15 + .../tables/0/wmo/42/codetables/8042.table | 17 + .../tables/0/wmo/42/codetables/8043.table | 20 + .../tables/0/wmo/42/codetables/8045.table | 5 + .../tables/0/wmo/42/codetables/8046.table | 587 ++++++ .../tables/0/wmo/42/codetables/8050.table | 11 + .../tables/0/wmo/42/codetables/8051.table | 7 + .../tables/0/wmo/42/codetables/8052.table | 26 + .../tables/0/wmo/42/codetables/8053.table | 4 + .../tables/0/wmo/42/codetables/8054.table | 3 + .../tables/0/wmo/42/codetables/8060.table | 8 + .../tables/0/wmo/42/codetables/8065.table | 4 + .../tables/0/wmo/42/codetables/8066.table | 4 + .../tables/0/wmo/42/codetables/8070.table | 6 + .../tables/0/wmo/42/codetables/8071.table | 4 + .../tables/0/wmo/42/codetables/8072.table | 8 + .../tables/0/wmo/42/codetables/8074.table | 4 + .../tables/0/wmo/42/codetables/8075.table | 4 + .../tables/0/wmo/42/codetables/8076.table | 9 + .../tables/0/wmo/42/codetables/8077.table | 7 + .../tables/0/wmo/42/codetables/8079.table | 9 + .../tables/0/wmo/42/codetables/8080.table | 20 + .../tables/0/wmo/42/codetables/8081.table | 5 + .../tables/0/wmo/42/codetables/8082.table | 3 + .../tables/0/wmo/42/codetables/8083.table | 9 + .../tables/0/wmo/42/codetables/8085.table | 4 + .../tables/0/wmo/42/codetables/8086.table | 11 + .../tables/0/wmo/42/codetables/8087.table | 5 + .../tables/0/wmo/42/codetables/8088.table | 4 + .../tables/0/wmo/42/codetables/8091.table | 11 + .../tables/0/wmo/42/codetables/8092.table | 3 + .../tables/0/wmo/42/codetables/8093.table | 4 + .../tables/0/wmo/42/codetables/8094.table | 8 + .../tables/0/wmo/42/codetables/8095.table | 36 + .../tables/0/wmo/42/codetables/8096.table | 36 + .../tables/0/wmo/42/codetables/8097.table | 4 + .../tables/0/wmo/42/codetables/8098.table | 7 + .../tables/0/wmo/42/codetables/8099.table | 3 + .../bufr/tables/0/wmo/42/element.table | 1834 +++++++++++++++++ definitions/bufr/tables/0/wmo/42/sequence.def | 1303 ++++++++++++ 537 files changed, 10572 insertions(+), 2 deletions(-) create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1003.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/10063.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/10064.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1007.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1024.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1028.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1029.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1033.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1034.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1035.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1036.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1038.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1044.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1052.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1090.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1092.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1101.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/11030.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/11031.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/11037.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/11038.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/11039.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1150.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1151.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/1155.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/13038.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/13039.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/13040.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/13041.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/13051.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/13056.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/13057.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/15025.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19001.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19008.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19010.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19100.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19101.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19102.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19103.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19104.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19105.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19107.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19108.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19109.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19110.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19113.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19117.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/19119.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20003.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20004.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20005.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20006.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20008.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20009.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2001.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20011.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20012.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20017.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20018.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2002.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20021.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20022.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20023.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20024.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20025.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20026.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20027.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20028.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20029.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2003.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20032.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20033.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20034.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20035.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20036.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20037.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2004.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20040.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20041.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20042.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20045.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20048.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20050.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20055.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20056.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2006.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20062.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20063.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2007.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20071.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20079.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2008.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20085.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20086.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20087.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20089.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2009.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20090.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20101.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20102.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20103.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20104.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20105.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20106.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20107.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20108.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2011.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20119.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20124.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2013.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20136.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20137.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20138.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20139.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2014.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/20143.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2015.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2016.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2017.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2019.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2020.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2021.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2022.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2023.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2024.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2025.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2030.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2031.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2032.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2033.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2034.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2036.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2037.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2038.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2039.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2040.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2041.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2042.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2044.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2045.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2046.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2047.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2048.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2049.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2050.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2051.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2052.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2053.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2054.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2055.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2056.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2057.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2058.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2059.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2060.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2061.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2062.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2064.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2066.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2070.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2080.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2081.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2083.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2084.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2092.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2095.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2096.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2097.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2099.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2101.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21026.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2103.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2104.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21066.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21067.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21068.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21069.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21070.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21072.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21073.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21076.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21109.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21115.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21116.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21119.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21144.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21148.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2115.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21150.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21155.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21158.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21159.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/21169.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2119.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2131.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2137.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2138.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2139.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2143.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2144.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2145.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2146.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2147.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2148.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2149.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2150.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2151.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2152.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2158.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2159.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2160.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2161.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2162.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2163.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2164.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2165.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2166.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2167.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2169.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2170.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2172.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2175.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2176.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2177.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2178.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2179.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2180.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2181.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2182.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2183.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2184.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2185.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2186.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2187.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2188.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2189.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/2191.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/22056.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/22060.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/22061.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/22067.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/22068.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/22120.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/22121.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/22122.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/22123.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/22178.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23001.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23002.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23003.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23004.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23005.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23006.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23007.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23008.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23009.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23016.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23018.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23031.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/23032.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/24003.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25004.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25005.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25006.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25009.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25010.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25011.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25012.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25013.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25015.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25017.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25020.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25021.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25022.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25023.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25024.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25029.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25030.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25031.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25032.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25033.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25034.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25035.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25036.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25040.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25041.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25042.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25053.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25063.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25069.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25086.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25090.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25093.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25095.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25096.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25097.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25098.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25099.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25110.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25112.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25113.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25120.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25122.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25123.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25124.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25139.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25150.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25174.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25181.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25182.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25184.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25185.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25187.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25188.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25190.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/25191.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/26010.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/29001.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/29002.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3001.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3003.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/30031.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/30032.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3004.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3008.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3010.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3011.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3012.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3016.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3017.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3018.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3019.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3020.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3021.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3022.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3023.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3027.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3028.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3029.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/3030.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/31021.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/31031.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33002.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33003.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33005.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33006.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33015.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33020.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33021.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33022.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33023.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33024.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33025.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33026.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33027.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33028.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33030.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33031.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33032.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33033.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33035.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33037.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33038.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33039.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33041.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33042.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33043.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33044.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33047.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33048.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33049.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33050.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33054.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33055.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33056.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33060.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33066.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33070.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33071.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33072.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33075.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33076.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33077.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33078.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33079.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33080.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33081.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33082.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33083.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33084.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33085.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33086.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33087.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33088.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33092.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33093.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33094.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33095.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33096.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33097.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33098.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33099.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33100.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33101.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33102.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33103.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33104.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33105.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33106.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33107.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33108.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33109.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33110.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33111.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33113.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33114.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33115.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33116.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/33117.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/35000.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/35001.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/35030.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/35031.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/35032.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/35033.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/35034.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/35035.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40005.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40006.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40011.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40012.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40013.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40020.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40023.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40024.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40025.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40028.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40036.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40043.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40045.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40046.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40047.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40048.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40049.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40050.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40051.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40052.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40054.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40055.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40056.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40057.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40068.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40074.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40077.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/40080.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/4059.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/4080.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/42004.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/42017.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/42018.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/5069.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8001.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8002.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8003.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8004.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8005.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8006.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8007.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8008.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8009.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8010.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8011.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8012.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8013.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8014.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8015.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8016.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8017.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8018.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8019.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8021.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8023.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8024.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8025.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8026.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8029.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8032.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8033.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8034.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8035.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8036.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8037.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8038.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8039.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8040.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8041.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8042.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8043.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8045.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8046.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8050.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8051.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8052.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8053.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8054.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8060.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8065.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8066.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8070.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8071.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8072.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8074.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8075.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8076.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8077.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8079.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8080.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8081.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8082.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8083.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8085.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8086.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8087.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8088.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8091.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8092.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8093.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8094.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8095.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8096.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8097.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8098.table create mode 100644 definitions/bufr/tables/0/wmo/42/codetables/8099.table create mode 100644 definitions/bufr/tables/0/wmo/42/element.table create mode 100644 definitions/bufr/tables/0/wmo/42/sequence.def diff --git a/definitions/bufr/boot.def b/definitions/bufr/boot.def index 0ee5addcb..76ea8d4d9 100644 --- a/definitions/bufr/boot.def +++ b/definitions/bufr/boot.def @@ -12,8 +12,8 @@ transient missingValue=999999 : hidden; transient setToMissingIfOutOfRange=0 : hidden; # This gets updated twice a year by WMO. -# See https://community.wmo.int/activity-areas/wmo-codes/manual-codes/latest-version -constant masterTablesVersionNumberLatest = 41; +# See https://community.wmo.int/en/wis/latest-version +constant masterTablesVersionNumberLatest = 42; #negative value=not used transient inputDelayedDescriptorReplicationFactor={-1} : hidden; diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1003.table b/definitions/bufr/tables/0/wmo/42/codetables/1003.table new file mode 100644 index 000000000..a0c90ee0f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1003.table @@ -0,0 +1,8 @@ +0 0 ANTARCTICA +1 1 REGION I +2 2 REGION II +3 3 REGION III +4 4 REGION IV +5 5 REGION V +6 6 REGION VI +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/10063.table b/definitions/bufr/tables/0/wmo/42/codetables/10063.table new file mode 100644 index 000000000..50978740b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/10063.table @@ -0,0 +1,10 @@ +0 0 INCREASING, THEN DECREASING; ATMOSPHERIC PRESSURE THE SAME OR HIGHER THAN THREE HOURS AGO +1 1 INCREASING, THEN STEADY; OR INCREASING, THEN INCREASING MORE SLOWLY +2 2 INCREASING (STEADILY OR UNSTEADILY) +3 3 DECREASING OR STEADY, THEN INCREASING; OR INCREASING, THEN INCREASING MORE RAPIDLY +4 4 STEADY; ATMOSPHERIC PRESSURE THE SAME AS THREE HOURS AGO +5 5 DECREASING, THEN INCREASING; ATMOSPHERIC PRESSURE THE SAME OR LOWER THAN THREE HOURS AGO +6 6 DECREASING, THEN STEADY; OR DECREASING, THEN DECREASING MORE SLOWLY +7 7 DECREASING (STEADILY OR UNSTEADILY) +8 8 STEADY OR INCREASING, THEN DECREASING; OR DECREASING, THEN DECREASING MORE RAPIDLY +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/10064.table b/definitions/bufr/tables/0/wmo/42/codetables/10064.table new file mode 100644 index 000000000..88ba38a95 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/10064.table @@ -0,0 +1,4 @@ +0 0 SUBSONIC +1 1 TRANSONIC +2 2 SUPERSONIC +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1007.table b/definitions/bufr/tables/0/wmo/42/codetables/1007.table new file mode 100644 index 000000000..4775da96c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1007.table @@ -0,0 +1,263 @@ +0 0 RESERVED +1 1 ERS 1 +2 2 ERS 2 +3 3 METOP-1 (METOP-B) +4 4 METOP-2 (METOP-A) +5 5 METOP-3 (METOP-C) +20 20 SPOT1 +21 21 SPOT2 +22 22 SPOT3 +23 23 SPOT4 +24 24 METOP-D +25 25 METOP-E +26 26 METOP-F +27 27 METOP-G +28 28 METOP-H +29 29 METOP-I +40 40 OERSTED +41 41 CHAMP +42 42 TERRASAR-X +43 43 TANDEM-X +44 44 PAZ +45 45 ALTIUS +46 46 SMOS +47 47 CRYOSAT-2 +48 48 AEOLUS +49 49 EARTHCARE +50 50 METEOSAT 3 +51 51 METEOSAT 4 +52 52 METEOSAT 5 +53 53 METEOSAT 6 +54 54 METEOSAT 7 +55 55 METEOSAT 8 +56 56 METEOSAT 9 +57 57 METEOSAT 10 +58 58 METEOSAT 1 +59 59 METEOSAT 2 +60 60 ENVISAT +61 61 SENTINEL 3A +62 62 SENTINEL 1A +63 63 SENTINEL 1B +64 64 SENTINEL 5P +65 65 SENTINEL 3B +66 66 SENTINEL-6A +67 67 SENTINEL-6B +68 68 SENTINEL-1C +69 69 SENTINEL-1D +70 70 METEOSAT 11 +71 71 METEOSAT 12 +72 72 METEOSAT 13 +73 73 METEOSAT 14 +74 74 METEOSAT 15 +75 75 METEOSAT 16 +76 76 METEOSAT 17 +80 80 AWS1 +120 120 ADEOS +121 121 ADEOS II +122 122 GCOM-W1 +140 140 GOSAT +141 141 GOSAT-2 +150 150 GMS 3 +151 151 GMS 4 +152 152 GMS 5 +153 153 GMS +154 154 GMS 2 +171 171 MTSAT-1R +172 172 MTSAT-2 +173 173 HIMAWARI-8 +174 174 HIMAWARI-9 +200 200 NOAA 8 +201 201 NOAA 9 +202 202 NOAA 10 +203 203 NOAA 11 +204 204 NOAA 12 +205 205 NOAA 14 +206 206 NOAA 15 +207 207 NOAA 16 +208 208 NOAA 17 +209 209 NOAA 18 +220 220 LANDSAT 5 +221 221 LANDSAT 4 +222 222 LANDSAT 7 +223 223 NOAA 19 +224 224 NPP +225 225 NOAA 20 +226 226 NOAA 21 +227 227 TROPICS-02 +228 228 TROPICS-03 +229 229 TROPICS-04 +240 240 DMSP 7 +241 241 DMSP 8 +242 242 DMSP 9 +243 243 DMSP 10 +244 244 DMSP 11 +245 245 DMSP 12 +246 246 DMSP 13 +247 247 DMSP 14 +248 248 DMSP 15 +249 249 DMSP 16 +250 250 GOES 6 +251 251 GOES 7 +252 252 GOES 8 +253 253 GOES 9 +254 254 GOES 10 +255 255 GOES 11 +256 256 GOES 12 +257 257 GOES 13 +258 258 GOES 14 +259 259 GOES 15 +260 260 JASON 1 +261 261 JASON 2 +262 262 JASON 3 +263 263 TROPICS-05 +264 264 TROPICS-06 +265 265 GEOOPTICS CICERO OP1 +266 266 GEOOPTICS CICERO OP2 +267 267 PLANETIQ GNOMES-A +268 268 PLANETIQ GNOMES-B +269 269 SPIRE LEMUR 3U CUBESAT +270 270 GOES 16 +271 271 GOES 17 +272 272 GOES 18 +273 273 GOES 19 +280 280 SWOT +281 281 QUIKSCAT +282 282 TRMM +283 283 CORIOLIS +284 284 TROPICS-07 +285 285 DMSP 17 +286 286 DMSP 18 +287 287 DMSP 19 +288 288 GPM-CORE +289 289 ORBITING CARBON OBSERVATORY - 2 (OCO-2, NASA) +310 310 GOMS 1 +311 311 GOMS 2 +320 320 METEOR 2-21 +321 321 METEOR 3-5 +322 322 METEOR 3M-1 +323 323 METEOR 3M-2 +324 324 METEOR-M N2 +325 325 METEOR-M N2 2 +341 341 RESURS 01-4 +410 410 KALPANA-1 +421 421 OCEANSAT-2 +422 422 SCATSAT-1 +423 423 OCEANSAT-3 +430 430 INSAT 1B +431 431 INSAT 1C +432 432 INSAT 1D +440 440 MEGHA-TROPIQUES +441 441 SARAL +450 450 INSAT 2A +451 451 INSAT 2B +452 452 INSAT 2E +470 470 INSAT 3A +471 471 INSAT 3D +472 472 INSAT 3E +473 473 INSAT 3DR +474 474 INSAT 3DS +500 500 FY-1C +501 501 FY-1D +502 502 HAI YANG 2A (HY-2A, SOA/NSOAS CHINA) +503 503 HAI YANG 2B (HY-2B, SOA/NSOAS CHINA) +504 504 HAI YANG 2C (HY-2C, SOA/NSOAS CHINA) +505 505 HAI YANG 2D (HY-2D, SOA/NSOAS CHINA) +510 510 FY-2 +512 512 FY-2B +513 513 FY-2C +514 514 FY-2D +515 515 FY-2E +516 516 FY-2F +517 517 FY-2G +518 518 FY-2H +520 520 FY-3A +521 521 FY-3B +522 522 FY-3C +523 523 FY-3D +524 524 FY-3E +525 525 FY-3F +526 526 FY-3G +530 530 FY-4A +531 531 FY-4B +700 700 TIROS M (ITOS 1) +701 701 NOAA 1 +702 702 NOAA 2 +703 703 NOAA 3 +704 704 NOAA 4 +705 705 NOAA 5 +706 706 NOAA 6 +707 707 NOAA 7 +708 708 TIROS-N +709 709 TROPICS-01 (PATHFINDER) +710 710 GOES (SMS 1) +711 711 GOES (SMS 2) +720 720 TOPEX +721 721 GFO (GEOSAT FOLLOW ON) +722 722 GRACE A +723 723 GRACE B +724 724 COSMIC-2 P1 +725 725 COSMIC-2 P2 +726 726 COSMIC-2 P3 +727 727 COSMIC-2 P4 +728 728 COSMIC-2 P5 +729 729 COSMIC-2 P6 +731 731 GOES 1 +732 732 GOES 2 +733 733 GOES 3 +734 734 GOES 4 +735 735 GOES 5 +740 740 COSMIC-1 +741 741 COSMIC-2 +742 742 COSMIC-3 +743 743 COSMIC-4 +744 744 COSMIC-5 +745 745 COSMIC-6 +746 746 DMSP 1 +747 747 DMSP 2 +748 748 DMSP 3 +749 749 DMSP 4 +750 750 COSMIC-2 E1 +751 751 COSMIC-2 E2 +752 752 COSMIC-2 E3 +753 753 COSMIC-2 E4 +754 754 COSMIC-2 E5 +755 755 COSMIC-2 E6 +761 761 NIMBUS 1 +762 762 NIMBUS 2 +763 763 NIMBUS 3 +764 764 NIMBUS 4 +765 765 NIMBUS 5 +766 766 NIMBUS 6 +767 767 NIMBUS 7 +780 780 ERBS +781 781 UARS +782 782 EARTH PROBE +783 783 TERRA +784 784 AQUA +785 785 AURA +786 786 C/NOFS +787 787 CALIPSO +788 788 CLOUDSAT +789 789 SMAP +790 790 TEMPO +800 800 SUNSAT +801 801 INTERNATIONAL SPACE STATION (ISS) +802 802 CFOSAT +803 803 GRACE C (GRACE-FO) +804 804 GRACE D (GRACE-FO) +810 810 COMS +811 811 GEO-KOMPSAT-2A +812 812 SCISAT-1 +813 813 ODIN +814 814 GEO-KOMPSAT-2B +820 820 SAC-C +821 821 SAC-D +825 825 KOMPSAT-5 +850 850 COMBINATION OF TERRA AND AQUA +851 851 COMBINATION OF NOAA 16 TO NOAA 19 +852 852 COMBINATION OF METOP-1 TO METOP-3 +853 853 COMBINATION OF METEOSAT AND DMSP +854 854 NON-SPECIFIC MIXTURE OF GEOSTATIONARY AND LOW EARTH-ORBITING SATELLITES +855 855 COMBINATION OF INSAT 3D AND INSAT 3DR +856 856 COMBINATION OF SENTINEL-3 SATELLITES +1023 1023 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1024.table b/definitions/bufr/tables/0/wmo/42/codetables/1024.table new file mode 100644 index 000000000..cdc9e2470 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1024.table @@ -0,0 +1,9 @@ +0 0 NO WIND SPEED DATA AVAILABLE +1 1 AMSR-E DATA +2 2 TMI DATA +3 3 NWP: ECMWF +4 4 NWP: UK MET OFFICE +5 5 NWP: NCEP +6 6 REFERENCE CLIMATOLOGY +7 7 ERS_SCATTEROMETER +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1028.table b/definitions/bufr/tables/0/wmo/42/codetables/1028.table new file mode 100644 index 000000000..18f82068b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1028.table @@ -0,0 +1,7 @@ +0 0 NO AOD DATA AVAILABLE +1 1 NESDIS +2 2 NAVOCEANO +3 3 NAAPS +4 4 MERIS +5 5 AATSR +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1029.table b/definitions/bufr/tables/0/wmo/42/codetables/1029.table new file mode 100644 index 000000000..d63d07ef0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1029.table @@ -0,0 +1,8 @@ +0 0 NO SSI DATA AVAILABLE +1 1 MSG_SEVIRI +2 2 GOES EAST +3 3 GOES WEST +4 4 ECMWF +5 5 NCEP +6 6 UK MET OFFICE +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1033.table b/definitions/bufr/tables/0/wmo/42/codetables/1033.table new file mode 100644 index 000000000..a22bbe3ec --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1033.table @@ -0,0 +1,240 @@ +0 0 WMO SECRETARIAT +1 1 MELBOURNE +2 2 MELBOURNE +3 3 ) +4 4 MOSCOW +5 5 MOSCOW +6 6 ) +7 7 US NATIONAL WEATHER SERVICE - NATIONAL CENTRES FOR ENVIRONMENTAL PREDICTION (NCEP) +8 8 US NATIONAL WEATHER SERVICE TELECOMMUNICATIONS GATEWAY (NWSTG) +9 9 US NATIONAL WEATHER SERVICE - OTHER +10 10 CAIRO (RSMC) +11 11 ) +12 12 DAKAR (RSMC) +13 13 ) +14 14 NAIROBI (RSMC) +15 15 ) +16 16 CASABLANCA (RSMC) +17 17 TUNIS (RSMC) +18 18 TUNIS - CASABLANCA (RSMC) +19 19 ) +20 20 LAS PALMAS +21 21 ALGIERS (RSMC) +22 22 ACMAD +23 23 MOZAMBIQUE (NMC) +24 24 PRETORIA (RSMC) +25 25 LA REUNION (RSMC) +26 26 KHABAROVSK (RSMC) +27 27 ) +28 28 NEW DELHI (RSMC) +29 29 ) +30 30 NOVOSIBIRSK (RSMC) +31 31 ) +32 32 TASHKENT (RSMC) +33 33 JEDDAH (RSMC) +34 34 TOKYO (RSMC), JAPAN METEOROLOGICAL AGENCY +35 35 ) +36 36 BANGKOK +37 37 ULAANBAATAR +38 38 BEIJING (RSMC) +39 39 ) +40 40 SEOUL +41 41 BUENOS AIRES (RSMC) +42 42 ) +43 43 BRASILIA (RSMC) +44 44 ) +45 45 SANTIAGO +46 46 BRAZILIAN SPACE AGENCY INPE +47 47 COLOMBIA (NMC) +48 48 ECUADOR (NMC) +49 49 PERU (NMC) +50 50 VENEZUELA (BOLIVARIAN REPUBLIC OF) (NMC) +51 51 MIAMI (RSMC) +52 52 MIAMI (RSMC), NATIONAL HURRICANE CENTRE +53 53 MSC MONITORING +54 54 MONTREAL (RSMC) +55 55 SAN FRANCISCO +56 56 ARINC CENTRE +57 57 US AIR FORCE - AIR FORCE GLOBAL WEATHER CENTRAL +58 58 FLEET NUMERICAL METEOROLOGY AND OCEANOGRAPHY CENTER, MONTEREY, CA, UNITED STATES +59 59 THE NOAA FORECAST SYSTEMS LABORATORY, BOULDER, CO, UNITED STATES +60 60 UNITED STATES NATIONAL CENTER FOR ATMOSPHERIC RESEARCH (NCAR) +61 61 SERVICE ARGOS - LANDOVER +62 62 US NAVAL OCEANOGRAPHIC OFFICE +63 63 INTERNATIONAL RESEARCH INSTITUTE FOR CLIMATE AND SOCIETY (IRI) +64 64 HONOLULU (RSMC) +65 65 DARWIN (RSMC) +66 66 ) +67 67 MELBOURNE (RSMC) +68 68 RESERVED +69 69 WELLINGTON (RSMC) +70 70 ) +71 71 NADI (RSMC) +72 72 SINGAPORE +73 73 MALAYSIA (NMC) +74 74 UK METEOROLOGICAL OFFICE EXETER (RSMC) +75 75 ) +76 76 MOSCOW (RSMC) +77 77 RESERVED +78 78 OFFENBACH (RSMC) +79 79 ) +80 80 ROME (RSMC) +81 81 ) +82 82 NORRKOPING +83 83 ) +84 84 TOULOUSE (RSMC) +85 85 TOULOUSE (RSMC) +86 86 HELSINKI +87 87 BELGRADE +88 88 OSLO +89 89 PRAGUE +90 90 EPISKOPI +91 91 ANKARA +92 92 FRANKFURT/MAIN +93 93 LONDON (WAFC) +94 94 COPENHAGEN +95 95 ROTA +96 96 ATHENS +97 97 EUROPEAN SPACE AGENCY (ESA) +98 98 EUROPEAN CENTRE FOR MEDIUM-RANGE WEATHER FORECASTS (ECMWF) (RSMC) +99 99 DE BILT +100 100 BRAZZAVILLE +101 101 ABIDJAN +102 102 LIBYA (NMC) +103 103 MADAGASCAR (NMC) +104 104 MAURITIUS (NMC) +105 105 NIGER (NMC) +106 106 SEYCHELLES (NMC) +107 107 UGANDA (NMC) +108 108 UNITED REPUBLIC OF TANZANIA (NMC) +109 109 ZIMBABWE (NMC) +110 110 HONG-KONG, CHINA +111 111 AFGHANISTAN (NMC) +112 112 BAHRAIN (NMC) +113 113 BANGLADESH (NMC) +114 114 BHUTAN (NMC) +115 115 CAMBODIA (NMC) +116 116 DEMOCRATIC PEOPLE'S REPUBLIC OF KOREA (NMC) +117 117 ISLAMIC REPUBLIC OF IRAN (NMC) +118 118 IRAQ (NMC) +119 119 KAZAKHSTAN (NMC) +120 120 KUWAIT (NMC) +121 121 KYRGYZSTAN (NMC) +122 122 LAO PEOPLE'S DEMOCRATIC REPUBLIC (NMC) +123 123 MACAO, CHINA +124 124 MALDIVES (NMC) +125 125 MYANMAR (NMC) +126 126 NEPAL (NMC) +127 127 OMAN (NMC) +128 128 PAKISTAN (NMC) +129 129 QATAR (NMC) +130 130 YEMEN (NMC) +131 131 SRI LANKA (NMC) +132 132 TAJIKISTAN (NMC) +133 133 TURKMENISTAN (NMC) +134 134 UNITED ARAB EMIRATES (NMC) +135 135 UZBEKISTAN (NMC) +136 136 VIET NAM (NMC) +140 140 BOLIVIA (PLURINATIONAL STATE OF) (NMC) +141 141 GUYANA (NMC) +142 142 PARAGUAY (NMC) +143 143 SURINAME (NMC) +144 144 URUGUAY (NMC) +145 145 FRENCH GUIANA +146 146 BRAZILIAN NAVY HYDROGRAPHIC CENTRE +147 147 NATIONAL COMMISSION ON SPACE ACTIVITIES (CONAE) - ARGENTINA +148 148 BRAZILIAN DEPARTMENT OF AIRSPACE CONTROL - DECEA +149 149 RESERVED FOR OTHER CENTRES +150 150 ANTIGUA AND BARBUDA (NMC) +151 151 BAHAMAS (NMC) +152 152 BARBADOS (NMC) +153 153 BELIZE (NMC) +154 154 BRITISH CARIBBEAN TERRITORIES CENTRE +155 155 SAN JOSE +156 156 CUBA (NMC) +157 157 DOMINICA (NMC) +158 158 DOMINICAN REPUBLIC (NMC) +159 159 EL SALVADOR (NMC) +160 160 US NOAA/NESDIS +161 161 US NOAA OFFICE OF OCEANIC AND ATMOSPHERIC RESEARCH +162 162 GUATEMALA (NMC) +163 163 HAITI (NMC) +164 164 HONDURAS (NMC) +165 165 JAMAICA (NMC) +166 166 MEXICO CITY +167 167 CURACAO AND SINT MAARTEN (NMC) +168 168 NICARAGUA (NMC) +169 169 PANAMA (NMC) +170 170 SAINT LUCIA (NMC) +171 171 TRINIDAD AND TOBAGO (NMC) +172 172 FRENCH DEPARTMENTS IN RA IV +173 173 US NATIONAL AERONAUTICS AND SPACE ADMINISTRATION (NASA) +174 174 INTEGRATED SCIENCE DATA MANAGEMENT/MARINE ENVIRONMENTAL DATA SERVICE (ISDM/MEDS) - CANADA +175 175 UNIVERSITY CORPORATION FOR ATMOSPHERIC RESEARCH (UCAR) - UNITED STATES +176 176 COOPERATIVE INSTITUTE FOR METEOROLOGICAL SATELLITE STUDIES (CIMSS) - UNITED STATES +177 177 NOAA NATIONAL OCEAN SERVICE - UNITED STATES +178 178 SPIRE GLOBAL, INC. +179 179 GEOOPTICS, INC. +180 180 PLANETIQ +181 181 ATMOSPHERIC AND ENVIRONMENTAL RESEARCH (AER) +190 190 COOK ISLANDS (NMC) +191 191 FRENCH POLYNESIA (NMC) +192 192 TONGA (NMC) +193 193 VANUATU (NMC) +194 194 BRUNEI DARUSSALAM (NMC) +195 195 INDONESIA (NMC) +196 196 KIRIBATI (NMC) +197 197 FEDERATED STATES OF MICRONESIA (NMC) +198 198 NEW CALEDONIA (NMC) +199 199 NIUE +200 200 PAPUA NEW GUINEA (NMC) +201 201 PHILIPPINES (NMC) +202 202 SAMOA (NMC) +203 203 SOLOMON ISLANDS (NMC) +204 204 NATIONAL INSTITUTE OF WATER AND ATMOSPHERIC RESEARCH (NIWA - NEW ZEALAND) +210 210 FRASCATI (ESA/ESRIN) +211 211 LANNION +212 212 LISBON +213 213 REYKJAVIK +214 214 MADRID +215 215 ZUERICH +216 216 SERVICE ARGOS - TOULOUSE +217 217 BRATISLAVA +218 218 BUDAPEST +219 219 LJUBLJANA +220 220 WARSAW +221 221 ZAGREB +222 222 ALBANIA (NMC) +223 223 ARMENIA (NMC) +224 224 AUSTRIA (NMC) +225 225 AZERBAIJAN (NMC) +226 226 BELARUS (NMC) +227 227 BELGIUM (NMC) +228 228 BOSNIA AND HERZEGOVINA (NMC) +229 229 BULGARIA (NMC) +230 230 CYPRUS (NMC) +231 231 ESTONIA (NMC) +232 232 GEORGIA (NMC) +233 233 DUBLIN +234 234 ISRAEL (NMC) +235 235 JORDAN (NMC) +236 236 LATVIA (NMC) +237 237 LEBANON (NMC) +238 238 LITHUANIA (NMC) +239 239 LUXEMBOURG +240 240 MALTA (NMC) +241 241 MONACO +242 242 ROMANIA (NMC) +243 243 SYRIAN ARAB REPUBLIC (NMC) +244 244 THE FORMER YUGOSLAV REPUBLIC OF MACEDONIA (NMC) +245 245 UKRAINE (NMC) +246 246 REPUBLIC OF MOLDOVA (NMC) +247 247 OPERATIONAL PROGRAMME FOR THE EXCHANGE OF WEATHER RADAR INFORMATION (OPERA) - EUMETNET +248 248 MONTENEGRO (NMC) +249 249 BARCELONA DUST FORECAST CENTER +250 250 CONSORTIUM FOR SMALL SCALE MODELLING (COSMO) +251 251 METEOROLOGICAL COOPERATION ON OPERATIONAL NWP (METCOOP) +252 252 MAX PLANCK INSTITUTE FOR METEOROLOGY (MPI-M) +253 253 ALFRED WEGENER INSTITUTE (AWI) +254 254 EUMETSAT OPERATION CENTRE +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1034.table b/definitions/bufr/tables/0/wmo/42/codetables/1034.table new file mode 100644 index 000000000..fce0d85fd --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1034.table @@ -0,0 +1,104 @@ +0 0 NO SUB-CENTRE +1 1 LUXEMBOURG (NMC) +2 2 FUCINO +3 3 GATINEAU +4 4 MASPALOMAS (SPAIN) +5 5 ESA ERS CENTRAL FACILITY +6 6 PRINCE ALBERT +7 7 WEST FREUGH +8 8 LANGLEY RESEARCH CENTER +9 9 MARSHALL SPACE FLIGHT CENTER +10 10 TROMSO (NORWAY) +11 11 MCMURDO (ANTARCTICA) +12 12 SODANKYLA (FINLAND) +13 13 TROMSO +14 14 BARROW (UNITED STATES) +15 15 ROTHERA (ANTARCTICA) +16 16 SPACE WEATHER PREDICTION CENTER +17 17 ESRL GLOBAL SYSTEMS DIVISION +18 18 SIPAM-PORTO VELHO-RO +19 19 SIPAM-BELEM-PA +20 20 MASPALOMAS (SPAIN) +21 21 AGENZIA SPAZIALE ITALIANA (ITALY) +22 22 CENTRE NATIONAL DE LA RECHERCHE SCIENTIFIQUE (FRANCE) +23 23 GEOFORSCHUNGS ZENTRUM (GERMANY) +24 24 GEODETIC OBSERVATORY PECNY (CZECHIA) +25 25 INSTITUT D'ESTUDIS ESPACIALS DE CATALUNYA (SPAIN) +26 26 FEDERAL OFFICE OF TOPOGRAPHY (SWITZERLAND) +27 27 NORDIC COMMISSION OF GEODESY (NORWAY) +28 28 NORDIC COMMISSION OF GEODESY (SWEDEN) +29 29 INSTITUTE GEOGRAPHIQUE NATIONAL (FRANCE) - SERVICE DE GEODESIE +30 30 KANGERLUSSUAQ (GREENLAND) +31 31 INSTITUTE OF ENGINEERING SATELLITE SURVEYING AND GEODESY (UNITED KINGDOM) +32 32 JOINT OPERATIONAL METEOROLOGY AND OCEANOGRAPHY CENTRE (JOMOC) +33 33 KONINKLIJK NEDERLANDS METEOROLOGISCH INSTITUT (NETHERLANDS) +34 34 NORDIC GPS ATMOSPHERIC ANALYSIS CENTRE (SWEDEN) +35 35 INSTITUTO GEOGRAFICO NACIONAL DE ESPANA (SPAIN) +36 36 MET EIREANN (IRELAND) +37 37 ROYAL OBSERVATORY OF BELGIUM (BELGIUM) +40 40 EDMONTON (CANADA) +50 50 BEDFORD (CANADA) +60 60 GANDER (CANADA) +64 64 BUNDESWEHR GEOINFORMATION OFFICE (BGIO) +70 70 MONTEREY (UNITED STATES) +76 76 ROSHYDROMET (RUSSIAN FEDERATION) +78 78 DEUTSCHER WETTERDIENST (GERMANY) +80 80 WALLOPS ISLAND (UNITED STATES) +90 90 GILMOR CREEK (UNITED STATES) +96 96 HELLENIC NATIONAL METEOROLOGICAL SERVICE (GREECE) +100 100 ATHENS (GREECE) +101 101 ALBANIA (NMC) +102 102 NATIONAL RESEARCH COUNCIL/INSTITUTE OF ATMOSPHERIC SCIENCES AND CLIMATE (CNR-ISAC) +110 110 NOWCAST MOBILE (LIGHTNING DATA) +120 120 EWA BEACH, HAWAII +125 125 FORD ISLAND, HAWAII +130 130 MIAMI, FLORIDA +140 140 LANNION (FRANCE) +150 150 SVALBARD (NORWAY) +170 170 SAINT-DENIS (LA REUNION) +180 180 MOSCOW +190 190 MUSCAT +200 200 KHABAROVSK +201 201 RHEINISCHES INSTITUT FUER UMWELTFORSCHUNG AN DER UNIVERSITAET ZU KOELN E.V. (GERMANY) +202 202 INSTITUT FRANCAIS DE RECHERCHE POUR L'EXPLOITATION DE LA MER +203 203 AARHUS UNIVERSITY (DENMARK) +204 204 INSTITUTE OF ENVIRONMENTAL PROTECTION - NATIONAL RESEARCH INSTITUTE (POLAND) +205 205 NIUE +206 206 RAROTONGA (COOK ISLANDS) +207 207 APIA (SAMOA) +208 208 TONGA +209 209 TUVALU +210 210 NOVOSIBIRSK +211 211 TOKELAU +214 214 DARWIN +215 215 METEOSWISS (SWITZERLAND) +217 217 PERTH +219 219 TOWNSVILLE +220 220 NOAA SATELLITE OPERATIONS FACILITY (NSOF) +221 221 SCHLESWIG-HOLSTEIN, TRAFFIC OPERATIONS COMPUTING CENTRE (TOCC) KIEL/NEUMUENSTER +222 222 HAMBURG, TOCC HAMBURG +223 223 NIEDERSACHSEN, TOCC HANNOVER +224 224 AUSTRIA (NMC) +225 225 NORDRHEIN-WESTFALEN, TOCC KAMEN LEVERKUSEN +226 226 HESSEN, TOCC RUESSELSHEIM +227 227 RHEINLAND-PFALZ, TOCC KOBLENZ +228 228 BADEN-WUERTTEMBERG, TOCC LUDWIGSBURG +229 229 BAYERN, TOCC FREIMANN +230 230 SAARLAND, TOCC ROHRBACH +231 231 BAYERN, AUTOBAHN DIRECTORATE NORDBAYERN +232 232 BRANDENBURG, TOCC STOLPE +233 233 MECKLENBURG-VORPOMMERN, TOCC MALCHOW +234 234 SACHSEN, TOCC DRESDEN +235 235 SACHSEN-ANHALT, TOCC HALLE +236 236 THUERINGEN, TOCC ERFURT +237 237 EASYWAY - METEOTRANS +240 240 KIYOSE +241 241 REANALYSIS PROJECT +242 242 NATIONAL METEOROLOGICAL ADMINISTRATION (ROMANIA) +243 243 KELBURN +245 245 JINCHEON +249 249 SINGAPORE +250 250 VLADIVOSTOCK +251 251 GUAM +252 252 HONOLULU +254 254 EUMETSAT diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1035.table b/definitions/bufr/tables/0/wmo/42/codetables/1035.table new file mode 100644 index 000000000..041477240 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1035.table @@ -0,0 +1,308 @@ +0 0 WMO SECRETARIAT +1 1 MELBOURNE +2 2 MELBOURNE +3 3 ) +4 4 MOSCOW +5 5 MOSCOW +6 6 ) +7 7 US NATIONAL WEATHER SERVICE, NATIONAL CENTRES FOR ENVIRONMENTAL PREDICTION (NCEP) +8 8 US NATIONAL WEATHER SERVICE TELECOMMUNICATIONS GATEWAY (NWSTG) +9 9 US NATIONAL WEATHER SERVICE - OTHER +10 10 CAIRO (RSMC) +11 11 ) +12 12 DAKAR (RSMC) +13 13 ) +14 14 NAIROBI (RSMC) +15 15 ) +16 16 CASABLANCA (RSMC) +17 17 TUNIS (RSMC) +18 18 TUNIS-CASABLANCA (RSMC) +19 19 ) +20 20 LAS PALMAS +21 21 ALGIERS (RSMC) +22 22 ACMAD +23 23 MOZAMBIQUE (NMC) +24 24 PRETORIA (RSMC) +25 25 LA REUNION (RSMC) +26 26 KHABAROVSK (RSMC) +27 27 ) +28 28 NEW DELHI (RSMC) +29 29 ) +30 30 NOVOSIBIRSK (RSMC) +31 31 ) +32 32 TASHKENT (RSMC) +33 33 JEDDAH (RSMC) +34 34 TOKYO (RSMC), JAPAN METEOROLOGICAL AGENCY +35 35 ) +36 36 BANGKOK +37 37 ULAANBAATAR +38 38 BEIJING (RSMC) +39 39 ) +40 40 SEOUL +41 41 BUENOS AIRES (RSMC) +42 42 ) +43 43 BRASILIA (RSMC) +44 44 ) +45 45 SANTIAGO +46 46 BRAZILIAN SPACE AGENCY INPE +47 47 COLOMBIA (NMC) +48 48 ECUADOR (NMC) +49 49 PERU (NMC) +50 50 VENEZUELA (BOLIVARIAN REPUBLIC OF) (NMC) +51 51 MIAMI (RSMC) +52 52 MIAMI RSMC, NATIONAL HURRICANE CENTRE +53 53 MSC MONITORING +54 54 MONTREAL (RSMC) +55 55 SAN FRANCISCO +56 56 ARINC CENTRE +57 57 US AIR FORCE - AIR FORCE GLOBAL WEATHER CENTRAL +58 58 FLEET NUMERICAL METEOROLOGY AND OCEANOGRAPHY CENTER, MONTEREY, CA, UNITED STATES +59 59 THE NOAA FORECAST SYSTEMS LABORATORY, BOULDER, CO, UNITED STATES +60 60 UNITED STATES NATIONAL CENTER FOR ATMOSPHERIC RESEARCH (NCAR) +61 61 SERVICE ARGOS - LANDOVER +62 62 US NAVAL OCEANOGRAPHIC OFFICE +63 63 INTERNATIONAL RESEARCH INSTITUTE FOR CLIMATE AND SOCIETY (IRI) +64 64 HONOLULU (RSMC) +65 65 DARWIN (RSMC) +66 66 ) +67 67 MELBOURNE (RSMC) +68 68 RESERVED +69 69 WELLINGTON (RSMC) +70 70 ) +71 71 NADI (RSMC) +72 72 SINGAPORE +73 73 MALAYSIA (NMC) +74 74 UK METEOROLOGICAL OFFICE EXETER (RSMC) +75 75 ) +76 76 MOSCOW (RSMC) +77 77 RESERVED +78 78 OFFENBACH (RSMC) +79 79 ) +80 80 ROME (RSMC) +81 81 ) +82 82 NORRKOPING +83 83 ) +84 84 TOULOUSE (RSMC) +85 85 TOULOUSE (RSMC) +86 86 HELSINKI +87 87 BELGRADE +88 88 OSLO +89 89 PRAGUE +90 90 EPISKOPI +91 91 ANKARA +92 92 FRANKFURT/MAIN +93 93 LONDON (WAFC) +94 94 COPENHAGEN +95 95 ROTA +96 96 ATHENS +97 97 EUROPEAN SPACE AGENCY (ESA) +98 98 EUROPEAN CENTRE FOR MEDIUM RANGE WEATHER FORECASTS (ECMWF) (RSMC) +99 99 DE BILT +100 100 BRAZZAVILLE +101 101 ABIDJAN +102 102 LIBYA (NMC) +103 103 MADAGASCAR (NMC) +104 104 MAURITIUS (NMC) +105 105 NIGER (NMC) +106 106 SEYCHELLES (NMC) +107 107 UGANDA (NMC) +108 108 UNITED REPUBLIC OF TANZANIA (NMC) +109 109 ZIMBABWE (NMC) +110 110 HONG KONG, CHINA +111 111 AFGHANISTAN (NMC) +112 112 BAHRAIN (NMC) +113 113 BANGLADESH (NMC) +114 114 BHUTAN (NMC) +115 115 CAMBODIA (NMC) +116 116 DEMOCRATIC PEOPLE'S REPUBLIC OF KOREA (NMC) +117 117 ISLAMIC REPUBLIC OF IRAN (NMC) +118 118 IRAQ (NMC) +119 119 KAZAKHSTAN (NMC) +120 120 KUWAIT (NMC) +121 121 KYRGYZSTAN (NMC) +122 122 LAO PEOPLE'S DEMOCRATIC REPUBLIC (NMC) +123 123 MACAO, CHINA +124 124 MALDIVES (NMC) +125 125 MYANMAR (NMC) +126 126 NEPAL (NMC) +127 127 OMAN (NMC) +128 128 PAKISTAN (NMC) +129 129 QATAR (NMC) +130 130 YEMEN (NMC) +131 131 SRI LANKA (NMC) +132 132 TAJIKISTAN (NMC) +133 133 TURKMENISTAN (NMC) +134 134 UNITED ARAB EMIRATES (NMC) +135 135 UZBEKISTAN (NMC) +136 136 VIET NAM (NMC) +140 140 BOLIVIA (PLURINATIONAL STATE OF) (NMC) +141 141 GUYANA (NMC) +142 142 PARAGUAY (NMC) +143 143 SURINAME (NMC) +144 144 URUGUAY (NMC) +145 145 FRENCH GUIANA +146 146 BRAZILIAN NAVY HYDROGRAPHIC CENTRE +147 147 NATIONAL COMMISSION ON SPACE ACTIVITIES (CONAE) - ARGENTINA +148 148 BRAZILIAN DEPARTMENT OF AIRSPACE CONTROL - DECEA +149 149 RESERVED FOR OTHER CENTRES +150 150 ANTIGUA AND BARBUDA (NMC) +151 151 BAHAMAS (NMC) +152 152 BARBADOS (NMC) +153 153 BELIZE (NMC) +154 154 BRITISH CARIBBEAN TERRITORIES CENTRE +155 155 SAN JOSE +156 156 CUBA (NMC) +157 157 DOMINICA (NMC) +158 158 DOMINICAN REPUBLIC (NMC) +159 159 EL SALVADOR (NMC) +160 160 US NOAA/NESDIS +161 161 US NOAA OFFICE OF OCEANIC AND ATMOSPHERIC RESEARCH +162 162 GUATEMALA (NMC) +163 163 HAITI (NMC) +164 164 HONDURAS (NMC) +165 165 JAMAICA (NMC) +166 166 MEXICO +167 167 CURACAO AND SINT MAARTEN (NMC) +168 168 NICARAGUA (NMC) +169 169 PANAMA (NMC) +170 170 SAINT LUCIA (NMC) +171 171 TRINIDAD AND TOBAGO (NMC) +172 172 FRENCH DEPARTMENTS IN RA IV +173 173 US NATIONAL AERONAUTICS AND SPACE ADMINISTRATION (NASA) +174 174 INTEGRATED SCIENCE DATA MANAGEMENT/MARINE ENVIRONMENTAL DATA SERVICE (ISDM/MEDS - CANADA) +175 175 UNIVERSITY CORPORATION FOR ATMOSPHERIC RESEARCH (UCAR) - UNITED STATES +176 176 COOPERATIVE INSTITUTE FOR METEOROLOGICAL SATELLITE STUDIES (CIMSS) - UNITED STATES +177 177 NOAA NATIONAL OCEAN SERVICE - UNITED STATES +178 178 SPIRE GLOBAL, INC. +179 179 GEOOPTICS, INC. +180 180 PLANETIQ +181 181 ATMOSPHERIC AND ENVIRONMENTAL RESEARCH (AER) +190 190 COOK ISLANDS (NMC) +191 191 FRENCH POLYNESIA (NMC) +192 192 TONGA (NMC) +193 193 VANUATU (NMC) +194 194 BRUNEI DARUSSALAM (NMC) +195 195 INDONESIA (NMC) +196 196 KIRIBATI (NMC) +197 197 FEDERATED STATES OF MICRONESIA (NMC) +198 198 NEW CALEDONIA (NMC) +199 199 NIUE +200 200 PAPUA NEW GUINEA (NMC) +201 201 PHILIPPINES (NMC) +202 202 SAMOA (NMC) +203 203 SOLOMON ISLANDS (NMC) +204 204 NATIONAL INSTITUTE OF WATER AND ATMOSPHERIC RESEARCH (NIWA - NEW ZEALAND) +210 210 FRASCATI (ESA/ESRIN) +211 211 LANNION +212 212 LISBOA +213 213 REYKJAVIK +214 214 MADRID +215 215 ZUERICH +216 216 SERVICE ARGOS TOULOUSE +217 217 BRATISLAVA +218 218 BUDAPEST +219 219 LJUBLJANA +220 220 WARSAW +221 221 ZAGREB +222 222 ALBANIA (NMC) +223 223 ARMENIA (NMC) +224 224 AUSTRIA (NMC) +225 225 AZERBAIJAN (NMC) +226 226 BELARUS (NMC) +227 227 BELGIUM (NMC) +228 228 BOSNIA AND HERZEGOVINA (NMC) +229 229 BULGARIA (NMC) +230 230 CYPRUS (NMC) +231 231 ESTONIA (NMC) +232 232 GEORGIA (NMC) +233 233 DUBLIN +234 234 ISRAEL (NMC) +235 235 JORDAN (NMC) +236 236 LATVIA (NMC) +237 237 LEBANON (NMC) +238 238 LITHUANIA (NMC) +239 239 LUXEMBOURG +240 240 MALTA (NMC) +241 241 MONACO +242 242 ROMANIA (NMC) +243 243 SYRIAN ARAB REPUBLIC (NMC) +244 244 THE FORMER YUGOSLAV REPUBLIC OF MACEDONIA (NMC) +245 245 UKRAINE (NMC) +246 246 REPUBLIC OF MOLDOVA (NMC) +247 247 OPERATIONAL PROGRAMME FOR THE EXCHANGE OF WEATHER RADAR INFORMATION (OPERA) - EUMETNET +248 248 MONTENEGRO (NMC) +249 249 BARCELONA DUST FORECAST CENTER +250 250 CONSORTIUM FOR SMALL SCALE MODELLING (COSMO) +251 251 METEOROLOGICAL COOPERATION ON OPERATIONAL NWP (METCOOP) +252 252 MAX PLANCK INSTITUTE FOR METEOROLOGY (MPI-M) +253 253 ALFRED WEGENER INSTITUTE (AWI) +254 254 EUMETSAT OPERATION CENTRE +255 255 NOT TO BE USED +256 256 ANGOLA (NMC) +257 257 BENIN (NMC) +258 258 BOTSWANA (NMC) +259 259 BURKINA FASO (NMC) +260 260 BURUNDI (NMC) +261 261 CAMEROON (NMC) +262 262 CABO VERDE (NMC) +263 263 CENTRAL AFRICAN REPUBLIC (NMC) +264 264 CHAD (NMC) +265 265 COMOROS (NMC) +266 266 DEMOCRATIC REPUBLIC OF THE CONGO (NMC) +267 267 DJIBOUTI (NMC) +268 268 ERITREA (NMC) +269 269 ETHIOPIA (NMC) +270 270 GABON (NMC) +271 271 GAMBIA (NMC) +272 272 GHANA (NMC) +273 273 GUINEA (NMC) +274 274 GUINEA-BISSAU (NMC) +275 275 LESOTHO (NMC) +276 276 LIBERIA (NMC) +277 277 MALAWI (NMC) +278 278 MALI (NMC) +279 279 MAURITANIA (NMC) +280 280 NAMIBIA (NMC) +281 281 NIGERIA (NMC) +282 282 RWANDA (NMC) +283 283 SAO TOME AND PRINCIPE (NMC) +284 284 SIERRA LEONE (NMC) +285 285 SOMALIA (NMC) +286 286 SUDAN (NMC) +287 287 ESWATINI (NMC) +288 288 TOGO (NMC) +289 289 ZAMBIA (NMC) +290 290 EUMETNET E-PROFILE +291 291 INSTITUTE OF ATMOSPHERIC PHYSICS (IAP) OF THE CHINESE ACADEMY OF SCIENCES (CAS) +292 292 HELMHOLTZ CENTRE FOR ENVIRONMENTAL RESEARCH (UFZ) +293 293 UNIVERSITY OF BREMEN +294 294 NETHERLANDS INSTITUTE FOR SPACE RESEARCH (SRON) +295 295 THE ROYAL BELGIAN INSTITUTE FOR SPACE AERONOMY (BIRA-IASB) +296 296 THE FRENCH NATIONAL CENTRE FOR SCIENTIFIC RESEARCH (CNRS) +297 297 THE NANJING INSTITUTE OF ENVIRONMENTAL SCIENCES (NIES) +298 298 DYNAMIC METEOROLOGY LABORATORY (LMD) +299 299 THE RUTHERFORD APPLETON LABORATORY (RAL) +300 300 GREEK ATOMIC ENERGY COMMISSION (GREECE) +301 301 UNITED STATED ENVIRONMENTAL PROTECTION AGENCY (USA) +302 302 AUTRALIAN RADIATION PROTECTION AND NUCLEAR SAFETY (AUSTRALIA) +303 303 AUTHORITY FOR NUCLEAR SAFETY AND RADIATION PROTECTION (THE NETHERLANDS) +304 304 AUTORITE DE SURETE NUCLEAIRE (FRANCE) +305 305 BUNDESAMT FüR STRAHLENSCHUTZ (GERMANY) +306 306 NATIONAL COMMISSION FOR NUCLEAR ACTIVITIES CONTROL (ROMANIA) +307 307 CONSEJO DE SEGURIDAD NUCLEAR (SPAIN) +308 308 DANISH EMERGENCY MANAGEMENT AGENCY (DENMARK) +309 309 NORWEGIAN RADIATION PROTECTION AGENCY (NORWAY) +310 310 FEDERAL AGENCY FOR NUCLEAR CONTROL (BELGIUM) +311 311 INSTITUTE OF RADIATION PROTECTION AND DOSIMETRY (BRAZIL) +312 312 NATIONAL INSPECTORATE FOR NUCLEAR SAFETY AND RADIATION PROTECTION (ITALY) +313 313 NUCLEAR REGULATORY AUTHORITY (TURKIYE) +314 314 NUCLEAR REGULATION AUTHORITY (JAPAN) +315 315 NUCLEAR REGULATORY AGENCY (BULGARIA) +316 316 UKRAINIAN RADIATION PROTECTION INSTITUTE (UKRIANE) +317 317 HEALTH CANADA RADIO PROTECTION BUREAU (CANADA) +318 318 PORTUGUESE SOCIETY FOR RADIATION PROTECTION (PORTUGAL) +319 319 SWEDISH RADIATION SAFETY AUTHORITY (SWEDEN) +320 320 RADIATION AND NUCLEAR SAFETY AUTHORITY (FINLAND) +321 321 STATE OFFICE FOR NUCLEAR SAFETY (CZECHIA) +322 322 NUCLEAR REGULATION AUTHORITY (SLOVAKIA) +65535 65535 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1036.table b/definitions/bufr/tables/0/wmo/42/codetables/1036.table new file mode 100644 index 000000000..06eab3ccd --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1036.table @@ -0,0 +1,42 @@ +36001 36001 AUSTRALIA, BUREAU OF METEOROLOGY (BOM) +36002 36002 AUSTRALIA, JOINT AUSTRALIAN FACILITY FOR OCEAN OBSERVING SYSTEMS (JAFOOS) +36003 36003 AUSTRALIA, THE COMMONWEALTH SCIENTIFIC AND INDUSTRIAL RESEARCH ORGANIZATION (CSIRO) +124001 124001 CANADA, MARINE ENVIRONMENTAL DATA SERVICE (MEDS) +124002 124002 CANADA, INSTITUTE OF OCEAN SCIENCES (IOS) +124173 124173 CANADA, ENVIRONMENT CANADA +124174 124174 CANADA, DEPARTMENT OF NATIONAL DEFENCE +124175 124175 CANADA, NAV CANADA +156001 156001 CHINA, THE STATE OCEANIC ADMINISTRATION +156002 156002 CHINA, SECOND INSTITUTE OF OCEANOGRAPHY, STATE OCEANIC ADMINISTRATION +156003 156003 CHINA, INSTITUTE OF OCEAN TECHNOLOGY +250001 250001 FRANCE, INSTITUT DE RECHERCHE POUR LE DéVELOPPEMENT (IRD) +250002 250002 FRANCE, INSTITUT FRANçAIS DE RECHERCHE POUR L'EXPLOITATION DE LA MER (IFREMER) +276001 276001 GERMANY, BUNDESAMT FUER SEESCHIFFAHRT UND HYDROGRAPHIE (BSH) +276002 276002 GERMANY, INSTITUT FUER MEERESKUNDE, KIEL +356001 356001 INDIA, NATIONAL INSTITUTE OF OCEANOGRAPHY (NIO) +356002 356002 INDIA, NATIONAL INSTITUTE FOR OCEAN TECHNOLOGY (NIOT) +356003 356003 INDIA, NATIONAL CENTRE FOR OCEAN INFORMATION SERVICE +392001 392001 JAPAN, JAPAN METEOROLOGICAL AGENCY (JMA) +392002 392002 JAPAN, FRONTIER OBSERVATIONAL RESEARCH SYSTEM FOR GLOBAL CHANGE +392003 392003 JAPAN, JAPAN MARINE SCIENCE AND TECHNOLOGY CENTRE (JAMSTEC) +410001 410001 REPUBLIC OF KOREA, SEOUL NATIONAL UNIVERSITY +410002 410002 REPUBLIC OF KOREA, KOREA OCEAN RESEARCH AND DEVELOPMENT INSTITUTE (KORDI) +410003 410003 REPUBLIC OF KOREA, METEOROLOGICAL RESEARCH INSTITUTE +540001 540001 NEW CALEDONIA, INSTITUT DE RECHERCHE POUR LE DéVELOPPEMENT (IRD) +554001 554001 NEW ZEALAND, NATIONAL INSTITUTE OF WATER AND ATMOSPHERIC RESEARCH (NIWA) +643001 643001 RUSSIAN FEDERATION, STATE OCEANOGRAPHIC INSTITUTE OF ROSHYDROMET +643002 643002 RUSSIAN FEDERATION, FEDERAL SERVICE FOR HYDROMETEOROLOGY AND ENVIRONMENTAL MONITORING +724001 724001 SPAIN, INSTITUTO ESPAñOL DE OCEANOGRAFIA +826001 826001 UNITED KINGDOM, HYDROGRAPHIC OFFICE +826002 826002 UNITED KINGDOM, NATIONAL OCEANOGRAPHY CENTRE (NOC) +826003 826003 UNITED KINGDOM, CENTRE FOR ENVIRONMENT, FISHERIES AND AQUACULTURE SCIENCE (CEFAS) +826004 826004 UNITED KINGDOM, MARINE SCOTLAND (MS) +826005 826005 UNITED KINGDOM, PLYMOUTH MARINE LABORATORY (PML) +826006 826006 UNITED KINGDOM, BRITISH ANTARCTIC SURVEY (BAS) +840001 840001 USA, NOAA ATLANTIC OCEANOGRAPHIC AND METEOROLOGICAL LABORATORY (AOML) +840002 840002 USA, NOAA PACIFIC MARINE ENVIRONMENTAL LABORATORY (PMEL) +840003 840003 USA, SCRIPPS INSTITUTION OF OCEANOGRAPHY (SIO) +840004 840004 USA, WOODS HOLE OCEANOGRAPHIC INSTITUTION (WHOI) +840005 840005 USA, UNIVERSITY OF WASHINGTON +840006 840006 USA, NAVAL OCEANOGRAPHIC OFFICE +1048575 1048575 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1038.table b/definitions/bufr/tables/0/wmo/42/codetables/1038.table new file mode 100644 index 000000000..2eee38baf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1038.table @@ -0,0 +1,7 @@ +0 0 NO SEA ICE SET +1 1 NSIDC SSM/I CAVALIERI ET AL (1992) +2 2 AMSR-E +3 3 ECMWF +4 4 CMS (FRANCE) CLOUD MASK USED BY MEDSPIRATION +5 5 EUMETSAT OSI-SAF +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1044.table b/definitions/bufr/tables/0/wmo/42/codetables/1044.table new file mode 100644 index 000000000..c419e8307 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1044.table @@ -0,0 +1,9 @@ +0 0 RESERVED +1 1 FULL WEIGHTED MIXTURE OF INDIVIDUAL QUALITY TESTS +2 2 WEIGHTED MIXTURE OF INDIVIDUAL TESTS, BUT EXCLUDING FORECAST COMPARISON +3 3 RECURSIVE FILTER FUNCTION +4 4 COMMON QUALITY INDEX (QI) WITHOUT FORECAST +5 5 QI WITHOUT FORECAST +6 6 QI WITH FORECAST +7 7 ESTIMATED ERROR IN M/S CONVERTED TO A PERCENT CONFIDENCE +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1052.table b/definitions/bufr/tables/0/wmo/42/codetables/1052.table new file mode 100644 index 000000000..b8e14ed0f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1052.table @@ -0,0 +1,4 @@ +0 0 PRIMARY +1 1 SECONDARY +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1090.table b/definitions/bufr/tables/0/wmo/42/codetables/1090.table new file mode 100644 index 000000000..55f7ca25d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1090.table @@ -0,0 +1,5 @@ +0 0 LAGGED-AVERAGE FORECASTING (LAF) +1 1 BREEDING +2 2 SINGULAR VECTORS +3 3 MULTIPLE ANALYSIS CYCLES +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1092.table b/definitions/bufr/tables/0/wmo/42/codetables/1092.table new file mode 100644 index 000000000..ce982034d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1092.table @@ -0,0 +1,6 @@ +0 0 UNPERTURBED HIGH-RESOLUTION CONTROL FORECAST +1 1 UNPERTURBED LOW-RESOLUTION CONTROL FORECAST +2 2 NEGATIVELY PERTURBED FORECAST +3 3 POSITIVELY PERTURBED FORECAST +4 4 PERTURBED FORECAST +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1101.table b/definitions/bufr/tables/0/wmo/42/codetables/1101.table new file mode 100644 index 000000000..6bbaf54be --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1101.table @@ -0,0 +1,202 @@ +100 100 ALGERIA +101 101 ANGOLA +102 102 BENIN +103 103 BOTSWANA +104 104 BURKINA FASO +105 105 BURUNDI +106 106 CAMEROON +107 107 CABO VERDE +108 108 CENTRAL AFRICAN REPUBLIC +109 109 CHAD +110 110 COMOROS +111 111 CONGO +112 112 CôTE D'IVOIRE +113 113 DEMOCRATIC REPUBLIC OF THE CONGO +114 114 DJIBOUTI +115 115 EGYPT +116 116 ERITREA +117 117 ETHIOPIA +118 118 FRANCE (RA I) +119 119 GABON +120 120 GAMBIA +121 121 GHANA +122 122 GUINEA +123 123 GUINEA-BISSAU +124 124 KENYA +125 125 LESOTHO +126 126 LIBERIA +127 127 LIBYA +128 128 MADAGASCAR +129 129 MALAWI +130 130 MALI +131 131 MAURITANIA +132 132 MAURITIUS +133 133 MOROCCO +134 134 MOZAMBIQUE +135 135 NAMIBIA +136 136 NIGER +137 137 NIGERIA +138 138 PORTUGAL (RA I) +139 139 RWANDA +140 140 SAO TOME AND PRINCIPE +141 141 SENEGAL +142 142 SEYCHELLES +143 143 SIERRA LEONE +144 144 SOMALIA +145 145 SOUTH AFRICA +146 146 SPAIN (RA I) +147 147 SUDAN +148 148 ESWATINI +149 149 TOGO +150 150 TUNISIA +151 151 UGANDA +152 152 UNITED KINGDOM OF GREAT BRITAIN AND NORTHERN IRELAND (RA I) +153 153 UNITED REPUBLIC OF TANZANIA +154 154 ZAMBIA +155 155 ZIMBABWE +200 200 AFGHANISTAN +201 201 BAHRAIN +202 202 BANGLADESH +203 203 BHUTAN +204 204 CAMBODIA +205 205 CHINA +206 206 DEMOCRATIC PEOPLE'S REPUBLIC OF KOREA +207 207 HONG KONG, CHINA +208 208 INDIA +209 209 IRAN, ISLAMIC REPUBLIC OF +210 210 IRAQ +211 211 JAPAN +212 212 KAZAKHSTAN +213 213 KUWAIT +214 214 KYRGYZSTAN +215 215 LAO PEOPLE'S DEMOCRATIC REPUBLIC +216 216 MACAO, CHINA +217 217 MALDIVES +218 218 MONGOLIA +219 219 MYANMAR +220 220 NEPAL +221 221 OMAN +222 222 PAKISTAN +223 223 QATAR +224 224 REPUBLIC OF KOREA +225 225 YEMEN +226 226 RUSSIAN FEDERATION (RA II) +227 227 SAUDI ARABIA +228 228 SRI LANKA +229 229 TAJIKISTAN +230 230 THAILAND +231 231 TURKMENISTAN +232 232 UNITED ARAB EMIRATES +233 233 UZBEKISTAN +234 234 VIET NAM +300 300 ARGENTINA +301 301 BOLIVIA (PLURINATIONAL STATE OF) +302 302 BRAZIL +303 303 CHILE +304 304 COLOMBIA +305 305 ECUADOR +306 306 FRANCE (RA III) +307 307 GUYANA +308 308 PARAGUAY +309 309 PERU +310 310 SURINAME +311 311 URUGUAY +312 312 VENEZUELA (BOLIVARIAN REPUBLIC OF) +400 400 ANTIGUA AND BARBUDA +401 401 BAHAMAS +402 402 BARBADOS +403 403 BELIZE +404 404 BRITISH CARIBBEAN TERRITORIES +405 405 CANADA +406 406 COLOMBIA +407 407 COSTA RICA +408 408 CUBA +409 409 DOMINICA +410 410 DOMINICAN REPUBLIC +411 411 EL SALVADOR +412 412 FRANCE (RA IV) +413 413 GUATEMALA +414 414 HAITI +415 415 HONDURAS +416 416 JAMAICA +417 417 MEXICO +418 418 CURAçAO AND SINT MAARTEN +419 419 NICARAGUA +420 420 PANAMA +421 421 SAINT LUCIA +422 422 TRINIDAD AND TOBAGO +423 423 UNITED KINGDOM OF GREAT BRITAIN AND NORTHERN IRELAND (RA IV) +424 424 UNITED STATES OF AMERICA (RA IV) +425 425 VENEZUELA (BOLIVARIAN REPUBLIC OF) +500 500 AUSTRALIA +501 501 BRUNEI DARUSSALAM +502 502 COOK ISLANDS +503 503 FIJI +504 504 FRENCH POLYNESIA +505 505 INDONESIA +506 506 KIRIBATI +507 507 MALAYSIA +508 508 MICRONESIA, FEDERATED STATES OF +509 509 NEW CALEDONIA +510 510 NEW ZEALAND +511 511 NIUE +512 512 PAPUA NEW GUINEA +513 513 PHILIPPINES +514 514 SAMOA +515 515 SINGAPORE +516 516 SOLOMON ISLANDS +517 517 TONGA +518 518 UNITED KINGDOM OF GREAT BRITAIN AND NORTHERN IRELAND (RA V) +519 519 UNITED STATES OF AMERICA (RA V) +520 520 VANUATU +600 600 ALBANIA +601 601 ARMENIA +602 602 AUSTRIA +603 603 AZERBAIJAN +604 604 BELARUS +605 605 BELGIUM +606 606 BOSNIA AND HERZEGOVINA +607 607 BULGARIA +608 608 CROATIA +609 609 CYPRUS +610 610 CZECHIA +611 611 DENMARK +612 612 ESTONIA +613 613 FINLAND +614 614 FRANCE (RA VI) +615 615 GEORGIA +616 616 GERMANY +617 617 GREECE +618 618 HUNGARY +619 619 ICELAND +620 620 IRELAND +621 621 ISRAEL +622 622 ITALY +623 623 JORDAN +624 624 KAZAKHSTAN +625 625 LATVIA +626 626 LEBANON +627 627 LITHUANIA +628 628 LUXEMBOURG +629 629 MALTA +630 630 MONACO +631 631 MONTENEGRO +632 632 NETHERLANDS +633 633 NORWAY +634 634 POLAND +635 635 PORTUGAL (RA VI) +636 636 REPUBLIC OF MOLDOVA +637 637 ROMANIA +638 638 RUSSIAN FEDERATION (RA VI) +639 639 SERBIA +640 640 SLOVAKIA +641 641 SLOVENIA +642 642 SPAIN (RA VI) +643 643 SWEDEN +644 644 SWITZERLAND +645 645 SYRIAN ARAB REPUBLIC +646 646 THE FORMER YUGOSLAV REPUBLIC OF MACEDONIA +647 647 TURKIYE +648 648 UKRAINE +649 649 UNITED KINGDOM OF GREAT BRITAIN AND NORTHERN IRELAND (RA VI) +1023 1023 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/11030.table b/definitions/bufr/tables/0/wmo/42/codetables/11030.table new file mode 100644 index 000000000..253b8fccc --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/11030.table @@ -0,0 +1,25 @@ +0 0 NIL +1 1 LIGHT +2 2 MODERATE +3 3 SEVERE +4 4 NIL +5 5 LIGHT +6 6 MODERATE +7 7 SEVERE +8 8 NIL +9 9 LIGHT +10 10 MODERATE +11 11 SEVERE +12 12 EXTREME, IN CLEAR AIR +13 13 EXTREME, IN CLOUD +14 14 EXTREME, CLOUD/CLEAR AIR NOT SPECIFIED +15 15 LIGHT, ISOLATED MODERATE +16 16 LIGHT, OCCASIONAL MODERATE +17 17 LIGHT, FREQUENTLY MODERATE +18 18 MODERATE, ISOLATED SEVERE +19 19 MODERATE, OCCASIONAL SEVERE +20 20 MODERATE, FREQUENTLY SEVERE +21 21 SEVERE, ISOLATED EXTREME +22 22 SEVERE, OCCASIONAL EXTREME +23 23 SEVERE, FREQUENTLY EXTREME +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/11031.table b/definitions/bufr/tables/0/wmo/42/codetables/11031.table new file mode 100644 index 000000000..7bece1c85 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/11031.table @@ -0,0 +1,16 @@ +0 0 NIL +1 1 LIGHT +2 2 MODERATE +3 3 SEVERE +4 4 NIL +5 5 LIGHT +6 6 MODERATE +7 7 SEVERE +8 8 NIL +9 9 LIGHT +10 10 MODERATE +11 11 SEVERE +12 12 EXTREME, IN CLEAR AIR +13 13 EXTREME, IN CLOUD +14 14 EXTREME, CLOUD/CLEAR AIR NOT SPECIFIED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/11037.table b/definitions/bufr/tables/0/wmo/42/codetables/11037.table new file mode 100644 index 000000000..e25c9da63 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/11037.table @@ -0,0 +1,30 @@ +0 0 AVE < 0.1 +1 1 AVE < 0.1 +2 2 0.1 =< AVE < 0.2 +3 3 AVE <0.1 +4 4 0.1 =< AVE < 0.2 +5 5 0.2 =< AVE < 0.3 +6 6 AVE < 0.1 +7 7 0.1 =< AVE < 0.2 +8 8 0.2 =< AVE < 0.3 +9 9 0.3 =< AVE < 0.4 +10 10 AVE < 0.1 +11 11 0.1 =< AVE < 0.2 +12 12 0.2 =< AVE < 0.3 +13 13 0.3 =< AVE < 0.4 +14 14 0.4 =< AVE < 0.5 +15 15 AVE < 0.1 +16 16 0.1 =< AVE < 0.2 +17 17 0.2 =< AVE < 0.3 +18 18 0.3 =< AVE < 0.4 +19 19 0.4 =< AVE < 0.5 +20 20 0.5 =< AVE < 0.8 +21 21 AVE < 0.1 +22 22 0.1 =< AVE < 0.2 +23 23 0.2 =< AVE < 0.3 +24 24 0.3 =< AVE < 0.4 +25 25 0.4 =< AVE < 0.5 +26 26 0.5 =< AVE < 0.8 +27 27 0.8 =< AVE +28 28 NIL +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/11038.table b/definitions/bufr/tables/0/wmo/42/codetables/11038.table new file mode 100644 index 000000000..68876b0b6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/11038.table @@ -0,0 +1,17 @@ +0 0 MIN < 1 +1 1 1 =< MIN < 2 +2 2 2 =< MIN < 3 +3 3 3 =< MIN < 4 +4 4 4 =< MIN < 5 +5 5 5 =< MIN < 6 +6 6 6 =< MIN < 7 +7 7 7 =< MIN < 8 +8 8 8 =< MIN < 9 +9 9 9 =< MIN < 10 +10 10 10 =< MIN < 11 +11 11 11 =< MIN < 12 +12 12 12 =< MIN < 13 +13 13 13 =< MIN < 14 +14 14 14 =< MIN < 15 +15 15 NO TIMING INFORMATION AVAILABLE +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/11039.table b/definitions/bufr/tables/0/wmo/42/codetables/11039.table new file mode 100644 index 000000000..e5af0f23b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/11039.table @@ -0,0 +1,17 @@ +0 0 MIN < 1 +1 1 1 =< MIN < 2 +2 2 2 =< MIN < 3 +3 3 3 =< MIN < 4 +4 4 4 =< MIN < 5 +5 5 5 =< MIN < 6 +6 6 6 =< MIN < 7 +7 7 7 =< MIN < 8 +8 8 8 =< MIN < 9 +9 9 9 =< MIN < 10 +10 10 10 =< MIN < 11 +11 11 11 =< MIN < 12 +12 12 12 =< MIN < 13 +13 13 13 =< MIN < 14 +14 14 14 =< MIN < 15 +60 60 NO TIMING INFORMATION AVAILABLE +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1150.table b/definitions/bufr/tables/0/wmo/42/codetables/1150.table new file mode 100644 index 000000000..51d945080 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1150.table @@ -0,0 +1,7 @@ +0 0 WGS84, AS USED BY ICAO SINCE 1998 +1 1 ETRS89, AS DEFINED BY EPSG:4258 +2 2 NAD83, AS DEFINED BY EPSG:4269 +3 3 DHDN, AS DEFINED BY EPSG:4314 +4 4 ELLIPSOIDAL DATUM USING THE INTERNATIONAL REFERENCE MERIDIAN AND THE INTERNATIONAL REFERENCE POLE AS THE PRIME MERIDIAN AND PRIME POLE, RESPECTIVELY, AND THE ORIGIN OF THE INTERNATIONAL TERRESTRIAL REFERENCE SYSTEM (ITRS). THE INTERNATIONAL REFERENCE MERIDIAN, INTERNATIONAL REFERENCE POLE AND ITRS ARE MAINTAINED BY THE INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS) +5 5 EARTH-CENTERED, EARTH-FIXED (ECEF) COORDINATE SYSTEM OR EARTH-CENTRED ROTATIONAL (ECR) SYSTEM. THIS IS A RIGHT-HANDED CARTESIAN COORDINATE SYSTEM (X, Y, Z) ROTATING WITH THE EARTH. THE ORIGIN IS DEFINED BY THE CENTRE OF MASS OF THE EARTH. (FOOTNOTE (5) OF CLASS 27 DOES NOT APPLY IF ECEF COORDINATES ARE SPECIFIED.) +65535 65535 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1151.table b/definitions/bufr/tables/0/wmo/42/codetables/1151.table new file mode 100644 index 000000000..8907f2371 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1151.table @@ -0,0 +1,3 @@ +0 0 EARTH GRAVITATIONAL MODEL 1996 +1 1 BALTIC HEIGHT SYSTEM 1977 +4095 4095 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/1155.table b/definitions/bufr/tables/0/wmo/42/codetables/1155.table new file mode 100644 index 000000000..3df8457a0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/1155.table @@ -0,0 +1,8 @@ +0 0 STANDARD CORRECT ALGORITHM (SCA) +1 1 STANDARD CORRECT ALGORITHM MID-BIN (SCA MID-BIN) +2 2 MAXIMUM LIKELIHOOD ESTIMATION (MLE) +3 3 OPTIMAL ESTIMATION PROFILE (OE-PRO) +4 4 GROUP +5 5 GROUP MID-BIN +6 6 MAXIMUM LIKELIHOOD ESTIMATION – HIGH HORIZONTAL RESOLUTION (MLESUB) +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/13038.table b/definitions/bufr/tables/0/wmo/42/codetables/13038.table new file mode 100644 index 000000000..19bc42216 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/13038.table @@ -0,0 +1,4 @@ +0 0 NOT SUPERADIABATIC +1 1 SUPERADIABATIC +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/13039.table b/definitions/bufr/tables/0/wmo/42/codetables/13039.table new file mode 100644 index 000000000..c070b1da9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/13039.table @@ -0,0 +1,3 @@ +0 0 SEA ICE +1 1 SNOW ON LAND +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/13040.table b/definitions/bufr/tables/0/wmo/42/codetables/13040.table new file mode 100644 index 000000000..1d37ea957 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/13040.table @@ -0,0 +1,14 @@ +0 0 LAND +1 1 RESERVED +2 2 NEAR COAST +3 3 ICE +4 4 POSSIBLE ICE +5 5 OCEAN +6 6 COAST +7 7 INLAND WATER +8 8 SNOW COVER +9 9 SEA ICE +10 10 STANDING WATER +11 11 SNOW +12 12 FROZEN SOIL +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/13041.table b/definitions/bufr/tables/0/wmo/42/codetables/13041.table new file mode 100644 index 000000000..9e77b6466 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/13041.table @@ -0,0 +1,10 @@ +1 1 A +2 2 A - B +3 3 B +4 4 B - C +5 5 C +6 6 D +7 7 E +8 8 F +9 9 G +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/13051.table b/definitions/bufr/tables/0/wmo/42/codetables/13051.table new file mode 100644 index 000000000..4bdb73e71 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/13051.table @@ -0,0 +1,8 @@ +0 0 SMALLER THAN ANY VALUE IN THE 30-YEAR PERIOD +1 1 IN THE FIRST QUINTILE +2 2 IN THE SECOND QUINTILE +3 3 IN THE THIRD QUINTILE +4 4 IN THE FOURTH QUINTILE +5 5 IN THE FIFTH QUINTILE +6 6 GREATER THAN ANY VALUE IN THE 30-YEAR PERIOD +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/13056.table b/definitions/bufr/tables/0/wmo/42/codetables/13056.table new file mode 100644 index 000000000..448c26927 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/13056.table @@ -0,0 +1,11 @@ +0 0 NO PRECIPITATION +1 1 LIGHT INTERMITTENT +2 2 MODERATE INTERMITTENT +3 3 HEAVY INTERMITTENT +4 4 VERY HEAVY INTERMITTENT +5 5 LIGHT CONTINUOUS +6 6 MODERATE CONTINUOUS +7 7 HEAVY CONTINUOUS +8 8 VERY HEAVY CONTINUOUS +9 9 VARIABLE - ALTERNATIVELY LIGHT AND HEAVY +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/13057.table b/definitions/bufr/tables/0/wmo/42/codetables/13057.table new file mode 100644 index 000000000..6dfa18dd0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/13057.table @@ -0,0 +1,11 @@ +0 0 NO PRECIPITATION +1 1 WITHIN THE LAST HOUR +2 2 1 TO 2 HOURS AGO +3 3 2 TO 3 HOURS AGO +4 4 3 TO 4 HOURS AGO +5 5 4 TO 5 HOURS AGO +6 6 5 TO 6 HOURS AGO +7 7 6 TO 8 HOURS AGO +8 8 8 TO 10 HOURS AGO +9 9 MORE THAN 10 HOURS AGO +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/15025.table b/definitions/bufr/tables/0/wmo/42/codetables/15025.table new file mode 100644 index 000000000..6bb6ed508 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/15025.table @@ -0,0 +1,4 @@ +0 0 OZONE +11 11 FINE PARTICULATE MATTER (DIAMETER < 2.5 MICRONS) +12 12 FINE PARTICULATE MATTER (DIAMETER < 10 MICRONS) +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19001.table b/definitions/bufr/tables/0/wmo/42/codetables/19001.table new file mode 100644 index 000000000..af893eb9a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19001.table @@ -0,0 +1,7 @@ +0 0 DEPRESSION OR LOW (EXTRATROPLCAL) +1 1 TROPICAL DEPRESSION +2 2 TROPICAL STORM +3 3 SEVERE TROPICAL STORM +4 4 TYPHOON +10 10 DUST/SANDSTORM +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19008.table b/definitions/bufr/tables/0/wmo/42/codetables/19008.table new file mode 100644 index 000000000..3bcb5195a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19008.table @@ -0,0 +1,5 @@ +0 0 RESERVED +1 1 SHALLOW (TOP OF CIRCULATION BELOW 700-HPA LEVEL) +2 2 MEDIUM (TOP BETWEEN 700-HPA AND 400-HPA LEVEL) +3 3 DEEP (TOP ABOVE 400-HPA LEVEL) +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19010.table b/definitions/bufr/tables/0/wmo/42/codetables/19010.table new file mode 100644 index 000000000..b091d96f0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19010.table @@ -0,0 +1,3 @@ +1 1 MINIMUM VALUE OF SEA LEVEL PRESSURE +2 2 MAXIMUM VALUE OF 850 HPA RELATIVE VORTICITY +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19100.table b/definitions/bufr/tables/0/wmo/42/codetables/19100.table new file mode 100644 index 000000000..1f03a6f1b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19100.table @@ -0,0 +1,9 @@ +3 3 DURING THE PRECEDING 15 MINUTES +4 4 DURING THE PRECEDING 30 MINUTES +5 5 DURING THE PRECEDING 1 HOUR +6 6 DURING THE PRECEDING 2 HOURS +7 7 DURING THE PRECEDING 3 HOURS +8 8 DURING THE PRECEDING 6 HOURS +9 9 DURING A PERIOD OF MORE THAN 6 HOURS +10 10 UNDETERMINED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19101.table b/definitions/bufr/tables/0/wmo/42/codetables/19101.table new file mode 100644 index 000000000..0cd1ff4a6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19101.table @@ -0,0 +1,10 @@ +0 0 RESERVED +1 1 EYE VISIBLE ON RADAR SCOPE, ACCURACY GOOD (WITHIN 10 KM) +2 2 EYE VISIBLE ON RADAR SCOPE, ACCURACY FAIR (WITHIN 30 KM) +3 3 EYE VISIBLE ON RADAR SCOPE, ACCURACY POOR (WITHIN 50 KM) +4 4 POSITION OF THE CENTRE WITHIN THE AREA COVERED BY THE RADAR SCOPE, DETERMINATION BY MEANS OF THE SPIRAL-BAND OVERLAY, ACCURACY GOOD (WITHIN 10 KM) +5 5 POSITION OF THE CENTRE WITHIN THE AREA COVERED BY THE RADAR SCOPE, DETERMINATION BY MEANS OF THE SPIRAL-BAND OVERLAY, ACCURACY FAIR (WITHIN 30 KM) +6 6 POSITION OF THE CENTRE WITHIN THE AREA COVERED BY THE RADAR SCOPE, DETERMINATION BY MEANS OF THE SPIRAL-BAND OVERLAY, ACCURACY POOR (WITHIN 50 KM) +7 7 POSITION OF THE CENTRE OUTSIDE THE AREA COVERED BY THE RADAR SCOPE, EXTRAPOLATION BY MEANS OF THE SPIRAL-BAND OVERLAY +10 10 ACCURACY UNDETERMINED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19102.table b/definitions/bufr/tables/0/wmo/42/codetables/19102.table new file mode 100644 index 000000000..21ab7756b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19102.table @@ -0,0 +1,8 @@ +0 0 CIRCULAR +1 1 ELLIPTICAL - THE MINOR AXIS IS AT LEAST 3/4 THE LENGTH OF THE MAJOR AXIS +2 2 ELLIPTICAL - THE MINOR AXIS IS LESS THAN 3/4 THE LENGTH OF THE MAJOR AXIS +3 3 APPARENT DOUBLE EYE +4 4 OTHER SHAPE +5 5 ILL DEFINED +6 6 UNDETERMINED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19103.table b/definitions/bufr/tables/0/wmo/42/codetables/19103.table new file mode 100644 index 000000000..3abb184f8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19103.table @@ -0,0 +1,12 @@ +0 0 LESS THAN 5 KM +1 1 5 TO LESS THAN 10 KM +2 2 10 TO LESS THAN 15 KM +3 3 15 TO LESS THAN 20 KM +4 4 20 TO LESS THAN 25 KM +5 5 25 TO LESS THAN 30 KM +6 6 30 TO LESS THAN 35 KM +7 7 35 TO LESS THAN 40 KM +8 8 40 TO LESS THAN 50 KM +9 9 50 KM AND GREATER +10 10 UNDETERMINED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19104.table b/definitions/bufr/tables/0/wmo/42/codetables/19104.table new file mode 100644 index 000000000..67ae47479 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19104.table @@ -0,0 +1,12 @@ +0 0 EYE HAS FIRST BECOME VISIBLE DURING THE PAST 30 MINUTES +1 1 NO SIGNIFICANT CHANGE IN THE CHARACTERISTICS OR SIZE OF THE EYE +2 2 EYE HAS BECOME SMALLER WITH NO OTHER SIGNIFICANT CHANGE IN CHARACTERISTICS +3 3 EYE HAS BECOME LARGER WITH NO OTHER SIGNIFICANT CHANGE IN CHARACTERISTICS +4 4 EYE HAS BECOME LESS DISTINCT WITH NO SIGNIFICANT CHANGE IN SIZE +5 5 EYE HAS BECOME LESS DISTINCT AND DECREASED IN SIZE +6 6 EYE HAS BECOME LESS DISTINCT AND INCREASED IN SIZE +7 7 EYE HAS BECOME MORE DISTINCT WITH NO SIGNIFICANT CHANGE IN SIZE +8 8 EYE HAS BECOME MORE DISTINCT AND DECREASED IN SIZE +9 9 EYE HAS BECOME MORE DISTINCT AND INCREASED IN SIZE +10 10 CHANGE IN CHARACTER AND SIZE OF EYE CANNOT BE DETERMINED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19105.table b/definitions/bufr/tables/0/wmo/42/codetables/19105.table new file mode 100644 index 000000000..becfceea8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19105.table @@ -0,0 +1,10 @@ +0 0 0 TO LESS THAN 100 KM +1 1 100 TO LESS THAN 200 KM +2 2 200 TO LESS THAN 300 KM +3 3 300 TO LESS THAN 400 KM +4 4 400 TO LESS THAN 500 KM +5 5 500 TO LESS THAN 600 KM +6 6 600 TO LESS THAN 800 KM +7 7 800 KM OR MORE +10 10 DOUBTFUL OR UNDETERMINED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19107.table b/definitions/bufr/tables/0/wmo/42/codetables/19107.table new file mode 100644 index 000000000..ed6b79c54 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19107.table @@ -0,0 +1,11 @@ +0 0 LESS THAN 1 HOUR +1 1 1 TO LESS THAN 2 HOURS +2 2 2 TO LESS THAN 3 HOURS +3 3 3 TO LESS THAN 6 HOURS +4 4 6 TO LESS THAN 9 HOURS +5 5 9 TO LESS THAN 12 HOURS +6 6 12 TO LESS THAN 15 HOURS +7 7 15 TO LESS THAN 18 HOURS +8 8 18 TO LESS THAN 21 HOURS +9 9 21 TO LESS THAN 30 HOURS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19108.table b/definitions/bufr/tables/0/wmo/42/codetables/19108.table new file mode 100644 index 000000000..9350bc265 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19108.table @@ -0,0 +1,8 @@ +0 0 CYCLONE CENTRE WITHIN 10 KM OF THE TRANSMITTED POSITION +1 1 CYCLONE CENTRE WITHIN 20 KM OF THE TRANSMITTED POSITION +2 2 CYCLONE CENTRE WITHIN 50 KM OF THE TRANSMITTED POSITION +3 3 CYCLONE CENTRE WITHIN 100 KM OF THE TRANSMITTED POSITION +4 4 CYCLONE CENTRE WITHIN 200 KM OF THE TRANSMITTED POSITION +5 5 CYCLONE CENTRE WITHIN 300 KM OF THE TRANSMITTED POSITION +6 6 CYCLONE CENTRE UNDETERMINED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19109.table b/definitions/bufr/tables/0/wmo/42/codetables/19109.table new file mode 100644 index 000000000..3d236291d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19109.table @@ -0,0 +1,12 @@ +0 0 LESS THAN 1 DEG OF LATITUDE +1 1 1 DEG TO LESS THAN 2 DEG OF LATITUDE +2 2 2 DEG TO LESS THAN 3 DEG OF LATITUDE +3 3 3 DEG TO LESS THAN 4 DEG OF LATITUDE +4 4 4 DEG TO LESS THAN 5 DEG OF LATITUDE +5 5 5 DEG TO LESS THAN 6 DEG OF LATITUDE +6 6 6 DEG TO LESS THAN 7 DEG OF LATITUDE +7 7 7 DEG TO LESS THAN 8 DEG OF LATITUDE +8 8 8 DEG TO LESS THAN 9 DEG OF LATITUDE +9 9 9 DEG OF LATITUDE OR MORE +10 10 UNDETERMINED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19110.table b/definitions/bufr/tables/0/wmo/42/codetables/19110.table new file mode 100644 index 000000000..81f4f593c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19110.table @@ -0,0 +1,8 @@ +0 0 MUCH WEAKENING +1 1 WEAKENING +2 2 NO CHANGE +3 3 INTENSIFICATION +4 4 STRONG INTENSIFICATION +9 9 NOT OBSERVED PREVIOUSLY +10 10 UNDETERMINED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19113.table b/definitions/bufr/tables/0/wmo/42/codetables/19113.table new file mode 100644 index 000000000..ba46dca88 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19113.table @@ -0,0 +1,8 @@ +1 1 CURVED BAND +2 2 SHEAR +3 3 EYE +4 4 BANDING EYE +5 5 CENTRAL DENSE OVERCAST (CDO) +6 6 EMBEDDED CENTRE +7 7 CENTRE COLD COVER (CCC) +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19117.table b/definitions/bufr/tables/0/wmo/42/codetables/19117.table new file mode 100644 index 000000000..b623197a3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19117.table @@ -0,0 +1,4 @@ +1 1 A (CURVED BAND) +2 2 B (CDO) +3 3 C (SHEAR) +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/19119.table b/definitions/bufr/tables/0/wmo/42/codetables/19119.table new file mode 100644 index 000000000..8329a8a58 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/19119.table @@ -0,0 +1,4 @@ +1 1 DT-NUMBER +2 2 PT-NUMBER +3 3 MET-NUMBER +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20003.table b/definitions/bufr/tables/0/wmo/42/codetables/20003.table new file mode 100644 index 000000000..1414361a2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20003.table @@ -0,0 +1,266 @@ +0 0 CLOUD DEVELOPMENT NOT OBSERVED OR NOT OBSERVABLE +1 1 CLOUDS GENERALLY DISSOLVING OR BECOMING LESS DEVELOPED +2 2 STATE OF SKY ON THE WHOLE UNCHANGED +3 3 CLOUDS GENERALLY FORMING OR DEVELOPING +4 4 VISIBILITY REDUCED BY SMOKE, E.G. VELDT OR FOREST FIRES, INDUSTRIAL SMOKE OR VOLCANIC ASHES +5 5 HAZE +6 6 WIDESPREAD DUST IN SUSPENSION IN THE AIR, NOT RAISED BY WIND AT OR NEAR THE STATION AT THE TIME OF OBSERVATION +7 7 DUST OR SAND RAISED BY WIND AT OR NEAR THE STATION AT THE TIME OF OBSERVATION, BUT NO WELL-DEVELOPED DUST WHIRL(S) OR SAND WHIRL(S), AND NO DUSTSTORM OR SANDSTORM SEEN; OR, IN THE CASE OF SEA STATIONS AND COASTAL STATIONS, BLOWING SPRAY AT THE STATION +8 8 WELL-DEVELOPED DUST WHIRL(S) OR SAND WHIRL(S) SEEN AT OR NEAR THE STATION DURING THE PRECEDING HOUR OR AT THE SAME TIME OF OBSERVATION, BUT NO DUSTSTORM OR SANDSTORM +9 9 DUSTSTORM OR SANDSTORM WITHIN SIGHT AT THE TIME OF OBSERVATION, OR AT THE STATION DURING THE PRECEDING HOUR +10 10 MIST +11 11 PATCHES +12 12 MORE OR LESS CONTINUOUS +13 13 LIGHTNING VISIBLE, NO THUNDER HEARD +14 14 PRECIPITATION WITHIN SIGHT, NOT REACHING THE GROUND OR THE SURFACE OF THE SEA +15 15 PRECIPITATION WITHIN SIGHT, REACHING THE GROUND OR THE SURFACE OF THE SEA, BUT DISTANT, I.E. ESTIMATED TO BE MORE THAN 5 KM FROM THE STATION +16 16 PRECIPITATION WITHIN SIGHT, REACHING THE GROUND OR THE SURFACE OF THE SEA, NEAR TO, BUT NOT AT THE STATION +17 17 THUNDERSTORM, BUT NO PRECIPITATION AT THE TIME OF OBSERVATION +18 18 SQUALLS +19 19 FUNNEL CLOUD(S) +20 20 DRIZZLE (NOT FREEZING) OR SNOW GRAINS +21 21 RAIN (NOT FREEZING) +22 22 SNOW +23 23 RAIN AND SNOW OR ICE PELLETS +24 24 FREEZING DRIZZLE OR FREEZING RAIN +25 25 SHOWER(S) OF RAIN +26 26 SHOWER(S) OF SNOW, OR OF RAIN AND SNOW +27 27 SHOWER(S) OF HAIL, OR OF RAIN AND HAIL +28 28 FOG OR ICE FOG +29 29 THUNDERSTORM (WITH OR WITHOUT PRECIPITATION) +30 30 SLIGHT OR MODERATE DUSTSTORM OR SANDSTORM +31 31 SLIGHT OR MODERATE DUSTSTORM OR SANDSTORM +32 32 SLIGHT OR MODERATE DUSTSTORM OR SANDSTORM +33 33 SEVERE DUSTSTORM OR SANDSTORM +34 34 SEVERE DUSTSTORM OR SANDSTORM +35 35 SEVERE DUSTSTORM OR SANDSTORM +36 36 SLIGHT OR MODERATE DRIFTING SNOW +37 37 HEAVY DRIFTING SNOW +38 38 SLIGHT OR MODERATE BLOWING SNOW +39 39 HEAVY BLOWING SNOW +40 40 FOG OR ICE FOG AT A DISTANCE AT THE TIME OF OBSERVATION, BUT NOT AT THE STATION DURING THE PRECEDING HOUR, THE FOG OR ICE FOG EXTENDING TO A LEVEL ABOVE THAT OF THE OBSERVER +41 41 FOG OR ICE FOG IN PATCHES +42 42 FOG OR ICE FOG, SKY VISIBLE +43 43 FOG OR ICE FOG, SKY INVISIBLE +44 44 FOG OR ICE FOG, SKY VISIBLE +45 45 FOG OR ICE FOG, SKY INVISIBLE +46 46 FOG OR ICE FOG, SKY VISIBLE +47 47 FOG OR ICE FOG, SKY INVISIBLE +48 48 FOG, DEPOSITING RIME, SKY VISIBLE +49 49 FOG, DEPOSITING RIME, SKY INVISIBLE +50 50 DRIZZLE, NOT FREEZING, INTERMITTENT +51 51 DRIZZLE, NOT FREEZING, CONTINUOUS +52 52 DRIZZLE, NOT FREEZING, INTERMITTENT +53 53 DRIZZLE, NOT FREEZING, CONTINUOUS +54 54 DRIZZLE, NOT FREEZING, INTERMITTENT +55 55 DRIZZLE, NOT FREEZING, CONTINUOUS +56 56 DRIZZLE, FREEZING, SLIGHT +57 57 DRIZZLE, FREEZING, MODERATE OR HEAVY (DENSE) +58 58 DRIZZLE AND RAIN, SLIGHT +59 59 DRIZZLE AND RAIN, MODERATE OR HEAVY +60 60 RAIN, NOT FREEZING, INTERMITTENT +61 61 RAIN, NOT FREEZING, CONTINUOUS +62 62 RAIN, NOT FREEZING, INTERMITTENT +63 63 RAIN, NOT FREEZING, CONTINUOUS +64 64 RAIN, NOT FREEZING, INTERMITTENT +65 65 RAIN, NOT FREEZING, CONTINUOUS +66 66 RAIN, FREEZING, SLIGHT +67 67 RAIN, FREEZING, MODERATE OR HEAVY +68 68 RAIN OR DRIZZLE AND SNOW, SLIGHT +69 69 RAIN OR DRIZZLE AND SNOW, MODERATE OR HEAVY +70 70 INTERMITTENT FALL OF SNOWFLAKES +71 71 CONTINUOUS FALL OF SNOWFLAKES +72 72 INTERMITTENT FALL OF SNOWFLAKES +73 73 CONTINUOUS FALL OF SNOWFLAKES +74 74 INTERMITTENT FALL OF SNOWFLAKES +75 75 CONTINUOUS FALL OF SNOWFLAKES +76 76 DIAMOND DUST (WITH OR WITHOUT FOG) +77 77 SNOW GRAINS (WITH OR WITHOUT FOG) +78 78 ISOLATED STAR-LIKE SNOW CRYSTALS (WITH OR WITHOUT FOG) +79 79 ICE PELLETS +80 80 RAIN SHOWER(S), SLIGHT +81 81 RAIN SHOWER(S), MODERATE OR HEAVY +82 82 RAIN SHOWER(S), VIOLENT +83 83 SHOWER(S) OF RAIN AND SNOW MIXED, SLIGHT +84 84 SHOWER(S) OF RAIN AND SNOW MIXED, MODERATE OR HEAVY +85 85 SNOW SHOWER(S), SLIGHT +86 86 SNOW SHOWER(S), MODERATE OR HEAVY +87 87 SHOWER(S) OF SNOW PELLETS OR SMALL HAIL, WITH OR WITHOUT RAIN OR RAIN AND SNOW MIXED +88 88 SHOWER(S) OF SNOW PELLETS OR SMALL HAIL, WITH OR WITHOUT RAIN OR RAIN AND SNOW MIXED +89 89 SHOWER(S) OF HAIL, WITH OR WITHOUT RAIN OR RAIN AND SNOW MIXED, NOT ASSOCIATED WITH THUNDER +90 90 SHOWER(S) OF HAIL, WITH OR WITHOUT RAIN OR RAIN AND SNOW MIXED, NOT ASSOCIATED WITH THUNDER +91 91 SLIGHT RAIN AT TIME OF OBSERVATION +92 92 MODERATE OR HEAVY RAIN AT TIME OF OBSERVATION +93 93 SLIGHT SNOW, OR RAIN AND SNOW MIXED OR HAIL AT TIME OF OBSERVATION +94 94 MODERATE OR HEAVY SNOW, OR RAIN AND SNOW MIXED OR HAIL AT TIME OF OBSERVATION +95 95 THUNDERSTORM, SLIGHT OR MODERATE, WITHOUT HAIL, BUT WITH RAIN AND/OR SNOW AT TIME OF OBSERVATION +96 96 THUNDERSTORM, SLIGHT OR MODERATE, WITH HAIL AT TIME OF OBSERVATION +97 97 THUNDERSTORM, HEAVY, WITHOUT HAIL, BUT WITH RAIN AND/OR SNOW AT TIME OF OBSERVATION +98 98 THUNDERSTORM COMBINED WITH DUSTSTORM OR SANDSTORM AT TIME OF OBSERVATION +99 99 THUNDERSTORM, HEAVY, WITH HAIL AT TIME OF OBSERVATION +100 100 NO SIGNIFICANT WEATHER OBSERVED +101 101 CLOUDS GENERALLY DISSOLVING OR BECOMING LESS DEVELOPED DURING THE PAST HOUR +102 102 STATE OF SKY ON THE WHOLE UNCHANGED DURING THE PAST HOUR +103 103 CLOUDS GENERALLY FORMING OR DEVELOPING DURING THE PAST HOUR +104 104 HAZE OR SMOKE, OR DUST IN SUSPENSION IN THE AIR, VISIBILITY EQUAL TO, OR GREATER THAN, 1 KM +105 105 HAZE OR SMOKE, OR DUST IN SUSPENSION IN THE AIR, VISIBILITY LESS THAN 1 KM +110 110 MIST +111 111 DIAMOND DUST +112 112 DISTANT LIGHTNING +118 118 SQUALLS +119 119 RESERVED +120 120 FOG +121 121 PRECIPITATION +122 122 DRIZZLE (NOT FREEZING) OR SNOW GRAINS +123 123 RAIN (NOT FREEZING) +124 124 SNOW +125 125 FREEZING DRIZZLE OR FREEZING RAIN +126 126 THUNDERSTORM (WITH OR WITHOUT PRECIPITATION) +127 127 BLOWING OR DRIFTING SNOW OR SAND +128 128 BLOWING OR DRIFTING SNOW OR SAND, VISIBILITY EQUAL TO, OR GREATER THAN, 1 KM +129 129 BLOWING OR DRIFTING SNOW OR SAND, VISIBILITY LESS THAN 1 KM +130 130 FOG +131 131 FOG OR ICE FOG IN PATCHES +132 132 FOG OR ICE FOG, HAS BECOME THINNER DURING THE PAST HOUR +133 133 FOG OR ICE FOG, NO APPRECIABLE CHANGE DURING THE PAST HOUR +134 134 FOG OR ICE FOG, HAS BEGUN OR BECOME THICKER DURING THE PAST HOUR +135 135 FOG, DEPOSITING RIME +140 140 PRECIPITATION +141 141 PRECIPITATION, SLIGHT OR MODERATE +142 142 PRECIPITATION, HEAVY +143 143 LIQUID PRECIPITATION, SLIGHT OR MODERATE +144 144 LIQUID PRECIPITATION, HEAVY +145 145 SOLID PRECIPITATION, SLIGHT OR MODERATE +146 146 SOLID PRECIPITATION, HEAVY +147 147 FREEZING PRECIPITATION, SLIGHT OR MODERATE +148 148 FREEZING PRECIPITATION, HEAVY +149 149 RESERVED +150 150 DRIZZLE +151 151 DRIZZLE, NOT FREEZING, SLIGHT +152 152 DRIZZLE, NOT FREEZING, MODERATE +153 153 DRIZZLE, NOT FREEZING, HEAVY +154 154 DRIZZLE, FREEZING, SLIGHT +155 155 DRIZZLE, FREEZING, MODERATE +156 156 DRIZZLE, FREEZING, HEAVY +157 157 DRIZZLE AND RAIN, SLIGHT +158 158 DRIZZLE AND RAIN, MODERATE OR HEAVY +159 159 RESERVED +160 160 RAIN +161 161 RAIN, NOT FREEZING, SLIGHT +162 162 RAIN, NOT FREEZING, MODERATE +163 163 RAIN, NOT FREEZING, HEAVY +164 164 RAIN, FREEZING, SLIGHT +165 165 RAIN, FREEZING, MODERATE +166 166 RAIN, FREEZING, HEAVY +167 167 RAIN (OR DRIZZLE) AND SNOW, SLIGHT +168 168 RAIN (OR DRIZZLE) AND SNOW, MODERATE OR HEAVY +169 169 RESERVED +170 170 SNOW +171 171 SNOW, SLIGHT +172 172 SNOW, MODERATE +173 173 SNOW, HEAVY +174 174 ICE PELLETS, SLIGHT +175 175 ICE PELLETS, MODERATE +176 176 ICE PELLETS, HEAVY +177 177 SNOW GRAINS +178 178 ICE CRYSTALS +179 179 RESERVED +180 180 SHOWER(S) OR INTERMITTENT PRECIPITATION +181 181 RAIN SHOWER(S) OR INTERMITTENT RAIN, SLIGHT +182 182 RAIN SHOWER(S) OR INTERMITTENT RAIN, MODERATE +183 183 RAIN SHOWER(S) OR INTERMITTENT RAIN, HEAVY +184 184 RAIN SHOWER(S) OR INTERMITTENT RAIN, VIOLENT +185 185 SNOW SHOWER(S) OR INTERMITTENT SNOW, SLIGHT +186 186 SNOW SHOWER(S) OR INTERMITTENT SNOW, MODERATE +187 187 SNOW SHOWER(S) OR INTERMITTENT SNOW, HEAVY +188 188 RESERVED +189 189 HAIL +190 190 THUNDERSTORM +191 191 THUNDERSTORM, SLIGHT OR MODERATE, WITH NO PRECIPITATION +192 192 THUNDERSTORM, SLIGHT OR MODERATE, WITH RAIN SHOWERS AND/OR SNOW SHOWERS +193 193 THUNDERSTORM, SLIGHT OR MODERATE, WITH HAIL +194 194 THUNDERSTORM, HEAVY, WITH NO PRECIPITATION +195 195 THUNDERSTORM, HEAVY, WITH RAIN SHOWERS AND/OR SNOW SHOWERS +196 196 THUNDERSTORM, HEAVY, WITH HAIL +199 199 TORNADO +204 204 VOLCANIC ASH SUSPENDED IN THE AIR ALOFT +205 205 NOT USED +206 206 THICK DUST HAZE, VISIBILITY LESS THAN 1 KM +207 207 BLOWING SPRAY AT THE STATION +208 208 DRIFTING DUST (SAND) +209 209 WALL OF DUST OR SAND IN DISTANCE (LIKE HABOOB) +210 210 SNOW HAZE +211 211 WHITEOUT +212 212 NOT USED +213 213 LIGHTNING, CLOUD TO SURFACE +217 217 DRY THUNDERSTORM +218 218 NOT USED +219 219 TORNADO CLOUD (DESTRUCTIVE) AT OR WITHIN SIGHT OF THE STATION DURING PRECEDING HOUR OR AT THE TIME OF OBSERVATION +220 220 DEPOSITION OF VOLCANIC ASH +221 221 DEPOSITION OF DUST OR SAND +222 222 DEPOSITION OF DEW +223 223 DEPOSITION OF WET SNOW +224 224 DEPOSITION OF SOFT RIME +225 225 DEPOSITION OF HARD RIME +226 226 DEPOSITION OF HOAR FROST +227 227 DEPOSITION OF GLAZE +228 228 DEPOSITION OF ICE CRUST (ICE SLICK) +229 229 NOT USED +230 230 DUSTSTORM OR SANDSTORM WITH TEMPERATURE BELOW 0 DEG C +239 239 BLOWING SNOW, IMPOSSIBLE TO DETERMINE WHETHER SNOW IS FALLING OR NOT +240 240 NOT USED +241 241 FOG ON SEA +242 242 FOG IN VALLEYS +243 243 ARCTIC OR ANTARCTIC SEA SMOKE +244 244 STEAM FOG (SEA, LAKE OR RIVER) +245 245 STEAM LOG (LAND) +246 246 FOG OVER ICE OR SNOW COVER +247 247 DENSE FOG, VISIBILITY 60-90 M +248 248 DENSE FOG, VISIBILITY 30-60 M +249 249 DENSE FOG, VISIBILITY LESS THAN 30 M +250 250 DRIZZLE, RATE OF FALL - LESS THAN 0.10 MM H-1 +251 251 DRIZZLE, RATE OF FALL - 0.10-0.19 MM H-1 +252 252 DRIZZLE, RATE OF FALL - 0.20-0.39 MM H-1 +253 253 DRIZZLE, RATE OF FALL - 0.40-0.79 MM H-1 +254 254 DRIZZLE, RATE OF FALL - 0.80-1.59 MM H-1 +255 255 DRIZZLE, RATE OF FALL - 1.60-3.19 MM H-1 +256 256 DRIZZLE, RATE OF FALL - 3.20-6.39 MM H-1 +257 257 DRIZZLE, RATE OF FALL - 6.4 MM H-1 OR MORE +258 258 NOT USED +259 259 DRIZZLE AND SNOW +260 260 RAIN, RATE OF FALL - LESS THAN 1.0 MM H-1 +261 261 RAIN, RATE OF FALL - 1.0-1.9 MM H-1 +262 262 RAIN, RATE OF FALL - 2.0-3.9 MM H-1 +263 263 RAIN, RATE OF FALL - 4.0-7.9 MM H-1 +264 264 RAIN, RATE OF FALL - 8.0-15.9 MM H-1 +265 265 RAIN, RATE OF FALL - 16.0-31.9 MM H-1 +266 266 RAIN, RATE OF FALL - 32.0-63.9 MM H-1 +267 267 RAIN, RATE OF FALL - 64.0 MM H-1 OR MORE +270 270 SNOW, RATE OF FALL - LESS THAN 1.0 CM H-1 +271 271 SNOW, RATE OF FALL - 1.0-1.9 CM H-1 +272 272 SNOW, RATE OF FALL - 2.0-3.9 CM H-1 +273 273 SNOW, RATE OF FALL - 4.0-7.9 CM H-1 +274 274 SNOW, RATE OF FALL - 8.0-15.9 CM H-1 +275 275 SNOW, RATE OF FALL - 16.0-31.9 CM H-1 +276 276 SNOW, RATE OF FALL - 32.0-63.9 CM H-1 +277 277 SNOW, RATE OF FALL - 64.0 CM H-1 OR MORE +278 278 SNOW OR ICE CRYSTAL PRECIPITATION FROM A CLEAR SKY +279 279 WET SNOW, FREEZING ON CONTACT +280 280 PRECIPITATION OF RAIN +281 281 PRECIPITATION OF RAIN, FREEZING +282 282 PRECIPITATION OF RAIN AND SNOW MIXED +283 283 PRECIPITATION OF SNOW +284 284 PRECIPITATION OF SNOW PELLETS OR SMALL HALL +285 285 PRECIPITATION OF SNOW PELLETS OR SMALL HAIL, WITH RAIN +286 286 PRECIPITATION OF SNOW PELLETS OR SMALL HAIL, WITH RAIN AND SNOW MIXED +287 287 PRECIPITATION OF SNOW PELLETS OR SMALL HAIL, WITH SNOW +288 288 PRECIPITATION OF HAIL +289 289 PRECIPITATION OF HAIL, WITH RAIN +290 290 PRECIPITATION OF HALL, WITH RAIN AND SNOW MIXED +291 291 PRECIPITATION OF HAIL, WITH SNOW +292 292 SHOWER(S) OR THUNDERSTORM OVER SEA +293 293 SHOWER(S) OR THUNDERSTORM OVER MOUNTAINS +508 508 NO SIGNIFICANT PHENOMENON TO REPORT, PRESENT AND PAST WEATHER OMITTED +509 509 NO OBSERVATION, DATA NOT AVAILABLE, PRESENT AND PAST WEATHER OMITTED +510 510 PRESENT AND PAST WEATHER MISSING, BUT EXPECTED +511 511 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20004.table b/definitions/bufr/tables/0/wmo/42/codetables/20004.table new file mode 100644 index 000000000..f3d3024d8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20004.table @@ -0,0 +1,21 @@ +0 0 CLOUD COVERING 1/2 OR LESS OF THE SKY THROUGHOUT THE APPROPRIATE PERIOD +1 1 CLOUD COVERING MORE THAN 1/2 OF THE SKY DURING PART OF THE APPROPRIATE PERIOD AND COVERING 1/2 OR LESS DURING PART OF THE PERIOD +2 2 CLOUD COVERING MORE THAN 1/2 OF THE SKY THROUGHOUT THE APPROPRIATE PERIOD +3 3 SANDSTORM, DUSTSTORM OR BLOWING SNOW +4 4 FOG OR ICE FOG OR THICK HAZE +5 5 DRIZZLE +6 6 RAIN +7 7 SNOW, OR RAIN AND SNOW MIXED +8 8 SHOWER(S) +9 9 THUNDERSTORM(S) WITH OR WITHOUT PRECIPITATION +10 10 NO SIGNIFICANT WEATHER OBSERVED +11 11 VISIBILITY REDUCED +12 12 BLOWING PHENOMENA, VISIBILITY REDUCED +13 13 FOG +14 14 PRECIPITATION +15 15 DRIZZLE +16 16 RAIN +17 17 SNOW OR ICE PELLETS +18 18 SHOWERS OR INTERMITTENT PRECIPITATION +19 19 THUNDERSTORM +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20005.table b/definitions/bufr/tables/0/wmo/42/codetables/20005.table new file mode 100644 index 000000000..f3d3024d8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20005.table @@ -0,0 +1,21 @@ +0 0 CLOUD COVERING 1/2 OR LESS OF THE SKY THROUGHOUT THE APPROPRIATE PERIOD +1 1 CLOUD COVERING MORE THAN 1/2 OF THE SKY DURING PART OF THE APPROPRIATE PERIOD AND COVERING 1/2 OR LESS DURING PART OF THE PERIOD +2 2 CLOUD COVERING MORE THAN 1/2 OF THE SKY THROUGHOUT THE APPROPRIATE PERIOD +3 3 SANDSTORM, DUSTSTORM OR BLOWING SNOW +4 4 FOG OR ICE FOG OR THICK HAZE +5 5 DRIZZLE +6 6 RAIN +7 7 SNOW, OR RAIN AND SNOW MIXED +8 8 SHOWER(S) +9 9 THUNDERSTORM(S) WITH OR WITHOUT PRECIPITATION +10 10 NO SIGNIFICANT WEATHER OBSERVED +11 11 VISIBILITY REDUCED +12 12 BLOWING PHENOMENA, VISIBILITY REDUCED +13 13 FOG +14 14 PRECIPITATION +15 15 DRIZZLE +16 16 RAIN +17 17 SNOW OR ICE PELLETS +18 18 SHOWERS OR INTERMITTENT PRECIPITATION +19 19 THUNDERSTORM +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20006.table b/definitions/bufr/tables/0/wmo/42/codetables/20006.table new file mode 100644 index 000000000..cc2612116 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20006.table @@ -0,0 +1,5 @@ +0 0 LOW INSTRUMENT FLIGHT RULES - CEILING < 500 FEET AND/OR VISIBILITY < 1 MILE +1 1 INSTRUMENT FLIGHT RULES - CEILING < 1000 FEET AND/OR VISIBILITY < 3 MILES +2 2 MARGINAL VISUAL FLIGHT RULES - 1000 FEET =< CEILING < 3000 FEET AND/OR 3 MILES =< VISIBILITY < 5 MILES +3 3 VISUAL FLIGHT RULES - CEILING >= 3000 FEET AND/OR VISIBILITY >= 5 MILES +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20008.table b/definitions/bufr/tables/0/wmo/42/codetables/20008.table new file mode 100644 index 000000000..966bcc2fa --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20008.table @@ -0,0 +1,19 @@ +0 0 SKY CLEAR +1 1 FEW +2 2 SCATTERED +3 3 BROKEN +4 4 OVERCAST +5 5 RESERVED +6 6 SCATTERED/BROKEN +7 7 BROKEN/OVERCAST +8 8 ISOLATED +9 9 ISOLATED EMBEDDED +10 10 OCCASIONAL +11 11 OCCASIONAL EMBEDDED +12 12 FREQUENT +13 13 DENSE +14 14 LAYERS +15 15 OBSCURED (OBSC) +16 16 EMBEDDED (EMBD) +17 17 FREQUENT EMBEDDED +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20009.table b/definitions/bufr/tables/0/wmo/42/codetables/20009.table new file mode 100644 index 000000000..c3f1d7435 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20009.table @@ -0,0 +1,7 @@ +0 0 RESERVED +1 1 NSC NIL SIGNIFICANT CLOUD +2 2 CAVOK +3 3 SKC SKY CLEAR +4 4 NSW NIL SIGNIFICANT WEATHER +5 5 NCD NO CLOUDS DETECTED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2001.table b/definitions/bufr/tables/0/wmo/42/codetables/2001.table new file mode 100644 index 000000000..470fcccb7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2001.table @@ -0,0 +1,4 @@ +0 0 AUTOMATIC +1 1 MANNED +2 2 HYBRID: BOTH MANNED AND AUTOMATIC +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20011.table b/definitions/bufr/tables/0/wmo/42/codetables/20011.table new file mode 100644 index 000000000..06c6e106c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20011.table @@ -0,0 +1,16 @@ +0 0 0 +1 1 1 OKTA OR LESS, BUT NOT ZERO +2 2 2 OKTAS +3 3 3 OKTAS +4 4 4 OKTAS +5 5 5 OKTAS +6 6 6 OKTAS +7 7 7 OKTAS OR MORE, BUT NOT 8 OKTAS +8 8 8 OKTAS +9 9 SKY OBSCURED BY FOG AND/OR OTHER METEOROLOGICAL PHENOMENA +10 10 SKY PARTIALLY OBSCURED BY FOG AND/OR OTHER METEOROLOGICAL PHENOMENA +11 11 SCATTERED +12 12 BROKEN +13 13 FEW +14 14 RESERVED +15 15 CLOUD COVER IS INDISCERNIBLE FOR REASONS OTHER THAN FOG OR OTHER METEOROLOGICAL PHENOMENA, OR OBSERVATION IS NOT MADE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20012.table b/definitions/bufr/tables/0/wmo/42/codetables/20012.table new file mode 100644 index 000000000..07984f399 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20012.table @@ -0,0 +1,55 @@ +0 0 CIRRUS (CI) +1 1 CIRROCUMULUS (CC) +2 2 CIRROSTRATUS (CS) +3 3 ALTOCUMULUS (AC) +4 4 ALTOSTRATUS (AS) +5 5 NIMBOSTRATUS (NS) +6 6 STRATOCUMULUS (SC) +7 7 STRATUS (ST) +8 8 CUMULUS (CU) +9 9 CUMULONIMBUS (CB) +10 10 NO CH CLOUDS +11 11 CIRRUS FIBRATUS, SOMETIMES UNCINUS, NOT PROGRESSIVELY INVADING THE SKY +12 12 CIRRUS SPISSATUS, IN PATCHES OR ENTANGLED SHEAVES, WHICH USUALLY DO NOT INCREASE AND SOMETIMES SEEM TO BE THE REMAINS OF THE UPPER PART OF A CUMULONIMBUS; OR CIRRUS CASTELLANUS OR FLOCCUS +13 13 CIRRUS SPISSATUS CUMULONIMBOGENITUS +14 14 CIRRUS UNCINUS OR FIBRATUS, OR BOTH, PROGRESSIVELY INVADING THE SKY; THEY GENERALLY THICKEN AS A WHOLE +15 15 CIRRUS (OFTEN IN BANDS) AND CIRROSTRATUS, OR CIRROSTRATUS ALONE, PROGRESSIVELY INVADING THE SKY; THEY GENERALLY THICKEN AS A WHOLE, BUT THE CONTINUOUS VEIL DOES NOT REACH 45 DEGREES ABOVE THE HORIZON +16 16 CIRRUS (OFTEN IN BANDS) AND CIRROSTRATUS, OR CIRROSTRATUS ALONE, PROGRESSIVELY INVADING THE SKY; THEY GENERALLY THICKEN AS A WHOLE; THE CONTINUOUS VEIL EXTENDS MORE THAN 45 DEGREES ABOVE THE HORIZON, WITHOUT THE SKY BEING TOTALLY COVERED +17 17 CIRROSTRATUS COVERING THE WHOLE SKY +18 18 CIRROSTRATUS NOT PROGRESSIVELY INVADING THE SKY AND NOT ENTIRELY COVERING IT +19 19 CIRROCUMULUS ALONE, OR CIRROCUMULUS PREDOMINANT AMONG THE CH CLOUDS +20 20 NO CM CLOUDS +21 21 ALTOSTRATUS TRANSLUCIDUS +22 22 ALTOSTRATUS OPACUS OR NIMBOSTRATUS +23 23 ALTOCUMULUS TRANSLUCIDUS AT A SINGLE LEVEL +24 24 PATCHES (OFTEN LENTICULAR) OF ALTOCUMULUS TRANSLUCIDUS, CONTINUALLY CHANGING AND OCCURRING AT ONE OR MORE LEVELS +25 25 ALTOCUMULUS TRANSLUCIDUS IN BANDS, OR ONE OR MORE LAYERS OF ALTOCUMULUS TRANSLUCIDUS OR OPACUS, PROGRESSIVELY INVADING THE SKY; THESE ALTOCUMULUS CLOUDS GENERALLY THICKEN AS A WHOLE +26 26 ALTOCUMULUS CUMULOGENITUS (OR CUMULONIMBOGENITUS) +27 27 ALTOCUMULUS TRANSLUCIDUS OR OPACUS IN TWO OR MORE LAYERS, OR ALTOCUMULUS OPACUS IN A SINGLE LAYER, NOT PROGRESSIVELY INVADING THE SKY, OR ALTOCUMULUS WITH ALTOSTRATUS OR NIMBOSTRATUS +28 28 ALTOCUMULUS CASTELLANUS OR FLOCCUS +29 29 ALTOCUMULUS OF A CHAOTIC SKY, GENERALLY AT SEVERAL LEVELS +30 30 NO CL CLOUDS +31 31 CUMULUS HUMILIS OR CUMULUS FRACTUS OTHER THAN OF BAD WEATHER, OR BOTH +32 32 CUMULUS MEDIOCRIS OR CONGESTUS, TOWERING CUMULUS (TCU), WITH OR WITHOUT CUMULUS OF SPECIES FRACTUS OR HUMILIS OR STRATOCUMULUS, ALL HAVING THEIR BASES AT THE SAME LEVEL +33 33 CUMULONIMBUS CALVUS, WITH OR WITHOUT CUMULUS, STRATOCUMULUS OR STRATUS +34 34 STRATOCUMULUS CUMULOGENITUS +35 35 STRATOCUMULUS OTHER THAN STRATOCUMULUS CUMULOGENITUS +36 36 STRATUS NEBULOSUS OR STRATUS FRACTUS OTHER THAN OF BAD WEATHER, OR BOTH +37 37 STRATUS FRACTUS OR CUMULUS FRACTUS OF BAD WEATHER, OR BOTH (PANNUS), USUALLY BELOW ALTOSTRATUS OR NIMBOSTRATUS +38 38 CUMULUS AND STRATOCUMULUS OTHER THAN STRATOCUMULUS CUMULOGENITUS, WITH BASES AT DIFFERENT LEVELS +39 39 CUMULONIMBUS CAPILLATUS (OFTEN WITH AN ANVIL), WITH OR WITHOUT CUMULONIMBUS CALVUS, CUMULUS, STRATOCUMULUS, STRATUS OR PANNUS +40 40 CH +41 41 CM +42 42 CL +43 43 CLEAR +44 44 LIQUID WATER +45 45 SUPERCOOLED LIQUID WATER +46 46 MIXED PHASE +47 47 OPTICALLY THICK ICE +48 48 OPTICALLY THIN ICE +49 49 MULTILAYERED ICE +59 59 CLOUD NOT VISIBLE OWING TO DARKNESS, FOG, DUSTSTORM, SANDSTORM, OR OTHER ANALOGOUS PHENOMENA +60 60 CH CLOUDS INVISIBLE OWING TO DARKNESS, FOG, BLOWING DUST OR SAND, OR OTHER SIMILAR PHENOMENA, OR BECAUSE OF A CONTINUOUS LAYER OF LOWER CLOUDS +61 61 CM CLOUDS INVISIBLE OWING TO DARKNESS, FOG, BLOWING DUST OR SAND, OR OTHER SIMILAR PHENOMENA, OR BECAUSE OF CONTINUOUS LAYER OF LOWER CLOUDS +62 62 CL CLOUDS INVISIBLE OWING TO DARKNESS, FOG, BLOWING DUST OR SAND, OR OTHER SIMILAR PHENOMENA +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20017.table b/definitions/bufr/tables/0/wmo/42/codetables/20017.table new file mode 100644 index 000000000..5ec10bd41 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20017.table @@ -0,0 +1,11 @@ +0 0 ISOLATED CLOUD FRAGMENTS OF CLOUDS +1 1 CONTINUOUS CLOUD +2 2 BROKEN CLOUD - SMALL BREAKS +3 3 BROKEN CLOUD - LARGE BREAKS +4 4 CONTINUOUS CLOUD +5 5 BROKEN CLOUD - SMALL BREAKS +6 6 BROKEN CLOUD - LARGE BREAKS +7 7 CONTINUOUS OR ALMOST CONTINUOUS WAVES WITH TOWERING CLOUDS ABOVE THE TOP OF THE LAYER +8 8 GROUPS OF WAVES WITH TOWERING CLOUDS ABOVE THE TOP OF THE LAYER +9 9 TWO OR MORE LAYERS AT DIFFERENT LEVELS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20018.table b/definitions/bufr/tables/0/wmo/42/codetables/20018.table new file mode 100644 index 000000000..c0ffc3693 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20018.table @@ -0,0 +1,4 @@ +0 0 INCREASING (U) +1 1 DECREASING (D) +2 2 NO DISTINCT CHANGE (N) +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2002.table b/definitions/bufr/tables/0/wmo/42/codetables/2002.table new file mode 100644 index 000000000..a701e1e40 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2002.table @@ -0,0 +1,3 @@ +1 1 CERTIFIED INSTRUMENTS +2 2 ORIGINALLY MEASURED IN KNOTS +3 3 ORIGINALLY MEASURED IN KM H-1 diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20021.table b/definitions/bufr/tables/0/wmo/42/codetables/20021.table new file mode 100644 index 000000000..747a7591e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20021.table @@ -0,0 +1,23 @@ +1 1 PRECIPITATION - UNKNOWN TYPE +2 2 LIQUID PRECIPITATION NOT FREEZING +3 3 LIQUID FREEZING PRECIPITATION +4 4 DRIZZLE +5 5 RAIN +6 6 SOLID PRECIPITATION +7 7 SNOW +8 8 SNOW GRAINS +9 9 SNOW PELLETS +10 10 ICE PELLETS +11 11 ICE CRYSTALS +12 12 DIAMOND DUST +13 13 SMALL HAIL +14 14 HAIL +15 15 GLAZE +16 16 RIME +17 17 SOFT RIME +18 18 HARD RIME +19 19 CLEAR ICE +20 20 WET SNOW +21 21 HOAR FROST +22 22 DEW +23 23 WHITE DEW diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20022.table b/definitions/bufr/tables/0/wmo/42/codetables/20022.table new file mode 100644 index 000000000..a551aac0e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20022.table @@ -0,0 +1,7 @@ +0 0 NO PRECIPITATION +1 1 CONTINUOUS +2 2 INTERMITTENT +3 3 SHOWER +4 4 NOT REACHING GROUND +5 5 DEPOSITION +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20023.table b/definitions/bufr/tables/0/wmo/42/codetables/20023.table new file mode 100644 index 000000000..97670dfbb --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20023.table @@ -0,0 +1,14 @@ +1 1 DUST/SAND WHIRL +2 2 SQUALLS +3 3 SANDSTORM +4 4 DUSTSTORM +5 5 LIGHTNING - CLOUD TO SURFACE +6 6 LIGHTNING - CLOUD TO CLOUD +7 7 LIGHTNING - DISTANT +8 8 THUNDERSTORM +9 9 FUNNEL CLOUD NOT TOUCHING SURFACE +10 10 FUNNEL CLOUD TOUCHING SURFACE +11 11 SPRAY +12 12 WATERSPOUT +13 13 WIND SHEAR +14 14 DUST DEVILS diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20024.table b/definitions/bufr/tables/0/wmo/42/codetables/20024.table new file mode 100644 index 000000000..13aba873e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20024.table @@ -0,0 +1,8 @@ +0 0 NO PHENOMENA +1 1 LIGHT +2 2 MODERATE +3 3 HEAVY +4 4 VIOLENT +5 5 SEVERE +6 6 VERY SEVERE +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20025.table b/definitions/bufr/tables/0/wmo/42/codetables/20025.table new file mode 100644 index 000000000..4d70e338f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20025.table @@ -0,0 +1,13 @@ +1 1 FOG +2 2 ICE FOG +3 3 STEAM FOG +7 7 MIST +8 8 HAZE +9 9 SMOKE +10 10 VOLCANIC ASH +11 11 DUST +12 12 SAND +13 13 SNOW +14 14 CLOUD +15 15 PRECIPITATION +16 16 IMPOSSIBLE TO DETERMINE WHETHER SNOW IS FALLING OR NOT diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20026.table b/definitions/bufr/tables/0/wmo/42/codetables/20026.table new file mode 100644 index 000000000..285209472 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20026.table @@ -0,0 +1,16 @@ +0 0 NO CHANGE +1 1 SHALLOW +2 2 PATCHES +3 3 PARTIAL +4 4 FREEZING +5 5 LOW DRIFTING +6 6 BLOWING +7 7 INCREASING +8 8 DECREASING +9 9 IN SUSPENSION IN THE AIR +10 10 WALL +11 11 DENSE +12 12 WHITEOUT +13 13 DRIFTING AND BLOWING +14 14 RESERVED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20027.table b/definitions/bufr/tables/0/wmo/42/codetables/20027.table new file mode 100644 index 000000000..c337f16a7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20027.table @@ -0,0 +1,8 @@ +1 1 AT TIME OF OBSERVATION +2 2 IN PAST HOUR +3 3 IN TIME PERIOD FOR PAST WEATHER W1W2 +4 4 IN TIME PERIOD SPECIFIED +5 5 RESERVED +6 6 BELOW STATION LEVEL +7 7 AT THE STATION +8 8 IN THE VICINITY diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20028.table b/definitions/bufr/tables/0/wmo/42/codetables/20028.table new file mode 100644 index 000000000..6b701a2b6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20028.table @@ -0,0 +1,4 @@ +0 0 NO CHANGE (NC) +1 1 FORECAST TO WEAKEN (WKN) +2 2 FORECAST TO INTENSIFY (INTSF) +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20029.table b/definitions/bufr/tables/0/wmo/42/codetables/20029.table new file mode 100644 index 000000000..8b46da891 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20029.table @@ -0,0 +1,4 @@ +0 0 NO RAIN +1 1 RAIN +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2003.table b/definitions/bufr/tables/0/wmo/42/codetables/2003.table new file mode 100644 index 000000000..f364d1811 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2003.table @@ -0,0 +1,13 @@ +0 0 PRESSURE INSTRUMENT ASSOCIATED WITH WIND MEASURING EQUIPMENT +1 1 OPTICAL THEODOLITE +2 2 RADIO THEODOLITE +3 3 RADAR +4 4 VLF-OMEGA +5 5 LORAN C +6 6 WIND PROFILER +7 7 SATELLITE NAVIGATION +8 8 RADIO-ACOUSTIC SOUNDING SYSTEM (RASS) +9 9 SODAR +10 10 LIDAR +14 14 PRESSURE INSTRUMENT ASSOCIATED WITH WIND MEASURING EQUIPMENT BUT PRESSURE ELEMENT FAILED DURING ASCENT +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20032.table b/definitions/bufr/tables/0/wmo/42/codetables/20032.table new file mode 100644 index 000000000..fd37c1e76 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20032.table @@ -0,0 +1,6 @@ +0 0 ICE NOT BUILDING UP +1 1 ICE BUILDING UP SLOWLY +2 2 ICE BUILDING UP RAPIDLY +3 3 ICE MELTING OR BREAKING UP SLOWLY +4 4 ICE MELTING OR BREAKING UP RAPIDLY +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20033.table b/definitions/bufr/tables/0/wmo/42/codetables/20033.table new file mode 100644 index 000000000..817873323 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20033.table @@ -0,0 +1,3 @@ +1 1 ICING FROM OCEAN SPRAY +2 2 ICING FROM FOG +3 3 ICING FROM RAIN diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20034.table b/definitions/bufr/tables/0/wmo/42/codetables/20034.table new file mode 100644 index 000000000..668e91671 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20034.table @@ -0,0 +1,12 @@ +0 0 NO SEA ICE IN SIGHT +1 1 SHIP IN OPEN LEAD MORE THAN 1.0 NAUTICAL MILE WIDE, OR SHIP IN FAST ICE WITH BOUNDARY BEYOND LIMIT OF VISIBILITY +2 2 SEA ICE PRESENT IN CONCENTRATIONS LESS THAN 3/10 (3/8), OPEN WATER OR VERY OPEN PACK ICE +3 3 4/10 TO 6/10 (3/8 TO LESS THAN 6/8), OPEN PACK ICE +4 4 7/10 TO 8/10 (6/8 TO LESS THAN 7/8), CLOSE PACK ICE +5 5 9/10 OR MORE, BUT NOT 10/10 (7/8 TO LESS THAN 8/8), VERY CLOSE PACK ICE +6 6 STRIPS AND PATCHES OF PACK ICE WITH OPEN WATER BETWEEN +7 7 STRIPS AND PATCHES OF CLOSE OR VERY CLOSE PACK ICE WITH AREAS OF LESSER CONCENTRATION BETWEEN +8 8 FAST ICE WITH OPEN WATER, VERY OPEN OR OPEN PACK ICE TO SEAWARD OF THE ICE BOUNDARY +9 9 FAST ICE WITH CLOSE OR VERY CLOSE PACK ICE TO SEAWARD OF THE BOUNDARY +14 14 UNABLE TO REPORT, BECAUSE OF DARKNESS, LACK OF VISIBILITY, OR BECAUSE SHIP IS MORE THAN 0.5 NAUTICAL MILE AWAY FROM ICE EDGE +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20035.table b/definitions/bufr/tables/0/wmo/42/codetables/20035.table new file mode 100644 index 000000000..07a4a0284 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20035.table @@ -0,0 +1,12 @@ +0 0 NO ICE OF LAND ORIGIN +1 1 1-5 ICEBERGS, NO GROWLERS OR BERGY BITS +2 2 6-10 ICEBERGS, NO GROWLERS OR BERGY BITS +3 3 11-20 ICEBERGS, NO GROWLERS OR BERGY BITS +4 4 UP TO AND INCLUDING 10 GROWLERS AND BERGY BITS - NO ICEBERGS +5 5 MORE THAN 10 GROWLERS AND BERGY BITS - NO ICEBERGS +6 6 1-5 ICEBERGS, WITH GROWLERS AND BERGY BITS +7 7 6-10 ICEBERGS, WITH GROWLERS AND BERGY BITS +8 8 11-20 ICEBERGS, WITH GROWLERS AND BERGY BITS +9 9 MORE THAN 20 ICEBERGS, WITH GROWLERS AND BERGY BITS - A MAJOR HAZARD TO NAVIGATION +14 14 UNABLE TO REPORT, BECAUSE OF DARKNESS, LACK OF VISIBILITY OR BECAUSE ONLY SEA ICE IS VISIBLE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20036.table b/definitions/bufr/tables/0/wmo/42/codetables/20036.table new file mode 100644 index 000000000..b4cc874bd --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20036.table @@ -0,0 +1,12 @@ +0 0 SHIP IN OPEN WATER WITH FLOATING ICE IN SIGHT +1 1 SHIP IN EASILY PENETRABLE ICE; CONDITIONS IMPROVING +2 2 SHIP IN EASILY PENETRABLE ICE; CONDITIONS NOT CHANGING +3 3 SHIP IN EASILY PENETRABLE ICE; CONDITIONS WORSENING +4 4 SHIP IN ICE DIFFICULT TO PENETRATE; CONDITIONS IMPROVING +5 5 SHIP IN ICE DIFFICULT TO PENETRATE; CONDITIONS NOT CHANGING +6 6 SHIP IN ICE DIFFICULT TO PENETRATE AND CONDITIONS WORSENING. ICE FORMING AND FLOES FREEZING TOGETHER +7 7 SHIP IN ICE DIFFICULT TO PENETRATE AND CONDITIONS WORSENING. ICE UNDER SLIGHT PRESSURE +8 8 SHIP IN ICE DIFFICULT TO PENETRATE AND CONDITIONS WORSENING. ICE UNDER MODERATE OR SEVERE PRESSURE +9 9 SHIP IN ICE DIFFICULT TO PENETRATE AND CONDITIONS WORSENING. SHIP BESET +30 30 UNABLE TO REPORT, BECAUSE OF DARKNESS OR LACK OF VISIBILITY +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20037.table b/definitions/bufr/tables/0/wmo/42/codetables/20037.table new file mode 100644 index 000000000..474eeaae2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20037.table @@ -0,0 +1,12 @@ +0 0 NEW ICE ONLY (FRAZIL ICE, GREASE ICE, SLUSH, SHUGA) +1 1 NILAS OR ICE RIND, LESS THAN 10 CM THICK +2 2 YOUNG ICE (GREY ICE, GREY-WHITE ICE), 10-30 CM THICK +3 3 PREDOMINANTLY NEW AND/OR YOUNG ICE WITH SOME FIRST-YEAR ICE +4 4 PREDOMINANTLY THIN FIRST-YEAR ICE WITH SOME NEW AND/OR YOUNG ICE +5 5 ALL THIN FIRST-YEAR ICE (30-70 CM THICK) +6 6 PREDOMINANTLY MEDIUM FIRST-YEAR ICE (70-120 CM THICK) AND THICK FIRST-YEAR ICE (>120 CM THICK) WITH SOME THINNER (YOUNGER) FIRST-YEAR ICE +7 7 ALL MEDIUM AND THICK FIRST-YEAR ICE +8 8 PREDOMINANTLY MEDIUM AND THICK FIRST-YEAR ICE WITH SOME OLD ICE (USUALLY MORE THAN 2 METRES THICK) +9 9 PREDOMINANTLY OLD ICE +30 30 UNABLE TO REPORT, BECAUSE OF DARKNESS, LACK OF VISIBILITY OR BECAUSE ONLY ICE OF LAND ORIGIN IS VISIBLE OR BECAUSE SHIP IS MORE THAN 0.5 NAUTICAL MILE AWAY FROM ICE EDGE +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2004.table b/definitions/bufr/tables/0/wmo/42/codetables/2004.table new file mode 100644 index 000000000..a55de6c58 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2004.table @@ -0,0 +1,11 @@ +0 0 USA OPEN PAN EVAPORIMETER (WITHOUT COVER) +1 1 USA OPEN PAN EVAPORIMETER (MESH COVERED) +2 2 GGI-3000 EVAPORIMETER (SUNKEN) +3 3 20 M2 TANK +4 4 OTHERS +5 5 RICE +6 6 WHEAT +7 7 MAIZE +8 8 SORGHUM +9 9 OTHER CROPS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20040.table b/definitions/bufr/tables/0/wmo/42/codetables/20040.table new file mode 100644 index 000000000..889393bf8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20040.table @@ -0,0 +1,9 @@ +0 0 DRIFT SNOW ENDED BEFORE THE HOUR OF OBSERVATION +1 1 INTENSITY DIMINISHING +2 2 NO CHANGE +3 3 INTENSITY INCREASING +4 4 CONTINUES, APART FROM INTERRUPTION LASTING LESS THAN 30 MINUTES +5 5 GENERAL DRIFT SNOW HAS BECOME DRIFT SNOW NEAR THE GROUND +6 6 DRIFT SNOW NEAR THE GROUND HAS BECOME GENERAL DRIFT SNOW +7 7 DRIFT SNOW HAS STARTED AGAIN AFTER AN INTERRUPTION OF MORE THAN 30 MINUTES +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20041.table b/definitions/bufr/tables/0/wmo/42/codetables/20041.table new file mode 100644 index 000000000..fc571208d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20041.table @@ -0,0 +1,14 @@ +0 0 NO ICING +1 1 LIGHT ICING +2 2 LIGHT ICING IN CLOUD +3 3 LIGHT ICING IN PRECIPITATION +4 4 MODERATE ICING +5 5 MODERATE ICING IN CLOUD +6 6 MODERATE ICING IN PRECIPITATION +7 7 SEVERE ICING +8 8 SEVERE ICING IN CLOUD +9 9 SEVERE ICING IN PRECIPITATION +10 10 TRACE OF ICING +11 11 TRACE OF ICING IN CLOUD +12 12 TRACE OF ICING IN PRECIPITATION +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20042.table b/definitions/bufr/tables/0/wmo/42/codetables/20042.table new file mode 100644 index 000000000..2493af725 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20042.table @@ -0,0 +1,4 @@ +0 0 NO ICING +1 1 ICING PRESENT +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20045.table b/definitions/bufr/tables/0/wmo/42/codetables/20045.table new file mode 100644 index 000000000..91ae63f48 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20045.table @@ -0,0 +1,4 @@ +0 0 NO SLD CONDITIONS PRESENT +1 1 SLD CONDITIONS PRESENT +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20048.table b/definitions/bufr/tables/0/wmo/42/codetables/20048.table new file mode 100644 index 000000000..4a5488266 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20048.table @@ -0,0 +1,5 @@ +0 0 STABILITY +1 1 DIMINUTION +2 2 INTENSIFICATION +3 3 UNKNOWN +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20050.table b/definitions/bufr/tables/0/wmo/42/codetables/20050.table new file mode 100644 index 000000000..3f8654ed5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20050.table @@ -0,0 +1,10 @@ +0 0 RESERVED +1 1 1ST LOW CLOUD +2 2 2ND LOW CLOUD +3 3 3RD LOW CLOUD +4 4 1ST MEDIUM CLOUD +5 5 2ND MEDIUM CLOUD +6 6 3RD MEDIUM CLOUD +7 7 1ST HIGH CLOUD +8 8 2ND HIGH CLOUD +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20055.table b/definitions/bufr/tables/0/wmo/42/codetables/20055.table new file mode 100644 index 000000000..ea06427f6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20055.table @@ -0,0 +1,12 @@ +0 0 CUMULUS, IF ANY, ARE QUITE SMALL; GENERALLY LESS THAN 2/8 COVERAGE, EXCEPT ON WINDWARD SLOPES OF ELEVATED TERRAIN; AVERAGE WIDTH OF CLOUD IS AT LEAST AS GREAT AS ITS VERTICAL THICKNESS +1 1 CUMULUS OF INTERMEDIATE SIZE WITH CLOUD COVER LESS THAN 5/8; AVERAGE CLOUD WIDTH IS MORE THAN ITS VERTICAL THICKNESS; TOWERS ARE VERTICAL WITH LITTLE OR NO EVIDENCE OF PRECIPITATION, EXCEPT ALONG SLOPES OF ELEVATED TERRAIN; A GENERAL ABSENCE OF MIDDLE AND UPPER CLOUDS +2 2 SWELLING CUMULUS WITH RAPIDLY GROWING TALL TURRETS WHICH DECREASE IN SIZE WITH HEIGHT AND WHOSE TOPS TEND TO SEPARATE FROM THE LONGER CLOUD BODY AND EVAPORATE WITHIN MINUTES OF THE SEPARATION +3 3 SWELLING CUMULUS WITH TOWERS HAVING A PRONOUNCED TILT IN A DOWNWIND DIRECTION; VERTICAL CLOUD THICKNESS IS MORE THAN ONE AND A HALF TIMES THAT OF ITS AVERAGE WIDTH +4 4 SWELLING CUMULUS WITH TOWERS HAVING A PRONOUNCED TILT IN AN UPWIND DIRECTION; VERTICAL CLOUD THICKNESS IS MORE THAN ONE AND A HALF TIMES THAT OF ITS AVERAGE WIDTH +5 5 TALL CUMULUS CONGESTUS WITH VERTICAL THICKNESS MORE THAN TWICE THE AVERAGE WIDTH; NOT ORGANIZED IN CLUSTERS OR LINES; ONE OR MORE LAYERS OF CLOUDS EXTEND OUT FROM THE CLOUD TOWERS, ALTHOUGH NO CONTINUOUS CLOUD LAYERS EXIST +6 6 ISOLATED CUMULONIMBUS OR LARGE CLUSTERS OF CUMULUS TURRETS SEPARATED BY WIDE AREAS IN WHICH CLOUDS ARE ABSENT; CLOUD BASES ARE GENERALLY DARK WITH SHOWERS OBSERVED IN MOST CELLS; SOME SCATTERED MIDDLE AND UPPER CLOUDS MAY BE PRESENT; INDIVIDUAL CUMULUS CELLS ARE ONE TO TWO TIMES HIGHER THAN THEY ARE WIDE +7 7 NUMEROUS CUMULUS EXTENDING THROUGH THE MIDDLE TROPOSPHERE WITH BROKEN TO OVERCAST SHEETS OF MIDDLE CLOUDS AND/OR CIRROSTRATUS; CUMULUS TOWERS DO NOT DECREASE GENERALLY IN SIZE WITH HEIGHT; RAGGED DARK CLOUD BASES WITH SOME SHOWERS PRESENT +8 8 CONTINUOUS DENSE MIDDLE CLOUDS AND/OR CIRROSTRATUS CLOUD SHEETS WITH SOME LARGE ISOLATED CUMULONIMBUS OR CUMULUS CONGESTUS CLOUDS PENETRATING THESE SHEETS; LIGHT RAIN OCCASIONALLY OBSERVED FROM THE ALTOSTRATUS; CUMULONIMBUS BASES RAGGED AND DARK WITH SHOWERS VISIBLE +9 9 CONTINUOUS SHEETS OF MIDDLE CLOUDS AND/OR CIRROSTRATUS WITH CUMULONIMBUS AND CUMULUS CONGESTUS IN ORGANIZED LINES OR CLOUD BANDS; RAIN IS GENERALLY OBSERVED FROM ALTOSTRATUS SHEETS AND HEAVY SHOWERS FROM CUMULONIMBUS; WIND HAS A SQUALLY CHARACTER +10 10 STATE OF SKY UNKNOWN OR NOT DESCRIBED BY ANY OF THE ABOVE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20056.table b/definitions/bufr/tables/0/wmo/42/codetables/20056.table new file mode 100644 index 000000000..204b220b8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20056.table @@ -0,0 +1,8 @@ +0 0 UNKNOWN +1 1 WATER +2 2 ICE +3 3 MIXED +4 4 CLEAR +5 5 SUPERCOOLED LIQUID WATER +6 6 RESERVED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2006.table b/definitions/bufr/tables/0/wmo/42/codetables/2006.table new file mode 100644 index 000000000..e32bac3d7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2006.table @@ -0,0 +1,11 @@ +0 0 RESERVED +1 1 ELASTIC BACKSCATTER LIDAR +2 2 RAMAN BACKSCATTER LIDAR +3 3 RADAR WIND PROFILER +4 4 LIDAR WIND PROFILER +5 5 SODAR WIND PROFILER +6 6 WIND PROFILER +7 7 LIDAR +8 8 GROUND-BASED MICROWAVE RADIOMETER +9 9 DIFFERENTIAL ABSORPTION LIDAR +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20062.table b/definitions/bufr/tables/0/wmo/42/codetables/20062.table new file mode 100644 index 000000000..24d96c46f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20062.table @@ -0,0 +1,21 @@ +0 0 SURFACE OF GROUND DRY (WITHOUT CRACKS AND NO APPRECIABLE AMOUNT OF DUST OR LOOSE SAND) +1 1 SURFACE OF GROUND MOIST +2 2 SURFACE OF GROUND WET (STANDING WATER IN SMALL OR LARGE POOLS ON SURFACE) +3 3 FLOODED +4 4 SURFACE OF GROUND FROZEN +5 5 GLAZE ON GROUND +6 6 LOOSE DRY DUST OR SAND NOT COVERING GROUND COMPLETELY +7 7 THIN COVER OF LOOSE DRY DUST OR SAND COVERING GROUND COMPLETELY +8 8 MODERATE OR THICK COVER OF LOOSE DRY DUST OR SAND COVERING GROUND COMPLETELY +9 9 EXTREMELY DRY WITH CRACKS +10 10 GROUND PREDOMINANTLY COVERED BY ICE +11 11 COMPACT OR WET SNOW (WITH OR WITHOUT ICE) COVERING LESS THAN ONE HALF OF THE GROUND +12 12 COMPACT OR WET SNOW (WITH OR WITHOUT ICE) COVERING AT LEAST ONE HALF OF THE GROUND BUT GROUND NOT COMPLETELY COVERED +13 13 EVEN LAYER OF COMPACT OR WET SNOW COVERING GROUND COMPLETELY +14 14 UNEVEN LAYER OF COMPACT OR WET SNOW COVERING GROUND COMPLETELY +15 15 LOOSE DRY SNOW COVERING LESS THAN ONE HALF OF THE GROUND +16 16 LOOSE DRY SNOW COVERING AT LEAST ONE HALF OF THE GROUND BUT GROUND NOT COMPLETELY COVERED +17 17 EVEN LAYER OF LOOSE DRY SNOW COVERING GROUND COMPLETELY +18 18 UNEVEN LAYER OF LOOSE DRY SNOW COVERING GROUND COMPLETELY +19 19 SNOW COVERING GROUND COMPLETELY; DEEP DRIFTS +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20063.table b/definitions/bufr/tables/0/wmo/42/codetables/20063.table new file mode 100644 index 000000000..d1622860b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20063.table @@ -0,0 +1,72 @@ +0 0 RESERVED +1 1 HIGHEST WIND SPEED GUSTS GREATER THAN 11.5 M/S +2 2 HIGHEST MEAN WIND SPEED GREATER THAN 17.5 M/S +7 7 VISIBILITY GREATER THAN 100 000 M +10 10 MIRAGE - NO SPECIFICATION +11 11 MIRAGE - IMAGE OF DISTANT OBJECT RAISED (LOOMING) +12 12 MIRAGE - IMAGE OF DISTANT OBJECT RAISED CLEAR ABOVE THE HORIZON +13 13 MIRAGE - INVERTED IMAGE OF DISTANT OBJECT +14 14 MIRAGE - COMPLEX, MULTIPLE IMAGES OF DISTANT OBJECT (IMAGES NOT INVERTED) +15 15 MIRAGE - COMPLEX, MULTIPLE IMAGES OF DISTANT OBJECT (SOME IMAGES BEING INVERTED) +16 16 MIRAGE - SUN OR MOON SEEN APPRECIABLY DISTORTED +17 17 MIRAGE - SUN VISIBLE, ALTHOUGH ASTRONOMICALLY BELOW THE HORIZON +18 18 MIRAGE - MOON VISIBLE, ALTHOUGH ASTRONOMICALLY BELOW THE HORIZON +19 19 RESERVED +20 20 DAY DARKNESS, BAD, WORST IN DIRECTION SPECIFIED +21 21 DAY DARKNESS, VERY BAD, WORST IN DIRECTION SPECIFIED +22 22 DAY DARKNESS, BLACK, WORST IN DIRECTION SPECIFIED +31 31 SLIGHT COLORATION OF CLOUDS AT SUNRISE ASSOCIATED WITH A TROPICAL DISTURBANCE +32 32 DEEP-RED COLORATION OF CLOUDS AT SUNRISE ASSOCIATED WITH A TROPICAL DISTURBANCE +33 33 SLIGHT COLORATION OF CLOUDS AT SUNSET ASSOCIATED WITH A TROPICAL DISTURBANCE +34 34 DEEP-RED COLORATION OF CLOUDS AT SUNSET ASSOCIATED WITH A TROPICAL DISTURBANCE +35 35 CONVERGENCE OF CH CLOUDS AT A POINT BELOW 45 DEG FORMING OR INCREASING AND ASSOCIATED WITH A TROPICAL DISTURBANCE +36 36 CONVERGENCE OF CH CLOUDS AT A POINT ABOVE 45 DEG FORMING OR INCREASING AND ASSOCIATED WITH A TROPICAL DISTURBANCE +37 37 CONVERGENCE OF CH CLOUDS AT A POINT BELOW 45 DEG DISSOLVING OR DIMINISHING AND ASSOCIATED WITH A TROPICAL DISTURBANCE +38 38 CONVERGENCE OF CH CLOUDS AT A POINT ABOVE 45 DEG DISSOLVING OR DIMINISHING AND ASSOCIATED WITH A TROPICAL DISTURBANCE +39 39 RESERVED +40 40 HOAR FROST ON HORIZONTAL SURFACES +41 41 HOAR FROST ON HORIZONTAL AND VERTICAL SURFACES +42 42 PRECIPITATION CONTAINING SAND OR DESERT DUST +43 43 PRECIPITATION CONTAINING VOLCANIC ASH +50 50 CALM OR LIGHT WIND FOLLOWED BY A SQUALL +51 51 CALM OR LIGHT WIND FOLLOWED BY A SUCCESSION OF SQUALLS +52 52 GUSTY WEATHER FOLLOWED BY A SQUALL +53 53 GUSTY WEATHER FOLLOWED BY A SUCCESSION OF SQUALLS +54 54 SQUALL FOLLOWED BY GUSTY WEATHER +55 55 GENERAL GUSTY WEATHER WITH SQUALL AT INTERVALS +56 56 SQUALL APPROACHING STATION +57 57 LINE SQUALL +58 58 SQUALL WITH DRIFTING OR BLOWING DUST OR SAND +59 59 LINE SQUALL WITH DRIFTING OR BLOWING DUST OR SAND +60 60 TEMPERATURE STEADY +61 61 TEMPERATURE FALLING, WITHOUT GOING BELOW 0 DEG C +62 62 TEMPERATURE RISING, WITHOUT GOING ABOVE 0 DEG C +63 63 TEMPERATURE FALLING TO A VALUE BELOW 0 DEG C +64 64 TEMPERATURE RISING TO A VALUE ABOVE 0 DEG C +65 65 IRREGULAR VARIATION, OSCILLATIONS OF TEMPERATURE PASSING THROUGH 0 DEG C +66 66 IRREGULAR VARIATION, OSCILLATIONS OF TEMPERATURE NOT PASSING THROUGH 0 DEG C +67 67 VARIATION OF TEMPERATURE NOT OBSERVED +68 68 NOT ALLOCATED +69 69 VARIATION OF TEMPERATURE UNKNOWN OWING TO LACK OF THERMOGRAPH +70 70 VISIBILITY HAS NOT VARIED (SUN VISIBLE) TOWARDS DIRECTION SPECIFIED +71 71 VISIBILITY HAS NOT VARIED (SUN INVISIBLE) TOWARDS DIRECTION SPECIFIED +72 72 VISIBILITY HAS INCREASED (SUN VISIBLE) TOWARDS DIRECTION SPECIFIED +73 73 VISIBILITY HAS INCREASED (SUN INVISIBLE) TOWARDS DIRECTION SPECIFIED +74 74 VISIBILITY HAS DECREASED (SUN VISIBLE) TOWARDS DIRECTION SPECIFIED +75 75 VISIBILITY HAS DECREASED (SUN INVISIBLE) TOWARDS DIRECTION SPECIFIED +76 76 FOG COMING FROM DIRECTION SPECIFIED +77 77 FOG HAS LIFTED, WITHOUT DISSIPATING +78 78 FOG HAS DISPERSED WITHOUT REGARD TO DIRECTION +79 79 MOVING PATCHES OR BANKS OF FOG +80 80 BROCKEN SPECTRE +81 81 RAINBOW +82 82 SOLAR OR LUNAR HALO +83 83 PARHELIA OR ANTHELIA +84 84 SUN PILLAR +85 85 CORONA +86 86 TWILIGHT GLOW +87 87 TWILIGHT GLOW ON THE MOUNTAINS (ALPENGLUEHEN) +88 88 MIRAGE +89 89 ZODIACAL LIGHT +90 90 ST ELMO'S FIRE +1023 1023 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2007.table b/definitions/bufr/tables/0/wmo/42/codetables/2007.table new file mode 100644 index 000000000..05b4c6bd1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2007.table @@ -0,0 +1,11 @@ +0 0 RESERVED +1 1 SHAFT ENCODER FLOAT SYSTEM +2 2 ULTRASONIC +3 3 RADAR +4 4 PRESSURE (SINGLE TRANSDUCER) +5 5 PRESSURE (MULTIPLE TRANSDUCER) +6 6 PRESSURE (IN STILLING WELL) +7 7 BUBBLER PRESSURE +8 8 ACOUSTIC (WITH SOUNDING TUBE) +9 9 ACOUSTIC (IN OPEN AIR) +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20071.table b/definitions/bufr/tables/0/wmo/42/codetables/20071.table new file mode 100644 index 000000000..72367bf8b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20071.table @@ -0,0 +1,11 @@ +0 0 NO ASSESSMENT +1 1 LESS THAN 50 KM +2 2 BETWEEN 50 AND 200 KM +3 3 MORE THAN 200 KM +4 4 LESS THAN 50 KM +5 5 BETWEEN 50 AND 200 KM +6 6 MORE THAN 200 KM +7 7 LESS THAN 50 KM +8 8 BETWEEN 50 AND 200 KM +9 9 MORE THAN 200 KM +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20079.table b/definitions/bufr/tables/0/wmo/42/codetables/20079.table new file mode 100644 index 000000000..587408276 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20079.table @@ -0,0 +1,4 @@ +0 0 NO SNOW OR ICE +1 1 SNOW PRESENT +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2008.table b/definitions/bufr/tables/0/wmo/42/codetables/2008.table new file mode 100644 index 000000000..e669727ec --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2008.table @@ -0,0 +1,7 @@ +0 0 FIXED PLATFORM +1 1 MOBILE OFFSHORE DRILL SHIP +2 2 JACK-UP RIG +3 3 SEMI-SUBMERSIBLE PLATFORM +4 4 FLOATING PRODUCTION STORAGE AND OFFLOADING (FPSO) UNIT +5 5 LIGHT VESSEL +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20085.table b/definitions/bufr/tables/0/wmo/42/codetables/20085.table new file mode 100644 index 000000000..f929e878d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20085.table @@ -0,0 +1,3 @@ +0 0 CLEARED (CLRD//) +1 1 ALL RUNWAYS CLOSED (SNOCLO) +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20086.table b/definitions/bufr/tables/0/wmo/42/codetables/20086.table new file mode 100644 index 000000000..b5433303a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20086.table @@ -0,0 +1,11 @@ +0 0 CLEAR AND DRY +1 1 DAMP +2 2 WET WITH WATER PATCHES +3 3 RIME AND FROST COVERED (DEPTH NORMALLY LESS THAN 1 MM) +4 4 DRY SNOW +5 5 WET SNOW +6 6 SLUSH +7 7 ICE +8 8 COMPACTED OR ROLLED SNOW +9 9 FROZEN RUTS OR RIDGES +15 15 MISSING OR NOT REPORTED (E.G. DUE TO RUNWAY CLEARANCE IN PROGRESS) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20087.table b/definitions/bufr/tables/0/wmo/42/codetables/20087.table new file mode 100644 index 000000000..ee7971ab6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20087.table @@ -0,0 +1,6 @@ +0 0 RESERVED +1 1 LESS THAN 10% OF RUNWAY COVERED +2 2 11% TO 25% OF RUNWAY COVERED +5 5 26% TO 50% OF RUNWAY COVERED +9 9 51% TO 100% OF RUNWAY COVERED +15 15 MISSING OR NOT REPORTED (E.G. DUE TO RUNWAY CLEARANCE IN PROGRESS) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20089.table b/definitions/bufr/tables/0/wmo/42/codetables/20089.table new file mode 100644 index 000000000..f616c622c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20089.table @@ -0,0 +1,11 @@ +0 0 0.00 +1 1 0.01 +89 89 0.89 +90 90 0.90 +91 91 BRAKING ACTION POOR +92 92 BRAKING ACTION MEDIUM TO POOR +93 93 BRAKING ACTION MEDIUM +94 94 BRAKING ACTION MEDIUM TO GOOD +95 95 BRAKING ACTION GOOD +99 99 UNRELIABLE +127 127 MISSING, NOT REPORTED AND/OR RUNWAY NOT OPERATIONAL diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2009.table b/definitions/bufr/tables/0/wmo/42/codetables/2009.table new file mode 100644 index 000000000..8d694b308 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2009.table @@ -0,0 +1,4 @@ +0 0 LAND CORRECTED REFLECTANCES +1 1 OCEAN BEST SOLUTION +2 2 OCEAN AVERAGE SOLUTION +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20090.table b/definitions/bufr/tables/0/wmo/42/codetables/20090.table new file mode 100644 index 000000000..d13502ec4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20090.table @@ -0,0 +1,7 @@ +0 0 RESERVED +1 1 NACREOUS CLOUDS +2 2 NOCTILUCENT CLOUDS +3 3 CLOUDS FROM WATERFALLS +4 4 CLOUDS FROM FIRES +5 5 CLOUDS FROM VOLCANIC ERUPTIONS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20101.table b/definitions/bufr/tables/0/wmo/42/codetables/20101.table new file mode 100644 index 000000000..abe89f5fe --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20101.table @@ -0,0 +1,11 @@ +0 0 RESERVED +1 1 SCHISTOCERCA GREGARIA +2 2 LOCUSTA MIGRATORIA +3 3 NOMADACRIS SEPTEMFASCIATA +4 4 OEDALEUS SENEGALENSIS +5 5 ANRACRIDIUM SPP +6 6 OTHER LOCUSTS +7 7 OTHER GRASSHOPPERS +8 8 OTHER CRICKETS +9 9 SPODOPTERA EXEMPTA +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20102.table b/definitions/bufr/tables/0/wmo/42/codetables/20102.table new file mode 100644 index 000000000..6a53039e9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20102.table @@ -0,0 +1,11 @@ +0 0 GREEN +1 1 GREEN OR BLACK +2 2 BLACK +3 3 YELLOW AND BLACK +4 4 STRAW/GREY +5 5 PINK +6 6 DARK RED/BROWN +7 7 MIXED RED AND YELLOW +8 8 YELLOW +9 9 OTHER +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20103.table b/definitions/bufr/tables/0/wmo/42/codetables/20103.table new file mode 100644 index 000000000..9c4f68920 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20103.table @@ -0,0 +1,11 @@ +0 0 HOPPERS (NYMPHS, LARVAE), STAGE 1 +1 1 HOPPERS (NYMPHS, LARVAE), STAGE 2 OR MIXED 1, 2 INSTARS (STAGES) +2 2 HOPPERS (NYMPHS, LARVAE), STAGE 3 OR MIXED 2, 3 INSTARS +3 3 HOPPERS (NYMPHS, LARVAE), STAGE 4 OR MIXED 3, 4 INSTARS +4 4 HOPPERS (NYMPHS, LARVAE), STAGE 5 OR MIXED 4, 5 INSTARS +5 5 HOPPERS (NYMPHS, LARVAE), STAGE MIXED, ALL OR MANY INSTARS +6 6 FLEDGLINGS (WINGS TOO SOFT FOR SUSTAINED FLIGHT) +7 7 IMMATURE ADULTS +8 8 MIXED MATURITY ADULTS +9 9 MATURE ADULTS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20104.table b/definitions/bufr/tables/0/wmo/42/codetables/20104.table new file mode 100644 index 000000000..15ca8acd4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20104.table @@ -0,0 +1,11 @@ +0 0 HOPPERS ONLY, MAINLY IN BANDS OR CLUSTERS +1 1 WINGED ADULTS IN THE VICINITY MORE THAN 10 KILOMETRES FROM POINT OF OBSERVATION +2 2 LOCUSTS IN FLIGHT, A FEW SEEN AT THE STATION +3 3 LOCUSTS AT THE STATION, MOST OF THEM ON THE GROUND +4 4 LOCUSTS, SOME ON GROUND AND OTHERS IN FLIGHT AT A HEIGHT LESS THAN 10 METRES +5 5 LOCUSTS, SOME ON GROUND AND OTHERS IN FLIGHT AT A HEIGHT GREATER THAN 10 METRES +6 6 LOCUSTS, MOST IN FLIGHT AT A HEIGHT LESS THAN 10 METRES +7 7 LOCUSTS, MOST IN FLIGHT AT A HEIGHT GREATER THAN 10 METRES +8 8 LOCUSTS, ALL OVER INFLICTING SEVERE DAMAGE TO VEGETATION, NO EXTERMINATION OPERATION +9 9 LOCUSTS, ALL OVER INFLICTING SEVERE DAMAGE TO VEGETATION, EXTERMINATION OPERATION IN PROGRESS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20105.table b/definitions/bufr/tables/0/wmo/42/codetables/20105.table new file mode 100644 index 000000000..b7406c09c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20105.table @@ -0,0 +1,12 @@ +0 0 SMALL SWARM LESS THAN 1 KM2 OR ADULTS IN GROUND, TENS OR HUNDREDS OF INDIVIDUALS VISIBLE SIMULTANEOUSLY, DURATION OF PASSAGE LESS THAN 1 HOUR AGO +1 1 SMALL SWARM LESS THAN 1 KM2 OR ADULTS IN GROUND, TENS OR HUNDREDS OF INDIVIDUALS VISIBLE SIMULTANEOUSLY, DURATION OF PASSAGE 1 TO 6 HOURS AGO +2 2 SMALL SWARM LESS THAN 1 KM2 OR ADULTS IN GROUND, TENS OR HUNDREDS OF INDIVIDUALS VISIBLE SIMULTANEOUSLY, DURATION OF PASSAGE OVER 6 HOURS AGO +3 3 MEDIUM SWARM OR SCATTERED ADULTS, SEVERAL VISIBLE SIMULTANEOUSLY, DURATION OF PASSAGE LESS THAN 1 HOUR AGO +4 4 MEDIUM SWARM OR SCATTERED ADULTS, SEVERAL VISIBLE SIMULTANEOUSLY, DURATION OF PASSAGE 1 TO 6 HOURS AGO +5 5 MEDIUM SWARM OR SCATTERED ADULTS, SEVERAL VISIBLE SIMULTANEOUSLY, DURATION OF PASSAGE OVER 6 HOURS AGO +6 6 LARGE SWARM OR ISOLATED ADULTS, SEEN SINGLY, DURATION OF PASSAGE LESS THAN 1 HOUR AGO +7 7 LARGE SWARM OR ISOLATED ADULTS, SEEN SINGLY, DURATION OF PASSAGE 1 TO 6 HOURS AGO +8 8 LARGE SWARM OR ISOLATED ADULTS, SEEN SINGLY, DURATION OF PASSAGE OVER 6 HOURS AGO +9 9 MORE THAN ONE SWARM OF LOCUSTS +10 10 SIZE OF SWARM AND/OR DURATION OF PASSAGE NOT DETERMINED OWING TO DARKNESS OR SIMILAR PHENOMENA +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20106.table b/definitions/bufr/tables/0/wmo/42/codetables/20106.table new file mode 100644 index 000000000..2a8c4a098 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20106.table @@ -0,0 +1,7 @@ +0 0 RESERVED +1 1 THIN DENSITY SWARM (SWARM VISIBLE ONLY WHEN NEAR ENOUGH FOR INDIVIDUAL LOCUSTS TO BE DISCERNED) +2 2 MEDIUM DENSITY SWARM +3 3 DENSE SWARM (OBSCURING NEARBY FEATURES, E.G. TREES) +4 4 ISOLATED HOPPERS SEEN SINGLY +5 5 SCATTERED HOPPERS, SEVERAL VISIBLE SIMULTANEOUSLY +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20107.table b/definitions/bufr/tables/0/wmo/42/codetables/20107.table new file mode 100644 index 000000000..0bea30ad5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20107.table @@ -0,0 +1,11 @@ +0 0 RESERVED +1 1 GENERALLY IN THE DIRECTION NE +2 2 GENERALLY IN THE DIRECTION E +3 3 GENERALLY IN THE DIRECTION SE +4 4 GENERALLY IN THE DIRECTION S +5 5 GENERALLY IN THE DIRECTION SW +6 6 GENERALLY IN THE DIRECTION W +7 7 GENERALLY IN THE DIRECTION NW +8 8 GENERALLY IN THE DIRECTION N +9 9 SPECIFIC DIRECTION INDETERMINABLE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20108.table b/definitions/bufr/tables/0/wmo/42/codetables/20108.table new file mode 100644 index 000000000..4404614cb --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20108.table @@ -0,0 +1,9 @@ +0 0 BARE GROUND +1 1 DRY, PRESENCE OF FEW AND ISOLATED SHRUBS +2 2 SPARSE VEGETATION (SPROUTING) +3 3 DENSE VEGETATION (SPROUTING) +4 4 SPARSE VEGETATION (GROWING) +5 5 DENSE VEGETATION (GROWING) +6 6 SPARSE VEGETATION IN FLOWER +7 7 DENSE VEGETATION IN FLOWER +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2011.table b/definitions/bufr/tables/0/wmo/42/codetables/2011.table new file mode 100644 index 000000000..487f57a4f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2011.table @@ -0,0 +1,100 @@ +0 0 RESERVED +1 1 NOT VACANT +2 2 NO RADIOSONDE - PASSIVE TARGET (E.G. REFLECTOR) +3 3 NO RADIOSONDE - ACTIVE TARGET (E.G. TRANSPONDER) +4 4 NO RADIOSONDE - PASSIVE TEMPERATURE-HUMIDITY PROFILER +5 5 NO RADIOSONDE - ACTIVE TEMPERATURE-HUMIDITY PROFILER +6 6 NO RADIOSONDE - RADIO-ACOUSTIC SOUNDER +7 7 NOT VACANT +8 8 NO RADIOSONDE -... (RESERVED) +9 9 NO RADIOSONDE - SYSTEM UNKNOWN OR NOT SPECIFIED +10 10 SIPPICAN LMS5 W/CHIP THERMISTOR, DUCT MOUNTED CAPACITANCE RELATIVE HUMIDITY SENSOR AND DERIVED PRESSURE FROM GPS HEIGHT +11 11 SIPPICAN LMS6 W/CHIP THERMISTOR, EXTERNAL BOOM MOUNTED CAPACITANCE RELATIVE HUMIDITY SENSOR, AND DERIVED PRESSURE FROM GPS HEIGHT +12 12 JIN YANG RSG-20A WITH DERIVED PRESSURE FROM GPS HEIGHT/GL-5000P (REPUBLIC OF KOREA) +13 13 VAISALA RS92/MARWIN MW32 (FINLAND) +14 14 VAISALA RS92/DIGICORA MW41 (FINLAND) +15 15 PAZA-12M/RADIOTHEODOLITE-UL (UKRAINE) +16 16 PAZA-22/AVK-1 (UKRAINE) +17 17 GRAW DFM-09 (GERMANY) +18 18 NOT VACANT +19 19 POLUS-MRZ-N1 (RUSSIAN FEDERATION) +20 20 NOT VACANT +21 21 JIN YANG 1524LA LORAN-C/GL5000 (REPUBLIC OF KOREA) +22 22 MEISEI RS-11G GPS RADIOSONDE W/THERMISTOR, CAPACITANCE RELATIVE HUMIDITY SENSOR, AND DERIVED PRESSURE FROM GPS HEIGHT (JAPAN) +23 23 VAISALA RS41/DIGICORA MW41 (FINLAND) +24 24 VAISALA RS41/AUTOSONDE (FINLAND) +25 25 VAISALA RS41/MARWIN MW32 (FINLAND) +26 26 METEOLABOR SRS-C34/ARGUS 37 (SWITZERLAND) +27 27 NOT VACANT +28 28 AVK - AK2-02 (RUSSIAN FEDERATION) +29 29 MARL-A OR VEKTOR-M - AK2-02 (RUSSIAN FEDERATION) +30 30 MEISEI RS-06G (JAPAN) +31 31 TAIYUAN GTS1-1/GFE(L) (CHINA ) +32 32 SHANGHAI GTS1/GFE(L) (CHINA) +33 33 NANJING GTS1-2/GFE(L) (CHINA) +34 34 IMET-4 GPS RADIOSONDE (USA) +35 35 MEISEI IMS-100 GPS RADIOSONDE W/THERMISTOR SENSOR, CAPACITANCE RELATIVE HUMIDITY SENSOR, AND DERIVED PRESSURE FROM GPS HEIGHT (JAPAN) +36 36 MEISEI IMDS-17 GPS DROPSONDE W/THERMISTOR SENSOR, CAPACITANCE RELATIVE HUMIDITY SENSOR, AND CAPACITANCE PRESSURE SENSOR (JAPAN) +37 37 NOT VACANT +38 38 WEATHEX WXR-301D WITH DERIVED PRESSURE FROM GPS (REPUBLIC OF KOREA) +39 39 SPRENGER E076 (GERMANY) +40 40 SPRENGER E084 (GERMANY) +41 41 VAISALA RS41 WITH PRESSURE DERIVED FROM GPS HEIGHT/DIGICORA MW41 (FINLAND) +42 42 VAISALA RS41 WITH PRESSURE DERIVED FROM GPS HEIGHT/AUTOSONDE (FINLAND) +43 43 NANJING DAQIAO XGP-3G (CHINA)* +44 44 TIANJIN HUAYUNTIANYI GTS(U)1 (CHINA)* +45 45 BEIJING CHANGFENG CF-06 (CHINA)* +46 46 SHANGHAI CHANGWANG GTS3 (CHINA)* +47 47 NOT VACANT +48 48 PAZA-22M/MARL-A +49 49 NOT VACANT +50 50 METEOLABOR SRS-C50/ARGUS (SWITZERLAND) +51 51 NOT VACANT +52 52 VAISALA RS92-NGP/INTERMET IMS-2000 (UNITED STATES) +53 53 AVK - I-2012 (RUSSIAN FEDERATION) +54 54 GRAW DFM-17 (GERMANY) +55 55 MEISEI RS-01G (JAPAN) +56 56 M2K2 (FRANCE) +57 57 MODEM M2K2-DC (FRANCE) +58 58 AVK-BAR (RUSSIAN FEDERATION) +59 59 MODEM M2K2-R 1680 MHZ RDF RADIOSONDE WITH PRESSURE SENSOR CHIP (FRANCE) +60 60 MARL-A OR VEKTOR-M - I-2012 (RUSSIAN FEDERATION) +61 61 NOT VACANT +62 62 MARL-A OR VEKTOR-M - MRZ-3MK (RUSSIAN FEDERATION) +63 63 MODEM M20 RADIOSONDE W/THERMISTOR SENSOR, CAPACITANCE RELATIVE HUMIDITY SENSOR, AND DERIVED PRESSURE FROM GPS HEIGHT (FRANCE) +64 64 MODEM PILOTSONDE GPS RADIOSONDE (FRANCE) +65 65 METEOSIS MTS-01 (TURKIYE) +66 66 VACANT +67 67 VAISALA RS80/DIGICORA III (FINLAND) +68 68 AVK-RZM-2 (RUSSIAN FEDERATION) +69 69 MARL-A OR VEKTOR-M-RZM-2 (RUSSIAN FEDERATION) +70 70 VAISALA RS92/STAR (FINLAND) +71 71 VAISALA RS90/LORAN/DIGICORA I, II OR MARWIN (FINLAND) +72 72 VAISALA RS90/PC-CORA (FINLAND) +73 73 МARL-A (RUSSIAN FEDERATION) - ASPAN-15 (KAZAKHSTAN) +74 74 VAISALA RS90/STAR (FINLAND) +75 75 AVK-MRZ-ARMA (RUSSIAN FEDERATION) +76 76 AVK-RF95-ARMA (RUSSIAN FEDERATION) +77 77 MODEM GPSONDE M10 (FRANCE) +78 78 VAISALA RS90/DIGICORA III (FINLAND) +79 79 VAISALA RS92/DIGICORA I,II OR MARWIN (FINLAND) +80 80 VAISALA RS92/DIGICORA III (FINLAND) +81 81 VAISALA RS92/AUTOSONDE (FINLAND) +82 82 LOCKHEED MARTIN LMS-6 W/CHIP THERMISTOR; EXTERNAL BOOM MOUNTED POLYMER CAPACITIVE RELATIVE HUMIDITY SENSOR; CAPACITIVE PRESSURE SENSOR AND GPS WIND +83 83 VAISALA RS92-D/INTERMET IMS 1500 W/SILICON CAPACITIVE PRESSURE SENSOR, CAPACITIVE WIRE TEMPERATURE SENSOR, TWIN THIN-FILM HEATED POLYMER CAPACITIVE RELATIVE HUMIDITY SENSOR AND RDF WIND +84 84 IMET-54/IMET-3200/3400 GPS RADIOSONDE WITH DERIVED PRESSURE FROM GPS HEIGHT (SOUTH AFRICA) +85 85 SIPPICAN MARK IIA WITH CHIP THERMISTOR, CARBON ELEMENT AND DERIVED PRESSURE FROM GPS HEIGHT +86 86 SIPPICAN MARK II WITH CHIP THERMISTOR, PRESSURE AND CARBON ELEMENT +87 87 SIPPICAN MARK IIA WITH CHIP THERMISTOR, PRESSURE AND CARBON ELEMENT +88 88 MARL-A OR VEKTOR-M-MRZ (RUSSIAN FEDERATION) +89 89 MARL-A OR VEKTOR-M-BAR (RUSSIAN FEDERATION) +90 90 RADIOSONDE NOT SPECIFIED OR UNKNOWN +91 91 PRESSURE ONLY RADIOSONDE +92 92 PRESSURE ONLY RADIOSONDE PLUS TRANSPONDER +93 93 PRESSURE ONLY RADIOSONDE PLUS RADAR REFLECTOR +94 94 NO PRESSURE RADIOSONDE PLUS TRANSPONDER +95 95 NO PRESSURE RADIOSONDE PLUS RADAR REFLECTOR +96 96 DESCENDING RADIOSONDE +97 97 IMET-2/IMET-1500 RDF RADIOSONDE WITH PRESSURE SENSOR CHIP (SOUTH AFRICA) +98 98 IMET-2/IMET-1500 GPS RADIOSONDE WITH DERIVED PRESSURE FROM GPS HEIGHT (SOUTH AFRICA) +99 99 IMET-2/IMET-3200 GPS RADIOSONDE WITH DERIVED PRESSURE FROM GPS HEIGHT (SOUTH AFRICA) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20119.table b/definitions/bufr/tables/0/wmo/42/codetables/20119.table new file mode 100644 index 000000000..4a4b40f87 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20119.table @@ -0,0 +1,4 @@ +0 0 NOT DEFINED +1 1 POSITIVE +2 2 NEGATIVE +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20124.table b/definitions/bufr/tables/0/wmo/42/codetables/20124.table new file mode 100644 index 000000000..f78eacb17 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20124.table @@ -0,0 +1,4 @@ +0 0 NOT DEFINED +1 1 LIGHTNING STROKE +2 2 LIGHTNING FLASH, BY MANUAL OBSERVATION, OR IF EQUIPMENT INSENSITIVE TO STROKE RESOLUTION +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2013.table b/definitions/bufr/tables/0/wmo/42/codetables/2013.table new file mode 100644 index 000000000..91ce6501d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2013.table @@ -0,0 +1,11 @@ +0 0 NO CORRECTION +1 1 CIMO SOLAR CORRECTED AND CIMO INFRARED CORRECTED +2 2 CIMO SOLAR CORRECTED AND INFRARED CORRECTED +3 3 CIMO SOLAR CORRECTED ONLY +4 4 SOLAR AND INFRARED CORRECTED AUTOMATICALLY BY RADIOSONDE SYSTEM +5 5 SOLAR CORRECTED AUTOMATICALLY BY RADIOSONDE SYSTEM +6 6 SOLAR AND INFRARED CORRECTED AS SPECIFIED BY COUNTRY +7 7 SOLAR CORRECTED AS SPECIFIED BY COUNTRY +8 8 SOLAR AND INFRARED CORRECTED AS SPECIFIED BY GRUAN +9 9 SOLAR CORRECTED AS SPECIFIED BY GRUAN +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20136.table b/definitions/bufr/tables/0/wmo/42/codetables/20136.table new file mode 100644 index 000000000..42c012b50 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20136.table @@ -0,0 +1,44 @@ +0 0 ISOLATED CUMULUS HUMILIS AND/OR CUMULUS MEDIOCRIS OF VERTICAL DEVELOPMENT +1 1 NUMEROUS CUMULUS HUMILIS AND/OR CUMULUS MEDIOCRIS OF VERTICAL DEVELOPMENT +2 2 ISOLATED CUMULUS CONGESTUS OF VERTICAL DEVELOPMENT +3 3 NUMEROUS CUMULUS CONGESTUS OF VERTICAL DEVELOPMENT +4 4 ISOLATED CUMULONIMBUS OF VERTICAL DEVELOPMENT +5 5 NUMEROUS CUMULONIMBUS OF VERTICAL DEVELOPMENT +6 6 ISOLATED CUMULUS AND CUMULONIMBUS OF VERTICAL DEVELOPMENT +7 7 NUMEROUS CUMULUS AND CUMULONIMBUS OF VERTICAL DEVELOPMENT +10 10 RESERVED +11 11 ISOLATED OROGRAPHIC CLOUDS, PILEUS, INCUS, FORMING +12 12 ISOLATED OROGRAPHIC CLOUDS, PILEUS, INCUS, NOT CHANGING +13 13 ISOLATED OROGRAPHIC CLOUDS, PILEUS, INCUS, DISSOLVING +14 14 IRREGULAR BANKS OF OROGRAPHIC CLOUD, FOEHN BANK, ETC., FORMING +15 15 IRREGULAR BANKS OF OROGRAPHIC CLOUD, FOEHN BANK, ETC., NOT CHANGING +16 16 IRREGULAR BANKS OF OROGRAPHIC CLOUD, FOEHN BANK, ETC., DISSOLVING +17 17 COMPACT LAYER OF OROGRAPHIC CLOUD, FOEHN BANK, ETC., FORMING +18 18 COMPACT LAYER OF OROGRAPHIC CLOUD, FOEHN BANK, ETC., NOT CHANGING +19 19 COMPACT LAYER OF OROGRAPHIC CLOUD, FOEHN BANK, ETC., DISSOLVING +20 20 ALL MOUNTAINS OPEN, ONLY SMALL AMOUNTS OF CLOUD PRESENT +21 21 MOUNTAINS PARTLY COVERED WITH DETACHED CLOUDS (NOT MORE THAN HALF THE PEAKS CAN BE SEEN) +22 22 ALL MOUNTAIN SLOPES COVERED, PEAKS AND PASSES FREE +23 23 MOUNTAINS OPEN ON OBSERVER’S SIDE (ONLY SMALL AMOUNTS OF CLOUD PRESENT), BUT A CONTINUOUS WALL OF CLOUD ON THE OTHER SIDE +24 24 CLOUDS LOW ABOVE THE MOUNTAINS, BUT ALL SLOPES AND MOUNTAINS OPEN (ONLY SMALL AMOUNTS OF CLOUD ON THE SLOPES) +25 25 CLOUDS LOW ABOVE THE MOUNTAINS, PEAKS PARTLY COVERED BY PRECIPITATION TRAILS OR CLOUDS +26 26 ALL PEAKS COVERED BUT PASSES OPEN, SLOPES EITHER OPEN OR COVERED +27 27 MOUNTAINS GENERALLY COVERED BUT SOME PEAKS FREE, SLOPES WHOLLY OR PARTIALLY COVERED +28 28 ALL PEAKS, PASSES AND SLOPES COVERED +29 29 MOUNTAINS CANNOT BE SEEN OWING TO DARKNESS, FOG, SNOWSTORM, PRECIPITATION, ETC. +35 35 NON-PERSISTENT CONDENSATION TRAILS +36 36 PERSISTENT CONDENSATION TRAILS COVERING LESS THAN 1/8 OF THE SKY +37 37 PERSISTENT CONDENSATION TRAILS COVERING 1/8 OF THE SKY +38 38 PERSISTENT CONDENSATION TRAILS COVERING 2/8 OF THE SKY +39 39 PERSISTENT CONDENSATION TRAILS COVERING 3/8 OR MORE OF THE SKY +40 40 NO CLOUD OR MIST OBSERVED FROM A HIGHER LEVEL +41 41 MIST, CLEAR ABOVE OBSERVED FROM A HIGHER LEVEL +42 42 FOG PATCHES OBSERVED FROM A HIGHER LEVEL +43 43 LAYER OF SLIGHT FOG OBSERVED FROM A HIGHER LEVEL +44 44 LAYER OF THICK FOG OBSERVED FROM A HIGHER LEVEL +45 45 SOME ISOLATED CLOUDS OBSERVED FROM A HIGHER LEVEL +46 46 ISOLATED CLOUDS AND FOG BELOW OBSERVED FROM A HIGHER LEVEL +47 47 MANY ISOLATED CLOUDS OBSERVED FROM A HIGHER LEVEL +48 48 SEA OF CLOUDS OBSERVED FROM A HIGHER LEVEL +49 49 BAD VISIBILITY OBSCURING THE DOWNWARD VIEW OBSERVED FROM A HIGHER LEVEL +511 511 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20137.table b/definitions/bufr/tables/0/wmo/42/codetables/20137.table new file mode 100644 index 000000000..adda88054 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20137.table @@ -0,0 +1,11 @@ +0 0 NO CHANGE +1 1 CUMULIFICATION +2 2 SLOW ELEVATION +3 3 RAPID ELEVATION +4 4 ELEVATION AND STRATIFICATION +5 5 SLOW LOWERING +6 6 RAPID LOWERING +7 7 STRATIFICATION +8 8 STRATIFICATION AND LOWERING +9 9 RAPID CHANGE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20138.table b/definitions/bufr/tables/0/wmo/42/codetables/20138.table new file mode 100644 index 000000000..ed9b315fc --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20138.table @@ -0,0 +1,9 @@ +0 0 DRY +1 1 MOIST +2 2 WET +3 3 RIME +4 4 SNOW +5 5 ICE +6 6 GLAZE +7 7 NOT DRY +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20139.table b/definitions/bufr/tables/0/wmo/42/codetables/20139.table new file mode 100644 index 000000000..2e5658c3d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20139.table @@ -0,0 +1,7 @@ +0 0 CLEAR +1 1 SINGLE LAYER WATER +2 2 SINGLE LAYER ICE +3 3 2-LAYERS (WATER/ICE) +4 4 SINGLE LAYER ASH +5 5 2-LAYERS ASH +15 15 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2014.table b/definitions/bufr/tables/0/wmo/42/codetables/2014.table new file mode 100644 index 000000000..bc5c5fcb8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2014.table @@ -0,0 +1,51 @@ +0 0 NO WIND FINDING +1 1 AUTOMATIC WITH AUXILIARY OPTICAL DIRECTION FINDING +2 2 AUTOMATIC WITH AUXILIARY RADIO DIRECTION FINDING +3 3 AUTOMATIC WITH AUXILIARY RANGING +4 4 NOT USED +5 5 AUTOMATIC WITH MULTIPLE VLF-OMEGA SIGNALS +6 6 AUTOMATIC CROSS CHAIN LORAN-C +7 7 AUTOMATIC WITH AUXILIARY WIND PROFILER +8 8 AUTOMATIC SATELLITE NAVIGATION +19 19 TRACKING TECHNIQUE NOT SPECIFIED +20 20 VESSEL STOPPED +21 21 VESSEL DIVERTED FROM ORIGINAL DESTINATION +22 22 VESSEL'S ARRIVAL DELAYED +23 23 CONTAINER DAMAGED +24 24 POWER FAILURE TO CONTAINER +29 29 OTHER PROBLEMS +30 30 MAJOR POWER PROBLEMS +31 31 UPS INOPERATIVE +32 32 RECEIVER HARDWARE PROBLEMS +33 33 RECEIVER SOFTWARE PROBLEMS +34 34 PROCESSOR HARDWARE PROBLEMS +35 35 PROCESSOR SOFTWARE PROBLEMS +36 36 NAVAID SYSTEM DAMAGED +37 37 SHORTAGE OF LIFTING GAS +38 38 RESERVED +39 39 OTHER PROBLEMS +40 40 MECHANICAL DEFECT +41 41 MATERIAL DEFECT (HAND LAUNCHER) +42 42 POWER FAILURE +43 43 CONTROL FAILURE +44 44 PNEUMATIC/HYDRAULIC FAILURE +45 45 OTHER PROBLEMS +46 46 COMPRESSOR PROBLEMS +47 47 BALLOON PROBLEMS +48 48 BALLOON RELEASE PROBLEMS +49 49 LAUNCHER DAMAGED +50 50 R/S RECEIVER ANTENNA DEFECT +51 51 NAVAID ANTENNA DEFECT +52 52 R/S RECEIVER CABLING (ANTENNA) DEFECT +53 53 NAVAID ANTENNA CABLING DEFECT +59 59 OTHER PROBLEMS +60 60 ASAP COMMUNICATIONS DEFECT +61 61 COMMUNICATIONS FACILITY REJECTED DATA +62 62 NO POWER AT TRANSMITTING ANTENNA +63 63 ANTENNA CABLE BROKEN +64 64 ANTENNA CABLE DEFECT +65 65 MESSAGE TRANSMITTED POWER BELOW NORMAL +69 69 OTHER PROBLEMS +70 70 ALL SYSTEMS IN NORMAL OPERATION +99 99 STATUS OF SYSTEM AND ITS COMPONENTS NOT SPECIFIED +127 127 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/20143.table b/definitions/bufr/tables/0/wmo/42/codetables/20143.table new file mode 100644 index 000000000..849964a75 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/20143.table @@ -0,0 +1,4 @@ +0 0 NO LIQUID CLOUD +1 1 LIQUID CLOUD PRESENT +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2015.table b/definitions/bufr/tables/0/wmo/42/codetables/2015.table new file mode 100644 index 000000000..7b0ccaf86 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2015.table @@ -0,0 +1,7 @@ +0 0 RESERVED +1 1 PRESSURE ONLY RADIOSONDE +2 2 PRESSURE ONLY RADIOSONDE PLUS TRANSPONDER +3 3 PRESSURE ONLY RADIOSONDE PLUS RADAR REFLECTOR +4 4 NO-PRESSURE RADIOSONDE PLUS TRANSPONDER +5 5 NO-PRESSURE RADIOSONDE PLUS RADAR REFLECTOR +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2016.table b/definitions/bufr/tables/0/wmo/42/codetables/2016.table new file mode 100644 index 000000000..4a3022611 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2016.table @@ -0,0 +1,4 @@ +1 1 TRAIN REGULATOR +2 2 LIGHT UNIT +3 3 PARACHUTE +4 4 ROOFTOP RELEASE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2017.table b/definitions/bufr/tables/0/wmo/42/codetables/2017.table new file mode 100644 index 000000000..7fac2e10f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2017.table @@ -0,0 +1,6 @@ +0 0 NO CORRECTIONS +1 1 TIME LAG CORRECTION PROVIDED BY THE MANUFACTURER +2 2 SOLAR RADIATION CORRECTION PROVIDED BY THE MANUFACTURER +3 3 SOLAR RADIATION AND TIME LAG CORRECTION PROVIDED BY THE MANUFACTURER +7 7 GRUAN SOLAR RADIATION AND TIME LAG CORRECTION +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2019.table b/definitions/bufr/tables/0/wmo/42/codetables/2019.table new file mode 100644 index 000000000..2867bee97 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2019.table @@ -0,0 +1,414 @@ +7 7 SSH +8 8 SSM/T +9 9 SSM/T2 +10 10 AATSR +11 11 ATSR +12 12 ATSR-2 +13 13 MWR +14 14 PMR +15 15 SCR +30 30 ARGOS +40 40 LASER REFLECTORS +41 41 DORIS +42 42 DORIS-NG +47 47 POSEIDON-1 (SSALT1) +48 48 POSEIDON-2 (SSALT2) +49 49 POSEIDON-3 (SSALT3) +50 50 ATSR/M +51 51 HRG +52 52 HRV +53 53 HRVIR +54 54 SCARAB/MV2 +55 55 POLDER +56 56 IIR +57 57 POSEIDON-4 +60 60 VEGETATION +61 61 WINDII +62 62 ALTIKA +63 63 SWIM +80 80 RADARSAT DTT +81 81 RADARSAT TTC +85 85 SAR (CSA) +90 90 MOPITT +91 91 OSIRIS +92 92 ACE-FTS +97 97 PANCHROMATIC IMAGER +98 98 GPS RECEIVER +102 102 CHAMP GPS SOUNDER +103 103 IGOR +104 104 TRI-G +116 116 CHAMP GRAVITY PACKAGE (ACCELEROMETER+GPS) +117 117 CHAMP MAGNETOMETRY PACKAGE (1 SCALAR+2 VECTOR MAGNETOMETER) +120 120 ENVISAT COMMS +121 121 ERS COMMS +130 130 ALADIN +131 131 ATLID +140 140 AMI/SAR/IMAGE +141 141 AMI/SAR/WAVE +142 142 AMI/SCATTEROMETER +143 143 ASAR +144 144 ASAR +145 145 ASAR +146 146 CPR +147 147 RA-2/MWR +148 148 RA/MWR +150 150 SCATTEROMETER +151 151 SAR-C +152 152 SW +161 161 MIPAS +162 162 MWR-2 +163 163 SOPRANO +170 170 GOME +172 172 GOMOS +173 173 ALTIUS +174 174 MERIS +175 175 SCIAMACHY +176 176 MIRAS +177 177 SIRAL +178 178 SRAL +179 179 OLCI +180 180 SLSTR +181 181 METEOSAT COMMS +182 182 MSG COMMS +190 190 ASCAT +200 200 GERB +202 202 GRAS +203 203 MHS +205 205 MVIRI +207 207 SEVIRI +208 208 VIRI +209 209 MWR +210 210 FCI +211 211 LI +212 212 IRS +213 213 S4 +220 220 GOME-2 +221 221 IASI +230 230 3MI +231 231 IASI-NG +232 232 METIMAGE +233 233 MWS +234 234 RO +235 235 S5/UVNS +236 236 ICI +237 237 MWI +238 238 SCA +240 240 DCP +245 245 CCD +246 246 HSB +248 248 OBA +250 250 WFI +255 255 IRMSS +260 260 BSS & FSS TRANSPONDERS +261 261 DRT-S&R +262 262 INSAT COMMS +268 268 HR-PAN +269 269 MSMR +270 270 VHRR +271 271 WIFS +275 275 AWIFS +276 276 LISS-I +277 277 LISS-II +278 278 LISS-III +279 279 LISS-IV +284 284 PAN +285 285 MOS +286 286 OCM +287 287 ROSA +288 288 SCAT +289 289 IMG +290 290 MTSAT COMMS +291 291 HIMAWARI COMMS +294 294 JAMI +295 295 IMAGER/MTSAT-2 +296 296 VISSR +297 297 AHI +300 300 GLAS +301 301 LRA +302 302 MBLA +303 303 CALIOP +309 309 CPR (CLOUDSAT) +312 312 NSCAT +313 313 SEAWINDS +314 314 RAPIDSCAT +330 330 ACRIM +334 334 BUV +336 336 ALI +347 347 ASTER +348 348 CERES-2 +351 351 GPSDR +353 353 HIRDLS +354 354 HRDI +356 356 LIS +358 358 PEM +359 359 SEAWIFS +360 360 SUSIM (UARS) +363 363 SBUV/1 +365 365 TMI +366 366 JMR +367 367 AMR +368 368 MW RADIOMETER +369 369 LIMS +370 370 LRIR +371 371 EPIC +372 372 NISTAR +373 373 PLASMA-MAG +374 374 XPS +375 375 VIRS +376 376 POLDER II +377 377 TIM +379 379 WFC +382 382 CLAES +383 383 HALOE +384 384 ISAMS +385 385 MISR +386 386 MLS +387 387 MLS (EOS-AURA) +389 389 MODIS +393 393 HAIRS +394 394 OMI +395 395 ATMOSPHERIC CORRECTOR +396 396 HYPERION +397 397 HRIR +398 398 MRIR +399 399 SAGE I +400 400 SAGE II +401 401 SAGE III +402 402 SAMS +403 403 SAM-II +404 404 IRIS +405 405 GIFTS +420 420 AIRS +421 421 SIRS-A +422 422 SIRS-B +426 426 SOLSTICE +430 430 TES +431 431 TOMS +432 432 OCO +433 433 TMS +434 434 SMAP +435 435 TEMPO +450 450 ADEOS COMMS +451 451 DCS (JAXA) +453 453 GMS COMMS +454 454 JERS-1 COMMS +460 460 RIS +461 461 PR +462 462 SAR +470 470 PALSAR +478 478 AMSR2 +479 479 AMSR-E +480 480 PRISM (ALOS) +481 481 AMSR +482 482 AVNIR +483 483 AVNIR-2 +484 484 GLI +485 485 MESSR +486 486 MSR +487 487 OCTS +488 488 OPS +489 489 VISSR (GMS-5) +490 490 VTIR +510 510 ILAS-I +511 511 ILAS-II +512 512 IMG +514 514 SEM +515 515 SOFIS +516 516 TANSO-FTS +517 517 TANSO-CAI +518 518 DPR +519 519 GMI +520 520 SMMR +521 521 TANSO-FTS2 +526 526 CION-A +527 527 CION-B +528 528 CION-C +529 529 CION-D +530 530 SGNOS-A +531 531 SGNOS-B +532 532 SGNOS-C +533 533 SGNOS-D +534 534 PYXIS-A +535 535 PYXIS-B +540 540 DCS (NOAA) +541 541 GOES COMMS +542 542 LANDSAT COMMS +543 543 NOAA COMMS +544 544 S&R (GOES) +545 545 S&R (NOAA) +546 546 WEFAX +547 547 SEM (GOES) +550 550 SSM +551 551 SSJ/4 +552 552 SSIES-2 +553 553 SSB/X-2 +570 570 AMSU-A +574 574 AMSU-B +580 580 ATOVS (HIRS/3 + AMSU + AVHRR/3) +590 590 AVHRR/2 +591 591 AVHRR/3 +592 592 AVHRR/4 +600 600 ERBE +601 601 ETM+ +604 604 HIRS/1 +605 605 HIRS/2 +606 606 HIRS/3 +607 607 HIRS/4 +615 615 IMAGER +616 616 VIIRS +617 617 ABI +618 618 GLM +620 620 CRIRS/NP +621 621 ATMS +622 622 MSS +623 623 MSU +624 624 SBUV/2 +625 625 SBUV/3 +626 626 SOUNDER +627 627 SSU +628 628 TM +629 629 TOVS (HIRS/2 + MSU + SSU) +630 630 VAS +631 631 SSZ +645 645 SEM +650 650 MVIRSR (10 CHANNEL) +651 651 MVIRSR (3 CHANNEL) +652 652 MVIRSR (5 CHANNEL) +670 670 RLSBO +680 680 MSU-EU +681 681 MSU-UM +682 682 RM-08 +683 683 SU-UMS +684 684 SU-VR +685 685 TRASSER +686 686 SCAT +687 687 ALT +688 688 MWI +689 689 GEMS +700 700 KONDOR-2 +701 701 BRK +710 710 ALISSA +712 712 BALKAN-2 LIDAR +715 715 MK-4 +716 716 MK-4M +730 730 GREBEN +731 731 SAR-10 +732 732 SAR-3 +733 733 SAR-70 +740 740 SLR-3 +745 745 TRAVERS SAR +750 750 174-K +751 751 BTVK +752 752 CHAIKA +753 753 DELTA-2 +755 755 IKAR-D +756 756 IKAR-N +757 757 IKAR-P +760 760 ISP +761 761 KFA-1000 +762 762 KFA-200 +763 763 KFA-3000 +770 770 KLIMAT +771 771 KLIMAT-2 +775 775 MIRAS +776 776 MIVZA +777 777 MIVZA-M +780 780 MR-2000 +781 781 MR-2000M +785 785 MR-900 +786 786 MR-900B +790 790 MSU-E +791 791 MSU-E1 +792 792 MSU-E2 +793 793 MSU-M +794 794 MSU-S +795 795 MSU-SK +796 796 MSU-V +810 810 MTZA +815 815 MZOAS +820 820 R-225 +821 821 R-400 +822 822 R-600 +830 830 RMS +835 835 TV CAMERA +836 836 SILVA +840 840 SROSMO +850 850 BUFS-2 +851 851 BUFS-4 +855 855 ISTOK-1 +856 856 SFM-2 +857 857 DOPI +858 858 KGI-4 +859 859 OZON-M +860 860 RMK-2 +861 861 MTVZA-GY +862 862 IKFS-2 +900 900 MAXIE +901 901 OLS +905 905 SSM/I +906 906 SSM/T-1 +907 907 SSM/T-2 +908 908 SSMIS +909 909 VTPR +910 910 SXI +930 930 EHIC +931 931 X-RAY ASTRONOMY PAYLOAD +932 932 IVISSR (FY-2) +933 933 IRAS +934 934 MWAS +935 935 IMWAS +936 936 MWHS +937 937 MVIRS +938 938 MWRI +940 940 MTVZA-OK +941 941 SAPHIR +942 942 MADRAS +943 943 SCAT (ON CFOSAT) +944 944 ALT +945 945 TSIS +946 946 CMIS +947 947 OMPS-NADIR +948 948 GPSOS +949 949 SESS +950 950 VIRR +951 951 TOM +952 952 OP +953 953 MWHS-2 +954 954 MWTS-2 +955 955 HIRAS +956 956 SBUS +957 957 TOU +958 958 GNOS +959 959 SMR +960 960 OMPS-LIMB +961 961 AGRI-1 +962 962 GIIRS-1 +963 963 LMI +964 964 SEP +965 965 GNOS-2 +966 966 MWTS-3 +967 967 GIIRS-2 +968 968 GIIRS-3 +969 969 GIIRS-4 +970 970 GIIRS-5 +971 971 GIIRS-6 +972 972 AGRI-2 +973 973 AGRI-3 +974 974 AGRI-4 +975 975 AGRI-5 +976 976 AGRI-6 +977 977 GHI +980 980 AMI +981 981 MI +982 982 KSEM +983 983 HIRAS-2 +984 984 HIRAS-3 +985 985 MWRI-1 +986 986 MWRI-2 +987 987 MWRI-RM +990 990 SMMR +991 991 THIR +992 992 NEMS +993 993 SCAMS +994 994 ESMR +2047 2047 diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2020.table b/definitions/bufr/tables/0/wmo/42/codetables/2020.table new file mode 100644 index 000000000..fd3c93626 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2020.table @@ -0,0 +1,37 @@ +0 0 NIMBUS +1 1 VTPR +2 2 TIROS 1 (TIROS, NOAA-6 TO NOAA-13) +3 3 TIROS 2 (NOAA-14 ONWARDS) +10 10 EOS +20 20 GPM-CORE +31 31 DMSP +61 61 EUMETSAT POLAR SYSTEM (EPS) +62 62 EUMETSAT POLAR SYSTEM (EPS-SG) +91 91 ERS +92 92 SENTINEL-3 +121 121 ADEOS +122 122 GCOM +241 241 GOES +251 251 TROPICS +261 261 JASON +271 271 GMS +272 272 MTSAT +273 273 HIMAWARI +281 281 COMS +301 301 INSAT +331 331 METEOSAT OPERATIONAL PROGRAMME (MOP) +332 332 METEOSAT TRANSITIONAL PROGRAMME (MTP) +333 333 METEOSAT SECOND GENERATION PROGRAMME (MSG) +334 334 METEOSAT THIRD GENERATION PROGRAMME (MTG) +351 351 GOMS +352 352 METEOR-M N2 +380 380 FY-1 +381 381 FY-2 +382 382 FY-3 +383 383 FY-4 +401 401 GPS +402 402 GLONASS +403 403 GALILEO +404 404 BDS (BEIDOU NAVIGATION SATELLITE SYSTEM) +405 405 QUASI-ZENITH SATELLITE SYSTEM (QZSS) +511 511 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2021.table b/definitions/bufr/tables/0/wmo/42/codetables/2021.table new file mode 100644 index 000000000..b95fdc989 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2021.table @@ -0,0 +1,8 @@ +1 1 HIGH-RESOLUTION INFRARED SOUNDER (HIRS) +2 2 MICROWAVE SOUNDING UNIT (MSU) +3 3 STRATOSPHERIC SOUNDING UNIT (SSU) +4 4 AMI (ADVANCED MICROWAVE INSTRUMENT) WIND MODE +5 5 AMI (ADVANCED MICROWAVE INSTRUMENT) WAVE MODE +6 6 AMI (ADVANCED MICROWAVE INSTRUMENT) IMAGE MODE +7 7 RADAR ALTIMETER +8 8 ATSR (ALONG-TRACK SCANNING RADIOMETER) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2022.table b/definitions/bufr/tables/0/wmo/42/codetables/2022.table new file mode 100644 index 000000000..5068e7fd7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2022.table @@ -0,0 +1,5 @@ +1 1 PROCESSING TECHNIQUE NOT DEFINED +2 2 AUTOMATED STATISTICAL REGRESSION +3 3 CLEAR PATH +4 4 PARTLY CLOUDY PATH +5 5 CLOUDY PATH diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2023.table b/definitions/bufr/tables/0/wmo/42/codetables/2023.table new file mode 100644 index 000000000..be7eb84e4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2023.table @@ -0,0 +1,11 @@ +0 0 RESERVED +1 1 WIND DERIVED FROM CLOUD MOTION OBSERVED IN THE INFRARED CHANNEL +2 2 WIND DERIVED FROM CLOUD MOTION OBSERVED IN THE VISIBLE CHANNEL +3 3 WIND DERIVED FROM CLOUD MOTION OBSERVED IN THE WATER VAPOUR CHANNEL +4 4 WIND DERIVED FROM MOTION OBSERVED IN A COMBINATION OF SPECTRAL CHANNELS +5 5 WIND DERIVED FROM MOTION OBSERVED IN THE WATER VAPOUR CHANNEL IN CLEAR AIR +6 6 WIND DERIVED FROM MOTION OBSERVED IN THE OZONE CHANNEL +7 7 WIND DERIVED FROM MOTION OBSERVED IN WATER VAPOUR CHANNEL (CLOUD OR CLEAR AIR NOT SPECIFIED) +13 13 ROOT-MEAN-SQUARE +14 14 RESERVED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2024.table b/definitions/bufr/tables/0/wmo/42/codetables/2024.table new file mode 100644 index 000000000..00ec80ef6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2024.table @@ -0,0 +1,4 @@ +0 0 RESERVED +1 1 TABLE WITH FULL RANGE OF HUMIDITY VARIATION IN LAYER +2 2 REGRESSION TECHNIQUE ON 2 HUMIDITY VALUES IN LAYER +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2025.table b/definitions/bufr/tables/0/wmo/42/codetables/2025.table new file mode 100644 index 000000000..045416aac --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2025.table @@ -0,0 +1,16 @@ +1 1 RESERVED +2 2 HIRS +3 3 MSU +6 6 HIRS +7 7 MSU +10 10 HIRS (1, 2, 3, 8, 9, 16, 17) +11 11 HIRS (1, 2, 3, 9, 17) +12 12 MSU +15 15 HIRS +16 16 HIRS* +17 17 MSU +18 18 SKINTK (OCEAN ONLY) +21 21 HIRS +22 22 SSU +23 23 MSU (3, 4) +24 24 RESERVED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2030.table b/definitions/bufr/tables/0/wmo/42/codetables/2030.table new file mode 100644 index 000000000..2777bbcd3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2030.table @@ -0,0 +1,8 @@ +0 0 RESERVED +1 1 ADCP (ACOUSTIC DOPPLER CURRENT PROFILER) +2 2 GEK (GEOMAGNETIC ELECTROKINETOGRAPH) +3 3 SHIP'S SET AND DRIFT DETERMINED BY FIXES 3-6 HOURS APART +4 4 SHIP'S SET AND DRIFT DETERMINED BY FIXES MORE THAN 6 HOURS BUT LESS THAN 12 HOURS APART +5 5 DRIFT OF BUOY +6 6 ADCP (ACOUSTIC DOPPLER CURRENT PROFILER) +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2031.table b/definitions/bufr/tables/0/wmo/42/codetables/2031.table new file mode 100644 index 000000000..c096d370c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2031.table @@ -0,0 +1,21 @@ +0 0 RESERVED +1 1 INSTANTANEOUS +2 2 AVERAGED OVER 3 MIN OR LESS +3 3 AVERAGED OVER MORE THAN 3 MIN, BUT 6 MIN AT THE MOST +4 4 AVERAGED OVER MORE THAN 6 MIN, BUT 12 MIN AT THE MOST +5 5 INSTANTANEOUS +6 6 AVERAGED OVER 3 MIN OR LESS +7 7 AVERAGED OVER MORE THAN 3 MIN, BUT 6 MIN AT THE MOST +8 8 AVERAGED OVER MORE THAN 6 MIN, BUT 12 MIN AT THE MOST +9 9 VECTOR OR DOPPLER CURRENT PROFILING METHOD NOT USED +10 10 RESERVED +11 11 1 HOUR OR LESS +12 12 MORE THAN 1 HOUR BUT 2 HOURS AT THE MOST +13 13 MORE THAN 2 HOURS BUT 4 HOURS AT THE MOST +14 14 MORE THAN 4 HOURS BUT 8 HOURS AT THE MOST +15 15 MORE THAN 8 HOURS BUT 12 HOURS AT THE MOST +16 16 MORE THAN 12 HOURS BUT 18 HOURS AT THE MOST +17 17 MORE THAN 18 HOURS BUT 24 HOURS AT THE MOST +18 18 RESERVED +19 19 DRIFT METHOD NOT USED +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2032.table b/definitions/bufr/tables/0/wmo/42/codetables/2032.table new file mode 100644 index 000000000..7e9310db0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2032.table @@ -0,0 +1,4 @@ +0 0 VALUES AT SELECTED DEPTHS (DATA POINTS FIXED BY THE INSTRUMENT OR SELECTED BY ANY OTHER METHOD) +1 1 VALUES AT SELECTED DEPTHS (DATA POINTS TAKEN FROM TRACES AT SIGNIFICANT DEPTHS) +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2033.table b/definitions/bufr/tables/0/wmo/42/codetables/2033.table new file mode 100644 index 000000000..d590a8454 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2033.table @@ -0,0 +1,5 @@ +0 0 NO SALINITY MEASURED +1 1 IN SITU SENSOR, ACCURACY BETTER THAN 0.02 0/00 +2 2 IN SITU SENSOR, ACCURACY LESS THAN 0.02 0/00 +3 3 SAMPLE ANALYSIS +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2034.table b/definitions/bufr/tables/0/wmo/42/codetables/2034.table new file mode 100644 index 000000000..06cdd52d2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2034.table @@ -0,0 +1,7 @@ +0 0 UNSPECIFIED DROGUE +1 1 HOLEY SOCK +2 2 TRISTAR +3 3 WINDOW SHADE +4 4 PARACHUTE +5 5 NON-LAGRANGIAN SEA ANCHOR +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2036.table b/definitions/bufr/tables/0/wmo/42/codetables/2036.table new file mode 100644 index 000000000..7782d302a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2036.table @@ -0,0 +1,4 @@ +0 0 DRIFTING BUOY +1 1 FIXED BUOY +2 2 SUBSURFACE FLOAT (MOVING) +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2037.table b/definitions/bufr/tables/0/wmo/42/codetables/2037.table new file mode 100644 index 000000000..729c40e63 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2037.table @@ -0,0 +1,8 @@ +0 0 RESERVED +1 1 MANUAL READING FROM VERTICAL TIDE STAFF +2 2 MANUAL READING FROM SINGLE AUTOMATIC RECORDER AT STATION +3 3 MANUAL READING FROM MULTIPLE AUTOMATIC RECORDERS AT STATION +4 4 AUTOMATIC READING FROM SINGLE AUTOMATIC RECORDER AT STATION WITHOUT LEVEL REFERENCE CHECK +5 5 AUTOMATIC READING FROM SINGLE AUTOMATIC RECORDER AT STATION WITH LEVEL REFERENCE CHECK, OR FROM MULTIPLE AUTOMATIC RECORDERS +6 6 RESERVED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2038.table b/definitions/bufr/tables/0/wmo/42/codetables/2038.table new file mode 100644 index 000000000..458f14169 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2038.table @@ -0,0 +1,16 @@ +0 0 SHIP INTAKE +1 1 BUCKET +2 2 HULL CONTACT SENSOR +3 3 REVERSING THERMOMETER +4 4 STD/CTD SENSOR +5 5 MECHANICAL BT +6 6 EXPENDABLE BT +7 7 DIGITAL BT +8 8 THERMISTOR CHAIN +9 9 INFRARED SCANNER +10 10 MICROWAVE SCANNER +11 11 INFRARED RADIOMETER +12 12 IN-LINE THERMOSALINOGRAPH +13 13 TOWED BODY +14 14 OTHER +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2039.table b/definitions/bufr/tables/0/wmo/42/codetables/2039.table new file mode 100644 index 000000000..0a94982b5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2039.table @@ -0,0 +1,5 @@ +0 0 MEASURED WET-BULB TEMPERATURE +1 1 ICED BULB MEASURED WET-BULB TEMPERATURE +2 2 COMPUTED WET-BULB TEMPERATURE +3 3 ICED BULB COMPUTED WET-BULB TEMPERATURE +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2040.table b/definitions/bufr/tables/0/wmo/42/codetables/2040.table new file mode 100644 index 000000000..78b291706 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2040.table @@ -0,0 +1,8 @@ +0 0 SHIP'S MOTION REMOVED BY AVERAGING +1 1 SHIP'S MOTION REMOVED BY MOTION COMPENSATION +2 2 SHIP'S MOTION NOT REMOVED +3 3 SHIP'S MOTION REMOVED BY AVERAGING +4 4 SHIP'S MOTION REMOVED BY MOTION COMPENSATION +5 5 SHIP'S MOTION NOT REMOVED +6 6 DOPPLER CURRENT PROFILING METHOD NOT USED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2041.table b/definitions/bufr/tables/0/wmo/42/codetables/2041.table new file mode 100644 index 000000000..ef5bf86b3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2041.table @@ -0,0 +1,6 @@ +0 0 INFORMATION BASED ON MANUAL ANALYSIS +1 1 INFORMATION BASED ON COMPUTER ANALYSIS +2 2 INFORMATION BASED ON DATA ASSIMILATION +3 3 INFORMATION BASED ON COMPUTER ANALYSIS OR DATA ASSIMILATION MANUALLY MODIFIED +10 10 INFORMATION BASED ON THE NUMERICAL WEATHER PREDICTION +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2042.table b/definitions/bufr/tables/0/wmo/42/codetables/2042.table new file mode 100644 index 000000000..eb2445b83 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2042.table @@ -0,0 +1,4 @@ +0 0 VALUE ORIGINALLY REPORTED IN M/S +1 1 VALUE ORIGINALLY REPORTED IN KNOTS +2 2 NO SEA CURRENT DATA AVAILABLE +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2044.table b/definitions/bufr/tables/0/wmo/42/codetables/2044.table new file mode 100644 index 000000000..0e10ed8e1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2044.table @@ -0,0 +1,6 @@ +0 0 RESERVED FOR FUTURE USE +1 1 LONGUET-HIGGINS (1964) +2 2 LONGUET-HIGGINS (F3 METHOD) +3 3 MAXIMUM LIKELIHOOD METHOD +4 4 MAXIMUM ENTROPY METHOD +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2045.table b/definitions/bufr/tables/0/wmo/42/codetables/2045.table new file mode 100644 index 000000000..374e4f27e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2045.table @@ -0,0 +1,5 @@ +0 0 SEA STATION +1 1 AUTOMATIC DATA BUOY +2 2 AIRCRAFT +3 3 SATELLITE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2046.table b/definitions/bufr/tables/0/wmo/42/codetables/2046.table new file mode 100644 index 000000000..57fb9d6be --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2046.table @@ -0,0 +1,4 @@ +0 0 RESERVED FOR FUTURE USE +1 1 HEAVE SENSOR +2 2 SLOPE SENSOR +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2047.table b/definitions/bufr/tables/0/wmo/42/codetables/2047.table new file mode 100644 index 000000000..821393179 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2047.table @@ -0,0 +1,9 @@ +0 0 RESERVED +1 1 DART II (PMEL) +2 2 DART ETD +3 3 SAIC TSUNAMI BUOY (STB) +4 4 GFZ - POTSDAM +5 5 INCOIS (INDIA) +6 6 INABUOY (INDONESIA) +7 7 ENVIRTECH +127 127 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2048.table b/definitions/bufr/tables/0/wmo/42/codetables/2048.table new file mode 100644 index 000000000..e4325f83b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2048.table @@ -0,0 +1,16 @@ +0 0 HIRS +1 1 MSU +2 2 SSU +3 3 AMSU-A +4 4 AMSU-B +5 5 AVHRR +6 6 SSMI +7 7 NSCAT +8 8 SEAWINDS +9 9 POSEIDON ALTIMETER +10 10 JMR (JASON MICROWAVE RADIOMETER) +11 11 MHS +12 12 ASCAT +13 13 OSCAT2 +14 14 RESERVED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2049.table b/definitions/bufr/tables/0/wmo/42/codetables/2049.table new file mode 100644 index 000000000..ade5cac86 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2049.table @@ -0,0 +1,4 @@ +1 1 PROCESSING TECHNIQUE NOT DEFINED +2 2 SIMULTANEOUS PHYSICAL RETRIEVAL +3 3 CLEAR SOUNDING +4 4 CLOUDY SOUNDING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2050.table b/definitions/bufr/tables/0/wmo/42/codetables/2050.table new file mode 100644 index 000000000..fbcce617d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2050.table @@ -0,0 +1,19 @@ +1 1 1 +2 2 2 +3 3 3 +4 4 4 +5 5 5 +6 6 6 +7 7 7 +8 8 8 +9 9 9 +10 10 10 +11 11 11 +12 12 12 +13 13 13 +14 14 14 +15 15 15 +16 16 16 +17 17 17 +18 18 18 +19 19 19 diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2051.table b/definitions/bufr/tables/0/wmo/42/codetables/2051.table new file mode 100644 index 000000000..3524ae72d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2051.table @@ -0,0 +1,5 @@ +0 0 RESERVED +1 1 MAXIMUM/MINIMUM THERMOMETERS +2 2 AUTOMATED INSTRUMENTS +3 3 THERMOGRAPH +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2052.table b/definitions/bufr/tables/0/wmo/42/codetables/2052.table new file mode 100644 index 000000000..8b6262caa --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2052.table @@ -0,0 +1,5 @@ +1 1 1 +2 2 2 +3 3 3 +4 4 4 +5 5 5 diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2053.table b/definitions/bufr/tables/0/wmo/42/codetables/2053.table new file mode 100644 index 000000000..03e5e295e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2053.table @@ -0,0 +1,5 @@ +0 0 OBSERVED BRIGHTNESS TEMPERATURE +1 1 BRIGHTNESS TEMPERATURE WITH BIAS CORRECTION APPLIED +2 2 BRIGHTNESS TEMPERATURE CALCULATED FROM FIRST GUESS +3 3 BRIGHTNESS TEMPERATURE CALCULATED FROM SOUNDING +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2054.table b/definitions/bufr/tables/0/wmo/42/codetables/2054.table new file mode 100644 index 000000000..0995688ba --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2054.table @@ -0,0 +1,6 @@ +0 0 PARAMETER DERIVED USING OBSERVED SOUNDER BRIGHTNESS TEMPERATURES +1 1 PARAMETER DERIVED USING OBSERVED IMAGER BRIGHTNESS TEMPERATURES +2 2 PARAMETER DERIVED USING FIRST GUESS INFORMATION +3 3 PARAMETER DERIVED USING NMC ANALYSIS INFORMATION +4 4 PARAMETER DERIVED USING RADIOSONDE INFORMATION +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2055.table b/definitions/bufr/tables/0/wmo/42/codetables/2055.table new file mode 100644 index 000000000..ce06f0089 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2055.table @@ -0,0 +1,10 @@ +0 0 STATISTICS GENERATED COMPARING RETRIEVAL VERSUS RADIOSONDE +1 1 STATISTICS GENERATED COMPARING RETRIEVAL VERSUS FIRST GUESS +2 2 STATISTICS GENERATED COMPARING RADIOSONDE VERSUS FIRST GUESS +3 3 STATISTICS GENERATED COMPARING OBSERVED VERSUS RETRIEVAL +4 4 STATISTICS GENERATED COMPARING OBSERVED VERSUS FIRST GUESS +5 5 STATISTICS GENERATED COMPARING RADIOSONDE VERSUS IMAGER +6 6 STATISTICS GENERATED COMPARING RADIOSONDE VERSUS SOUNDER +7 7 STATISTICS GENERATED FOR RADIOSONDE +8 8 STATISTICS GENERATED FOR FIRST GUESS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2056.table b/definitions/bufr/tables/0/wmo/42/codetables/2056.table new file mode 100644 index 000000000..86eb98302 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2056.table @@ -0,0 +1,6 @@ +0 0 SUMS OF DIFFERENCES +1 1 SUMS OF SQUARED DIFFERENCES +2 2 SAMPLE SIZE +3 3 MINIMUM DIFFERENCE +4 4 MAXIMUM DIFFERENCE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2057.table b/definitions/bufr/tables/0/wmo/42/codetables/2057.table new file mode 100644 index 000000000..681e6bd08 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2057.table @@ -0,0 +1,7 @@ +0 0 NESTED GRID MODEL (NGM) +1 1 AVIATION MODEL (AVN) +2 2 MEDIUM RANGE FORECAST (MRF) MODEL +3 3 GLOBAL DATA ASSIMILATION SYSTEM (GDAS) FORECAST MODEL +4 4 PRIOR SOUNDINGS (WITHIN 3 HOURS OF CURRENT TIME) +5 5 CLIMATOLOGY +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2058.table b/definitions/bufr/tables/0/wmo/42/codetables/2058.table new file mode 100644 index 000000000..6c45eda11 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2058.table @@ -0,0 +1,5 @@ +0 0 12 HOUR AND 18 HOUR +1 1 18 HOUR AND 24 HOUR +2 2 6 HOUR AND 12 HOUR +3 3 GREATER THAN 24 HOURS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2059.table b/definitions/bufr/tables/0/wmo/42/codetables/2059.table new file mode 100644 index 000000000..8f089d3c4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2059.table @@ -0,0 +1,5 @@ +0 0 NCEP NESTED GRID MODEL (NGM) ANALYSIS +1 1 NCEP AVIATION MODEL (AVN) ANALYSIS +2 2 NCEP MEDIUM RANGE FORECAST (MRF) MODEL ANALYSIS +3 3 NCEP GLOBAL DATA ASSIMILATION SYSTEM (GDAS) FORECAST MODEL ANALYSIS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2060.table b/definitions/bufr/tables/0/wmo/42/codetables/2060.table new file mode 100644 index 000000000..6f846987b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2060.table @@ -0,0 +1,7 @@ +0 0 CURRENT SURFACE HOURLY REPORTS +1 1 CURRENT SHIP REPORTS +2 2 CURRENT BUOY REPORTS +3 3 ONE HOUR OLD SURFACE HOURLY REPORTS +4 4 ONE HOUR OLD SHIP REPORTS +5 5 ONE HOUR OLD BUOY REPORTS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2061.table b/definitions/bufr/tables/0/wmo/42/codetables/2061.table new file mode 100644 index 000000000..592d51eb4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2061.table @@ -0,0 +1,3 @@ +0 0 INERTIAL NAVIGATION SYSTEM +1 1 OMEGA +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2062.table b/definitions/bufr/tables/0/wmo/42/codetables/2062.table new file mode 100644 index 000000000..2d0f4e202 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2062.table @@ -0,0 +1,7 @@ +0 0 ASDAR +1 1 ASDAR (ACARS ALSO AVAILABLE BUT NOT OPERATIVE) +2 2 ASDAR (ACARS ALSO AVAILABLE AND OPERATIVE) +3 3 ACARS +4 4 ACARS (ASDAR ALSO AVAILABLE BUT NOT OPERATIVE) +5 5 ACARS (ASDAR ALSO AVAILABLE AND OPERATIVE) +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2064.table b/definitions/bufr/tables/0/wmo/42/codetables/2064.table new file mode 100644 index 000000000..741430292 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2064.table @@ -0,0 +1,4 @@ +0 0 GOOD +1 1 BAD +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2066.table b/definitions/bufr/tables/0/wmo/42/codetables/2066.table new file mode 100644 index 000000000..a3865dc68 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2066.table @@ -0,0 +1,9 @@ +0 0 INTERMET IMS 2000 +1 1 INTERMET IMS 1500C +2 2 SHANGHAI GTC1 +3 3 NANJING GTC2 +4 4 NANJING GFE(L)1 +5 5 MARL-A RADAR +6 6 VEKTOR-M RADAR +62 62 OTHER +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2070.table b/definitions/bufr/tables/0/wmo/42/codetables/2070.table new file mode 100644 index 000000000..5a098ea26 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2070.table @@ -0,0 +1,13 @@ +0 0 ACTUAL LOCATION IN SECONDS +1 1 ACTUAL LOCATION IN MINUTES +2 2 ACTUAL LOCATION IN DEGREES +3 3 ACTUAL LOCATION IN DECIDEGREES +4 4 ACTUAL LOCATION IN CENTIDEGREES +5 5 REFERENCED TO CHECKPOINT IN SECONDS +6 6 REFERENCED TO CHECKPOINT IN MINUTES +7 7 REFERENCED TO CHECKPOINT IN DEGREES +8 8 REFERENCED TO CHECKPOINT IN DECIDEGREES +9 9 REFERENCED TO CHECKPOINT IN CENTIDEGREES +10 10 ACTUAL LOCATION IN TENTHS OF A MINUTE +11 11 REFERENCED TO CHECKPOINT IN TENTHS OF A MINUTE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2080.table b/definitions/bufr/tables/0/wmo/42/codetables/2080.table new file mode 100644 index 000000000..c68a39dd6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2080.table @@ -0,0 +1,7 @@ +0 0 KAYSAM +1 1 TOTEX +2 2 KKS +3 3 GUANGZHOU SHUANGYI (CHINA) +4 4 CHEMCHINA ZHUZHOU (CHINA) +62 62 OTHER +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2081.table b/definitions/bufr/tables/0/wmo/42/codetables/2081.table new file mode 100644 index 000000000..dfe9551a9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2081.table @@ -0,0 +1,11 @@ +0 0 GP26 +1 1 GP28 +2 2 GP30 +3 3 HM26 +4 4 HM28 +5 5 HM30 +6 6 SV16 +7 7 TOTEX TA TYPE BALLOONS +8 8 TOTEX TX TYPE BALLOONS +30 30 OTHER +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2083.table b/definitions/bufr/tables/0/wmo/42/codetables/2083.table new file mode 100644 index 000000000..611c5bf64 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2083.table @@ -0,0 +1,7 @@ +0 0 HIGH BAY +1 1 LOW BAY +2 2 BALLOON-INFLATED LAUNCH SYSTEM (BILS) +3 3 ROOF-TOP BILS +4 4 AUTOMATED UNMANNED SOUNDING SYSTEM +14 14 OTHER +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2084.table b/definitions/bufr/tables/0/wmo/42/codetables/2084.table new file mode 100644 index 000000000..be6430ae6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2084.table @@ -0,0 +1,5 @@ +0 0 HYDROGEN +1 1 HELIUM +2 2 NATURAL GAS +14 14 OTHER +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2092.table b/definitions/bufr/tables/0/wmo/42/codetables/2092.table new file mode 100644 index 000000000..b171b55c8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2092.table @@ -0,0 +1,4 @@ +0 0 UV CHANNEL BASED RETRIEVAL +1 1 VISIBLE CHANNEL BASED RETRIEVAL +2 2 COMBINED UV BASED RETRIEVAL AND VISIBLE BASED RETRIEVAL +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2095.table b/definitions/bufr/tables/0/wmo/42/codetables/2095.table new file mode 100644 index 000000000..580fe930c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2095.table @@ -0,0 +1,7 @@ +0 0 CAPACITANCE ANEROID +1 1 DERIVED FROM GPS +2 2 RESISTIVE STRAIN GAUGE +3 3 SILICON CAPACITOR +4 4 DERIVED FROM RADAR HEIGHT +30 30 OTHER +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2096.table b/definitions/bufr/tables/0/wmo/42/codetables/2096.table new file mode 100644 index 000000000..9f1b1027c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2096.table @@ -0,0 +1,9 @@ +0 0 ROD THERMISTOR +1 1 BEAD THERMISTOR +2 2 CAPACITANCE BEAD +3 3 CAPACITANCE WIRE +4 4 RESISTIVE SENSOR +5 5 CHIP THERMISTOR +6 6 MERCURY +7 7 ALCOHOL/GLYCOL +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2097.table b/definitions/bufr/tables/0/wmo/42/codetables/2097.table new file mode 100644 index 000000000..309ef642a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2097.table @@ -0,0 +1,26 @@ +0 0 VIZ MARK II CARBON HYGRISTOR +1 1 VIZ B2 HYGRISTOR +2 2 VAISALA A-HUMICAP +3 3 VAISALA H-HUMICAP +4 4 CAPACITANCE SENSOR +5 5 VAISALA RS90 +6 6 SIPPICAN MARK IIA CARBON HYGRISTOR +7 7 TWIN ALTERNATIVELY HEATED HUMICAP CAPACITANCE SENSOR +8 8 HUMICAP CAPACITANCE SENSOR WITH ACTIVE DE-ICING METHOD +9 9 CARBON HYGRISTOR +10 10 PSYCHROMETER +11 11 CAPACITIVE (POLYMER) +12 12 CAPACITIVE (CERAMIC, INCLUDING METAL OXIDE) +13 13 RESISTIVE (GENERIC) +14 14 RESISTIVE (SALT POLYMER) +15 15 RESISTIVE (CONDUCTIVE POLYMER) +16 16 THERMAL CONDUCTIVITY +17 17 GRAVIMETRIC +18 18 PAPER-METAL COIL +19 19 ORDINARY HUMAN HAIR +20 20 ROLLED HAIR (TORSION) +21 21 GOLDBEATER'S SKIN +22 22 CHILLED MIRROR HYGROMETER +23 23 DEW CELL +24 24 OPTICAL ABSORPTION SENSOR +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2099.table b/definitions/bufr/tables/0/wmo/42/codetables/2099.table new file mode 100644 index 000000000..74cb817c9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2099.table @@ -0,0 +1,5 @@ +0 0 HH POLARIZATION +1 1 VV POLARIZATION +2 2 HV POLARIZATION REAL VALUED COMPONENT +3 3 HV POLARIZATION IMAGINARY VALUED COMPONENT +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2101.table b/definitions/bufr/tables/0/wmo/42/codetables/2101.table new file mode 100644 index 000000000..efdb3ec56 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2101.table @@ -0,0 +1,10 @@ +0 0 CENTRE FRONT-FED PARABOLOID +1 1 OFFSET FRONT-FED PARABOLOID +2 2 CENTRE CASSEGRAIN PARABOLOID +3 3 OFFSET CASSEGRAIN PARABOLOID +4 4 PLANAR ARRAY +5 5 COAXIAL-COLLINEAR ARRAY +6 6 YAGI ELEMENTS ARRAY +7 7 MICROSTRIP +14 14 OTHER +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21026.table b/definitions/bufr/tables/0/wmo/42/codetables/21026.table new file mode 100644 index 000000000..819a6ebfd --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21026.table @@ -0,0 +1,4 @@ +0 0 NOMINAL +1 1 CLOSE TO NOMINAL +2 2 FAR FROM NOMINAL +7 7 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2103.table b/definitions/bufr/tables/0/wmo/42/codetables/2103.table new file mode 100644 index 000000000..417d2c9a4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2103.table @@ -0,0 +1 @@ +1 1 RADAR ANTENNA IS PROTECTED BY A RADOME diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2104.table b/definitions/bufr/tables/0/wmo/42/codetables/2104.table new file mode 100644 index 000000000..e39a15365 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2104.table @@ -0,0 +1,9 @@ +0 0 HORIZONTAL POLARIZATION +1 1 VERTICAL POLARIZATION +2 2 RIGHT CIRCULAR POLARIZATION +3 3 LEFT CIRCULAR POLARIZATION +4 4 HORIZONTAL AND VERTICAL POLARIZATION +5 5 RIGHT AND LEFT CIRCULAR POLARIZATION +6 6 QUASI-HORIZONTAL POLARIZATION +7 7 QUASI-VERTICAL POLARIZATION +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21066.table b/definitions/bufr/tables/0/wmo/42/codetables/21066.table new file mode 100644 index 000000000..9bcafea2a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21066.table @@ -0,0 +1,11 @@ +1 1 PROCESSING EQUIPMENT NOT WORKING +2 2 EQUIPMENT FAILED +3 3 PRF CODE CHANGED DURING IMAGE GENERATION +4 4 SAMPLING WINDOW CHANGED DURING IMAGE GENERATION +5 5 GAIN CHANGED DURING IMAGE GENERATION +6 6 CHIRP REPLICA EXCEEDS SPECIFIED VALUE +7 7 INPUT DATA MEAN AND STANDARD DEVIATION OF IN-PHASE AND QUADRATURE OUT OF RANGE +8 8 DOPPLER CENTROID CONFIDENCE > MMCC VALUE +9 9 DOPPLER CENTROID ABSOLUTE VALUE > PRF/2 +10 10 DOPPLER AMBIGUITY CONFIDENCE < MMCC VALUE +11 11 OUTPUT DATA MEAN AND STANDARD DEVIATION =< MMCC VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21067.table b/definitions/bufr/tables/0/wmo/42/codetables/21067.table new file mode 100644 index 000000000..a0ed399e4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21067.table @@ -0,0 +1,12 @@ +1 1 NO FOREBEAM CALCULATION +2 2 NO MIDBEAM CALCULATION +3 3 NO AFTBEAM CALCULATION +4 4 FOREBEAM ARCING DETECTED +5 5 MIDBEAM ARCING DETECTED +6 6 AFTBEAM ARCING DETECTED +7 7 ANY BEAM NOISE CONTENT ABOVE OR EQUAL TO THRESHOLD +8 8 LAND (ANY LAND IN CELL FOOTPRINT) +9 9 AUTONOMOUS AMBIGUITY REMOVAL NOT USED +10 10 METEOROLOGICAL BACKGROUND NOT USED +11 11 MINIMUM RESIDUAL EXCEEDED THRESHOLD +12 12 FRAME CHECKSUM ERROR DETECTED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21068.table b/definitions/bufr/tables/0/wmo/42/codetables/21068.table new file mode 100644 index 000000000..102171f44 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21068.table @@ -0,0 +1,7 @@ +1 1 STANDARD DEVIATION OF WIND SPEED OUTSIDE MMCC LIMIT +2 2 STANDARD DEVIATION OF SIGNIFICANT WAVE HEIGHT OUTSIDE MMCC LIMIT +3 3 STANDARD DEVIATION OF ALTITUDE OUTSIDE MMCC LIMIT +4 4 MEAN PEAKINESS OUTSIDE MMCC LIMIT +5 5 FRAME CHECKSUM ERROR DETECTED +6 6 HEIGHT-TIME LOOP TIME CONSTANT CORRECTION NOT PERFORMED +7 7 NOT ENOUGH MEASUREMENTS (N < 10) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21069.table b/definitions/bufr/tables/0/wmo/42/codetables/21069.table new file mode 100644 index 000000000..b258fae22 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21069.table @@ -0,0 +1,9 @@ +1 1 12.0 MICRON CHANNEL PRESENT IN SOURCE DATA +2 2 11.0 MICRON CHANNEL PRESENT IN SOURCE DATA +3 3 3.7 MICRON CHANNEL PRESENT IN SOURCE DATA +4 4 1.6 MICRON CHANNEL PRESENT IN SOURCE DATA +5 5 CLOUD IDENTIFICATION USED 1.6 MICRON HISTOGRAM REFLECTANCE CLOUD TEST +6 6 1.6 MICRON HISTOGRAM REFLECTANCE CLOUD TEST USED DYNAMIC THRESHOLD +7 7 SUN GLINT DETECTED BY 1.6 MICRON REFLECTANCE CLOUD TEST +8 8 3.7 MICRON CHANNEL USED IN SEA-SURFACE TEMPERATURE RETRIEVAL +9 9 SEA-SURFACE TEMPERATURE DERIVATION USED DAYTIME DATA (NIGHT-TIME IF ZERO) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21070.table b/definitions/bufr/tables/0/wmo/42/codetables/21070.table new file mode 100644 index 000000000..669655f00 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21070.table @@ -0,0 +1,22 @@ +1 1 CELL 1: NADIR-ONLY VIEW SST USED 3.7 MICRON CHANNEL +2 2 CELL 2: NADIR-ONLY VIEW SST USED 3.7 MICRON CHANNEL +3 3 CELL 3: NADIR-ONLY VIEW SST USED 3.7 MICRON CHANNEL +4 4 CELL 4: NADIR-ONLY VIEW SST USED 3.7 MICRON CHANNEL +5 5 CELL 5: NADIR-ONLY VIEW SST USED 3.7 MICRON CHANNEL +6 6 CELL 6: NADIR-ONLY VIEW SST USED 3.7 MICRON CHANNEL +7 7 CELL 7: NADIR-ONLY VIEW SST USED 3.7 MICRON CHANNEL +8 8 CELL 8: NADIR-ONLY VIEW SST USED 3.7 MICRON CHANNEL +9 9 CELL 9: NADIR-ONLY VIEW SST USED 3.7 MICRON CHANNEL +10 10 CELL 1: DUAL VIEW SST USED 3.7 MICRON CHANNEL +11 11 CELL 2: DUAL VIEW SST USED 3.7 MICRON CHANNEL +12 12 CELL 3: DUAL VIEW SST USED 3.7 MICRON CHANNEL +13 13 CELL 4: DUAL VIEW SST USED 3.7 MICRON CHANNEL +14 14 CELL 5: DUAL VIEW SST USED 3.7 MICRON CHANNEL +15 15 CELL 6: DUAL VIEW SST USED 3.7 MICRON CHANNEL +16 16 CELL 7: DUAL VIEW SST USED 3.7 MICRON CHANNEL +17 17 CELL 8: DUAL VIEW SST USED 3.7 MICRON CHANNEL +18 18 CELL 9: DUAL VIEW SST USED 3.7 MICRON CHANNEL +19 19 NADIR VIEW CONTAINS DAY-TIME DATA (NIGHT IF ZERO) +20 20 FORWARD VIEW CONTAINS DAY-TIME DATA (NIGHT IF ZERO) +21 21 RECORD CONTAINS CONTRIBUTIONS FROM INSTRUMENT SCANS ACQUIRED WHEN ERS PLATFORM NOT IN YAW-STEERING MODE +22 22 RECORD CONTAINS CONTRIBUTIONS FROM INSTRUMENT SCANS FOR WHICH PRODUCT CONFIDENCE DATA SHOW QUALITY IS POOR OR UNKNOWN diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21072.table b/definitions/bufr/tables/0/wmo/42/codetables/21072.table new file mode 100644 index 000000000..99e4b1c29 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21072.table @@ -0,0 +1,3 @@ +1 1 HEIGHT ERROR CORRECTION APPLIED INSTEAD OF OPEN LOOP CALIBRATION +2 2 MICROWAVE SOUNDER USED FOR TROPOSPHERE CORRECTION +3 3 AGC OUTPUT CORRECTION APPLIED INSTEAD OF OPEN LOOP CALIBRATION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21073.table b/definitions/bufr/tables/0/wmo/42/codetables/21073.table new file mode 100644 index 000000000..9538fa553 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21073.table @@ -0,0 +1,8 @@ +1 1 BLANK DATA RECORD +2 2 TEST +3 3 CALIBRATION (CLOSED LOOP) +4 4 BITE +5 5 ACQUISITION ON ICE +6 6 ACQUISITION ON OCEAN +7 7 TRACKING ON ICE +8 8 TRACKING ON OCEAN diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21076.table b/definitions/bufr/tables/0/wmo/42/codetables/21076.table new file mode 100644 index 000000000..bc52ac558 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21076.table @@ -0,0 +1,4 @@ +0 0 LINEAR +1 1 LOGARITHMIC (BASE E) +2 2 LOGARITHMIC (BASE 10) +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21109.table b/definitions/bufr/tables/0/wmo/42/codetables/21109.table new file mode 100644 index 000000000..deb577aa0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21109.table @@ -0,0 +1,7 @@ +1 1 NOT ENOUGH GOOD SIGMA-0 AVAILABLE FOR WIND RETRIEVAL +2 2 POOR AZIMUTH DIVERSITY AMONG SIGMA-0 FOR WIND RETRIEVAL +8 8 SOME PORTION OF WIND VECTOR CELL IS OVER LAND +9 9 SOME PORTION OF WIND VECTOR CELL IS OVER ICE +10 10 WIND RETRIEVAL NOT PERFORMED FOR WIND VECTOR CELL +11 11 REPORTED WIND SPEED IS GREATER THAN 30 M S-1 +12 12 REPORTED WIND SPEED IS LESS THAN OR EQUAL TO 3 M S-1 diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21115.table b/definitions/bufr/tables/0/wmo/42/codetables/21115.table new file mode 100644 index 000000000..9e90133cd --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21115.table @@ -0,0 +1,10 @@ +1 1 SIGMA-0 MEASUREMENT IS NOT USABLE +2 2 SIGNAL TO NOISE RATIO IS LOW +3 3 SIGMA-0 IS NEGATIVE +4 4 SIGMA-0 IS OUTSIDE OF ACCEPTABLE RANGE +5 5 SCATTEROMETER PULSE QUALITY IS NOT ACCEPTABLE +6 6 SIGMA-0 CELL LOCATION ALGORITHM DOES NOT CONVERGE +7 7 FREQUENCY SHIFT LIES BEYOND THE RANGE OF THE X FACTOR TABLE +8 8 SPACECRAFT TEMPERATURE IS BEYOND CALIBRATION COEFFICIENT RANGE +9 9 NO APPLICABLE ALTITUDE RECORDS WERE FOUND FOR THIS SIGMA-0 +10 10 INTERPOLATED EPHEMERIS DATA ARE NOT ACCEPTABLE FOR THIS SIGMA-0 diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21116.table b/definitions/bufr/tables/0/wmo/42/codetables/21116.table new file mode 100644 index 000000000..08d5412e4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21116.table @@ -0,0 +1,16 @@ +1 1 CALIBRATION/MEASUREMENT PULSE FLAG (1) +2 2 CALIBRATION/MEASUREMENT PULSE FLAG (2) +3 3 OUTER ANTENNA BEAM +4 4 SIGMA-0 CELL IS AFT OF SPACECRAFT +5 5 CURRENT MODE (1) +6 6 CURRENT MODE (2) +7 7 EFFECTIVE GATE WIDTH - SLICE RESOLUTION (1) +8 8 EFFECTIVE GATE WIDTH - SLICE RESOLUTION (2) +9 9 EFFECTIVE GATE WIDTH - SLICE RESOLUTION (3) +10 10 LOW-RESOLUTION MODE - WHOLE PULSE DATA +11 11 SCATTEROMETER ELECTRONIC SUBSYSTEM B +12 12 ALTERNATE SPIN RATE - 19.8 RPM +13 13 RECEIVER PROTECTION ON +14 14 SLICES PER COMPOSITE FLAG (1) +15 15 SLICES PER COMPOSITE FLAG (2) +16 16 SLICES PER COMPOSITE FLAG (3) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21119.table b/definitions/bufr/tables/0/wmo/42/codetables/21119.table new file mode 100644 index 000000000..e17e3c04a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21119.table @@ -0,0 +1,14 @@ +0 0 RESERVED +1 1 SASS +2 2 SASS2 +3 3 NSCAT0 +4 4 NSCAT1 +5 5 NSCAT2 +6 6 QSCAT0 +7 7 QSCAT1 +31 31 CMOD1 +32 32 CMOD2 +33 33 CMOD3 +34 34 CMOD4 +35 35 CMOD5 +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21144.table b/definitions/bufr/tables/0/wmo/42/codetables/21144.table new file mode 100644 index 000000000..1f082e6d9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21144.table @@ -0,0 +1 @@ +1 1 RAIN diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21148.table b/definitions/bufr/tables/0/wmo/42/codetables/21148.table new file mode 100644 index 000000000..11413ed72 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21148.table @@ -0,0 +1,2 @@ +1 1 NON SHORT SCALE VARIATION +2 2 SHORT SCALE VARIATION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2115.table b/definitions/bufr/tables/0/wmo/42/codetables/2115.table new file mode 100644 index 000000000..c7e866c7a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2115.table @@ -0,0 +1,7 @@ +0 0 PDB +1 1 RSOIS +2 2 ASOS +3 3 PSYCHROMETER +4 4 F420 +30 30 OTHER +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21150.table b/definitions/bufr/tables/0/wmo/42/codetables/21150.table new file mode 100644 index 000000000..851004635 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21150.table @@ -0,0 +1,4 @@ +0 0 DATA FROM SINGLE GROUND STATION (NO CO-LOCATION) +1 1 DATA FROM MULTIPLE GROUND STATION (CO-LOCATED DATA) +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21155.table b/definitions/bufr/tables/0/wmo/42/codetables/21155.table new file mode 100644 index 000000000..a7837cfa7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21155.table @@ -0,0 +1,16 @@ +1 1 NOT ENOUGH GOOD SIGMA-0 AVAILABLE FOR WIND RETRIEVAL +2 2 POOR AZIMUTH DIVERSITY AMONG SIGMA-0 FOR WIND RETRIEVAL +3 3 ANY BEAM NOISE CONTENT ABOVE THRESHOLD +4 4 PRODUCT MONITORING NOT USED +5 5 PRODUCT MONITORING FLAG +6 6 KNMI QUALITY CONTROL FAILS +7 7 VARIATIONAL QUALITY CONTROL FAILS +8 8 SOME PORTION OF WIND VECTOR CELL IS OVER LAND +9 9 SOME PORTION OF WIND VECTOR CELL IS OVER ICE +10 10 WIND RETRIEVAL NOT PERFORMED FOR WIND VECTOR CELL +11 11 REPORTED WIND SPEED IS GREATER THAN 30 M/S +12 12 REPORTED WIND SPEED IS LESS THAN OR EQUAL TO 3 M/S +13 13 RAIN FLAG FOR THE WIND VECTOR CELL IS NOT USABLE +14 14 RAIN FLAG ALGORITHM DETECTS RAIN +15 15 NO METEOROLOGICAL BACKGROUND USED +16 16 DATA ARE REDUNDANT diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21158.table b/definitions/bufr/tables/0/wmo/42/codetables/21158.table new file mode 100644 index 000000000..dd53c5159 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21158.table @@ -0,0 +1,4 @@ +0 0 ACCEPTABLE +1 1 NOT ACCEPTABLE +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21159.table b/definitions/bufr/tables/0/wmo/42/codetables/21159.table new file mode 100644 index 000000000..1703f9b8e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21159.table @@ -0,0 +1,4 @@ +0 0 GOOD +1 1 USABLE +2 2 BAD +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/21169.table b/definitions/bufr/tables/0/wmo/42/codetables/21169.table new file mode 100644 index 000000000..9b93444ce --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/21169.table @@ -0,0 +1,4 @@ +0 0 NO ICE PRESENT +1 1 ICE PRESENT +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2119.table b/definitions/bufr/tables/0/wmo/42/codetables/2119.table new file mode 100644 index 000000000..0640af68b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2119.table @@ -0,0 +1,8 @@ +0 0 INTERMEDIATE FREQUENCY CALIBRATION MODE (IF CAL) +1 1 BUILT-IN TEST EQUIPMENT DIGITAL (BITE DGT) +2 2 BUILT-IN TEST EQUIPMENT RADIO FREQUENCY (BITE RF) +3 3 PRESET TRACKING (PSET TRK) +4 4 PRESET LOOP OUT +5 5 ACQUISITION +6 6 TRACKING +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2131.table b/definitions/bufr/tables/0/wmo/42/codetables/2131.table new file mode 100644 index 000000000..f4336ef79 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2131.table @@ -0,0 +1 @@ +1 1 STC OPERATIONAL diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2137.table b/definitions/bufr/tables/0/wmo/42/codetables/2137.table new file mode 100644 index 000000000..40d33fdd3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2137.table @@ -0,0 +1,4 @@ +1 1 3:2 +2 2 4:3 +3 3 5:4 +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2138.table b/definitions/bufr/tables/0/wmo/42/codetables/2138.table new file mode 100644 index 000000000..a574506ad --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2138.table @@ -0,0 +1,3 @@ +1 1 CLOCKWISE ROTATION +2 2 COUNTERCLOCKWISE ROTATION +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2139.table b/definitions/bufr/tables/0/wmo/42/codetables/2139.table new file mode 100644 index 000000000..f6cf80294 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2139.table @@ -0,0 +1,3 @@ +0 0 SIRAL NOMINAL +1 1 SIRAL REDUNDANT +2 2 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2143.table b/definitions/bufr/tables/0/wmo/42/codetables/2143.table new file mode 100644 index 000000000..975d068be --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2143.table @@ -0,0 +1,21 @@ +0 0 RESERVED +1 1 BREWER SPECTROPHOTOMETER +2 2 CAVER TEICHERT +3 3 DOBSON +4 4 DOBSON (JAPAN) +5 5 EHMET +6 6 FECKER TELESCOPE +7 7 HOELPER +8 8 JODMETER +9 9 FILTER OZONOMETER M-83 +10 10 MAST +11 11 OXFORD +12 12 PAETZOLD +13 13 REGENER +14 14 RESERVED FOR FUTURE USE +15 15 VASSY FILTER OZONOMETER +16 16 CARBON IODIDE +17 17 SURFACE OZONE BUBBLER +18 18 FILTER OZONOMETER M-124 +19 19 ECC SONDE +127 127 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2144.table b/definitions/bufr/tables/0/wmo/42/codetables/2144.table new file mode 100644 index 000000000..5b0f37b34 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2144.table @@ -0,0 +1,8 @@ +0 0 DIRECT SUN +1 1 DIRECT SUN, ATTENUATOR #1 +2 2 DIRECT SUN, ATTENUATOR #2 +3 3 FOCUSED MOON +4 4 FOCUSED SUN +5 5 FOCUSED SUN CORRECTED WITH ADJACENT SKY MEASUREMENTS +6 6 ZENITH SKY +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2145.table b/definitions/bufr/tables/0/wmo/42/codetables/2145.table new file mode 100644 index 000000000..1944e69fc --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2145.table @@ -0,0 +1,9 @@ +0 0 WAVELENGTHS AD ORDINARY SETTING +1 1 WAVELENGTHS BD ORDINARY SETTING +2 2 WAVELENGTHS CD ORDINARY SETTING +3 3 WAVELENGTHS CC' ORDINARY SETTING +4 4 WAVELENGTHS AD FOCUSED IMAGE +5 5 WAVELENGTHS BD FOCUSED IMAGE +6 6 WAVELENGTHS CD FOCUSED IMAGE +7 7 WAVELENGTHS CC' FOCUSED IMAGE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2146.table b/definitions/bufr/tables/0/wmo/42/codetables/2146.table new file mode 100644 index 000000000..871b35709 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2146.table @@ -0,0 +1,11 @@ +0 0 ON DIRECT SUN +1 1 ON DIRECT MOON +2 2 ON BLUE ZENITH SKY +3 3 ON ZENITH CLOUD (UNIFORM STRATIFIED LAYER OF SMALL OPACITY) +4 4 ON ZENITH CLOUD (UNIFORM OR MODERATELY VARIABLE LAYER OF MEDIUM OPACITY) +5 5 ON ZENITH CLOUD (UNIFORM OR MODERATELY VARIABLE LAYER OF LARGE OPACITY) +6 6 ON ZENITH CLOUD (HIGHLY VARIABLE OPACITY, WITH OR WITHOUT PRECIPITATION) +7 7 ON ZENITH CLOUD (FOG) +8 8 ON ZENITH HAZE +9 9 ON DIRECT SUN THROUGH THIN CLOUD, FOG OR HAZE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2147.table b/definitions/bufr/tables/0/wmo/42/codetables/2147.table new file mode 100644 index 000000000..5ef81f4a8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2147.table @@ -0,0 +1,11 @@ +0 0 RESERVED +1 1 DIRECT LEASED CIRCUIT +2 2 DIALLED UP CONNECTION +3 3 INTERNET ISP +4 4 DCP VIA SATELLITE (MTSAT, METEOSAT, ETC.) +5 5 VSAT +6 6 GAN, BGAN +7 7 THISS TERMINAL +8 8 IRIDIUM SATELLITES +9 9 MOBILE TELEPHONY +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2148.table b/definitions/bufr/tables/0/wmo/42/codetables/2148.table new file mode 100644 index 000000000..7d8ca51e3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2148.table @@ -0,0 +1,12 @@ +0 0 RESERVED +1 1 ARGOS +2 2 GPS +3 3 GOES DCP +4 4 METEOSAT DCP +5 5 ORBCOMM +6 6 INMARSAT +7 7 IRIDIUM +8 8 IRIDIUM AND GPS +9 9 ARGOS-3 +10 10 ARGOS-4 +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2149.table b/definitions/bufr/tables/0/wmo/42/codetables/2149.table new file mode 100644 index 000000000..04638d229 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2149.table @@ -0,0 +1,38 @@ +0 0 UNSPECIFIED DRIFTING BUOY +1 1 STANDARD LAGRANGIAN DRIFTER (GLOBAL DRIFTER PROGRAMME) +2 2 STANDARD FGGE TYPE DRIFTING BUOY (NON-LAGRANGIAN METEOROLOGICAL DRIFTING BUOY) +3 3 WIND MEASURING FGGE TYPE DRIFTING BUOY (NON-LAGRANGIAN METEOROLOGICAL DRIFTING BUOY) +4 4 ICE DRIFTER +5 5 SVPG STANDARD LAGRANGIAN DRIFTER WITH GPS +6 6 SVP-HR DRIFTER WITH HIGH-RESOLUTION TEMPERATURE OR THERMISTOR STRING +7 7 RESERVED +8 8 UNSPECIFIED SUBSURFACE FLOAT +9 9 SOFAR +10 10 ALACE +11 11 MARVOR +12 12 RAFOS +13 13 PROVOR +14 14 SOLO +15 15 APEX +16 16 UNSPECIFIED MOORED BUOY +17 17 NOMAD +18 18 3-METRE DISCUS +19 19 10-12-METRE DISCUS +20 20 ODAS 30 SERIES +21 21 ATLAS (E.G. TAO AREA) +22 22 TRITON BUOY +23 23 FLEX MOORING (E.G. TIP AREA) +24 24 OMNIDIRECTIONAL WAVERIDER +25 25 DIRECTIONAL WAVERIDER +26 26 SUBSURFACE ARGO FLOAT +27 27 PALACE +28 28 NEMO +29 29 NINJA +30 30 ICE BUOY/FLOAT (POPS OR ITP) +34 34 MOORING OCEANOGRAPHIC +35 35 MOORING METEOROLOGICAL +36 36 MOORING MULTIDISCIPLINARY (OCEANSITES) +37 37 MOORING TIDE GAUGE OR TSUNAMI BUOY +38 38 ICE BEACON +39 39 ICE MASS BALANCE BUOY +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2150.table b/definitions/bufr/tables/0/wmo/42/codetables/2150.table new file mode 100644 index 000000000..8193b575a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2150.table @@ -0,0 +1,55 @@ +0 0 RESERVED +1 1 HIRS 1 +2 2 HIRS 2 +3 3 HIRS 3 +4 4 HIRS 4 +5 5 HIRS 5 +6 6 HIRS 6 +7 7 HIRS 7 +8 8 HIRS 8 +9 9 HIRS 9 +10 10 HIRS 10 +11 11 HIRS 11 +12 12 HIRS 12 +13 13 HIRS 13 +14 14 HIRS 14 +15 15 HIRS 15 +16 16 HIRS 16 +17 17 HIRS 17 +18 18 HIRS 18 +19 19 HIRS 19 +20 20 HIRS 20 +21 21 MSU 1 +22 22 MSU 2 +23 23 MSU 3 +24 24 MSU 4 +25 25 SSU 1 +26 26 SSU 2 +27 27 SSU 3 +28 28 AMSU-A 1 +29 29 AMSU-A 2 +30 30 AMSU-A 3 +31 31 AMSU-A 4 +32 32 AMSU-A 5 +33 33 AMSU-A 6 +34 34 AMSU-A 7 +35 35 AMSU-A 8 +36 36 AMSU-A 9 +37 37 AMSU-A 10 +38 38 AMSU-A 11 +39 39 AMSU-A 12 +40 40 AMSU-A 13 +41 41 AMSU-A 14 +42 42 AMSU-A 15 +43 43 AMSU-B 1 / MHS 1 +44 44 AMSU-B 2 / MHS 2 +45 45 AMSU-B 3 / MHS 3 +46 46 AMSU-B 4 / MHS 4 +47 47 AMSU-B 5 / MHS 5 +48 48 AVHRR 1 +49 49 AVHRR 2 +50 50 AVHRR 3A +51 51 AVHRR 3B +52 52 AVHRR 4 +53 53 AVHRR 5 +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2151.table b/definitions/bufr/tables/0/wmo/42/codetables/2151.table new file mode 100644 index 000000000..45c80df10 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2151.table @@ -0,0 +1,11 @@ +0 0 HIRS +1 1 MSU +2 2 SSU +3 3 AMSU-A1-1 +4 4 AMSU-A1-2 +5 5 AMSU-A2 +6 6 AMSU-B +7 7 AVHRR +8 8 RESERVED +9 9 MHS +2047 2047 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2152.table b/definitions/bufr/tables/0/wmo/42/codetables/2152.table new file mode 100644 index 000000000..880c384cf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2152.table @@ -0,0 +1,13 @@ +1 1 HIGH-RESOLUTION INFRARED SOUNDER (HIRS) +2 2 MICROWAVE SOUNDING UNIT (MSU) +3 3 STRATOSPHERIC SOUNDING UNIT (SSU) +4 4 AMI WIND MODE +5 5 AMI WAVE MODE +6 6 AMI IMAGE MODE +7 7 RADAR ALTIMETER +8 8 ATSR +9 9 GEOSTATIONARY IMAGER +10 10 GEOSTATIONARY SOUNDER +11 11 GEOSTATIONARY EARTH RADIATION (GERB) +12 12 MULTI-CHANNEL SCANNING RADIOMETER +13 13 POLAR-ORBITING IMAGER diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2158.table b/definitions/bufr/tables/0/wmo/42/codetables/2158.table new file mode 100644 index 000000000..97c4449c5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2158.table @@ -0,0 +1,8 @@ +1 1 MISMATCH IN RED VEC HPA +2 2 MISMATCH IN RED VEC RFSS +3 3 PTR CALIBRATION BAND 320 MHZ (KU) +4 4 PTR CALIBRATION BAND 80 MHZ (KU) +5 5 PTR CALIBRATION BAND 20 MHZ (KU) +6 6 PTR CALIBRATION BAND 160 MHZ (S) +7 7 KU FLIGHT CALIBRATION PARAMETERS AVAILABLE +8 8 S FLIGHT CALIBRATION PARAMETERS AVAILABLE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2159.table b/definitions/bufr/tables/0/wmo/42/codetables/2159.table new file mode 100644 index 000000000..63cb87c78 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2159.table @@ -0,0 +1,7 @@ +1 1 TEMPERATURE INCONSISTENCY +2 2 DATA IS MISSING +3 3 REDUNDANCY CHANNEL +4 4 POWER BUS PROTECTION +5 5 OVERVOLTAGE/OVERLOAD PROTECTION +6 6 RESERVED +7 7 RESERVED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2160.table b/definitions/bufr/tables/0/wmo/42/codetables/2160.table new file mode 100644 index 000000000..fd7f37274 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2160.table @@ -0,0 +1,11 @@ +0 0 RESERVED +1 1 10 TO LESS THAN 20 MM +2 2 RESERVED +3 3 20 TO LESS THAN 40 MM +4 4 RESERVED +5 5 40 TO LESS THAN 60 MM +6 6 RESERVED +7 7 60 TO LESS THAN 90 MM +8 8 90 TO LESS THAN 110 MM +9 9 110 MM AND GREATER +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2161.table b/definitions/bufr/tables/0/wmo/42/codetables/2161.table new file mode 100644 index 000000000..55b88f4de --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2161.table @@ -0,0 +1,5 @@ +11 11 WIND HEIGHT CALCULATED FROM MEDIAN CLOUD-TOP PRESSURE OF TARGET +12 12 TARGET IS CLOUDY +13 13 LOW-LEVEL INVERSION +14 14 CROSS CORRELATION CONTRIBUTION (CCC) METHOD +15 15 NESTED TRACKING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2162.table b/definitions/bufr/tables/0/wmo/42/codetables/2162.table new file mode 100644 index 000000000..510f09aa3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2162.table @@ -0,0 +1,19 @@ +0 0 AUTO EDITOR +1 1 IRW HEIGHT ASSIGNMENT +2 2 WV HEIGHT ASSIGNMENT +3 3 H2O INTERCEPT HEIGHT ASSIGNMENT +4 4 CO2 SLICING HEIGHT ASSIGNMENT +5 5 LOW PIXEL MAX GRADIENT +6 6 HIGHER PIXEL MAX GRADIENT +7 7 PRIMARY HEIGHT ASSIGNMENT +8 8 LAYER THICKNESS ASSIGNMENT +9 9 CUMULATIVE CONTRIBUTION FUNCTION - 10 PER CENT HEIGHT +10 10 CUMULATIVE CONTRIBUTION FUNCTION - 50 PER CENT HEIGHT +11 11 CUMULATIVE CONTRIBUTION FUNCTION - 90 PER CENT HEIGHT +12 12 CUMULATIVE CONTRIBUTION FUNCTION - HEIGHT OF MAXIMUM GRADIENT +13 13 IR/TWO WV CHANNEL RATIONING METHOD +14 14 COMPOSITE HEIGHT ASSIGNMENT +15 15 OPTIMAL ESTIMATION +16 16 INVERSION CORRECTION +17 17 GEOMETRIC HEIGHT ASSIGNMENT +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2163.table b/definitions/bufr/tables/0/wmo/42/codetables/2163.table new file mode 100644 index 000000000..8cac63196 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2163.table @@ -0,0 +1,16 @@ +0 0 AUTO EDITOR +1 1 IRW HEIGHT ASSIGNMENT +2 2 WV HEIGHT ASSIGNMENT +3 3 H2O INTERCEPT HEIGHT ASSIGNMENT +4 4 CO2 SLICING HEIGHT ASSIGNMENT +5 5 LOW PIXEL MAX GRADIENT +6 6 HIGHER PIXEL MAX GRADIENT +7 7 PRIMARY HEIGHT ASSIGNMENT +8 8 LAYER THICKNESS ASSIGNMENT +9 9 CUMULATIVE CONTRIBUTION FUNCTION - 10 PER CENT HEIGHT +10 10 CUMULATIVE CONTRIBUTION FUNCTION - 50 PER CENT HEIGHT +11 11 CUMULATIVE CONTRIBUTION FUNCTION - 90 PER CENT HEIGHT +12 12 CUMULATIVE CONTRIBUTION FUNCTION - HEIGHT OF MAXIMUM GRADIENT +13 13 IR / TWO WV CHANNEL RATIOING METHOD +14 14 COMPOSITE HEIGHT ASSIGNMENT +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2164.table b/definitions/bufr/tables/0/wmo/42/codetables/2164.table new file mode 100644 index 000000000..4bf9aa961 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2164.table @@ -0,0 +1,5 @@ +0 0 LP - NORMS LEAST SQUARE MINIMUM +1 1 EN - EUCLIDEAN NORM WITH RADIANCE CORRELATION +2 2 CC - CROSS CORRELATION +3 3 STEREO MATCHING +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2165.table b/definitions/bufr/tables/0/wmo/42/codetables/2165.table new file mode 100644 index 000000000..628be0e75 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2165.table @@ -0,0 +1,7 @@ +1 1 CLEAR PATH +2 2 PARTLY CLOUDY PATH +3 3 CLOUDY PATH +4 4 APODIZED +5 5 UNAPODIZED +6 6 RECONSTRUCTED +7 7 CLOUD CLEARED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2166.table b/definitions/bufr/tables/0/wmo/42/codetables/2166.table new file mode 100644 index 000000000..efac38f8d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2166.table @@ -0,0 +1,6 @@ +0 0 TYPE NOT DEFINED +1 1 AUTOMATED STATISTICAL REGRESSION +2 2 CLEAR PATH +3 3 PARTLY CLOUDY PATH +4 4 CLOUDY PATH +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2167.table b/definitions/bufr/tables/0/wmo/42/codetables/2167.table new file mode 100644 index 000000000..acb2f9d9c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2167.table @@ -0,0 +1,4 @@ +0 0 METHOD NOT DEFINED +1 1 1B RAW RADIANCE +2 2 PROCESSED RADIANCE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2169.table b/definitions/bufr/tables/0/wmo/42/codetables/2169.table new file mode 100644 index 000000000..bd31667d0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2169.table @@ -0,0 +1,5 @@ +0 0 CUP ROTOR +1 1 PROPELLER ROTOR +2 2 WIND OBSERVATION THROUGH AMBIENT NOISE (WOTAN) +3 3 SONIC +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2170.table b/definitions/bufr/tables/0/wmo/42/codetables/2170.table new file mode 100644 index 000000000..05bab00d7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2170.table @@ -0,0 +1,5 @@ +0 0 SPECTRASENSORS WVSS-II, VERSION 1 +1 1 SPECTRASENSORS WVSS-II, VERSION 2 +2 2 SPECTRASENSORS WVSS-II, VERSION 3 +62 62 OTHER +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2172.table b/definitions/bufr/tables/0/wmo/42/codetables/2172.table new file mode 100644 index 000000000..e10ef52b8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2172.table @@ -0,0 +1,5 @@ +0 0 RESERVED +1 1 RETRIEVAL FROM A NADIR SOUNDING +2 2 RETRIEVAL FROM A LIMB SOUNDING +3 3 RETRIEVAL FROM AN OCCULTATION SOUNDING +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2175.table b/definitions/bufr/tables/0/wmo/42/codetables/2175.table new file mode 100644 index 000000000..2cf2a3d55 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2175.table @@ -0,0 +1,9 @@ +0 0 MANUAL MEASUREMENT +1 1 TIPPING BUCKET METHOD +2 2 WEIGHING METHOD +3 3 OPTICAL METHOD +4 4 PRESSURE METHOD +5 5 FLOAT METHOD +6 6 DROP COUNTER METHOD +14 14 OTHERS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2176.table b/definitions/bufr/tables/0/wmo/42/codetables/2176.table new file mode 100644 index 000000000..2c27a6f91 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2176.table @@ -0,0 +1,6 @@ +0 0 MANUAL OBSERVATION +1 1 VIDEO CAMERA METHOD +2 2 INFRARED METHOD +3 3 LASER METHOD +14 14 OTHERS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2177.table b/definitions/bufr/tables/0/wmo/42/codetables/2177.table new file mode 100644 index 000000000..e7bb67a7d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2177.table @@ -0,0 +1,6 @@ +0 0 MANUAL OBSERVATION +1 1 ULTRASONIC METHOD +2 2 VIDEO CAMERA METHOD +3 3 LASER METHOD +14 14 OTHERS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2178.table b/definitions/bufr/tables/0/wmo/42/codetables/2178.table new file mode 100644 index 000000000..f4f8b592c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2178.table @@ -0,0 +1,5 @@ +0 0 MANUAL OBSERVATION +1 1 OPTICAL METHOD +2 2 CAPACITIVE METHOD +14 14 OTHERS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2179.table b/definitions/bufr/tables/0/wmo/42/codetables/2179.table new file mode 100644 index 000000000..9e9ba189a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2179.table @@ -0,0 +1,6 @@ +0 0 MANUAL OBSERVATION +1 1 VAISALA ALGORITHM +2 2 ASOS (FAA) ALGORITHM +3 3 AWOS (CANADA) ALGORITHM +14 14 OTHERS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2180.table b/definitions/bufr/tables/0/wmo/42/codetables/2180.table new file mode 100644 index 000000000..0b21b2c26 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2180.table @@ -0,0 +1,8 @@ +0 0 MANUAL OBSERVATION +1 1 OPTICAL SCATTER SYSTEM COMBINED WITH PRECIPITATION OCCURRENCE SENSING SYSTEM +2 2 FORWARD AND/OR BACKSCATTER SYSTEM OF VISIBLE LIGHT +3 3 FORWARD AND/OR BACKSCATTER SYSTEM OF INFRARED LIGHT +4 4 INFRARED LIGHT EMITTING DIODE (IRED) SYSTEM +5 5 DOPPLER RADAR SYSTEM +14 14 OTHERS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2181.table b/definitions/bufr/tables/0/wmo/42/codetables/2181.table new file mode 100644 index 000000000..5096dc48a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2181.table @@ -0,0 +1,5 @@ +1 1 RAIN DETECTOR +2 2 FREEZING RAIN SENSOR +3 3 ICE DETECTION SENSOR +4 4 HAIL AND ICE PELLET SENSOR +20 20 OTHERS diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2182.table b/definitions/bufr/tables/0/wmo/42/codetables/2182.table new file mode 100644 index 000000000..4ffab2652 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2182.table @@ -0,0 +1,7 @@ +0 0 MANUAL MEASUREMENT +1 1 TRANSMISSOMETER SYSTEM (BASE > 25 M) +2 2 TRANSMISSOMETER SYSTEM (BASE < 25 M) +3 3 FORWARD SCATTER SYSTEM +4 4 BACKSCATTER SYSTEM +14 14 OTHERS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2183.table b/definitions/bufr/tables/0/wmo/42/codetables/2183.table new file mode 100644 index 000000000..a804ea1e1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2183.table @@ -0,0 +1,9 @@ +0 0 MANUAL OBSERVATION +1 1 CEILOMETER SYSTEM +2 2 INFRARED CAMERA SYSTEM +3 3 MICROWAVE VISUAL CAMERA SYSTEM +4 4 SKY IMAGER SYSTEM +5 5 VIDEO TIME-LAPSED CAMERA SYSTEM +6 6 MICROPULSE LIDAR (MPL) SYSTEM +14 14 OTHERS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2184.table b/definitions/bufr/tables/0/wmo/42/codetables/2184.table new file mode 100644 index 000000000..cf5ee84ac --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2184.table @@ -0,0 +1,9 @@ +0 0 MANUAL OBSERVATION +1 1 LIGHTNING IMAGING SENSOR +2 2 ELECTRICAL STORM IDENTIFICATION SENSOR +3 3 MAGNETIC FINDER SENSOR +4 4 LIGHTNING STRIKE SENSOR +5 5 FLASH COUNTER +6 6 ATDNET VLF WAVEFORM CORRELATED SENSOR +14 14 OTHERS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2185.table b/definitions/bufr/tables/0/wmo/42/codetables/2185.table new file mode 100644 index 000000000..45b081051 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2185.table @@ -0,0 +1,7 @@ +0 0 MANUAL MEASUREMENT +1 1 BALANCED FLOATING METHOD +2 2 PRESSURE METHOD +3 3 ULTRASONIC METHOD +4 4 HYDRAULIC METHOD +14 14 OTHERS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2186.table b/definitions/bufr/tables/0/wmo/42/codetables/2186.table new file mode 100644 index 000000000..2a9e71004 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2186.table @@ -0,0 +1,24 @@ +1 1 PRECIPITATION-UNKNOWN TYPE +2 2 LIQUID PRECIPITATION NOT FREEZING +3 3 LIQUID FREEZING PRECIPITATION +4 4 DRIZZLE +5 5 RAIN +6 6 SOLID PRECIPITATION +7 7 SNOW +8 8 SNOW GRAINS +9 9 SNOW PELLETS +10 10 ICE PELLETS +11 11 ICE CRYSTALS +12 12 DIAMOND DUST +13 13 SMALL HAIL +14 14 HAIL +15 15 GLAZE +16 16 RIME +17 17 SOFT RIME +18 18 HARD RIME +19 19 CLEAR ICE +20 20 WET SNOW +21 21 HOAR FROST +22 22 DEW +23 23 WHITE DEW +24 24 CONVECTIVE PRECIPITATION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2187.table b/definitions/bufr/tables/0/wmo/42/codetables/2187.table new file mode 100644 index 000000000..def3d2feb --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2187.table @@ -0,0 +1,11 @@ +1 1 DUST/SAND WHIRL +2 2 SQUALLS +3 3 SAND STORM +4 4 DUST STORM +5 5 LIGHTNING - CLOUD TO SURFACE +6 6 LIGHTNING - CLOUD TO CLOUD +7 7 LIGHTNING - DISTANT +8 8 THUNDERSTORM +9 9 FUNNEL CLOUD NOT TOUCHING SURFACE +10 10 FUNNEL CLOUD TOUCHING SURFACE +11 11 SPRAY diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2188.table b/definitions/bufr/tables/0/wmo/42/codetables/2188.table new file mode 100644 index 000000000..bb8114ca8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2188.table @@ -0,0 +1,10 @@ +1 1 FOG +2 2 ICE FOG +3 3 STEAM FOG +7 7 MIST +8 8 HAZE +9 9 SMOKE +10 10 VOLCANIC ASH +11 11 DUST +12 12 SAND +13 13 SNOW diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2189.table b/definitions/bufr/tables/0/wmo/42/codetables/2189.table new file mode 100644 index 000000000..61ac9e322 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2189.table @@ -0,0 +1,4 @@ +1 1 MANUAL OBSERVATION +2 2 ALL LIGHTNING STRIKES WITHOUT DISCRIMINATION +3 3 LIGHTNING STRIKES CLOUD TO GROUND ONLY +4 4 ALL LIGHTNING STRIKES WITH DISCRIMINATION BETWEEN CLOUD TO GROUND AND CLOUD TO CLOUD diff --git a/definitions/bufr/tables/0/wmo/42/codetables/2191.table b/definitions/bufr/tables/0/wmo/42/codetables/2191.table new file mode 100644 index 000000000..2e96256c7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/2191.table @@ -0,0 +1,4 @@ +0 0 GEOPOTENTIAL HEIGHT CALCULATED FROM PRESSURE +1 1 GEOPOTENTIAL HEIGHT CALCULATED FROM GPS HEIGHT +2 2 GEOPOTENTIAL HEIGHT CALCULATED FROM RADAR HEIGHT +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/22056.table b/definitions/bufr/tables/0/wmo/42/codetables/22056.table new file mode 100644 index 000000000..28ddbf4e4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/22056.table @@ -0,0 +1,4 @@ +0 0 UPWARDS PROFILE +1 1 DOWNWARDS PROFILE +2 2 HORIZONTAL +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/22060.table b/definitions/bufr/tables/0/wmo/42/codetables/22060.table new file mode 100644 index 000000000..b73ad3235 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/22060.table @@ -0,0 +1,4 @@ +0 0 DROGUE IS DETACHED +1 1 DROGUE IS ATTACHED +2 2 DROGUE STATUS UNKNOWN +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/22061.table b/definitions/bufr/tables/0/wmo/42/codetables/22061.table new file mode 100644 index 000000000..aa8c62bae --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/22061.table @@ -0,0 +1,11 @@ +0 0 CALM (GLASSY) +1 1 CALM (RIPPLED) +2 2 SMOOTH (WAVELETS) +3 3 SLIGHT +4 4 MODERATE +5 5 ROUGH +6 6 VERY ROUGH +7 7 HIGH +8 8 VERY HIGH +9 9 PHENOMENAL +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/22067.table b/definitions/bufr/tables/0/wmo/42/codetables/22067.table new file mode 100644 index 000000000..9ec3c9e85 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/22067.table @@ -0,0 +1,129 @@ +1 1 SIPPICAN T-4 +2 2 SIPPICAN T-4 +11 11 SIPPICAN T-5 +21 21 SIPPICAN FAST DEEP +31 31 SIPPICAN T-6 +32 32 SIPPICAN T-6 +41 41 SIPPICAN T-7 +42 42 SIPPICAN T-7 +51 51 SIPPICAN DEEP BLUE +52 52 SIPPICAN DEEP BLUE +61 61 SIPPICAN T-10 +71 71 SIPPICAN T-11 +81 81 SIPPICAN AXBT (300 M PROBES) +201 201 TSK T-4 +202 202 TSK T-4 +211 211 TSK T-6 +212 212 TSK T-6 +221 221 TSK T-7 +222 222 TSK T-7 +231 231 TSK T-5 +241 241 TSK T-10 +251 251 TSK DEEP BLUE +252 252 TSK DEEP BLUE +261 261 TSK AXBT +401 401 SPARTON XBT-1 +411 411 SPARTON XBT-3 +421 421 SPARTON XBT-4 +431 431 SPARTON XBT-5 +441 441 SPARTON XBT-5DB +451 451 SPARTON XBT-6 +461 461 SPARTON XBT-7 +462 462 SPARTON XBT-7 +471 471 SPARTON XBT-7DB +481 481 SPARTON XBT-10 +491 491 SPARTON XBT-20 +501 501 SPARTON XBT-20DB +510 510 SPARTON 536 AXBT +700 700 SIPPICAN XCTD STANDARD +710 710 SIPPICAN XCTD DEEP +720 720 SIPPICAN AXCTD +730 730 SIPPICAN SXCTD +741 741 TSK XCTD/XCTD-1/XCTD-1N/XCTD-1A +742 742 TSK XCTD-2/XCTD-2N/XCTD-4A +743 743 TSK XCTD-2F +744 744 TSK XCTD-3/XCTD-3N +745 745 TSK XCTD-4/XCTD-4N +746 746 TSK XCTP-1 +747 747 TSK XCTP-4 +751 751 TSK AXCTD +780 780 SEA-BIRD SBE21 SEACAT THERMOSALINOGRAPH +781 781 SEA-BIRD SBE45 MICROTSG THERMOSALINOGRAPH +800 800 MECHANICAL BT +810 810 HYDROCAST +820 820 THERMISTOR CHAIN +825 825 TEMPERATURE (SONIC) AND PRESSURE PROBES +830 830 CTD +831 831 CTD-P-ALACE FLOAT +834 834 PROVOR V SBE +835 835 PROVOR IV +836 836 PROVOR III +837 837 ARVOR_C, SBE CONDUCTIVITY SENSOR +838 838 ARVOR_D, SBE CONDUCTIVITY SENSOR +839 839 PROVOR-II, SBE CONDUCTIVITY SENSOR +840 840 PROVOR, NO CONDUCTIVITY SENSOR +841 841 PROVOR, SEA-BIRD CONDUCTIVITY SENSOR +842 842 PROVOR, FSI CONDUCTIVITY SENSOR +843 843 POLAR OCEAN PROFILING SYSTEM (POPS), PROVOR, SBE CTD +844 844 PROFILING FLOAT, ARVOR, SEA-BIRD CONDUCTIVITY SENSOR +845 845 WEBB RESEARCH, NO CONDUCTIVITY SENSOR +846 846 WEBB RESEARCH, SEA-BIRD CONDUCTIVITY SENSOR +847 847 WEBB RESEARCH, FSI CONDUCTIVITY SENSOR +848 848 APEX-EM, SBE CONDUCTIVITY SENSOR +849 849 APEX_D, SBE CONDUCTIVITY SENSOR +850 850 SOLO, NO CONDUCTIVITY SENSOR +851 851 SOLO, SEA-BIRD CONDUCTIVITY SENSOR +852 852 SOLO, FSI CONDUCTIVITY SENSOR +853 853 PROFILING FLOAT, SOLO2 (SCRIPPS), SEA-BIRD CONDUCTIVITY SENSOR +854 854 S2A, SBE CONDUCTIVITY SENSOR +855 855 PROFILING FLOAT, NINJA, NO CONDUCTIVITY SENSOR +856 856 PROFILING FLOAT, NINJA, SBE CONDUCTIVITY SENSOR +857 857 PROFILING FLOAT, NINJA, FSI CONDUCTIVITY SENSOR +858 858 PROFILING FLOAT, NINJA, TSK CONDUCTIVITY SENSOR +859 859 PROFILING FLOAT, NEMO, NO CONDUCTIVITY SENSOR +860 860 PROFILING FLOAT, NEMO, SBE CONDUCTIVITY SENSOR +861 861 PROFILING FLOAT, NEMO, FSI CONDUCTIVITY SENSOR +862 862 SOLO_D, SBE CONDUCTIVITY SENSOR +863 863 NAVIS-A, SBE CONDUCTIVITY SENSOR +864 864 NINJA_D, SBE CONDUCTIVITY SENSOR +865 865 NOVA, SBE CONDUCTIVITY SENSOR +866 866 ALAMO, NO CONDUCTIVITY SENSOR +867 867 ALAMO, RBR CONDUCTIVITY SENSOR +868 868 ALAMO, SBE CONDUCTIVITY SENSOR +869 869 NAVIS_EBR, SBE CONDUCTIVITY SENSOR +870 870 HM2000 +871 871 COPEX +872 872 S2X +873 873 ALTO +874 874 SOLO_D_MRV +875 875 ALTO RBR +876 876 ALTO SBE +877 877 APEX RBR +878 878 ARVOR RBR +879 879 SOLO II RBR +880 880 S2A RBR +881 881 HM4000 SBE +882 882 HM6000 SBE +883 883 APEX_D RBR +884 884 SOLO_BGC, SBE +885 885 SOLO_BGC, RBR +886 886 SOLO_BGC_MRV, SBE +887 887 SOLO_BGC_MRV, RBR +888 888 PROVOR_V - JUMBO, SBE +889 889 PROVOR_V - JUMBO, RBR +890 890 PROVOR_III - JUMBO, SBE +891 891 PROVOR_III - JUMBO, RBR +900 900 SIPPICAN LMP-5 XBT +901 901 ICE-TETHERED PROFILER (ITP), SBE CTD +902 902 BROOKE OCEAN MOVING VESSEL PROFILER (MVP) +903 903 SEA-BIRD CTD +904 904 AML OCEANOGRAPHIC CTD +905 905 FALMOUTH SCIENTIFIC CTD +906 906 OCEAN SENSORS CTD +907 907 VALEPORT CTD +908 908 OCEANSCIENCE MVP +909 909 IDRONAUT CTD +910 910 SEA-BIRD SBE 38 +995 995 INSTRUMENT ATTACHED TO MARINE MAMMALS +996 996 INSTRUMENT ATTACHED TO ANIMALS OTHER THAN MARINE MAMMALS +1023 1023 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/22068.table b/definitions/bufr/tables/0/wmo/42/codetables/22068.table new file mode 100644 index 000000000..992097fd8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/22068.table @@ -0,0 +1,43 @@ +1 1 SIPPICAN STRIP CHART RECORDER +2 2 SIPPICAN MK2A/SSQ-61 +3 3 SIPPICAN MK-9 +4 4 SIPPICAN AN/BHQ-7/MK8 +5 5 SIPPICAN MK-12 +6 6 SIPPICAN MK-21 +7 7 SIPPICAN MK-8 LINEAR RECORDER +8 8 SIPPICAN MK-10 +10 10 SPARTON SOC BT/SV PROCESSOR MODEL 100 +11 11 LOCKHEED-SANDERS MODEL OL5005 +20 20 ARGOS XBT-ST +21 21 CLS-ARGOS/PROTECNO XBT-ST MODEL-1 +22 22 CLS-ARGOS/PROTECNO XBT-ST MODEL-2 +30 30 BATHY SYSTEMS SA-810 +31 31 SCRIPPS METROBYTE CONTROLLER +32 32 MURAYAMA DENKI Z-60-16 III +33 33 MURAYAMA DENKI Z-60-16 II +34 34 PROTECNO ETSM2 +35 35 NAUTILUS MARINE SERVICE NMS-XBT +40 40 TSK MK-2A +41 41 TSK MK-2S +42 42 TSK MK-30 +43 43 TSK MK-30N +45 45 TSK MK-100 +46 46 TSK MK-130 COMPATIBLE RECORDER FOR BOTH XBT AND XCTD +47 47 TSK MK-130A XCTD RECORDER +48 48 TSK AXBT RECEIVER MK-300 +49 49 TSK MK-150/MK-150N/MK-200 COMPATIBLE RECORDER FOR BOTH XBT AND XCTD +50 50 JMA ASTOS +60 60 ARGOS COMMUNICATIONS, SAMPLING ON UP TRANSIT +61 61 ARGOS COMMUNICATIONS, SAMPLING ON DOWN TRANSIT +62 62 ORBCOMM COMMUNICATIONS, SAMPLING ON UP TRANSIT +63 63 ORBCOMM COMMUNICATIONS, SAMPLING ON DOWN TRANSIT +64 64 IRIDIUM COMMUNICATIONS, SAMPLING ON UP TRANSIT +65 65 IRIDIUM COMMUNICATIONS, SAMPLING ON DOWN TRANSIT +70 70 CSIRO DEVIL-1 XBT ACQUISITION SYSTEM +71 71 CSIRO DEVIL-2 XBT ACQUISITION SYSTEM +72 72 TURO/CSIRO QUOLL XBT ACQUISITION SYSTEM +80 80 APPLIED MICROSYSTEMS LTD., MICRO-SVT&P +81 81 SEA MAMMAL RESEARCH UNIT, UNIV. ST. ANDREWS, UK, UNCORRECTED SALINITY FROM A SEA MAMMAL MOUNTED INSTRUMENT +82 82 SEA MAMMAL RESEARCH UNIT, UNIV. ST. ANDREWS, UK, CORRECTED SALINITY FROM A SEA MAMMAL MOUNTED INSTRUMENT +99 99 UNKNOWN +127 127 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/22120.table b/definitions/bufr/tables/0/wmo/42/codetables/22120.table new file mode 100644 index 000000000..8c747ce66 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/22120.table @@ -0,0 +1,13 @@ +0 0 GOOD DATA +1 1 MAXIMUM (HIGH) WATER LEVEL LIMIT EXCEEDED +2 2 MINIMUM (LOW) WATER LEVEL LIMIT EXCEEDED +3 3 RATE OF CHANGE LIMIT FOR WATER LEVEL EXCEEDED +4 4 FLAT LIMIT FOR WATER LEVEL EXCEEDED +5 5 OBSERVED MINUS PREDICTED WATER LEVEL VALUE LIMIT EXCEEDED +6 6 OBSERVED VALUE FROM PRIMARY WATER LEVEL SENSOR MINUS BACKUP WATER LEVEL SENSOR +7 7 VALUE EXCEEDED SPECIFIED TOLERANCE FROM EXPECTED VALUE +8 8 WATER LEVEL QA PARAMETER (SIGMAS AND/OR OUTLIERS) LIMITS EXCEEDED +9 9 SEA TEMPERATURE OUTSIDE OF EXPECTED RANGE +10 10 MULTIPLE QC CHECKS (ABOVE) FAILED +11 11 NO AUTOMATED WATER LEVEL CHECKS PERFORMED +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/22121.table b/definitions/bufr/tables/0/wmo/42/codetables/22121.table new file mode 100644 index 000000000..7d4dfa821 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/22121.table @@ -0,0 +1,9 @@ +0 0 OPERATIONAL +1 1 POSSIBLE CLOGGING PROBLEM OR OTHERWISE DEGRADED WATER LEVEL DATA +2 2 POSSIBLE DATUM SHIFT +3 3 UNKNOWN STATUS OF WATER LEVEL SENSOR +4 4 SUSPECTED OR KNOWN SEA TEMPERATURE SENSOR PROBLEM +5 5 MULTIPLE POSSIBLE PROBLEMS (ABOVE) +6 6 BAD DATA - DO NOT DISSEMINATE! +7 7 NO MANUAL WATER LEVEL CHECKS PERFORMED +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/22122.table b/definitions/bufr/tables/0/wmo/42/codetables/22122.table new file mode 100644 index 000000000..aa9d5ebbe --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/22122.table @@ -0,0 +1,8 @@ +0 0 GOOD DATA FROM ALL SENSORS +1 1 WIND DIRECTION OUTSIDE OF ALLOWABLE RANGE +2 2 WIND SPEED OUTSIDE OF EXPECTED RANGE +3 3 BAROMETRIC PRESSURE OUTSIDE OF EXPECTED RANGE +4 4 AIR TEMPERATURE OUTSIDE OF EXPECTED RANGE +5 5 MULTIPLE SENSORS FAILED QC CHECKS +6 6 NO AUTOMATED METEOROLOGICAL DATA CHECKS PERFORMED +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/22123.table b/definitions/bufr/tables/0/wmo/42/codetables/22123.table new file mode 100644 index 000000000..acfb61609 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/22123.table @@ -0,0 +1,9 @@ +0 0 OPERATIONAL +1 1 SUSPECTED OR KNOWN PROBLEM WITH WIND SENSOR +2 2 SUSPECTED OR KNOWN PROBLEM WITH BAROMETRIC PRESSURE SENSOR +3 3 SUSPECTED OR KNOWN PROBLEM WITH AIR TEMPERATURE SENSOR +4 4 UNKNOWN STATUS OF ALL SENSORS +5 5 SUSPECTED OR KNOWN PROBLEMS WITH MULTIPLE SENSORS +6 6 BAD DATA - DO NOT DISSEMINATE! +7 7 NO MANUAL METEOROLOGICAL DATA CHECKS PERFORMED +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/22178.table b/definitions/bufr/tables/0/wmo/42/codetables/22178.table new file mode 100644 index 000000000..355848cc5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/22178.table @@ -0,0 +1,12 @@ +0 0 UNKNOWN +1 1 LM-2A DECK-MOUNTED +2 2 LM-3A HAND-HELD +3 3 LM-4A THRU-HULL +10 10 AL-12 TSK AUTOLAUNCHER (UP TO 12 PROBES) +20 20 SIO XBT AUTOLAUNCHER (UP TO 6 PROBES) +30 30 AOML XBT V6 AUTOLAUNCHER (UP TO 6 DEEP BLUE PROBES) +31 31 AOML XBT V8.0 AUTOLAUNCHER (UP TO 8 DEEP BLUE PROBES) +32 32 AOML XBT V8.1 AUTOLAUNCHER (UP TO 8 DEEP BLUE AND FAST DEEP PROBES) +90 90 CSIRO DEVIL AUTOLAUNCHER +100 100 MFSTEP AUTOLAUNCHER (MEDITERRANEAN) +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23001.table b/definitions/bufr/tables/0/wmo/42/codetables/23001.table new file mode 100644 index 000000000..92ac5deaf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23001.table @@ -0,0 +1,5 @@ +0 0 RESERVED +1 1 ARTICLES 1 AND 2 +2 2 ARTICLE 3 +3 3 ARTICLE 5.2 +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23002.table b/definitions/bufr/tables/0/wmo/42/codetables/23002.table new file mode 100644 index 000000000..12815c6a8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23002.table @@ -0,0 +1,16 @@ +0 0 RESERVED +1 1 NUCLEAR REACTOR ON GROUND +2 2 NUCLEAR REACTOR AT SEA +3 3 NUCLEAR REACTOR IN SPACE +4 4 NUCLEAR FUEL FACILITY +5 5 RADIOACTIVE WASTE MANAGEMENT FACILITY +6 6 TRANSPORT OF NUCLEAR FUEL OR RADIOACTIVE WASTE +7 7 STORAGE OF NUCLEAR FUEL OR RADIOACTIVE WASTE +8 8 MANUFACTURE OF RADIO-ISOTOPES +9 9 USE OF RADIO-ISOTOPES +10 10 STORAGE OF RADIO-ISOTOPES +11 11 DISPOSAL OF RADIO-ISOTOPES +12 12 TRANSPORT OF RADIO-ISOTOPES +13 13 USE OF RADIO-ISOTOPES FOR POWER GENERATION +30 30 OTHER +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23003.table b/definitions/bufr/tables/0/wmo/42/codetables/23003.table new file mode 100644 index 000000000..e3e891f9b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23003.table @@ -0,0 +1,8 @@ +0 0 NO RELEASE +1 1 RELEASE TO ATMOSPHERE +2 2 RELEASE TO WATER +3 3 RELEASE TO BOTH ATMOSPHERE AND WATER +4 4 EXPECTED RELEASE TO ATMOSPHERE +5 5 EXPECTED RELEASE TO WATER +6 6 EXPECTED RELEASE TO BOTH ATMOSPHERE AND WATER +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23004.table b/definitions/bufr/tables/0/wmo/42/codetables/23004.table new file mode 100644 index 000000000..383731cec --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23004.table @@ -0,0 +1,6 @@ +0 0 NO COUNTERMEASURES +1 1 EVACUATION +2 2 SHELTERING +3 3 PROPHYLAXIS +4 4 WATER +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23005.table b/definitions/bufr/tables/0/wmo/42/codetables/23005.table new file mode 100644 index 000000000..c5ff5ae75 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23005.table @@ -0,0 +1,4 @@ +0 0 INCIDENT STATE DOES NOT UNDERSTAND WHAT HAPPENED +1 1 INCIDENT STATE KNOWS THE CAUSE OF THE INCIDENT +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23006.table b/definitions/bufr/tables/0/wmo/42/codetables/23006.table new file mode 100644 index 000000000..fe7706af4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23006.table @@ -0,0 +1,8 @@ +0 0 NO IMPROVEMENT +1 1 UNSTABLE +2 2 NO DETERIORATION +3 3 IMPROVING +4 4 STABLE +5 5 DETERIORATING +6 6 RESERVED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23007.table b/definitions/bufr/tables/0/wmo/42/codetables/23007.table new file mode 100644 index 000000000..59fc043a8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23007.table @@ -0,0 +1,5 @@ +0 0 NO RELEASE +1 1 RELEASE HAS STOPPED +2 2 RELEASE +3 3 RELEASE IS CONTINUING +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23008.table b/definitions/bufr/tables/0/wmo/42/codetables/23008.table new file mode 100644 index 000000000..4ac5c5837 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23008.table @@ -0,0 +1,4 @@ +0 0 GASEOUS +1 1 PARTICULATE +2 2 MIXTURE OF GASEOUS AND PARTICULATE +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23009.table b/definitions/bufr/tables/0/wmo/42/codetables/23009.table new file mode 100644 index 000000000..4ac5c5837 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23009.table @@ -0,0 +1,4 @@ +0 0 GASEOUS +1 1 PARTICULATE +2 2 MIXTURE OF GASEOUS AND PARTICULATE +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23016.table b/definitions/bufr/tables/0/wmo/42/codetables/23016.table new file mode 100644 index 000000000..ae84bae45 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23016.table @@ -0,0 +1,4 @@ +0 0 NO SIGNIFICANT CHEMICAL TOXIC HEALTH EFFECT +1 1 SIGNIFICANT CHEMICAL TOXIC HEALTH EFFECT POSSIBLE +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23018.table b/definitions/bufr/tables/0/wmo/42/codetables/23018.table new file mode 100644 index 000000000..ccdcc456d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23018.table @@ -0,0 +1,6 @@ +0 0 RELEASE NO LONGER OCCURRING +1 1 RELEASE STILL OCCURRING +2 2 RELEASE EXPECTED TO INCREASE IN NEXT SIX HOURS +3 3 RELEASE EXPECTED TO REMAIN CONSTANT IN NEXT SIX HOURS +4 4 RELEASE EXPECTED TO DECREASE IN NEXT SIX HOURS +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23031.table b/definitions/bufr/tables/0/wmo/42/codetables/23031.table new file mode 100644 index 000000000..cf20e26ee --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23031.table @@ -0,0 +1,4 @@ +0 0 PLUME WILL NOT ENCOUNTER RAIN IN INCIDENT STATE +1 1 PLUME WILL ENCOUNTER RAIN IN INCIDENT STATE +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/23032.table b/definitions/bufr/tables/0/wmo/42/codetables/23032.table new file mode 100644 index 000000000..0f439b70d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/23032.table @@ -0,0 +1,4 @@ +0 0 NO SIGNIFICANT CHANGE EXPECTED WITHIN THE NEXT SIX HOURS +1 1 ANTICIPATED SIGNIFICANT CHANGE EXPECTED WITHIN THE NEXT SIX HOURS +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/24003.table b/definitions/bufr/tables/0/wmo/42/codetables/24003.table new file mode 100644 index 000000000..2daa8104b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/24003.table @@ -0,0 +1,5 @@ +0 0 NOBLE GASES +1 1 IODINES +2 2 CAESIUMS +3 3 TRANSURANICS +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25004.table b/definitions/bufr/tables/0/wmo/42/codetables/25004.table new file mode 100644 index 000000000..dfe451727 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25004.table @@ -0,0 +1,4 @@ +0 0 INCOHERENT +1 1 COHERENT (DOPPLER) +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25005.table b/definitions/bufr/tables/0/wmo/42/codetables/25005.table new file mode 100644 index 000000000..bc693a7bf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25005.table @@ -0,0 +1,4 @@ +0 0 LOGARITHM - 2.5 DB +1 1 LINEAR +2 2 SPECIAL +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25006.table b/definitions/bufr/tables/0/wmo/42/codetables/25006.table new file mode 100644 index 000000000..bf9d1f52a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25006.table @@ -0,0 +1,5 @@ +0 0 ZH TO R CONVERSION +1 1 (ZH, ZDR) TO (NO, DO) TO R +2 2 (Z (F1), Z (F2)) TO ATTENUATION TO R +6 6 OTHER +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25009.table b/definitions/bufr/tables/0/wmo/42/codetables/25009.table new file mode 100644 index 000000000..bf34fb227 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25009.table @@ -0,0 +1,4 @@ +1 1 NONE +2 2 CALIBRATION TARGET OR SIGNAL +3 3 AGAINST RAINGAUGES +4 4 AGAINST OTHER INSTRUMENTS (DISDROMETER - ATTENUATION) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25010.table b/definitions/bufr/tables/0/wmo/42/codetables/25010.table new file mode 100644 index 000000000..e88b3ca3c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25010.table @@ -0,0 +1,8 @@ +0 0 NONE +1 1 MAP +2 2 INSERTION OF HIGHER ELEVATION DATA AND MAP +3 3 ANALYSIS OF THE FLUCTUATING LOGARITHM SIGNAL (CLUTTER DETECTION) +4 4 EXTRACTION OF THE FLUCTUATING PART OF LINEAR SIGNAL (CLUTTER SUPPRESSION) +5 5 CLUTTER SUPPRESSION - DOPPLER +6 6 MULTIPARAMETER ANALYSIS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25011.table b/definitions/bufr/tables/0/wmo/42/codetables/25011.table new file mode 100644 index 000000000..f73949830 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25011.table @@ -0,0 +1,4 @@ +0 0 NONE +1 1 MAP OF CORRECTION FACTORS +2 2 INTERPOLATION (AZIMUTH OR ELEVATION) +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25012.table b/definitions/bufr/tables/0/wmo/42/codetables/25012.table new file mode 100644 index 000000000..c869a4ace --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25012.table @@ -0,0 +1,4 @@ +0 0 HARDWARE +1 1 SOFTWARE +2 2 HARDWARE AND SOFTWARE +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25013.table b/definitions/bufr/tables/0/wmo/42/codetables/25013.table new file mode 100644 index 000000000..b91ea71db --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25013.table @@ -0,0 +1 @@ +1 1 BRIGHT-BAND CORRECTION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25015.table b/definitions/bufr/tables/0/wmo/42/codetables/25015.table new file mode 100644 index 000000000..043e587b6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25015.table @@ -0,0 +1 @@ +1 1 RADOME ATTENUATION CORRECTION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25017.table b/definitions/bufr/tables/0/wmo/42/codetables/25017.table new file mode 100644 index 000000000..ed48487e1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25017.table @@ -0,0 +1 @@ +1 1 PRECIPITATION ATTENUATION CORRECTION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25020.table b/definitions/bufr/tables/0/wmo/42/codetables/25020.table new file mode 100644 index 000000000..6133da3bf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25020.table @@ -0,0 +1,4 @@ +0 0 FFT (FAST FOURIER TRANSFORM) +1 1 PPP (PULSE-PAIR PROCESSING) +2 2 VPC (VECTOR-PHASE CHANGE) +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25021.table b/definitions/bufr/tables/0/wmo/42/codetables/25021.table new file mode 100644 index 000000000..314716b3b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25021.table @@ -0,0 +1,5 @@ +1 1 SIMPLE AVERAGE +2 2 CONSENSUS AVERAGE +3 3 MEDIAN CHECK +4 4 VERTICAL CONSISTENCY CHECK +5 5 OTHER diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25022.table b/definitions/bufr/tables/0/wmo/42/codetables/25022.table new file mode 100644 index 000000000..95848784f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25022.table @@ -0,0 +1,8 @@ +1 1 UNPROCESSED +2 2 LAND SUSPECTED +3 3 WIND SPEED TOO LARGE +4 4 ICE DETECTED +5 5 RAIN DETECTED (MICROWAVE RETRIEVALS ONLY) +6 6 CLOUDY DETECTED (INFRA-RED RETRIEVALS ONLY) +7 7 COSMETIC VALUE +8 8 SST OUT OF RANGE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25023.table b/definitions/bufr/tables/0/wmo/42/codetables/25023.table new file mode 100644 index 000000000..e4840dc8c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25023.table @@ -0,0 +1,8 @@ +1 1 DEFAULT CONFIDENCE VALUE HAS BEEN USED +2 2 DEFAULT BIAS AND STANDARD DEVIATION HAVE BEEN USED +3 3 SUN GLINT SUSPECTED +4 4 SEA ICE RETRIEVAL FOR MICROWAVE DATA +5 5 HIGH WIND SPEED RETRIEVAL +6 6 INACCURATE SST DUE TO LOW SST (< 285K) (ONLY APPLIES TO THE TMI INSTRUMENT) +7 7 RELAXED RAIN CONTAMINATION SUSPECTED +8 8 POTENTIAL SIDE LOBE CONTAMINATION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25024.table b/definitions/bufr/tables/0/wmo/42/codetables/25024.table new file mode 100644 index 000000000..81b26380c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25024.table @@ -0,0 +1,13 @@ +0 0 UNPROCESSED INFRARED RETRIEVAL +1 1 CLOUDY RETRIEVALS +2 2 BAD: DATA THAT ARE PROBABLY CONTAMINATED BY CLOUD +3 3 SUSPECT DATA +4 4 ACCEPTABLE DATA +5 5 EXCELLENT DATA +6 6 COOL SKIN SUSPECTED +10 10 UNPROCESSED MICROWAVE RETRIEVAL +11 11 QUESTIONABLE MICROWAVE RETRIEVAL THAT MAY BE CONTAMINATED +12 12 ACCEPTABLE MICROWAVE RETRIEVAL +13 13 HIGH PROBABILITY OF DIURNAL VARIABILITY +14 14 RESERVED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25029.table b/definitions/bufr/tables/0/wmo/42/codetables/25029.table new file mode 100644 index 000000000..fb00d01ca --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25029.table @@ -0,0 +1,5 @@ +1 1 RESERVED +2 2 CALIBRATION TARGET OR SIGNAL +3 3 AGAINST RAINGAUGES +4 4 AGAINST OTHER INSTRUMENTS (DISDROMETER - ATTENUATION) +5 5 RESERVED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25030.table b/definitions/bufr/tables/0/wmo/42/codetables/25030.table new file mode 100644 index 000000000..c3235d6e5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25030.table @@ -0,0 +1,4 @@ +0 0 RUNNING MEAN SEA-SURFACE TEMPERATURE NOT USED BECAUSE USAGE CRITERIA NOT MET +1 1 RUNNING MEAN SEA-SURFACE TEMPERATURE NOT USED BECAUSE DATA NOT AVAILABLE +2 2 RUNNING MEAN SEA-SURFACE TEMPERATURE USED AS PREDICTOR +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25031.table b/definitions/bufr/tables/0/wmo/42/codetables/25031.table new file mode 100644 index 000000000..16ff950a1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25031.table @@ -0,0 +1,6 @@ +0 0 RESERVED +1 1 NO THINNING APPLIED (ALL NATIVE MODEL LEVELS ARE INCLUDED FROM BASE TO TOP OF PSEUDO-SOUNDING) +2 2 NATIVE MODEL LEVELS ARE PRESENT ONLY IF THEY ARE SIGNIFICANT LEVELS AS PER REGULATIONS B/C 25 FOR CONVENTIONAL TEMP SOUNDINGS +3 3 A PREDEFINED SUBSET OF NATIVE MODEL LEVELS IS PRESENT +4 4 NO NATIVE MODEL LEVELS ARE PRESENT. ALL PROFILE LEVELS ARE INTERPOLATED TO A PREDEFINED SET OF PRESSURE COORDINATE LEVELS +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25032.table b/definitions/bufr/tables/0/wmo/42/codetables/25032.table new file mode 100644 index 000000000..9b894f470 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25032.table @@ -0,0 +1,4 @@ +0 0 RESERVED +1 1 DATA FROM LOW MODE +2 2 DATA FROM HIGH MODE +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25033.table b/definitions/bufr/tables/0/wmo/42/codetables/25033.table new file mode 100644 index 000000000..e7141c078 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25033.table @@ -0,0 +1,4 @@ +0 0 WIND PROFILER OPERATING IN SUBMODE A +1 1 WIND PROFILER OPERATING IN SUBMODE B +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25034.table b/definitions/bufr/tables/0/wmo/42/codetables/25034.table new file mode 100644 index 000000000..473338a40 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25034.table @@ -0,0 +1,3 @@ +1 1 TEST A PERFORMED AND FAILED +2 2 TEST B PERFORMED AND FAILED +3 3 TEST RESULTS INCONCLUSIVE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25035.table b/definitions/bufr/tables/0/wmo/42/codetables/25035.table new file mode 100644 index 000000000..a0c8faa59 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25035.table @@ -0,0 +1,8 @@ +0 0 NOT DEFINED +1 1 INDIVIDUAL VOLTAGE DEFLECTION +2 2 CURRENT BASED, ABOVE A THRESHOLD +3 3 VOLTAGE BASED, ABOVE A THRESHOLD +4 4 CONSENSUS OF SENSORS, CURRENT ABOVE A THRESHOLD +5 5 CONSENSUS OF SENSORS, VOLTAGE ABOVE A THRESHOLD +6 6 RESERVED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25036.table b/definitions/bufr/tables/0/wmo/42/codetables/25036.table new file mode 100644 index 000000000..79ebd8887 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25036.table @@ -0,0 +1,4 @@ +0 0 NETWORK OF SEVERAL DIRECTION-FINDERS OPERATING ON THE SAME INDIVIDUAL ATMOSPHERICS +1 1 NETWORK OF SEVERAL ARRIVAL-TIME STATIONS OPERATING ON THE SAME INDIVIDUAL ATMOSPHERICS +6 6 SINGLE STATION RANGE BEARING TECHNIQUE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25040.table b/definitions/bufr/tables/0/wmo/42/codetables/25040.table new file mode 100644 index 000000000..3ddf12e20 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25040.table @@ -0,0 +1,10 @@ +0 0 NON-SPECIFIC MODE +1 1 FIRST GUESS DATA +2 2 CLOUD DATA +3 3 AVERAGE VECTOR DATA +4 4 PRIMARY DATA +5 5 GUESS DATA +6 6 VECTOR DATA +7 7 TRACER DATA; THIS IMAGE +8 8 TRACER DATA TO NEXT IMAGE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25041.table b/definitions/bufr/tables/0/wmo/42/codetables/25041.table new file mode 100644 index 000000000..f388da0c2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25041.table @@ -0,0 +1,4 @@ +0 0 DIRECTION ORIGINALLY REPORTED IN TRUE DEGREES +1 1 DIRECTION ORIGINALLY REPORTED USING CODE TABLE 0700, FM 13 +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25042.table b/definitions/bufr/tables/0/wmo/42/codetables/25042.table new file mode 100644 index 000000000..f3cf05999 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25042.table @@ -0,0 +1,4 @@ +0 0 SPEED ORIGINALLY REPORTED IN METRES PER SECOND +1 1 SPEED ORIGINALLY REPORTED USING CODE TABLE 4451, FM 13 +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25053.table b/definitions/bufr/tables/0/wmo/42/codetables/25053.table new file mode 100644 index 000000000..af3413851 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25053.table @@ -0,0 +1,6 @@ +1 1 GOOD +2 2 REDUNDANT +3 3 QUESTIONABLE +4 4 BAD +5 5 EXPERIMENTAL +6 6 PRECIPITATING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25063.table b/definitions/bufr/tables/0/wmo/42/codetables/25063.table new file mode 100644 index 000000000..a8970eaf4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25063.table @@ -0,0 +1,4 @@ +0 0 NOT DEFINED +1 1 MAIN PROCESSOR +2 2 BACKUP PROCESSOR +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25069.table b/definitions/bufr/tables/0/wmo/42/codetables/25069.table new file mode 100644 index 000000000..e627613dd --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25069.table @@ -0,0 +1,7 @@ +1 1 SMOOTHED +2 2 BASELINE ADJUSTED +3 3 NORMALIZED TIME INTERVAL +4 4 OUTLIER CHECKED +5 5 PLAUSIBILITY CHECKED +6 6 CONSISTENCY CHECKED +7 7 INTERPOLATED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25086.table b/definitions/bufr/tables/0/wmo/42/codetables/25086.table new file mode 100644 index 000000000..294fa6977 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25086.table @@ -0,0 +1,4 @@ +0 0 DEPTHS ARE NOT CORRECTED +1 1 DEPTHS ARE CORRECTED +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25090.table b/definitions/bufr/tables/0/wmo/42/codetables/25090.table new file mode 100644 index 000000000..77c509d1a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25090.table @@ -0,0 +1,11 @@ +0 0 ORBIT COMPUTED DURING A MANOEUVRE +1 1 ADJUSTED MISSION OPERATIONS ORBIT +2 2 EXTRAPOLATED MISSION OPERATIONS ORBIT +3 3 ADJUSTED (PRELIMINARY/PRECISE) ORBIT +4 4 (PRELIMINARY/PRECISE) ORBIT IS ESTIMATED DURING A MANOEUVRE PERIOD +5 5 (PRELIMINARY/PRECISE) ORBIT IS INTERPOLATED OVER A TRACKING DATA GAP +6 6 (PRELIMINARY/PRECISE) ORBIT IS EXTRAPOLATED FOR A DURATION LESS THAN 1 DAY +7 7 (PRELIMINARY/PRECISE) ORBIT IS EXTRAPOLATED FOR A DURATION THAT RANGES FROM 1 DAY TO 2 DAYS +8 8 (PRELIMINARY/PRECISE) ORBIT IS EXTRAPOLATED FOR A DURATION LARGER THAN 2 DAYS, OR THAT THE ORBIT IS EXTRAPOLATED JUST AFTER A MANOEUVRE +9 9 DORIS DIODE NAVIGATOR ORBIT +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25093.table b/definitions/bufr/tables/0/wmo/42/codetables/25093.table new file mode 100644 index 000000000..e547e6c81 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25093.table @@ -0,0 +1,3 @@ +1 1 NO CORRECTION +2 2 VERTICAL VELOCITY CORRECTION +7 7 ALL CORRECTIONS diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25095.table b/definitions/bufr/tables/0/wmo/42/codetables/25095.table new file mode 100644 index 000000000..c446a5045 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25095.table @@ -0,0 +1 @@ +1 1 ALTIMETER OPERATING (0 IF NOMINAL, 1 IF BACKUP) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25096.table b/definitions/bufr/tables/0/wmo/42/codetables/25096.table new file mode 100644 index 000000000..89dcc3914 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25096.table @@ -0,0 +1,4 @@ +1 1 MODE INDICATOR (0 IF MODE 2, 1 IF MODE 1) +2 2 MODE 1 CALIBRATION SEQUENCE INDICATOR (0 IF NORMAL DATA TAKING EITHER MODE 1 OR 2, 1 IF MODE 1 CALIBRATION SEQUENCE) BITS 3 AND 4 INDICATE ACTIVE 23.8 GHZ CHANNEL(S): +3 3 CHANNEL 2 (0 IF ON, 1 IF OFF) +4 4 CHANNEL 3 (0 IF ON, 1 IF OFF) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25097.table b/definitions/bufr/tables/0/wmo/42/codetables/25097.table new file mode 100644 index 000000000..d4e1e4646 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25097.table @@ -0,0 +1,11 @@ +0 0 RANGES BETWEEN 0 AND 30 CM +1 1 RANGES BETWEEN 30 AND 60 CM +2 2 RANGES BETWEEN 60 AND 90 CM +3 3 RANGES BETWEEN 90 AND 120 CM +4 4 RANGES BETWEEN 120 AND 150 CM +5 5 RANGES BETWEEN 150 AND 180 CM +6 6 RANGES BETWEEN 180 AND 210 CM +7 7 RANGES BETWEEN 210 AND 240 CM +8 8 RANGES BETWEEN 240 AND 270 CM +9 9 RANGES LARGER THAN 270 CM +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25098.table b/definitions/bufr/tables/0/wmo/42/codetables/25098.table new file mode 100644 index 000000000..ac736f5c0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25098.table @@ -0,0 +1,8 @@ +1 1 KU BAND RANGE +2 2 C BAND RANGE +3 3 KU BAND SWH +4 4 C BAND SWH +5 5 KU BAND BACKSCATTER COEFFICIENT +6 6 C BAND BACKSCATTER COEFFICIENT +7 7 OFF NADIR ANGLE FROM KU BAND WAVEFORM PARAMETERS +8 8 OFF NADIR ANGLE FROM PLATFORM diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25099.table b/definitions/bufr/tables/0/wmo/42/codetables/25099.table new file mode 100644 index 000000000..94d679c10 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25099.table @@ -0,0 +1,6 @@ +1 1 KU BAND RANGE INSTRUMENTAL CORRECTION +2 2 C BAND RANGE INSTRUMENTAL CORRECTION +3 3 KU BAND SWH INSTRUMENTAL CORRECTION +4 4 C BAND SWH INSTRUMENTAL CORRECTION +5 5 KU BAND BACKSCATTER COEFFICIENT INSTRUMENTAL CORRECTION +6 6 C BAND BACKSCATTER COEFFICIENT INSTRUMENTAL CORRECTION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25110.table b/definitions/bufr/tables/0/wmo/42/codetables/25110.table new file mode 100644 index 000000000..912e01f54 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25110.table @@ -0,0 +1,6 @@ +1 1 RAW DATA ANALYSIS USED FOR RAW DATA CORRECTION. CORRECTION DONE USING DEFAULT PARAMETERS +2 2 RAW DATA ANALYSIS USED FOR RAW DATA CORRECTION. CORRECTION DONE USING RAW DATA ANALYSIS RESULTS +3 3 ANTENNA ELEVATION PATTERN CORRECTION APPLIED +4 4 NOMINAL CHIRP REPLICA USED +5 5 RECONSTRUCTED CHIRP USED +6 6 SLANT RANGE TO GROUND RANGE CONVERSION APPLIED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25112.table b/definitions/bufr/tables/0/wmo/42/codetables/25112.table new file mode 100644 index 000000000..a2a4ec9d3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25112.table @@ -0,0 +1,5 @@ +1 1 BAND SPECIFIC RANGE +2 2 BAND SPECIFIC SIGNIFICANT WAVE HEIGHT +3 3 BAND SPECIFIC BACKSCATTER COEFFICIENT +4 4 OFF NADIR ANGLE FROM BAND SPECIFIC WAVEFORM PARAMETERS +5 5 OFF NADIR ANGLE FROM PLATFORM diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25113.table b/definitions/bufr/tables/0/wmo/42/codetables/25113.table new file mode 100644 index 000000000..ef394b626 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25113.table @@ -0,0 +1,3 @@ +1 1 BAND SPECIFIC RANGE INSTRUMENTAL CORRECTION +2 2 BAND SPECIFIC SIGNIFICANT WAVE HEIGHT INSTRUMENTAL CORRECTION +3 3 BAND SPECIFIC BACKSCATTER COEFFICIENT INSTRUMENTAL CORRECTION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25120.table b/definitions/bufr/tables/0/wmo/42/codetables/25120.table new file mode 100644 index 000000000..c45b0addf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25120.table @@ -0,0 +1,4 @@ +0 0 PERCENTAGE OF DSRS FREE OF PROCESSING ERRORS DURING LEVEL 2 PROCESSING IS GREATER THAN THE ACCEPTABLE THRESHOLD +1 1 PERCENTAGE OF DSRS FREE OF PROCESSING ERRORS DURING LEVEL 2 PROCESSING IS LESS THAN THE ACCEPTABLE THRESHOLD +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25122.table b/definitions/bufr/tables/0/wmo/42/codetables/25122.table new file mode 100644 index 000000000..1085ef980 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25122.table @@ -0,0 +1,4 @@ +0 0 HARDWARE CONFIGURATION FOR RF IS A +1 1 HARDWARE CONFIGURATION FOR RF IS B +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25123.table b/definitions/bufr/tables/0/wmo/42/codetables/25123.table new file mode 100644 index 000000000..70f0670e9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25123.table @@ -0,0 +1,4 @@ +0 0 HARDWARE CONFIGURATION FOR HPA IS A +1 1 HARDWARE CONFIGURATION FOR HPA IS B +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25124.table b/definitions/bufr/tables/0/wmo/42/codetables/25124.table new file mode 100644 index 000000000..c45b0addf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25124.table @@ -0,0 +1,4 @@ +0 0 PERCENTAGE OF DSRS FREE OF PROCESSING ERRORS DURING LEVEL 2 PROCESSING IS GREATER THAN THE ACCEPTABLE THRESHOLD +1 1 PERCENTAGE OF DSRS FREE OF PROCESSING ERRORS DURING LEVEL 2 PROCESSING IS LESS THAN THE ACCEPTABLE THRESHOLD +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25139.table b/definitions/bufr/tables/0/wmo/42/codetables/25139.table new file mode 100644 index 000000000..39b215e09 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25139.table @@ -0,0 +1,3 @@ +0 0 L1B +1 1 L2A +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25150.table b/definitions/bufr/tables/0/wmo/42/codetables/25150.table new file mode 100644 index 000000000..7b452c327 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25150.table @@ -0,0 +1,3 @@ +1 1 THE DVORAK'S VIS (VISUAL IMAGERY) INTENSITY ANALYSIS +2 2 THE DVORAK'S EIR (ENHANCED INFRARED IMAGERY) INTENSITY ANALYSIS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25174.table b/definitions/bufr/tables/0/wmo/42/codetables/25174.table new file mode 100644 index 000000000..c8a11b6d7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25174.table @@ -0,0 +1,13 @@ +1 1 PIXEL IS AFFECTED BY RFI EFFECTS +2 2 PIXEL IS LOCATED IN THE HEXAGONAL ALIAS DIRECTION CENTRED ON SUN ALIAS +3 3 PIXEL IS CLOSE TO THE BORDER DELIMITING THE EXTENDED ALIAS FREE ZONE +4 4 PIXEL IS INSIDE THE EXTENDED ALIAS FREE ZONE +5 5 PIXEL IS INSIDE THE EXCLUSIVE OF ALIAS FREE ZONE +6 6 PIXEL IS LOCATED IN A ZONE WHERE A MOON ALIAS WAS RECONSTRUCTED +7 7 PIXEL IS LOCATED IN A ZONE WHERE SUN REFLECTION HAS BEEN DETECTED +8 8 PIXEL IS LOCATED IN A ZONE WHERE SUN ALIAS WAS RECONSTRUCTED +9 9 FLAT TARGET TRANSFORMATION HAS BEEN PERFORMED DURING IMAGE RECONSTRUCTION OF THIS PIXEL +10 10 SCENE HAS BEEN COMBINED WITH AN ADJUSTMENT SCENE IN OPPOSITE POLARIZATION DURING IMAGE RECONSTRUCTION TO ACCOUNT FOR CROSS-POLARIZATION LEAKAGE +11 11 DIRECT MOON CORRECTION HAS BEEN PERFORMED DURING IMAGE RECONSTRUCTION OF THIS PIXEL +12 12 REFLECTED SUN CORRECTION HAS BEEN PERFORMED DURING IMAGE RECONSTRUCTION OF THIS PIXEL +13 13 DIRECT SUN CORRECTION HAS BEEN PERFORMED DURING IMAGE RECONSTRUCTION OF THIS IMAGE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25181.table b/definitions/bufr/tables/0/wmo/42/codetables/25181.table new file mode 100644 index 000000000..2c1eabf7c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25181.table @@ -0,0 +1,3 @@ +0 0 OK +1 1 PERCENTAGE OF L2B RECORDS FREE OF PROCESSING ERRORS IS LESS THAN ACCEPTABLE THRESHOLD +2 2 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25182.table b/definitions/bufr/tables/0/wmo/42/codetables/25182.table new file mode 100644 index 000000000..9827b1dfd --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25182.table @@ -0,0 +1,3 @@ +0 0 OK +1 1 PERCENTAGE OF L1B RECORDS FREE OF PROCESSING ERRORS IS LESS THAN ACCEPTABLE THRESHOLD +2 2 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25184.table b/definitions/bufr/tables/0/wmo/42/codetables/25184.table new file mode 100644 index 000000000..29005c133 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25184.table @@ -0,0 +1,3 @@ +0 0 OK +1 1 PRODUCT AS A DURATION SHORTER THAN THE INPUT PRODUCT +2 2 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25185.table b/definitions/bufr/tables/0/wmo/42/codetables/25185.table new file mode 100644 index 000000000..ac18abae4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25185.table @@ -0,0 +1,2 @@ +0 0 AES 256 +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25187.table b/definitions/bufr/tables/0/wmo/42/codetables/25187.table new file mode 100644 index 000000000..683c09709 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25187.table @@ -0,0 +1,3 @@ +0 0 VALID +1 1 INVALID +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25188.table b/definitions/bufr/tables/0/wmo/42/codetables/25188.table new file mode 100644 index 000000000..b18013f21 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25188.table @@ -0,0 +1,6 @@ +0 0 PRESSURE ADJUSTED TO MEAN SEA LEVEL FOLLOWING WMO-NO. 8 FOR LOW LEVEL (< 50 M) STATIONS +1 1 PRESSURE ADJUSTED TO MEAN SEA LEVEL FOLLOWING WMO-NO. 8 FOR STATIONS BELOW 750 M +2 2 PRESSURE ADJUSTED TO SEA LEVEL FOLLOWING NATIONAL PRACTICE +3 3 PRESSURE ADJUSTED TO LOCAL WATER LEVEL FOLLOWING NATIONAL PRACTICE +4 4 PRESSURE NOT CORRECTED FOR HEIGHT +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25190.table b/definitions/bufr/tables/0/wmo/42/codetables/25190.table new file mode 100644 index 000000000..62fbc7616 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25190.table @@ -0,0 +1,7 @@ +0 0 LOW-RESOLUTION MODE (LRM) +1 1 SYNTHETIC APERTURE RADAR (SAR) +2 2 LRM AND SAR (INTERLEAVED) +3 3 RESERVED +4 4 PSEUDO-LRM (PLRM) +5 5 SAR INTERFEROMETRIC MODE (SARIN) +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/25191.table b/definitions/bufr/tables/0/wmo/42/codetables/25191.table new file mode 100644 index 000000000..ea22b6872 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/25191.table @@ -0,0 +1,4 @@ +0 0 OPEN LOOP +1 1 CLOSED LOOP +2 2 OPEN LOOP FIXED GAIN +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/26010.table b/definitions/bufr/tables/0/wmo/42/codetables/26010.table new file mode 100644 index 000000000..f825040f4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/26010.table @@ -0,0 +1,25 @@ +1 1 0100 INCLUDED +2 2 0200 INCLUDED +3 3 0300 INCLUDED +4 4 0400 INCLUDED +5 5 0500 INCLUDED +6 6 0600 INCLUDED +7 7 0700 INCLUDED +8 8 0800 INCLUDED +9 9 0900 INCLUDED +10 10 1000 INCLUDED +11 11 1100 INCLUDED +12 12 1200 INCLUDED +13 13 1300 INCLUDED +14 14 1400 INCLUDED +15 15 1500 INCLUDED +16 16 1600 INCLUDED +17 17 1700 INCLUDED +18 18 1800 INCLUDED +19 19 1900 INCLUDED +20 20 2000 INCLUDED +21 21 2100 INCLUDED +22 22 2200 INCLUDED +23 23 2300 INCLUDED +24 24 2400 INCLUDED +25 25 UNKNOWN MIXTURE OF HOURS diff --git a/definitions/bufr/tables/0/wmo/42/codetables/29001.table b/definitions/bufr/tables/0/wmo/42/codetables/29001.table new file mode 100644 index 000000000..884b29a84 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/29001.table @@ -0,0 +1,8 @@ +0 0 GNOMONIC PROJECTION +1 1 POLAR STEREOGRAPHIC PROJECTION +2 2 LAMBERT'S CONFORMAL CONIC PROJECTION +3 3 MERCATOR'S PROJECTION +4 4 SCANNING CONE (RADAR) +5 5 RESERVED +6 6 NO PROJECTION +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/29002.table b/definitions/bufr/tables/0/wmo/42/codetables/29002.table new file mode 100644 index 000000000..1d7efd0c8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/29002.table @@ -0,0 +1,4 @@ +0 0 CARTESIAN +1 1 POLAR +2 2 OTHER +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3001.table b/definitions/bufr/tables/0/wmo/42/codetables/3001.table new file mode 100644 index 000000000..e9caa2a14 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3001.table @@ -0,0 +1,12 @@ +0 0 LAND STATION (SYNOPTIC NETWORK) +1 1 SHALLOW WATER STATION (FIXED TO SEA/LAKE FLOOR) +2 2 SHIP +3 3 RIG/PLATFORM +4 4 MOORED BUOY +5 5 DRIFTING BUOY (OR DRIFTER) +6 6 ICE BUOY +7 7 LAND STATION (LOCAL NETWORK) +8 8 LAND VEHICLE +9 9 AUTONOMOUS MARINE VEHICLE +10 10 TAG ATTACHED TO MARINE ANIMAL +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3003.table b/definitions/bufr/tables/0/wmo/42/codetables/3003.table new file mode 100644 index 000000000..cf530237f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3003.table @@ -0,0 +1,8 @@ +0 0 SCREEN +1 1 SLING/WHIRLING +2 2 UNSCREENED +3 3 RADIATION SHIELD +4 4 ASPIRATED (E.G. ASSMANN) +5 5 OTHER SHELTER +6 6 HANDHELD +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/30031.table b/definitions/bufr/tables/0/wmo/42/codetables/30031.table new file mode 100644 index 000000000..80cce26f1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/30031.table @@ -0,0 +1,13 @@ +0 0 PPI +1 1 COMPOSITE +2 2 CAPPL +3 3 VERTICAL SECTION +4 4 ALPHANUMERIC DATA +5 5 MAP OF SUBJECT CLUTTER +6 6 MAP +7 7 TEST PICTURE +8 8 COMMENTS +9 9 MAP OF GROUND OCCULTATION +10 10 MAP OF RADAR BEAM HEIGHT +14 14 OTHER +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/30032.table b/definitions/bufr/tables/0/wmo/42/codetables/30032.table new file mode 100644 index 000000000..942cb5d7f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/30032.table @@ -0,0 +1,9 @@ +1 1 MAP +2 2 SATELLITE IR +3 3 SATELLITE VIS +4 4 SATELLITE WV +5 5 SATELLITE MULTISPECTRAL +6 6 SYNOPTIC OBSERVATIONS +7 7 FORECAST PARAMETERS +8 8 LIGHTNING DATA +15 15 OTHER DATA diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3004.table b/definitions/bufr/tables/0/wmo/42/codetables/3004.table new file mode 100644 index 000000000..571e234bf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3004.table @@ -0,0 +1,11 @@ +0 0 STEVENSON SCREEN +1 1 MARINE STEVENSON SCREEN +2 2 CYLINDRICAL SECTION PLATE SHIELD +3 3 CONCENTRIC TUBE +4 4 RECTANGULAR SECTION SHIELD +5 5 SQUARE SECTION SHIELD +6 6 TRIANGULAR SECTION SHIELD +7 7 OPEN COVERED LEAN-TO +8 8 OPEN COVERED INVERTED V ROOF +9 9 INTEGRATED (E.G. CHILLED MIRROR) +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3008.table b/definitions/bufr/tables/0/wmo/42/codetables/3008.table new file mode 100644 index 000000000..e321d5562 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3008.table @@ -0,0 +1,4 @@ +0 0 NATURAL VENTILATION IN USE +1 1 ARTIFICIAL ASPIRATION IN USE: CONSTANT FLOW AT TIME OF READING +2 2 ARTIFICIAL ASPIRATION IN USE: VARIABLE FLOW AT TIME OF READING +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3010.table b/definitions/bufr/tables/0/wmo/42/codetables/3010.table new file mode 100644 index 000000000..75746a1c3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3010.table @@ -0,0 +1,12 @@ +0 0 RESERVED +1 1 ADCP +2 2 GEK (GEOMAGNETIC ELECTROKINETOGRAPH) +3 3 SHIP'S SET AND DRIFT DETERMINED BY FIXES 3-6 HOURS APART +4 4 SHIP'S SET AND DRIFT DETERMINED BY FIXES MORE THAN 6 HOURS BUT LESS THAN 12 HOURS APART +5 5 DRIFT OF BUOY +6 6 ADCP +7 7 ADCP BOTTOM TRACKING MODE +8 8 ELECTROMAGNETIC SENSOR +9 9 ROTOR AND VANE +10 10 LOWERED ADCP +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3011.table b/definitions/bufr/tables/0/wmo/42/codetables/3011.table new file mode 100644 index 000000000..748826848 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3011.table @@ -0,0 +1,4 @@ +0 0 DEPTH CALCULATED USING FALL RATE EQUATION +1 1 DEPTH CALCULATED FROM WATER PRESSURE/EQUATION OF STATE +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3012.table b/definitions/bufr/tables/0/wmo/42/codetables/3012.table new file mode 100644 index 000000000..35bdeadd5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3012.table @@ -0,0 +1,3 @@ +0 0 ANDERRAA OXYGEN OPTODE +1 1 WINKLER BOTTLE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3016.table b/definitions/bufr/tables/0/wmo/42/codetables/3016.table new file mode 100644 index 000000000..792788f42 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3016.table @@ -0,0 +1,9 @@ +0 0 FAST LANE BETWEEN THE WHEEL TRACKS +1 1 FAST LANE BETWEEN THE WHEEL TRACKS IN THE OPPOSITE DIRECTION +2 2 FAST LANE IN THE WHEEL TRACKS +3 3 FAST LANE IN THE WHEEL TRACKS IN THE OPPOSITE DIRECTION +4 4 SLOW LANE BETWEEN THE WHEEL TRACKS +5 5 SLOW LANE BETWEEN THE WHEEL TRACKS IN THE OPPOSITE DIRECTION +6 6 SLOW LANE IN THE WHEEL TRACKS +7 7 SLOW LANE IN THE WHEEL TRACKS IN THE OPPOSITE DIRECTION +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3017.table b/definitions/bufr/tables/0/wmo/42/codetables/3017.table new file mode 100644 index 000000000..e94c0a449 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3017.table @@ -0,0 +1,5 @@ +1 1 AUTOMATIC +2 2 MANNED +3 3 EVENT TRIGGERED +4 4 LONGER TIME PERIOD THAN THE STANDARD +5 5 RESERVED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3018.table b/definitions/bufr/tables/0/wmo/42/codetables/3018.table new file mode 100644 index 000000000..b3769ae40 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3018.table @@ -0,0 +1,22 @@ +0 0 FREE TRACK WITHOUT FURTHER INFORMATION +1 1 FREE TRACK, EMBANKMENT +2 2 FREE TRACK, FLAT RELATIVE TO SURROUNDINGS +3 3 FREE TRACK, WATER BASIN(S) IN VICINITY +4 4 FREE TRACK, FOREST +5 5 FREE TRACK, CLEFT +6 6 FREE TRACK, ON HILLTOP +7 7 FREE TRACK, ON HILLTOP, FOREST +8 8 FREE TRACK, IN VALLEY +9 9 FREE TRACK, IN VALLEY, FOREST +10 10 FREE TRACK, NORTH INCLINATION +11 11 FREE TRACK, NORTH INCLINATION, FOREST +12 12 FREE TRACK, SOUTH INCLINATION +13 13 FREE TRACK, SOUTH INCLINATION, FOREST +20 20 BRIDGE WITHOUT FURTHER INFORMATION +21 21 BRIDGE ACROSS A VALLEY IN AN URBAN AREA +22 22 BRIDGE ACROSS A VALLEY WITH FOREST/MEADOWS/FIELDS +23 23 BRIDGE ACROSS STREET/TRACK +24 24 BRIDGE ACROSS BIG RIVER/CANAL +25 25 BRIDGE ACROSS RIVER/CANAL OF MEDIUM SIZE +26 26 BRIDGE ACROSS A SMALL STREAM/LOADING CANAL +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3019.table b/definitions/bufr/tables/0/wmo/42/codetables/3019.table new file mode 100644 index 000000000..2f55b0028 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3019.table @@ -0,0 +1,8 @@ +0 0 ASPHALT +1 1 CONCRETE +2 2 CONCRETE CONSTRUCTION +3 3 STEEL-GIRDER CONSTRUCTION +4 4 BOX GIRDER BRIDGE +5 5 ORTHOTROPIC SLAB +6 6 DRAIN ASPHALT +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3020.table b/definitions/bufr/tables/0/wmo/42/codetables/3020.table new file mode 100644 index 000000000..9f0feaea7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3020.table @@ -0,0 +1,5 @@ +0 0 WOOD +1 1 METAL ALLOY +2 2 PLASTIC/GRP +3 3 REED/GRASS/LEAF +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3021.table b/definitions/bufr/tables/0/wmo/42/codetables/3021.table new file mode 100644 index 000000000..27e1bfad4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3021.table @@ -0,0 +1,4 @@ +0 0 UNHEATED +1 1 HEATED +2 2 NOT APPLICABLE +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3022.table b/definitions/bufr/tables/0/wmo/42/codetables/3022.table new file mode 100644 index 000000000..daf67e27f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3022.table @@ -0,0 +1,4 @@ +0 0 NATIONAL HYDROMETEOROLOGICAL/WEATHER SERVICE +1 1 OTHER +2 2 STANDARDS INSTITUTE +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3023.table b/definitions/bufr/tables/0/wmo/42/codetables/3023.table new file mode 100644 index 000000000..9e683c891 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3023.table @@ -0,0 +1,8 @@ +0 0 SINGLE V-SECTION LOUVERS +1 1 OVERLAPPING LOUVERS +2 2 DOUBLE V-SECTION LOUVERS +3 3 NON-OVERLAPPING LOUVERS +4 4 VENTED, NON-LOUVERED +5 5 NOT APPLICABLE +6 6 RESERVED FOR FUTURE USE +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3027.table b/definitions/bufr/tables/0/wmo/42/codetables/3027.table new file mode 100644 index 000000000..8280e8602 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3027.table @@ -0,0 +1,8 @@ +0 0 SOLO (SINGLE RADIOSONDE) +1 1 BLOCK +2 2 BAR +3 3 CROSS +4 4 T-RIG +5 5 DOUBLE T-RIG +6 6 COMPLEX +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3028.table b/definitions/bufr/tables/0/wmo/42/codetables/3028.table new file mode 100644 index 000000000..9cc805953 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3028.table @@ -0,0 +1,8 @@ +0 0 MULTI POINT MANUAL SNOW SURVEY +1 1 SINGLE POINT MANUAL SNOW WATER EQUIVALENT MEASUREMENT +2 2 SNOW PILLOW OR SNOW SCALE +3 3 PASSIVE GAMMA +4 4 GNSS/GPS METHODS +5 5 COSMIC RAY ATTENUATION +6 6 TIME DOMAIN REFLECTOMETRY +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3029.table b/definitions/bufr/tables/0/wmo/42/codetables/3029.table new file mode 100644 index 000000000..374df7c0e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3029.table @@ -0,0 +1,3 @@ +0 0 LEFT HAND SIDE +1 1 RIGHT HAND SIDE +7 7 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/3030.table b/definitions/bufr/tables/0/wmo/42/codetables/3030.table new file mode 100644 index 000000000..48033d8f4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/3030.table @@ -0,0 +1,3 @@ +0 0 TRANSMITTING +1 1 RECEIVING +7 7 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/31021.table b/definitions/bufr/tables/0/wmo/42/codetables/31021.table new file mode 100644 index 000000000..3b4875d89 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/31021.table @@ -0,0 +1,10 @@ +0 0 RESERVED +1 1 1-BIT INDICATOR OF QUALITY +2 2 2-BIT INDICATOR OF QUALITY +5 5 8-BIT INDICATOR OF QUALITY CONTROL +6 6 4-BIT INDICATOR OF QUALITY CONTROL CLASS ACCORDING TO GTSPP +7 7 PERCENTAGE CONFIDENCE +8 8 0 = NOT SUSPECTED, 1 = SUSPECTED, 2 = RESERVED, 3 = INFORMATION NOT REQUIRED +9 9 0 = DATA PRESENT, GOOD, COLLOCATED, 1 = DATA AVAILABLE BUT OF DEGRADED QUALITY AND NOT USED, 2 = NO SPATIOTEMPORALLY COLLOCATED DATA AVAILABLE, 3-14 = NOT USED (RESERVED), 15 = MISSING VALUE +21 21 1-BIT INDICATOR OF CORRECTION +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/31031.table b/definitions/bufr/tables/0/wmo/42/codetables/31031.table new file mode 100644 index 000000000..d268b380c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/31031.table @@ -0,0 +1 @@ +1 1 0 = DATA PRESENT, 1 = DATA NOT PRESENT diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33002.table b/definitions/bufr/tables/0/wmo/42/codetables/33002.table new file mode 100644 index 000000000..4177c0577 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33002.table @@ -0,0 +1,4 @@ +0 0 DATA NOT SUSPECT +1 1 DATA SUSPECT +2 2 RESERVED +3 3 QUALITY INFORMATION NOT GIVEN diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33003.table b/definitions/bufr/tables/0/wmo/42/codetables/33003.table new file mode 100644 index 000000000..7577129b0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33003.table @@ -0,0 +1,5 @@ +0 0 DATA NOT SUSPECT +1 1 DATA SLIGHTLY SUSPECT +2 2 DATA HIGHLY SUSPECT +3 3 DATA CONSIDERED UNFIT FOR USE +7 7 QUALITY INFORMATION NOT GIVEN diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33005.table b/definitions/bufr/tables/0/wmo/42/codetables/33005.table new file mode 100644 index 000000000..8d7569ad2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33005.table @@ -0,0 +1,23 @@ +1 1 NO AUTOMATED METEOROLOGICAL DATA CHECKS PERFORMED +2 2 PRESSURE DATA SUSPECT +3 3 WIND DATA SUSPECT +4 4 AIR TEMPERATURE DATA SUSPECT +5 5 WET-BULB TEMPERATURE DATA SUSPECT +6 6 HUMIDITY DATA SUSPECT +7 7 GROUND TEMPERATURE DATA SUSPECT +8 8 SOIL TEMPERATURE (DEPTH 1) DATA SUSPECT +9 9 SOIL TEMPERATURE (DEPTH 2) DATA SUSPECT +10 10 SOIL TEMPERATURE (DEPTH 3) DATA SUSPECT +11 11 SOIL TEMPERATURE (DEPTH 4) DATA SUSPECT +12 12 SOIL TEMPERATURE (DEPTH 5) DATA SUSPECT +13 13 CLOUD DATA SUSPECT +14 14 VISIBILITY DATA SUSPECT +15 15 PRESENT WEATHER DATA SUSPECT +16 16 LIGHTNING DATA SUSPECT +17 17 ICE DEPOSIT DATA SUSPECT +18 18 PRECIPITATION DATA SUSPECT +19 19 STATE OF GROUND DATA SUSPECT +20 20 SNOW DATA SUSPECT +21 21 WATER CONTENT DATA SUSPECT +22 22 EVAPORATION/EVAPOTRANSPIRATION DATA SUSPECT +23 23 SUNSHINE DATA SUSPECT diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33006.table b/definitions/bufr/tables/0/wmo/42/codetables/33006.table new file mode 100644 index 000000000..0ea44a50b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33006.table @@ -0,0 +1,5 @@ +0 0 SELF-CHECK OK +1 1 AT LEAST ONE WARNING ACTIVE, NO ALARMS +2 2 AT LEAST ONE ALARM ACTIVE +3 3 SENSOR FAILURE +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33015.table b/definitions/bufr/tables/0/wmo/42/codetables/33015.table new file mode 100644 index 000000000..f585808d0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33015.table @@ -0,0 +1,16 @@ +0 0 PASSED ALL CHECKS +1 1 MISSING DATA CHECK +2 2 DESCENDING/REASCENDING BALLOON CHECK +3 3 DATA PLAUSIBILITY CHECK (ABOVE LIMITS) +4 4 DATA PLAUSIBILITY CHECK (BELOW LIMITS) +5 5 SUPERADIABATIC LAPSE RATE CHECK +6 6 LIMITING ANGLES CHECK +7 7 ASCENSION RATE CHECK +8 8 EXCESSIVE CHANGE FROM PREVIOUS FLIGHT +9 9 BALLOON OVERHEAD CHECK +10 10 WIND SPEED CHECK +11 11 WIND DIRECTION CHECK +12 12 DEPENDENCY CHECK +13 13 DATA VALID BUT MODIFIED +14 14 DATA OUTLIER CHECK +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33020.table b/definitions/bufr/tables/0/wmo/42/codetables/33020.table new file mode 100644 index 000000000..ba7a4d4ea --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33020.table @@ -0,0 +1,8 @@ +0 0 GOOD +1 1 INCONSISTENT +2 2 DOUBTFUL +3 3 WRONG +4 4 NOT CHECKED +5 5 HAS BEEN CHANGED +6 6 ESTIMATED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33021.table b/definitions/bufr/tables/0/wmo/42/codetables/33021.table new file mode 100644 index 000000000..e3e67ae8c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33021.table @@ -0,0 +1,4 @@ +0 0 WITHIN LIMITS +1 1 OUTSIDE LIMITS +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33022.table b/definitions/bufr/tables/0/wmo/42/codetables/33022.table new file mode 100644 index 000000000..50ef65feb --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33022.table @@ -0,0 +1,4 @@ +0 0 GOOD (SEVERAL IDENTICAL REPORTS HAVE BEEN RECEIVED) +1 1 DUBIOUS (NO IDENTICAL REPORTS HAVE BEEN RECEIVED) +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33023.table b/definitions/bufr/tables/0/wmo/42/codetables/33023.table new file mode 100644 index 000000000..896c816a9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33023.table @@ -0,0 +1,4 @@ +0 0 RELIABLE (LOCATION WAS MADE OVER TWO SATELLITE PASSES) +1 1 LATEST KNOWN (NO LOCATION OVER THE CORRESPONDING PASS) +2 2 DUBIOUS (LOCATION MADE OVER ONE PASS ONLY; A SECOND SOLUTION IS POSSIBLE IN 5 PER CENT OF THE CASES) +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33024.table b/definitions/bufr/tables/0/wmo/42/codetables/33024.table new file mode 100644 index 000000000..771e04b81 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33024.table @@ -0,0 +1,10 @@ +0 0 RESERVED +1 1 EXCELLENT - WITHIN 3 METRES +2 2 GOOD - WITHIN 10 METRES +3 3 FAIR - WITHIN 20 METRES +4 4 POOR - MORE THAN 20 METRES +5 5 EXCELLENT - WITHIN 10 FEET +6 6 GOOD - WITHIN 30 FEET +7 7 FAIR - WITHIN 60 FEET +8 8 POOR - MORE THAN 60 FEET +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33025.table b/definitions/bufr/tables/0/wmo/42/codetables/33025.table new file mode 100644 index 000000000..4da695aa0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33025.table @@ -0,0 +1,5 @@ +0 0 TIME INTERPOLATED, LATITUDE AND LONGITUDE REPORTED +1 1 TIME REPORTED, LATITUDE AND LONGITUDE INTERPOLATED +2 2 TIME, LATITUDE, AND LONGITUDE INTERPOLATED +3 3 TIME, LATITUDE, AND LONGITUDE REPORTED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33026.table b/definitions/bufr/tables/0/wmo/42/codetables/33026.table new file mode 100644 index 000000000..08c61254b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33026.table @@ -0,0 +1,17 @@ +0 0 NORMAL OPERATIONS - MEASUREMENT MODE +1 1 NORMAL OPERATIONS - NON-MEASUREMENT MODE +2 2 SMALL RH +3 3 HUMIDITY ELEMENT IS WET +4 4 HUMIDITY ELEMENT CONTAMINATED +5 5 HEATER FAIL +6 6 HEATER FAIL AND WET/CONTAMINATED HUMIDITY ELEMENT +7 7 AT LEAST ONE OF THE INPUT PARAMETERS USED IN THE CALCULATION OF MIXING RATIO IS INVALID +8 8 NUMERIC ERROR +9 9 SENSOR NOT INSTALLED +10 10 CALCULATED RH > 100% +11 11 INPUT LASER POWER TOO LOW +12 12 PROBE WV TEMPERATURE OUT OF RANGE +13 13 PROBE WV PRESSURE OUT OF RANGE +14 14 SPECTRAL LINE OUT OF RANGE +15 15 NO LASER OUTPUT +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33027.table b/definitions/bufr/tables/0/wmo/42/codetables/33027.table new file mode 100644 index 000000000..c563af46f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33027.table @@ -0,0 +1,6 @@ +0 0 RADIUS >= 1500 M +1 1 500 M =< RADIUS <1500 M +2 2 250 M =< RADIUS < 500 M +3 3 RADIUS < 250 M +4 4 =< 100 M +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33028.table b/definitions/bufr/tables/0/wmo/42/codetables/33028.table new file mode 100644 index 000000000..688dec0e4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33028.table @@ -0,0 +1,7 @@ +1 1 NOMINAL +2 2 DEGRADED BY SW ERROR; ANY ERROR REPORTED BY THE ALGORITHMS +3 3 DEGRADED BY INSTRUMENT ERROR +4 4 DEGRADED BY CORRUPTED /MISSING ADF +5 5 GENERAL DEGRADATION +6 6 RESERVED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33030.table b/definitions/bufr/tables/0/wmo/42/codetables/33030.table new file mode 100644 index 000000000..c9e36c0f4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33030.table @@ -0,0 +1,7 @@ +1 1 DO NOT USE SCAN FOR PRODUCT GENERATION +2 2 TIME SEQUENCE ERROR DETECTED WITH THIS SCAN +3 3 DATA GAP PRECEDES THIS SCAN +4 4 NO CALIBRATION +5 5 NO EARTH LOCATION +6 6 FIRST GOOD TIME FOLLOWING A CLOCK UPDATE +7 7 INSTRUMENT STATUS CHANGED WITH THIS SCAN diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33031.table b/definitions/bufr/tables/0/wmo/42/codetables/33031.table new file mode 100644 index 000000000..c11fd4a09 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33031.table @@ -0,0 +1,21 @@ +1 1 TIME FIELD IS BAD BUT CAN PROBABLY BE INFERRED FROM THE PREVIOUS GOOD TIME +2 2 TIME FIELD IS BAD AND CANNOT BE INFERRED FROM THE PREVIOUS GOOD TIME +3 3 THIS RECORD STARTS A SEQUENCE THAT IS INCONSISTENT WITH PREVIOUS TIMES (I.E. THERE IS A TIME DISCONTINUITY). THIS MAY OR MAY NOT BE ASSOCIATED WITH A SPACECRAFT CLOCK UPDATE (SEE SCAN LINE STATUS FLAGS FOR ATOVS) +4 4 START OF A SEQUENCE THAT APPARENTLY REPEATS SCAN TIMES THAT HAVE BEEN PREVIOUSLY ACCEPTED +5 5 SCAN LINE WAS NOT CALIBRATED BECAUSE OF BAD TIME +6 6 SCAN LINE WAS CALIBRATED USING FEWER THAN THE PREFERRED NUMBER OF SCAN LINES BECAUSE OF PROXIMITY TO START OR END OF DATA OR TO A DATA GAP +7 7 SCAN LINE WAS NOT CALIBRATED BECAUSE OF BAD OR INSUFFICIENT PRT DATA +8 8 SCAN LINE WAS CALIBRATED BUT WITH MARGINAL PRT DATA +9 9 SOME UNCALIBRATED CHANNELS ON THIS SCAN +10 10 UNCALIBRATED DUE TO INSTRUMENT MODE +11 11 QUESTIONABLE CALIBRATION BECAUSE OF ANTENNA POSITION ERROR OF SPACE VIEW +12 12 QUESTIONABLE CALIBRATION BECAUSE OF ANTENNA POSITION ERROR OF BLACK BODY +13 13 NOT EARTH LOCATED BECAUSE OF BAD TIME +14 14 EARTH LOCATION QUESTIONABLE BECAUSE OF QUESTIONABLE TIME CODE (SEE TIME PROBLEM CODE BITS) +15 15 EARTH LOCATION QUESTIONABLE - ONLY MARGINAL AGREEMENT WITH REASONABLENESS CHECK +16 16 EARTH LOCATION QUESTIONABLE - FAILS REASONABLENESS CHECK +17 17 EARTH LOCATION QUESTIONABLE BECAUSE OF ANTENNA POSITION CHECK +18 18 SCAN LINE CALIBRATION COLD BLACK BODY +19 19 SCAN LINE CALIBRATION WARM BLACK BODY +20 20 SCAN LINE CALIBRATION SPACE VIEW +21 21 EARTH VIEW diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33032.table b/definitions/bufr/tables/0/wmo/42/codetables/33032.table new file mode 100644 index 000000000..33307f50a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33032.table @@ -0,0 +1,7 @@ +1 1 NO GOOD BLACKBODY COUNTS FOR SCAN LINE +2 2 NO GOOD SPACE VIEW COUNTS FOR THIS LINE +3 3 NO GOOD PRTS FOR THIS LINE +4 4 SOME BAD BLACKBODY VIEW COUNTS FOR THIS LINE +5 5 SOME BAD SPACE VIEW COUNTS FOR THIS LINE +6 6 SOME BAD PRT TEMPS ON THIS LINE +7 7 QUALITY FOR THIS SCAN IS REDUCED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33033.table b/definitions/bufr/tables/0/wmo/42/codetables/33033.table new file mode 100644 index 000000000..6fd320510 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33033.table @@ -0,0 +1,3 @@ +1 1 SET IF SECONDARY CALIBRATION USED +22 22 SET IF ALL THE CHANNELS ARE MISSING +23 23 SUSPECT diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33035.table b/definitions/bufr/tables/0/wmo/42/codetables/33035.table new file mode 100644 index 000000000..01996bae4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33035.table @@ -0,0 +1,10 @@ +0 0 AUTOMATIC QUALITY CONTROL PASSED AND NOT MANUALLY CHECKED +1 1 AUTOMATIC QUALITY CONTROL PASSED AND MANUALLY CHECKED AND PASSED +2 2 AUTOMATIC QUALITY CONTROL PASSED AND MANUALLY CHECKED AND DELETED +3 3 AUTOMATIC QUALITY CONTROL FAILED AND MANUALLY NOT CHECKED +4 4 AUTOMATIC QUALITY CONTROL FAILED AND MANUALLY CHECKED AND FAILED +5 5 AUTOMATIC QUALITY CONTROL FAILED AND MANUALLY CHECKED AND RE-INSERTED +6 6 AUTOMATIC QUALITY CONTROL FLAGGED DATA AS QUESTIONABLE AND NOT MANUALLY CHECKED +7 7 AUTOMATIC QUALITY CONTROL FLAGGED DATA AS QUESTIONABLE AND MANUALLY CHECKED AND FAILED +8 8 MANUALLY CHECKED AND FAILED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33037.table b/definitions/bufr/tables/0/wmo/42/codetables/33037.table new file mode 100644 index 000000000..9f26652a5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33037.table @@ -0,0 +1,19 @@ +1 1 U DEPARTURE FROM GUESS +2 2 V DEPARTURE FROM GUESS +3 3 U AND V DEPARTURE FROM GUESS +4 4 U ACCELERATION +5 5 V ACCELERATION +6 6 U AND V ACCELERATION +7 7 POSSIBLE LAND FEATURE +8 8 U ACCELERATION AND POSSIBLE LAND FEATURE +9 9 V ACCELERATION AND POSSIBLE LAND FEATURE +10 10 U AND V ACCELERATION AND POSSIBLE LAND FEATURE +11 11 BAD WIND GUESS +12 12 CORRELATION FAILURE +13 13 SEARCH BOX OFF EDGE OF AREA +14 14 TARGET BOX OFF EDGE OF AREA +15 15 PIXEL BRIGHTNESS OUT OF BOUNDS (NOISY LINE) +16 16 TARGET OUTSIDE OF LATITUDE/LONGITUDE BOX +17 17 TARGET OUTSIDE OF PRESSURE MINIMUM/MAXIMUM +18 18 AUTOEDITOR FLAGGED SLOW VECTOR +19 19 AUTOEDITOR FLAGGED VECTORS diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33038.table b/definitions/bufr/tables/0/wmo/42/codetables/33038.table new file mode 100644 index 000000000..3dc1192e8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33038.table @@ -0,0 +1,9 @@ +1 1 TOTAL ZENITH DELAY QUALITY IS CONSIDERED POOR +2 2 GALILEO SATELLITES USED +3 3 GLONASS SATELLITES USED +4 4 GPS SATELLITES USED +5 5 METEOROLOGICAL DATA APPLIED +6 6 ATMOSPHERIC LOADING CORRECTION APPLIED +7 7 OCEAN TIDE LOADING APPLIED +8 8 CLIMATE QUALITY DATA PROCESSING +9 9 NEAR-REAL TIME DATA PROCESSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33039.table b/definitions/bufr/tables/0/wmo/42/codetables/33039.table new file mode 100644 index 000000000..c34540914 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33039.table @@ -0,0 +1,12 @@ +1 1 NON-NOMINAL QUALITY +2 2 OFFLINE PRODUCT +3 3 ASCENDING OCCULTATION FLAG +4 4 EXCESS PHASE PROCESSING NON-NOMINAL +5 5 BENDING ANGLE PROCESSING NON-NOMINAL +6 6 REFRACTIVITY PROCESSING NON-NOMINAL +7 7 METEOROLOGICAL PROCESSING NON-NOMINAL +8 8 OPEN LOOP DATA INCLUDED +9 9 SURFACE REFLECTIONS DETECTED +10 10 L2C GNSS SIGNALS USED +14 14 BACKGROUND PROFILE NON-NOMINAL +15 15 BACKGROUND (I.E. NOT RETRIEVED) PROFILE PRESENT diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33041.table b/definitions/bufr/tables/0/wmo/42/codetables/33041.table new file mode 100644 index 000000000..8bbdba90a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33041.table @@ -0,0 +1,4 @@ +0 0 THE FOLLOWING VALUE IS THE TRUE VALUE +1 1 THE FOLLOWING VALUE IS HIGHER THAN THE TRUE VALUE (THE MEASUREMENT HIT THE LOWER LIMIT OF THE INSTRUMENT) +2 2 THE FOLLOWING VALUE IS LOWER THAN THE TRUE VALUE (THE MEASUREMENT HIT THE HIGHER LIMIT OF THE INSTRUMENT) +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33042.table b/definitions/bufr/tables/0/wmo/42/codetables/33042.table new file mode 100644 index 000000000..b75447a4a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33042.table @@ -0,0 +1,5 @@ +0 0 EXCLUSIVE LOWER LIMIT (>) +1 1 INCLUSIVE LOWER LIMIT (>=) +2 2 EXCLUSIVE UPPER LIMIT (<) +3 3 INCLUSIVE UPPER LIMIT (=<) +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33043.table b/definitions/bufr/tables/0/wmo/42/codetables/33043.table new file mode 100644 index 000000000..398d9ab2c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33043.table @@ -0,0 +1,4 @@ +1 1 SEA MDS. NADIR ONLY SST RETRIEVAL USED 3.7 MICRON CHANNEL. LAND MDS RESERVED +2 2 SEA MDS. DUAL VIEW SST RETRIEVAL USED 3.7 MICRON CHANNEL. LAND MDS RESERVED +3 3 NADIR VIEW CONTAINS DAY TIME DATA +4 4 FORWARD VIEW CONTAINS DAY TIME DATA diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33044.table b/definitions/bufr/tables/0/wmo/42/codetables/33044.table new file mode 100644 index 000000000..01746c795 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33044.table @@ -0,0 +1,14 @@ +1 1 INPUT DATA MEAN OUTSIDE NOMINAL RANGE FLAG +2 2 INPUT DATA STANDARD DEVIATION OUTSIDE NOMINAL RANGE FLAG +3 3 NUMBER OF INPUT DATA GAPS > THRESHOLD VALUE +4 4 PERCENTAGE OF MISSING LINES > THRESHOLD VALUE +5 5 DOPPLER CENTROID UNCERTAIN. CONFIDENCE MEASURE < SPECIFIC VALUE +6 6 DOPPLER AMBIGUITY ESTIMATE UNCERTAIN. CONFIDENCE MEASURE < SPECIFIC VALUE +7 7 OUTPUT DATA MEAN OUTSIDE NOMINAL RANGE FLAG +8 8 OUTPUT DATA STANDARD DEVIATION OUTSIDE NOMINAL RANGE FLAG +9 9 CHIRP RECONSTRUCTION FAILED OR IS OF LOW QUALITY FLAG +10 10 DATA SET MISSING +11 11 INVALID DOWNLINK PARAMETERS +12 12 AZIMUTH CUT-OFF ITERATION COUNT. THE AZIMUTH CUT-OFF FIT DID NOT CONVERGE WITHIN A MINIMUM NUMBER OF ITERATIONS +13 13 AZIMUTH CUT-OFF FIT DID NOT CONVERGE WITHIN A MINIMUM NUMBER OF ITERATIONS +14 14 PHASE INFORMATION CONFIDENCE MEASURE. THE IMAGINARY SPECTRAL PEAK IS LESS THAN A MINIMUM THRESHOLD, OR THE ZERO LAG SHIFT IS GREATER THAN A MINIMUM THRESHOLD diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33047.table b/definitions/bufr/tables/0/wmo/42/codetables/33047.table new file mode 100644 index 000000000..f69b56e18 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33047.table @@ -0,0 +1,27 @@ +1 1 ERROR DETECTED AND ATTEMPTS TO RECOVER MADE +2 2 ANOMALY IN ON-BOARD DATA HANDLING (OBDH) VALUE DETECTED +3 3 ANOMALY IN ULTRA STABLE OSCILLATOR PROCESSING (USOP) VALUE DETECTED +4 4 ERRORS DETECTED BY ON-BOARD COMPUTER +5 5 AUTOMATIC GAIN CONTROL (AGC) OUT OF RANGE +6 6 RECEPTION (RX) DELAY FAULT. RX DISTANCE OUT OF RANGE +7 7 WAVE FORM SAMPLES FAULT IDENTIFIER. ERROR +8 8 S BAND ANOMALY/ERROR DETECTED +12 12 BRIGHTNESS TEMPERATURE (CHANNEL 1) OUT OF RANGE +13 13 BRIGHTNESS TEMPERATURE (CHANNEL 2) OUT OF RANGE +14 14 RESERVED +15 15 KU BAND OCEAN RETRACKING ERROR +16 16 S BAND OCEAN RETRACKING ERROR +17 17 KU BAND ICE 1 RETRACKING ERROR +18 18 S BAND ICE 1 RETRACKING ERROR +19 19 KU BAND ICE 2 RETRACKING ERROR +20 20 S BAND ICE 2 RETRACKING ERROR +21 21 KU BAND SEA ICE RETRACKING ERROR +22 22 ARITHMETIC FAULT ERROR +23 23 METEO DATA STATE. NO MAP +24 24 METEO DATA STATE. 1 MAP +25 25 METEO DATA STATE. 2 MAPS DEGRADED +26 26 METEO DATA STATE. 2 MAPS NOMINAL +27 27 ORBIT PROPAGATOR STATUS FOR PROPAGATION MODE, SEVERAL ERRORS +28 28 ORBIT PROPAGATOR STATUS FOR PROPAGATION MODE, WARNING DETECTED +29 29 ORBIT PROPAGATOR STATUS FOR INITIALIZATION MODE, SEVERAL ERRORS +30 30 ORBIT PROPAGATOR STATUS FOR INITIALIZATION MODE, WARNING DETECTED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33048.table b/definitions/bufr/tables/0/wmo/42/codetables/33048.table new file mode 100644 index 000000000..312ba4071 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33048.table @@ -0,0 +1,4 @@ +0 0 INVERSION SUCCESSFUL +1 1 INVERSION NOT SUCCESSFUL +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33049.table b/definitions/bufr/tables/0/wmo/42/codetables/33049.table new file mode 100644 index 000000000..bdde0619b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33049.table @@ -0,0 +1,4 @@ +0 0 EXTERNAL WIND DIRECTION USED DURING INVERSION +1 1 EXTERNAL WIND DIRECTION NOT USED DURING INVERSION +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33050.table b/definitions/bufr/tables/0/wmo/42/codetables/33050.table new file mode 100644 index 000000000..ee7bb6deb --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33050.table @@ -0,0 +1,9 @@ +0 0 UNQUALIFIED +1 1 CORRECT VALUE (ALL CHECKS PASSED) +2 2 PROBABLY GOOD BUT VALUE INCONSISTENT WITH STATISTICS (DIFFER FROM CLIMATOLOGY) +3 3 PROBABLY BAD (SPIKE, GRADIENT, ETC., IF OTHER TESTS PASSED) +4 4 BAD VALUE, IMPOSSIBLE VALUE (OUT OF SCALE, VERTICAL INSTABILITY, CONSTANT PROFILE) +5 5 VALUE MODIFIED DURING QUALITY CONTROL +8 8 INTERPOLATED VALUE +9 9 GOOD FOR OPERATIONAL USE; CAUTION; CHECK LITERATURE FOR OTHER USES +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33054.table b/definitions/bufr/tables/0/wmo/42/codetables/33054.table new file mode 100644 index 000000000..d9ca13cf9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33054.table @@ -0,0 +1,5 @@ +0 0 PROFILE VALUES GOOD +1 1 PROFILE VALUES SUSPECTED +2 2 RESERVED +3 3 PROFILE VALUES NOT GOOD +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33055.table b/definitions/bufr/tables/0/wmo/42/codetables/33055.table new file mode 100644 index 000000000..b757af0bb --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33055.table @@ -0,0 +1,13 @@ +11 11 OCEAN SIGMA-0 IS NOT AVAILABLE FOR WIND RETRIEVALS +12 12 BACKGROUND WIND IS NOT AVAILABLE +13 13 BACKGROUND MODEL DETECT LAND +14 14 BACKGROUND MODEL DETECT ICE +15 15 SIGMA-0 IS NOT LAND/ICE FREE +16 16 SIGMA-0 LAND CONTAMINATION +17 17 SIGMA-0 ICE CONTAMINATION +18 18 NOT ENOUGH AZIMUTHAL DIVERSITY +19 19 INVERSION IS NOT DONE +20 20 OVERALL WVC FLAG +21 21 INVERSION IS ATTEMPTED (FLAG IS SET) +22 22 RAINFLAG IS ATTEMPTED (FLAG IS SET) +23 23 RAIN IS DETECTED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33056.table b/definitions/bufr/tables/0/wmo/42/codetables/33056.table new file mode 100644 index 000000000..ce44ca922 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33056.table @@ -0,0 +1,13 @@ +8 8 ASCENDING +9 9 VV POLARISATION +10 10 FORE OF SPACECRAFT +11 11 LAND +12 12 POOR SIGMA-0 (SUMMARY) +13 13 INVALID SIGMA-0 (SUMMARY) +14 14 POOR BT +15 15 INVALID BT +16 16 LAND-SEA BOUNDARY +17 17 NEGATIVE SIGMA-0 +21 21 ICE +22 22 MISSING DATA AT A GIVEN LATITUDE-LONGITUDE FOR SEA-ICE FLAGGING PROCESS FOR 2 OR MORE DAYS +23 23 ICE-OCEAN CONTAMINATION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33060.table b/definitions/bufr/tables/0/wmo/42/codetables/33060.table new file mode 100644 index 000000000..741430292 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33060.table @@ -0,0 +1,4 @@ +0 0 GOOD +1 1 BAD +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33066.table b/definitions/bufr/tables/0/wmo/42/codetables/33066.table new file mode 100644 index 000000000..a80e6ab9a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33066.table @@ -0,0 +1,4 @@ +20 20 GOOD WIND, BUT AN ALTERNATIVE CHANNEL USED FOR FEATURE TRACKING +21 21 GOOD WIND, BUT AN ALTERNATIVE SET OF CHANNELS USED FOR THE DETERMINATION OF CLOUD-TOP HEIGHT/AMV HEIGHT ASSIGNMENT +22 22 CORRELATION SURFACE CONSTRAINT FAILS +23 23 RESERVED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33070.table b/definitions/bufr/tables/0/wmo/42/codetables/33070.table new file mode 100644 index 000000000..8a0467b65 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33070.table @@ -0,0 +1,14 @@ +0 0 GOOD RETRIEVAL +1 1 BAD AEROSOL INFORMATION FLAG OR NOAA-16 RADIANCE ANOMALY +2 2 SOLAR ZENITH ANGLE GREATER THAN 84 DEGREES +3 3 380 NM RESIDUE GREATER THAN LIMIT +4 4 OZONE INCONSISTENCY +5 5 DIFFERENCE BETWEEN PROFILE OZONE AND STEP 3 TOTAL OZONE EXCEEDS THRESHOLD (SET TO 25 DU) +6 6 STEP 1 OZONE ITERATION DID NOT CONVERGE +7 7 ANY CHANNEL RESIDUE GREATER THAN 16 OR BAD RADIANCE +8 8 INSUFFICIENT PIXELS - NOT PROCESSED +9 9 FIRST GUESS GOOD - OZONE FORECAST DATA USED +10 10 HIGH CLOUD IN PIXEL - NOT PROCESSED +11 11 SUCCESSFUL OZONE RETRIEVAL +12 12 UNSUCCESSFUL OZONE RETRIEVAL +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33071.table b/definitions/bufr/tables/0/wmo/42/codetables/33071.table new file mode 100644 index 000000000..262a46c89 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33071.table @@ -0,0 +1,10 @@ +0 0 GOOD RETRIEVAL +1 1 SOLAR ZENITH ANGLE GREATER THAN 84 DEGREES +2 2 DIFFERENCE BETWEEN STEP 3 AND PROFILE TOTAL OZONE GREATER THAN LIMIT (25 DU) +3 3 AVERAGE FINAL RESIDUE FOR WAVELENGTHS USED IN RETRIEVAL GREATER THAN THRESHOLD +4 4 FINAL RESIDUE GREATER THAN 3 TIMES A PRIORI ERROR +5 5 DIFFERENCE BETWEEN RETRIEVED AND A PRIORI GREATER THAN 3 TIMES A PRIORI ERROR +6 6 NON-CONVERGENT SOLUTION +7 7 UPPER LEVEL PROFILE ANOMALY OR STRAY LIGHT ANOMALY +8 8 INITIAL RESIDUE GREATER THAN 18.0 N-VALUE UNITS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33072.table b/definitions/bufr/tables/0/wmo/42/codetables/33072.table new file mode 100644 index 000000000..fcc7f0972 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33072.table @@ -0,0 +1,18 @@ +0 0 GOOD RETRIEVAL +1 1 REFLECTIVITY OUT OF RANGE +2 2 LARGER PIXELS (NUMBER OF CROSS-TRACK PIXELS LESS THAN 32) OR BACKWARD SCANS ERROR +3 3 SOLAR ZENITH ANGLE GREATER THAN 88 DEGREES +4 4 LATITUDE/LONGITUDE OUT OF RANGE +5 5 VIEWING ZENITH ANGLE OR SOLAR ZENITH ANGLE OUT OF RANGE +6 6 STEP-ONE PROCESS FAILED IN GENERAL +7 7 FIRST GUESS OZONE OUT OF RANGE +8 8 TOO MANY ITERATIONS (EXCEED 8) +9 9 STEP-ONE RESIDUE CALCULATION FAILED +10 10 STEP-TWO PROCESS FAILED IN GENERAL +11 11 FIRST GUESS OZONE PROFILE OUT OF RANGE +12 12 STEP-TWO OZONE VALUE OUT OF RANGE +13 13 STEP-TWO RESIDUE CALCULATION FAILED +14 14 STEP-THREE PROCESS FAILED IN GENERAL +15 15 POLARIZATION CORRECTION ACCURACY ALERT +16 16 RADIANCE OR IRRADIANCE LESS OR EQUAL TO ZERO +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33075.table b/definitions/bufr/tables/0/wmo/42/codetables/33075.table new file mode 100644 index 000000000..23edae628 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33075.table @@ -0,0 +1,5 @@ +1 1 GAP IN RAW DATA RECORD (RDR) DATA DETECTED (I.E., MISSING SCAN(S) PRECEDING THE CURRENT SCAN) +2 2 RECORDED TIME IS NOT IN SEQUENCE (I.E., THE SCAN START TIME IS OUT OF SEQUENCE) +3 3 LAMBDA MONITORED CALCULATION CANNOT BE UPDATED +4 4 THE MEASURED TEMPERATURES OF ANY INSTRUMENT COMPONENTS (E.G., BEAM-SPLITTER, SCAN MIRROR, SCAN BAFFLE) ARE OUTSIDE THE ALLOWABLE RANGES +5 5 AT LEAST ONE OF THE MONITORED INSTRUMENT TEMPERATURES HAS DRIFTED MORE THAN A SPECIFIED TOLERANCE VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33076.table b/definitions/bufr/tables/0/wmo/42/codetables/33076.table new file mode 100644 index 000000000..7100c4a0d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33076.table @@ -0,0 +1,2 @@ +1 1 LUNAR INTRUSION ON FIRST DEEP SPACE VIEW +2 2 LUNAR INTRUSION ON SECOND DEEP SPACE VIEW diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33077.table b/definitions/bufr/tables/0/wmo/42/codetables/33077.table new file mode 100644 index 000000000..769be02f2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33077.table @@ -0,0 +1,12 @@ +1 1 DEGRADED SDR QUALITY +2 2 INVALID SDR QUALITY +3 3 INVALID SDR GEOLOCATION INFORMATION +4 4 DEGRADED RADIOMETRIC CALIBRATION +5 5 INVALID RADIOMETRIC CALIBRATION +6 6 DEGRADED SPECTRAL CALIBRATION +7 7 INVALID SPECTRAL CALIBRATION +8 8 FRINGE COUNT ERROR DETECTED AND CORRECTED +9 9 DAY/NIGHT INDICATOR +10 10 INVALID RDR DATA +11 11 SIGNIFICANT FRINGE COUNT ERROR DETECTED +12 12 BIT TRIM FAILED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33078.table b/definitions/bufr/tables/0/wmo/42/codetables/33078.table new file mode 100644 index 000000000..f3a218067 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33078.table @@ -0,0 +1,5 @@ +0 0 NOMINAL - ALTITUDE AND EPHEMERIS DATA AVAILABLE +1 1 MISSING AT MOST A SMALL GAP OF ALTITUDE AND EPHEMERIS DATA +2 2 MISSING MORE THAN A SMALL GAP OF ALTITUDE AND EPHEMERIS DATA, BUT NO MORE THAN A GRANULE BOUNDARY +3 3 MISSING MORE THAN A GRANULE BOUNDARY OF ALTITUDE AND EPHEMERIS DATA +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33079.table b/definitions/bufr/tables/0/wmo/42/codetables/33079.table new file mode 100644 index 000000000..08751431e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33079.table @@ -0,0 +1,10 @@ +6 6 THE NO. 1-NO. 7 HEALTH CHECKS FAILED +7 7 THE NO. 8-NO. 15 HEALTH CHECKS FAILED +8 8 THE NO. 16-NO. 23 HEALTH CHECKS FAILED +9 9 THE NO. 24-NO. 31 HEALTH CHECKS FAILED +10 10 THE NO. 32-NO. 39 HEALTH CHECKS FAILED +11 11 THE NO. 40-NO. 47 HEALTH CHECKS FAILED +12 12 THE NO. 48-NO. 55 HEALTH CHECKS FAILED +13 13 THE NO. 56-NO. 63 HEALTH CHECKS FAILED +14 14 THE NO. 64-NO. 70 HEALTH CHECKS FAILED +15 15 QUADRATIC CORRECTION APPLIED TO THE RADIOMETRIC TRANSFER FUNCTION FOR NON-LINEARITY CORRECTION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33080.table b/definitions/bufr/tables/0/wmo/42/codetables/33080.table new file mode 100644 index 000000000..a39dd47ea --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33080.table @@ -0,0 +1,13 @@ +7 7 DIVIDE-BY-ZERO CONDITION OR COMPUTATION LOOP FAILED TO CONVERGE IN THE K/KA AND V (KAV) BAND PRT +8 8 DIVIDE-BY-ZERO CONDITION OR COMPUTATION LOOP FAILED TO CONVERGE IN THE WG BAND PRT +9 9 DIVIDE-BY-ZERO CONDITION OR COMPUTATION LOOP FAILED TO CONVERGE IN THE K/KA, V, W, G BAND RECEIVER SHELF PRT K TEMPERATURE COMPUTATION +10 10 OUT OF RANGE CONDITION FOR THE K/KA AND V BAND PRT +11 11 OUT OF RANGE CONDITION FOR THE WG BAND PRT +12 12 KAV PRT TEMPERATURE INCONSISTENCY +13 13 WG PRT TEMPERATURE INCONSISTENCY +14 14 TIME SEQUENCE ERROR +15 15 DATA GAP - MISSING SCAN(S) PRECEDING THE CURRENT SCAN +16 16 KAV PRT SUFFICIENCY - INSUFFICIENT KAV PRT DATA ARE AVAILABLE +17 17 WG PRT SUFFICIENCY - INSUFFICIENT WG PRT DATA ARE AVAILABLE +18 18 SPACE VIEW ANTENNA POSITION ERROR +19 19 BLACKBODY ANTENNA POSITION ERROR diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33081.table b/definitions/bufr/tables/0/wmo/42/codetables/33081.table new file mode 100644 index 000000000..f8759e0ef --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33081.table @@ -0,0 +1,9 @@ +3 3 MOON IN SPACE VIEW +4 4 GAIN ERROR - THE LOWEST BLACKBODY COUNT IS SMALLER THAN OR EQUAL TO THE HIGHEST SPACE VIEW COUNT IN A SCAN +5 5 CALIBRATION WITH FEWER THAN PREFERRED SAMPLES +6 6 SPACE VIEW DATA SUFFICIENCY CHECK - INSUFFICIENT SPACE VIEW SAMPLES ARE AVAILABLE +7 7 BLACKBODY VIEW DATA SUFFICIENCY CHECK - INSUFFICIENT BLACKBODY VIEW SAMPLES ARE AVAILABLE +8 8 OUT OF RANGE CONDITION FOR THE SPACE VIEW +9 9 OUT OF RANGE CONDITION FOR THE BLACKBODY VIEW +10 10 SPACE VIEW INCONSISTENCY +11 11 BLACKBODY VIEW INCONSISTENCY diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33082.table b/definitions/bufr/tables/0/wmo/42/codetables/33082.table new file mode 100644 index 000000000..467157461 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33082.table @@ -0,0 +1,10 @@ +6 6 WITHIN SOUTH ATLANTIC ANOMALY +7 7 INVALID INPUT DATA (INDICATES THAT ANY OF THE SPACECRAFT EPHEMERIS OR ATTITUDE DATA ARE INVALID) +8 8 BAD POINTING (INDICATES THAT THE SENSOR LOS DOES NOT INTERSECT THE GEOID, IS NEAR THE LIMB, HAS INVALID SENSOR ANGLES OR OTHER SIMILAR CONDITION) +9 9 BAD TERRAIN (INDICATES THAT THE ALGORITHM COULD NOT OBTAIN A VALID TERRAIN VALUE) +10 10 INVALID SOLAR ANGLES +11 11 MISSING AT MOST A SMALL GAP OF ALTITUDE AND EPHEMERIS DATA +12 12 MISSING MORE THAN A SMALL GAP OF ALTITUDE AND EPHEMERIS DATA, BUT NO MORE THAN A GRANULE BOUNDARY +13 13 MISSING MORE THAN A GRANULE BOUNDARY OF ALTITUDE AND EPHEMERIS DATA +14 14 THE NUMBER OF ENCODER PULSE VALUES PER DELTA TIME IS NOT AS EXPECTED +15 15 SOLAR ECLIPSE DURING EARTH VIEW SCAN diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33083.table b/definitions/bufr/tables/0/wmo/42/codetables/33083.table new file mode 100644 index 000000000..ecd8a1abf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33083.table @@ -0,0 +1,10 @@ +6 6 PIXEL IS AFFECTED BY RADIO-FREQUENCY INTERFERENCE +7 7 POOR CALIBRATION QUALITY DUE TO BAD SPACE VIEW OFFSETS, OBC VIEW OFFSETS, ETC. OR USE OF A PREVIOUS CALIBRATION VIEW +8 8 SATURATED PIXEL +9 9 MISSING DATA -DATA REQUIRED FOR CALIBRATION PROCESSING ARE NOT AVAILABLE FOR PROCESSING +10 10 CALIBRATED PIXEL RADIANCE OUT OF RANGE +11 11 CALIBRATED PIXEL REFLECTANCE OR EBBT OUT OF RANGE +12 12 THE MOON HAS CORRUPTED THE SPACE VIEW +13 13 SCAN DATA IS NOT PRESENT (NO VALID DATA) +14 14 QUALITY FOR THIS SCAN-LINE IS REDUCED. THE VALUE IS DETERMINED BY THE COMBINED NUMBER OF STEPS REQUIRED TO FIND A REPLACEMENT FOR THERMISTOR OR CALIBRATION SOURCE DATA +15 15 BAD DETECTOR diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33084.table b/definitions/bufr/tables/0/wmo/42/codetables/33084.table new file mode 100644 index 000000000..accb209c5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33084.table @@ -0,0 +1,10 @@ +6 6 BULK SST OUTSIDE OF VALIDATION RANGE +7 7 SKIN SST OUTSIDE OF VALIDATION RANGE +8 8 SENSOR ZENITH ANGLE > 40 DEGREES (PIXEL IS NOT WITHIN 40 DEGREES OF NADIR AND THEREFORE IS NOT OF HIGH QUALITY) +9 9 DEGRADATION - HORIZONTAL CELL SIZE (HCS) > 1.3 KM (HCS > 1.3 KM, SWATH WIDTH > 1 700 KM, SENSOR ZENITH ANGLE > 50.3 DEGREES) +10 10 EXCLUSION: NO OCEAN IN PIXEL +11 11 DEGRADATION: AEROSOL OPTICAL THICKNESS (AOT) > 0.6 (AOT IN HORIZONTAL CELL > 0.6 ON THE SLANT PATH (AOT @550 NM)) +12 12 EXCLUSION: AOT > 1.0 (AOT IN HORIZONTAL CELL > 1.0 ON THE SLANT PATH (AOT @550 NM)) +13 13 SUN GLINT PRESENT IN PIXEL +14 14 ICE CONCENTRATION THRESHOLD EXCEEDED (SST NOT RETRIEVED DUE TO ICE CONCENTRATION EXCEEDING THRESHOLD IN SYSTEM SPEC) +15 15 THIN CIRRUS DETECTED IN PIXEL diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33085.table b/definitions/bufr/tables/0/wmo/42/codetables/33085.table new file mode 100644 index 000000000..844157b20 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33085.table @@ -0,0 +1,14 @@ +4 4 ANGSTROM EXPONENT IS OUTSIDE OF THE SYSTEM SPECIFICATION RANGE +5 5 EXCLUDED, ANGSTROM EXPONENT FOR AOT AT 550 NM < 0.15 +6 6 BRIGHT SURFACE IN CELL (IF OVER LAND), OR SHALLOW OR TURBID WATER IN CELL (IF OVER OCEAN) +7 7 LOW SUN, EXCLUDED, SOLAR ZENITH ANGLE > 80 DEGREES +8 8 LOW SUN, DEGRADED, 65 DEGREES < SOLAR ZENITH ANGLE =< 80 DEGREES +9 9 FIRE DETECTED IN CELL +10 10 SNOW/ICE IN CELL +11 11 CLOUD SHADOW IN CELL +12 12 SUN GLINT IN CELL +13 13 BAD SDR DATA PRESENT IN HORIZONTAL CELL (QUALITY OF AOT/APSP DEGRADED OR AOT/APSP NOT RETRIEVED DUE TO BAD SDR DATA IN HORIZONTAL CELL) +14 14 CIRRUS CONTAMINATION IN CELL +15 15 CLOUD ADJACENT TO CELL +16 16 CLOUD CONTAMINATION IN CELL +17 17 AOT IS OUTSIDE OF THE SYSTEM SPECIFICATION RANGE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33086.table b/definitions/bufr/tables/0/wmo/42/codetables/33086.table new file mode 100644 index 000000000..b7cda3212 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33086.table @@ -0,0 +1,5 @@ +0 0 NOT RETRIEVED +1 1 EXCLUDED +2 2 DEGRADED +3 3 HIGH QUALITY +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33087.table b/definitions/bufr/tables/0/wmo/42/codetables/33087.table new file mode 100644 index 000000000..f3000e258 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33087.table @@ -0,0 +1,10 @@ +0 0 LESS THAN OR EQUAL TO 10% +1 1 GREATER THAN 10% BUT LESS THAN OR EQUAL TO 20% +2 2 GREATER THAN 20% BUT LESS THAN OR EQUAL TO 30% +3 3 GREATER THAN 30% BUT LESS THAN OR EQUAL TO 40% +4 4 GREATER THAN 40% BUT LESS THAN OR EQUAL TO 50% +5 5 GREATER THAN 50% BUT LESS THAN OR EQUAL TO 60% +6 6 GREATER THAN 60% BUT LESS THAN OR EQUAL TO 70% +7 7 GREATER THAN 70% BUT LESS THAN OR EQUAL TO 80% +8 8 GREATER THAN 80% +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33088.table b/definitions/bufr/tables/0/wmo/42/codetables/33088.table new file mode 100644 index 000000000..744a5d31b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33088.table @@ -0,0 +1,12 @@ +6 6 SURFACE REFLECTIVITY OUT OF RANGE +7 7 RESIDUAL TOO LARGE +8 8 AEROSOL INDEX LIMIT EXCEEDED +9 9 SOLAR ECLIPSE PRESENT (ALL OR PART OF THE IFOV IS AFFECTED BY A SOLAR ECLIPSE, UMBRA OR PENUMBRA VIEWING) +10 10 SUN GLINT PRESENT WITHIN IFOV +11 11 SNOW OR ICE SURFACE IS WITHIN THE IFOV +12 12 SOLAR ZENITH ANGLE IN EXCLUDED (NIGHT) CONDITION (SOLAR ZENITH ANGLE >= 88 DEGREES) +13 13 SOLAR ZENITH ANGLE IN DEGRADED CONDITION (80 DEGREES =< SOLAR ZENITH ANGLE < 88 DEGREES) +14 14 SO2 INDEX > 6 DU (DEGRADED CONDITION) +15 15 RESIDUES ARE NOT CONSISTENT (INDICATES WHETHER THE RESIDUES FROM THE 22 WAVELENGTHS ARE CONSISTENT) +16 16 O3 TRIPLET SELECTION IS NOT CONSISTENT WITHIN RETRIEVAL (OZONE TRIPLET CONSISTENCY) +17 17 INPUT DATA QUALITY IS NOT GOOD diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33092.table b/definitions/bufr/tables/0/wmo/42/codetables/33092.table new file mode 100644 index 000000000..2a9557582 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33092.table @@ -0,0 +1,2 @@ +1 1 ALTIMETER OPERATING +2 2 MICROWAVE RADIOMETER (MWR) OPERATING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33093.table b/definitions/bufr/tables/0/wmo/42/codetables/33093.table new file mode 100644 index 000000000..d872dc664 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33093.table @@ -0,0 +1,19 @@ +1 1 PATH DELAY QUALITY IS CONSIDERED POOR +2 2 GALILEO SATELLITES USED +3 3 GLONASS SATELLITES USED +4 4 GPS SATELLITES USED +5 5 BEIDOU SATELLITES USED +9 9 METEOROLOGICAL DATA APPLIED +10 10 ATMOSPHERIC LOADING CORRECTION APPLIED +11 11 OCEAN TIDE LOADING APPLIED +12 12 SECOND ORDER IONOSPHERE CORRECTIONS APPLIED +13 13 THIRD ORDER IONOSPHERE CORRECTIONS APPLIED +14 14 PPP SOLUTION +15 15 GRADIENTS APPLIED TO PATH DELAY +16 16 MULTIPATH CORRECTIONS APPLIED TO PATH DELAY +17 17 RESIDUAL APPLIED TO PATH DELAY +18 18 CLIMATE QUALITY DATA PROCESSING +19 19 RE-PROCESSING +20 20 POST-PROCESSING +21 21 NEAR-REAL TIME DATA PROCESSING +22 22 REAL TIME DATA PROCESSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33094.table b/definitions/bufr/tables/0/wmo/42/codetables/33094.table new file mode 100644 index 000000000..1365228b2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33094.table @@ -0,0 +1,8 @@ +16 16 NON-OCEAN +17 17 LUNAR OR SOLAR INTRUSION +18 18 SPACECRAFT MANOEUVRE +19 19 COLD CALIBRATION CONSISTENCY +20 20 WARM CALIBRATION CONSISTENCY +21 21 DESCENDING +22 22 NIGHT +23 23 PAYLOAD REAR ORIENTATION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33095.table b/definitions/bufr/tables/0/wmo/42/codetables/33095.table new file mode 100644 index 000000000..67328ecfd --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33095.table @@ -0,0 +1,7 @@ +1 1 PRT OR THM TEMPERATURES ARE MISSING OR WITH ANOMALOUS READINGS +2 2 PRT TEMPERATURES OF OBCT USED IN THE RADIOMETRIC CALIBRATIONS ARE MISSING OR WITH ANOMALOUS READINGS +3 3 THM TEMPERATURES OF SVR USED IN THE RADIOMETRIC CALIBRATIONS ARE MISSING OR WITH ANOMALOUS READINGS +4 4 THM TEMPERATURES OF MAIN REFLECTOR ARE MISSING OR WITH ANOMALOUS READINGS +5 5 THM TEMPERATURES OF THE RACETRACK ARE MISSING OR WITH ANOMALOUS READINGS +6 6 THM TEMPERATURES OF THE RECEIVERS ARE MISSING OR WITH ANOMALOUS READINGS +7 7 RESERVED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33096.table b/definitions/bufr/tables/0/wmo/42/codetables/33096.table new file mode 100644 index 000000000..3bdfe18bf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33096.table @@ -0,0 +1,15 @@ +1 1 RADIOMETRIC CALIBRATION FAILED OR IS DEGRADED +2 2 OBCT VIEW COUNTS AVERAGED VALUE OVER SCANS IS MISSING (THIS IS VALID FOR THE HIGH-REFERENCE CALIBRATION LOAD WHEN THE BACK-UP CALIBRATION IS APPLIED FOR CHANNELS MWI-1 TO MWI-3) +3 3 COLD SPACE VIEW COUNTS AVERAGED VALUE OVER SCANS IS MISSING (THIS IS VALID FOR THE LOW-REFERENCE CALIBRATION LOAD WHEN THE BACK-UP CALIBRATION IS APPLIED FOR CHANNELS MWI-1 TO MWI-3) +4 4 OBCT VIEW COUNTS AVERAGED VALUE OVER SCANS IS DEGRADED DUE TO MISSING OR ANOMALOUS COUNTS VALUES (THIS IS VALID FOR THE HIGH-REFERENCE CALIBRATION LOAD WHEN THE BACK-UP CALIBRATION IS APPLIED FOR CHANNELS MWI-1 TO MWI-3) +5 5 COLD SPACE VIEW COUNTS AVERAGED VALUE OVER SCANS IS DEGRADED DUE TO MISSING OR ANOMALOUS COUNTS VALUES (THIS IS VALID FOR THE LOW-REFERENCE CALIBRATION LOAD WHEN THE BACK-UP CALIBRATION IS APPLIED FOR CHANNELS MWI-1 TO MWI-3) +6 6 OBCT VIEW RADIANCE AVERAGED VALUE OVER SCANS IS MISSING (THIS IS VALID FOR THE HIGH-REFERENCE CALIBRATION LOAD WHEN THE BACK-UP CALIBRATION IS APPLIED FOR CHANNELS MWI-1 TO MWI-3) +7 7 COLD SPACE VIEW RADIANCE AVERAGED VALUE OVER SCANS IS MISSING (THIS IS VALID FOR THE LOW-REFERENCE CALIBRATION LOAD WHEN THE BACK-UP CALIBRATION IS APPLIED FOR CHANNELS MWI-1 TO MWI-3) +8 8 OBCT VIEW RADIANCE AVERAGED VALUE OVER SCANS IS DEGRADED DUE TO MISSING OR ANOMALOUS VALUES (THIS IS VALID FOR THE HIGH-REFERENCE CALIBRATION LOAD WHEN THE BACK-UP CALIBRATION IS APPLIED FOR CHANNELS MWI-1 TO MWI-3) +9 9 COLD SPACE VIEW RADIANCE AVERAGED VALUE OVER SCANS IS DEGRADED DUE TO MISSING OR ANOMALOUS VALUES (THIS IS VALID FOR THE LOW-REFERENCE CALIBRATION LOAD WHEN THE BACK-UP CALIBRATION IS APPLIED FOR CHANNELS MWI-1 TO MWI-3) +10 10 NON-LINEARITY PARAMETER COMPUTED USING NOISE DIODES IS MISSING (MEANINGFUL ONLY FOR CHANNELS MWI-1 TO MWI-3) +11 11 NON-LINEARITY PARAMETER COMPUTED USING NOISE DIODES IS DEGRADED (MEANINGFUL ONLY FOR CHANNELS MWI-1 TO MWI-3) +12 12 PRT OR THM TEMPERATURES OF CURRENT SCAN ARE MISSING OR WITH ANOMALOUS READINGS +13 13 MOON INTRUSION IN COLD SPACE DEGRADED CALIBRATION (LESS THAN NVALID_C VALID SAMPLES ARE NOT AFFECTED BY MOON FOR THE CONSIDERED CHANNEL AND SCAN) +14 14 BACK-UP CALIBRATION WITH NOISE DIODES PERFORMED (MEANINGFUL ONLY FOR MWI-1 TO MWI-3) +15 15 DEGRADED RECEIVER TEMPERATURES LEAD TO DEGRADED CALIBRATION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33097.table b/definitions/bufr/tables/0/wmo/42/codetables/33097.table new file mode 100644 index 000000000..4a5ac50f1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33097.table @@ -0,0 +1,10 @@ +1 1 SCAN IS DEGRADED IN RAW DATA RECORD +2 2 TIME SEQUENCE ERROR +3 3 CURRENT SCAN IS ACQUIRED AFTER A GAP +4 4 SCAN IS IN PERIOD OF INITIALIZATION OF CALIBRATION OF DATA AVERAGES OVER SCANS (BECAUSE OF COLD START/COLD END, MISSING WARM/COLD L0 PACKETS OR DATA GAPS). +5 5 MOON INTRUSION ANGLE IN SPACE VIEW BELOW THRESHOLD FOR AT LEAST ONE CHANNEL +6 6 MOON CORRECTION IS APPLIED BUT IS DEGRADED FOR AT LEAST ONE CHANNEL +7 7 SUN GLINT ANGLE BELOW THRESHOLD FOR AT LEAST ONE CHANNEL +8 8 RFI CONTAMINATION IN THE EARTH VIEW OR RFI PACKET MISSING FOR THE CONSIDERED SCAN (ONLY FOR MWI-1V AND MWI-1H) +9 9 SATELLITE MANOEUVRE OCCURS IN CURRENT SCAN +10 10 MISSING WARM OR COLD L0 PACKETS FOR THE CONSIDERED SCAN diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33098.table b/definitions/bufr/tables/0/wmo/42/codetables/33098.table new file mode 100644 index 000000000..51170985b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33098.table @@ -0,0 +1,8 @@ +1 1 MWI SPECTRAL RADIANCE DATA OF CHANNEL IS MISSING OR DEGRADED +2 2 EARTH VIEW COUNTS OF CHANNEL WITHIN SCAN ARE MISSING OR OUT OF BOUNDS +3 3 RADIOMETRIC CALIBRATION FAILED OR IS DEGRADED +4 4 GEOLOCATION OF CHANNEL IS ERRONEOUS OR DEGRADED +5 5 NEΔT OF THIS DATA GRANULE IS ABOVE THRESHOLD +6 6 MR EMISSIVITY AND SPILLOVER CORRECTION FAILED OR DEGRADED +7 7 MR SIDELOBE CORRECTION FAILED OR DEGRADED +8 8 CHANNEL IS DEFECTIVE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33099.table b/definitions/bufr/tables/0/wmo/42/codetables/33099.table new file mode 100644 index 000000000..0db9cfd52 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33099.table @@ -0,0 +1,15 @@ +1 1 GEOLOCATION OF CHANNEL IS ERRONEOUS OR DEGRADED +2 2 TIME SEQUENCE ERROR +3 3 MISSING OR CORRUPTED NAVATT FILE LED TO THE USE OF PREDICTED ORBIT FILES +4 4 NAVATT ATTITUDE DATA IS DEGRADED +5 5 TIME CORRELATION ERROR (MISSING IERS BULLETIN) +6 6 INVALID EPHEMERIS OR ATTITUDE DATA +7 7 SATELLITE MANOEUVRE OCCURS IN CURRENT SCAN +8 8 NON-NOMINAL ATTITUDE WITH YAW, PITCH, ROLL ERROR ABOVE THRESHOLD DELTA_YPR (NOMINALLY THESE ANGLES ARE 0.0 DEG FOR YSM) +9 9 SAMPLING TIME NOT WITHIN PRESCRIBED LIMITS +10 10 SCAN VELOCITY NOT WITHIN PRESCRIBED LIMITS +11 11 BAD POINTING (SENSOR LOS DOES NOT INTERSECT ELLIPSOID OR NOT COMPLIANT WITH OBSERVATION AZIMUTH/ELEVATION LIMITS) +12 12 INVALID SOLAR AZIMUTH/ZENITH ANGLES COMPUTED +13 13 DEM GEOLOCATION NOT PERFORMED (WITH USE_DEM_FLAG = 1) +14 14 ERROR IN LAND FRACTION COMPUTATION +15 15 PREDICTED ORBIT FILE NOT AVAILABLE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33100.table b/definitions/bufr/tables/0/wmo/42/codetables/33100.table new file mode 100644 index 000000000..0a5f9f64b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33100.table @@ -0,0 +1,7 @@ +1 1 PRT OR THM TEMPERATURES ARE MISSING OR WITH ANOMALOUS READINGS +2 2 PRT TEMPERATURES OF OBCT USED IN THE RADIOMETRIC CALIBRATIONS IS MISSING OR WITH ANOMALOUS READINGS +3 3 PRT TEMPERATURES OF SVR USED IN THE RADIOMETRIC CALIBRATIONS ARE MISSING OR WITH ANOMALOUS READINGS +4 4 PRT TEMPERATURES OF IRP AND SUN SHIELD ARE MISSING OR WITH ANOMALOUS READINGS +5 5 THM TEMPERATURE OF BACK-END ARE MISSING OR WITH ANOMALOUS READINGS +6 6 THM TEMPERATURE OF FRONT-END ARE MISSING OR WITH ANOMALOUS READINGS +7 7 PRT TEMPERATURES OF MAIN REFLECTOR ARE MISSING OR WITH ANOMALOUS READINGS diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33101.table b/definitions/bufr/tables/0/wmo/42/codetables/33101.table new file mode 100644 index 000000000..7257ef9e4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33101.table @@ -0,0 +1,12 @@ +1 1 RADIOMETRIC CALIBRATION FAILED OR IS DEGRADED +2 2 OBCT VIEW COUNTS AVERAGED VALUE OVER SCANS IS MISSING +3 3 COLD SPACE VIEW COUNTS AVERAGED VALUE OVER SCANS IS MISSING +4 4 OBCT VIEW COUNTS AVERAGED VALUE OVER SCANS IS DEGRADED DUE TO MISSING OR ANOMALOUS COUNTS VALUES +5 5 COLD SPACE VIEW COUNTS AVERAGED VALUE OVER SCANS IS DEGRADED DUE TO MISSING OR ANOMALOUS COUNTS VALUES +6 6 OBCT VIEW RADIANCE AVERAGED VALUE OVER SCANS IS MISSING +7 7 COLD SPACE VIEW RADIANCE AVERAGED VALUE OVER SCANS IS MISSING +8 8 OBCT VIEW RADIANCE AVERAGED VALUE OVER SCANS IS DEGRADED DUE TO MISSING OR ANOMALOUS VALUES +9 9 COLD SPACE VIEW RADIANCE AVERAGED VALUE OVER SCANS IS DEGRADED DUE TO MISSING OR ANOMALOUS VALUES +10 10 PRT OR THM TEMPERATURES OF CURRENT SCAN ARE MISSING OR WITH ANOMALOUS READINGS +11 11 MOON INTRUSION IN COLD SPACE DEGRADED CALIBRATION (LESS THAN NVALID_C VALID SAMPLES ARE NOT AFFECTED BY MOON FOR THE CONSIDERED CHANNEL AND SCAN) +12 12 DEGRADED OR MISSING BACK-END TEMPERATURES LEAD TO DEGRADED CALIBRATION diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33102.table b/definitions/bufr/tables/0/wmo/42/codetables/33102.table new file mode 100644 index 000000000..cc406573d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33102.table @@ -0,0 +1,9 @@ +1 1 SCAN IS DEGRADED IN RAW DATA RECORDS +2 2 TIME SEQUENCE ERROR +3 3 CURRENT SCAN IS ACQUIRED AFTER A GAP +4 4 SCAN IS IN PERIOD OF INITIALIZATION OF CALIBRATION OF DATA AVERAGES OVER SCANS (BECAUSE OF COLD START/COLD END, MISSING WARM/COLD L0 PACKETS OR DATA GAPS) +5 5 MOON INTRUSION ANGLE IN SPACE VIEW BELOW THRESHOLD FOR AT LEAST ONE CHANNEL +6 6 MOON CORRECTION IS APPLIED BUT IS DEGRADED FOR AT LEAST ONE CHANNEL +7 7 SUN GLINT ANGLE BELOW THRESHOLD FOR AT LEAST ONE CHANNEL +8 8 SATELLITE MANOEUVRE OCCURS IN CURRENT SCAN +9 9 MISSING WARM OR COLD L0 PACKETS FOR THE CONSIDERED SCAN diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33103.table b/definitions/bufr/tables/0/wmo/42/codetables/33103.table new file mode 100644 index 000000000..7683c6afa --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33103.table @@ -0,0 +1,8 @@ +1 1 ICI SPECTRAL RADIANCE DATA OF CHANNEL IS MISSING OR DEGRADED +2 2 EARTH VIEW COUNTS OF CHANNEL WITHIN SCAN ARE MISSING OR OUT OF BOUNDS +3 3 RADIOMETRIC CALIBRATION FAILED OR IS DEGRADED +4 4 GEOLOCATION OF CHANNEL IS ERRONEOUS OR DEGRADED +5 5 NEΔT OF THIS DATA GRANULE IS ABOVE THRESHOLD +6 6 MR EMISSIVITY AND SPILLOVER CORRECTION FAILED OR DEGRADED +7 7 MR SIDELOBE CORRECTION FAILED OR DEGRADED +8 8 CHANNEL IS DEFECTIVE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33104.table b/definitions/bufr/tables/0/wmo/42/codetables/33104.table new file mode 100644 index 000000000..56852332e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33104.table @@ -0,0 +1,15 @@ +1 1 GEOLOCATION OF CHANNELS IS ERRONEOUS OR DEGRADED +2 2 TIME SEQUENCE ERROR +3 3 MISSING OR CORRUPTED NAVATT FILE LED TO THE USE OF PREDICTED ORBIT FILES +4 4 NAVATT ATTITUDE DATA IS DEGRADED +5 5 TIME CORRELATION ERROR (MISSING IERS BULLETIN) +6 6 INVALID EPHEMERIS OR ATTITUDE DATA +7 7 SATELLITE MANOEUVRE OCCURS IN CURRENT SCAN +8 8 NON-NOMINAL ATTITUDE WITH YAW, PITCH, ROLL ERROR ABOVE THRESHOLD DELTA_YPR (NOMINALLY THESE ANGLES ARE 0.0 DEG FOR YSM) +9 9 SAMPLING TIME NOT WITHIN PRESCRIBED LIMITS +10 10 SCAN VELOCITY NOT WITHIN PRESCRIBED LIMITS +11 11 BAD POINTING (SENSOR LOS DOES NOT INTERSECT ELLIPSOID OR NOT COMPLIANT WITH OBSERVATION AZIMUTH/ELEVATION LIMITS) +12 12 INVALID SOLAR AZIMUTH/ZENITH ANGLES COMPUTED +13 13 DEM GEOLOCATION NOT PERFORMED (WITH USE_DEM_FLAG = 1) +14 14 ERROR IN LAND FRACTION COMPUTATION +15 15 PREDICTED ORBIT FILE NOT AVAILABLE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33105.table b/definitions/bufr/tables/0/wmo/42/codetables/33105.table new file mode 100644 index 000000000..e4a8ce397 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33105.table @@ -0,0 +1,9 @@ +1 1 MOON CONTAMINATION CORRECTION ON COLD SPACE VIEW COUNTS IS NOT APPLIED +2 2 MR SPILLOVER CORRECTION RELATIVE TO EMISSION BY INSTRUMENT PLATFORM IS NOT APPLIED +3 3 SVR SPILLOVER CORRECTION RELATIVE TO EMISSION BY INSTRUMENT PLATFORM IS NOT APPLIED +4 4 SVR SIDELOBE CORRECTION IS NOT APPLIED +5 5 FULL CROSS-POLARIZATION CORRECTION INCLUDING SMALL ANGLE CORRECTION IS APPLIED +6 6 DYNAMIC SIDELOBE CORRECTION IS NOT APPLIED FOR ICI-1 +7 7 DYNAMIC SIDELOBE CORRECTION IS NOT APPLIED FOR ICI-2 +8 8 DYNAMIC SIDELOBE CORRECTION IS NOT APPLIED FOR ICI-3 +9 9 DYNAMIC SIDELOBE CORRECTION IS NOT APPLIED FOR ICI-4 V AND ICI-4 H diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33106.table b/definitions/bufr/tables/0/wmo/42/codetables/33106.table new file mode 100644 index 000000000..9171a2f1a --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33106.table @@ -0,0 +1,12 @@ +1 1 MOON CONTAMINATION CORRECTION ON COLD SPACE VIEW COUNTS IS NOT APPLIED +2 2 CALIBRATION WITH NOISE DIODES IS NOT APPLIED FOR AT LEAST ONE CHANNEL AMONG MWI-1 TO MWI-3 +3 3 MR SPILLOVER CORRECTION RELATIVE TO EMISSION BY INSTRUMENT PLATFORM IS NOT APPLIED +4 4 SVR SPILLOVER CORRECTION RELATIVE TO EMISSION BY INSTRUMENT PLATFORM IS NOT APPLIED +5 5 SVR SIDELOBE CORRECTION IS NOT APPLIED +6 6 FULL CROSS-POLARIZATION CORRECTION INCLUDING SMALL ANGLE CORRECTION IS APPLIED +7 7 RFI CORRECTION IN THE EARTH VIEW IS NOT APPLIED +8 8 DYNAMIC SIDELOBE CORRECTION IS NOT APPLIED FOR MWI-1 +9 9 DYNAMIC SIDELOBE CORRECTION IS NOT APPLIED FOR MWI-2 +10 10 DYNAMIC SIDELOBE CORRECTION IS NOT APPLIED FOR MWI-3 +11 11 DYNAMIC SIDELOBE CORRECTION IS NOT APPLIED FOR MWI-4 +12 12 DYNAMIC SIDELOBE CORRECTION IS NOT APPLIED FOR MWI-8 diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33107.table b/definitions/bufr/tables/0/wmo/42/codetables/33107.table new file mode 100644 index 000000000..8487a7300 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33107.table @@ -0,0 +1,15 @@ +1 1 NON-NOMINAL SCAN DUE TO GAP +2 2 NON-NOMINAL WARM TARGET TEMPERATURE +3 3 NON-NOMINAL ALONG-TRACK AVERAGING OF WARM TARGET TEMPERATURES +4 4 NON-NOMINAL INSTRUMENT TEMPERATURE +5 5 NON-NOMINAL ALONG-TRACK AVERAGING OF INSTRUMENT TEMPERATURES +6 6 NON-NOMINAL ROTATING REFLECTOR TEMPERATURE +7 7 NON-NOMINAL ALONG-TRACK AVERAGING OF ROTATING REFLECTOR TEMPERATURES +8 8 NON-NOMINAL ANTENNA SCAN ANGLE EARTH VIEW +9 9 NON-NOMINAL ANTENNA SCAN ANGLE COLD VIEW +10 10 NON-NOMINAL ANTENNA SCAN ANGLE WARM VIEW +11 11 NON-NOMINAL GEOLOCATION +12 12 NON-NOMINAL LSM AND DEM ASSIGNMENT +13 13 ONGOING SATELLITE MANOEUVRE +14 14 REDUNDANT 50GHZ REC AND PRT SET IN USE +15 15 RESERVED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33108.table b/definitions/bufr/tables/0/wmo/42/codetables/33108.table new file mode 100644 index 000000000..70f883e37 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33108.table @@ -0,0 +1,12 @@ +1 1 NON-NOMINAL CONDITION +2 2 SCAN NOT PROCESSED +3 3 GEOLOCATION NOT SUCCESSFUL +4 4 ORBIT NOT INITIALIZED WITH NAVATT +5 5 ATTITUDE NOT INITIALIZED WITH NAVATT +6 6 PREDICTED ORBIT FILE INGEST ERROR +7 7 MANOEUVRE +8 8 IERS BULLETIN A INGEST ERROR +9 9 TIME CORRELATION AND EOP INITIALIZED WITH PREDICTED ORBIT FILE +10 10 FULL ACCURACY OF NAVATT INITIALIZED ATTITUDE NOT REACHED +11 11 POINTING MODE NOT YSM +12 12 NAVATT INGEST ERROR diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33109.table b/definitions/bufr/tables/0/wmo/42/codetables/33109.table new file mode 100644 index 000000000..467f6c0ae --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33109.table @@ -0,0 +1,6 @@ +1 1 MISSING INPUT PRODUCT(S) +2 2 DATA GAP(S) +3 3 CORRUPTED INPUT PRODUCT(S) +4 4 INSTRUMENT ANOMALY +5 5 MISSING OR DEGRADED AUXILIARY DATA +6 6 DEGRADED DUE TO MANOEUVRE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33110.table b/definitions/bufr/tables/0/wmo/42/codetables/33110.table new file mode 100644 index 000000000..ac33f50c9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33110.table @@ -0,0 +1,8 @@ +1 1 CHANNEL IS OFF +2 2 NON-NOMINAL MEAN WARM VIEW COUNT +3 3 NON-NOMINAL ALONG-TRACK AVERAGING OF WARM VIEW COUNTS +4 4 NON-NOMINAL MEAN COLD VIEW COUNT +5 5 NON-NOMINAL ALONG-TRACK AVERAGING OF COLD VIEW COUNTS +6 6 NON-NOMINAL CALIBRATION COEFFICIENTS +7 7 MOON INTRUSION IN SOME OF THE COLD VIEW FOVS +8 8 NON-NOMINAL PROCESSING OR EXCESSIVE VALUE FOR NEDT (COLD OR WARM) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33111.table b/definitions/bufr/tables/0/wmo/42/codetables/33111.table new file mode 100644 index 000000000..bbaa5b5ed --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33111.table @@ -0,0 +1,31 @@ +1 1 PREDICTED ORBIT FILE USED +2 2 MANOEUVRE TAKING PLACE +3 3 RESERVED +4 4 SATELLITE IS NOT IN YAW STEERING MODE +5 5 TRANSPONDER SIGNAL IS PRESENT +6 6 NOISE ESTIMATE IS POOR +7 7 NOISE ESTIMATE IS VERY POOR +8 8 NOISE OUTLIER IS PRESENT +9 9 ANCILLARY DATA IS POOR +10 10 ANCILLARY DATA IS VERY POOR +11 11 CHARACTERIZATION TABLE LIMITS EXCEEDED +12 12 POWER-GAIN ESTIMATE IS POOR +13 13 POWER-GAIN ESTIMATE IS VERY POOR +14 14 POWER-GAIN OUT OF LIMITS +15 15 WAVEGUIDE LOSS ESTIMATE IS POOR +16 16 WAVEGUIDE LOSS ESTIMATE IS VERY POOR +17 17 WAVEGUIDE TABLE LIMITS EXCEEDED +18 18 ECHO IS OUT OF ADC RANGE +19 19 RESERVED +20 20 MISSING NORMALIZATION TABLES +21 21 NUMBER OF SAMPLES IN WINDOW IS LOW +22 22 NUMBER OF SAMPLES IN WINDOW IS VERY LOW +23 23 NEGATIVE BACKSCATTER IN RESAMPLED DATA +24 24 POSSIBLE INTERFERENCE FROM SOLAR ARRAY +25 25 RESERVED +26 26 RESERVED +27 27 RESERVED +28 28 LAND +29 29 WATER +30 30 ASCENDING PASS +31 31 DESCENDING PASS diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33113.table b/definitions/bufr/tables/0/wmo/42/codetables/33113.table new file mode 100644 index 000000000..a8f4ce101 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33113.table @@ -0,0 +1,11 @@ +1 1 GENERAL QUALITY (0 IF BITS 2 TO 11 ARE ALL 0, 1 OTHERWISE) +2 2 SOUNDER RADIOMETRIC +3 3 SOUNDER SPECTRAL +4 4 IMAGER GEOMETRIC +5 5 IMAGER CLASSIFICATION +6 6 IMAGER RADIOMETRIC +7 7 GENERAL SOUNDER +8 8 PRESENCE OF MATHEMATICAL ERRORS +9 9 TM DATA MISSING +10 10 TM DATA CORRUPT +11 11 TM INTEGRITY INSTRUMENT diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33114.table b/definitions/bufr/tables/0/wmo/42/codetables/33114.table new file mode 100644 index 000000000..576d09d85 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33114.table @@ -0,0 +1,16 @@ +1 1 TEMPERATURE PROFILE +2 2 WATER VAPOUR PROFILE +3 3 OZONE PROFILE +4 4 SURFACE SKIN TEMPERATURE +5 5 SURFACE AIR TEMPERATURE +6 6 SURFACE AIR DEW POINT TEMPERATURE +7 7 SURFACE PRESSURE +8 8 SURFACE SKIN TEMPERATURE ERROR ESTIMATE (QUALITY INDICATOR) +9 9 SURFACE AIR TEMPERATURE ERROR ESTIMATE (QUALITY INDICATOR) +10 10 SURFACE AIR DEW POINT TEMPERATURE ERROR ESTIMATE (QUALITY INDICATOR) +11 11 SURFACE PRESSURE ERROR ESTIMATE (QUALITY INDICATOR) +12 12 SURFACE EMISSIVITY COARSE INFRARED SPECTRUM +13 13 SURFACE EMISSIVITY MICROWAVE SPECTRUM +14 14 CO2 PROFILE +15 15 CH4 PROFILE +16 16 N2O PROFILE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33115.table b/definitions/bufr/tables/0/wmo/42/codetables/33115.table new file mode 100644 index 000000000..911a3c2e7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33115.table @@ -0,0 +1,6 @@ +0 0 GOOD +1 1 CLOUDY NADIR +2 2 CLOUDY OBLIQUE +3 3 GLINT NADIR +4 4 GLINT OBLIQUE +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33116.table b/definitions/bufr/tables/0/wmo/42/codetables/33116.table new file mode 100644 index 000000000..576d09d85 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33116.table @@ -0,0 +1,16 @@ +1 1 TEMPERATURE PROFILE +2 2 WATER VAPOUR PROFILE +3 3 OZONE PROFILE +4 4 SURFACE SKIN TEMPERATURE +5 5 SURFACE AIR TEMPERATURE +6 6 SURFACE AIR DEW POINT TEMPERATURE +7 7 SURFACE PRESSURE +8 8 SURFACE SKIN TEMPERATURE ERROR ESTIMATE (QUALITY INDICATOR) +9 9 SURFACE AIR TEMPERATURE ERROR ESTIMATE (QUALITY INDICATOR) +10 10 SURFACE AIR DEW POINT TEMPERATURE ERROR ESTIMATE (QUALITY INDICATOR) +11 11 SURFACE PRESSURE ERROR ESTIMATE (QUALITY INDICATOR) +12 12 SURFACE EMISSIVITY COARSE INFRARED SPECTRUM +13 13 SURFACE EMISSIVITY MICROWAVE SPECTRUM +14 14 CO2 PROFILE +15 15 CH4 PROFILE +16 16 N2O PROFILE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/33117.table b/definitions/bufr/tables/0/wmo/42/codetables/33117.table new file mode 100644 index 000000000..576d09d85 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/33117.table @@ -0,0 +1,16 @@ +1 1 TEMPERATURE PROFILE +2 2 WATER VAPOUR PROFILE +3 3 OZONE PROFILE +4 4 SURFACE SKIN TEMPERATURE +5 5 SURFACE AIR TEMPERATURE +6 6 SURFACE AIR DEW POINT TEMPERATURE +7 7 SURFACE PRESSURE +8 8 SURFACE SKIN TEMPERATURE ERROR ESTIMATE (QUALITY INDICATOR) +9 9 SURFACE AIR TEMPERATURE ERROR ESTIMATE (QUALITY INDICATOR) +10 10 SURFACE AIR DEW POINT TEMPERATURE ERROR ESTIMATE (QUALITY INDICATOR) +11 11 SURFACE PRESSURE ERROR ESTIMATE (QUALITY INDICATOR) +12 12 SURFACE EMISSIVITY COARSE INFRARED SPECTRUM +13 13 SURFACE EMISSIVITY MICROWAVE SPECTRUM +14 14 CO2 PROFILE +15 15 CH4 PROFILE +16 16 N2O PROFILE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/35000.table b/definitions/bufr/tables/0/wmo/42/codetables/35000.table new file mode 100644 index 000000000..8c57023e3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/35000.table @@ -0,0 +1 @@ +1023 1023 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/35001.table b/definitions/bufr/tables/0/wmo/42/codetables/35001.table new file mode 100644 index 000000000..bba0c812e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/35001.table @@ -0,0 +1,4 @@ +0 0 REAL TIME +1 1 NEAR-REAL TIME +2 2 NON-REAL TIME +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/35030.table b/definitions/bufr/tables/0/wmo/42/codetables/35030.table new file mode 100644 index 000000000..5b83f8b81 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/35030.table @@ -0,0 +1,10 @@ +0 0 NO DISCREPANCIES +1 1 NON-COMPLIANCE WITH STANDARD AND RECOMMENDED PRACTICES AND PROCEDURES INCLUDING THOSE OF MONITORING +2 2 CATALOGUES OF METEOROLOGICAL BULLETINS NOT UPDATED IN A TIMELY MANNER +3 3 INCORRECT ROUTING DIRECTORIES +4 4 LACK OF FLEXIBILITY IN THE ROUTING ARRANGEMENTS +5 5 DEFICIENCIES IN THE OPERATION OF GTS CENTRES AND CIRCUITS +6 6 LOSS OF DATA OR DELAYS IN RELAYING DATA ON THE GTS +7 7 ROUTING OF DATA DIFFERENT FROM THE ROUTING PROVIDED IN THE PLAN +8 8 VARIOUS MALPRACTICES +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/35031.table b/definitions/bufr/tables/0/wmo/42/codetables/35031.table new file mode 100644 index 000000000..bdd705ddd --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/35031.table @@ -0,0 +1,20 @@ +1 1 SUFFICIENT AND ALL OF ACCEPTABLE QUALITY +2 2 SUFFICIENT BUT PARTLY OF ACCEPTABLE QUALITY +3 3 INSUFFICIENT BUT ALL OF ACCEPTABLE QUALITY +4 4 INSUFFICIENT AND OF UNACCEPTABLE QUALITY +5 5 SOME MESSAGES NOT COMPLETE +6 6 SUSPECT OR WRONGLY CODED GROUPS COULD NOT BE INTERPRETED CONFIDENTLY +7 7 GROSS CODING ERRORS +8 8 TRANSMISSION SEQUENTIAL ORDER NOT OBSERVED +9 9 REPORT COMPLETELY GARBLED AND THUS DISCARDED +10 10 DEFICIENCIES IDENTIFIED AND RECTIFIED +11 11 DEFICIENCIES IDENTIFIED BUT NOT RECTIFIED +12 12 DEFICIENCIES NOT IDENTIFIED +13 13 MEASURING ERRORS +14 14 MUTUAL INCONSISTENCY +15 15 TEMPORAL INCONSISTENCY +16 16 FORECAST ERROR +17 17 BIAS +18 18 IMPROVE SYSTEM OF QUALITY CONTROL +19 19 EXPAND TRAINING PROGRAMMES +127 127 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/35032.table b/definitions/bufr/tables/0/wmo/42/codetables/35032.table new file mode 100644 index 000000000..7f53a05f9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/35032.table @@ -0,0 +1,10 @@ +1 1 DATA GROUPS MISSING DUE TO RADIO FADING +2 2 DATA GROUPS MISSING DUE TO OUTAGE OF CENTRE +3 3 DATA GROUPS MISSING DUE TO OUTAGE OF CIRCUIT +4 4 NON-IMPLEMENTATION OR MAINTENANCE OF REQUIRED RBSN DENSITY +5 5 SHORTAGE OF QUALIFIED STAFF TO MAN STATIONS +6 6 LACK OF CONSUMABLES +7 7 INSTRUMENT FAILURE +8 8 NON-ADHERENCE TO TELECOMMUNICATION PROCEDURES +9 9 SOME OBSERVING PROGRAMMES CEASED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/35033.table b/definitions/bufr/tables/0/wmo/42/codetables/35033.table new file mode 100644 index 000000000..86e9592ef --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/35033.table @@ -0,0 +1,12 @@ +1 1 NO DEFICIENCY +2 2 OBSERVATIONS NOT MADE REGULARLY +3 3 OBSERVATIONS NOT MADE AT RIGHT TIME +4 4 OBSERVATIONS MADE BUT NOT DISSEMINATED +5 5 OBSERVATIONS MADE AND SENT TO INCORRECT USERS +6 6 COLLECTION NOT RECEIVED +7 7 COLLECTION TRANSMITTED LATE +8 8 COLLECTION NOT TRANSMITTED +9 9 DIFFICULTIES IN HF PROPAGATION AND SELECTION OF SUITABLE FREQUENCY +10 10 DIFFICULTIES IN MAINTENANCE OF COMMUNICATION EQUIPMENT AT REMOTE STATIONS +11 11 NO ALTERNATIVE ARRANGEMENT FOR ROUTING METEOROLOGICAL OBSERVATION +123 123 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/35034.table b/definitions/bufr/tables/0/wmo/42/codetables/35034.table new file mode 100644 index 000000000..7297664cf --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/35034.table @@ -0,0 +1,7 @@ +1 1 SLIGHT IMPROVEMENT +2 2 SIGNIFICANT IMPROVEMENT +3 3 MOST SIGNIFICANT IMPROVEMENT +4 4 STEADY +5 5 DECREASING +6 6 EFFORTS REQUIRED TO IMPROVE NIGHT-TIME OBSERVATIONS +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/35035.table b/definitions/bufr/tables/0/wmo/42/codetables/35035.table new file mode 100644 index 000000000..0fce6ddb7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/35035.table @@ -0,0 +1,20 @@ +0 0 RESERVED +1 1 BALLOON BURST +2 2 BALLOON FORCED DOWN BY ICING +3 3 LEAKING OR FLOATING BALLOON +4 4 WEAK OR FADING SIGNAL +5 5 BATTERY FAILURE +6 6 GROUND EQUIPMENT FAILURE +7 7 SIGNAL INTERFERENCE +8 8 RADIOSONDE FAILURE +9 9 EXCESSIVE MISSING DATA FRAMES +10 10 RESERVED +11 11 EXCESSIVE MISSING TEMPERATURE +12 12 EXCESSIVE MISSING PRESSURE +13 13 USER TERMINATED +14 14 SUDDEN LOSS OF SIGNAL +15 15 TRACKING LOST +16 16 INCREASING PRESSURE +17 17 INVALID AND/OR MISSED DATA TIME LIMITS EXCEEDED +30 30 OTHER +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40005.table b/definitions/bufr/tables/0/wmo/42/codetables/40005.table new file mode 100644 index 000000000..045a4f1b1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40005.table @@ -0,0 +1,5 @@ +1 1 SOIL MOISTURE BETWEEN -20% AND 0% +2 2 SOIL MOISTURE BETWEEN 100% AND 120% +3 3 CORRECTION OF WET BACKSCATTER REFERENCE +4 4 CORRECTION OF DRY BACKSCATTER REFERENCE +5 5 CORRECTION OF VOLUME SCATTERING IN SAND diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40006.table b/definitions/bufr/tables/0/wmo/42/codetables/40006.table new file mode 100644 index 000000000..d53382eff --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40006.table @@ -0,0 +1,8 @@ +1 1 NOT SOIL +2 2 SENSITIVITY TO SOIL MOISTURE BELOW LIMIT +3 3 AZIMUTHAL NOISE ABOVE LIMIT +4 4 BACKSCATTER FORE-AFT BEAM OUT OF RANGE +5 5 SLOPE MID-FORE BEAM OUT OF RANGE +6 6 SLOPE MID-AFT BEAM OUT OF RANGE +7 7 SOIL MOISTURE BELOW -20% +8 8 SOIL MOISTURE ABOVE 120% diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40011.table b/definitions/bufr/tables/0/wmo/42/codetables/40011.table new file mode 100644 index 000000000..ddc7e8672 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40011.table @@ -0,0 +1,4 @@ +1 1 MEAN SEA-SURFACE (MSS) INTERPOLATION FLAG +2 2 OCEAN TIDE SOLUTION 1 INTERPOLATION FLAG (0 = 4 POINTS OVER OCEAN, 1 = LESS THAN 4 POINTS) +3 3 OCEAN TIDE SOLUTION 2 INTERPOLATION FLAG (0 = 4 POINTS OVER OCEAN, 1 = LESS THAN 4 POINTS) +4 4 METEOROLOGICAL DATA INTERPOLATION FLAG (0 = 4 POINTS OVER OCEAN, 1 = LESS THAN 4 POINTS) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40012.table b/definitions/bufr/tables/0/wmo/42/codetables/40012.table new file mode 100644 index 000000000..d8ce14d86 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40012.table @@ -0,0 +1,3 @@ +1 1 18.7 GHZ BRIGHTNESS TEMPERATURE +2 2 23.8 GHZ BRIGHTNESS TEMPERATURE +3 3 34 GHZ BRIGHTNESS TEMPERATURE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40013.table b/definitions/bufr/tables/0/wmo/42/codetables/40013.table new file mode 100644 index 000000000..766e93f79 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40013.table @@ -0,0 +1,5 @@ +0 0 INTERPOLATION WITH NO GAP BETWEEN JMR DATA +1 1 INTERPOLATION WITH GAPS BETWEEN JMR DATA +2 2 EXTRAPOLATION OF JMR DATA +3 3 FAILURE OF EXTRAPOLATION AND INTERPOLATION +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40020.table b/definitions/bufr/tables/0/wmo/42/codetables/40020.table new file mode 100644 index 000000000..fa1d1f5c5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40020.table @@ -0,0 +1,16 @@ +1 1 NZPD AND COMPLEX CALIBRATION ERROR +2 2 BAND 3 AFFECTED BY SPIKE +3 3 BAND 3 AFFECTED BY SATURATION +4 4 BAND 2 AFFECTED BY SPIKE +5 5 BAND 1 AFFECTED BY SPIKE +6 6 OVERFLOW/UNDER FLOW +7 7 ON-BOARD PROCESSING ERROR +8 8 SPECTRAL CALIBRATION ERROR +9 9 RADIOMETRIC CALIBRATION ERROR +10 10 MISSING AVHRR DATA +11 11 MISSING IIS DATA +12 12 MISSING SOUNDER DATA +13 13 GQISFLAGQUAL SUMMARY FLAG FOR ALL BANDS +14 14 ON-GROUND PROCESSING ERROR +15 15 INTER-CALIBRATION ERROR IASI/AVHRR +16 16 SPARE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40023.table b/definitions/bufr/tables/0/wmo/42/codetables/40023.table new file mode 100644 index 000000000..2e4cbfb69 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40023.table @@ -0,0 +1,4 @@ +1 1 BAND SEQUENCE (0 = 3KU_1C_3KU, 1 = 2KU_1C_2KU) +2 2 C BAND FREQUENCY (0 = 320 MHZ, 1 = 100 MHZ) +3 3 C BAND STATUS (0 = ON, 1 = OFF) +4 4 KU BAND STATUS (0 = ON, 1 = OFF) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40024.table b/definitions/bufr/tables/0/wmo/42/codetables/40024.table new file mode 100644 index 000000000..c8421e5af --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40024.table @@ -0,0 +1,5 @@ +0 0 2 MAPS AVAILABLE (6 HOURS APART) +1 1 2 MAPS AVAILABLE (> 6 HOURS APART) +2 2 1 MAP AVAILABLE; DATA EXTRAPOLATED +3 3 NO MAPS USED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40025.table b/definitions/bufr/tables/0/wmo/42/codetables/40025.table new file mode 100644 index 000000000..741430292 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40025.table @@ -0,0 +1,4 @@ +0 0 GOOD +1 1 BAD +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40028.table b/definitions/bufr/tables/0/wmo/42/codetables/40028.table new file mode 100644 index 000000000..e094f29dc --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40028.table @@ -0,0 +1,16 @@ +0 0 GOOD DATA +1 1 POSSIBLE SUN GLINT +2 2 POSSIBLE RADIO-FREQUENCY INTERFERENCE +3 3 DEGRADED GEOLOCATION DATA +4 4 DATA CORRECTED FOR WARM LOAD INTRUSION +5 5 SCAN BLANKING ON +6 6 DATA IS MISSING FROM FILE OR UNREADABLE +7 7 UNPHYSICAL BRIGHTNESS TEMPERATURE +8 8 ERROR IN GEOLOCATION DATA +9 9 DATA MISSING IN ONE CHANNEL +10 10 DATA MISSING IN MULTIPLE CHANNELS +11 11 LAT/LON VALUES ARE OUT OF RANGE +12 12 NON-NORMAL STATUS MODES +13 13 DISTANCE TO CORRESPONDING LOW FREQUENCY PIXEL > 7 KM +14 14 RESERVED +15 15 MISSING VALUE (NO QUALITY INFORMATION AVAILABLE) diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40036.table b/definitions/bufr/tables/0/wmo/42/codetables/40036.table new file mode 100644 index 000000000..1ee4ab203 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40036.table @@ -0,0 +1,6 @@ +0 0 CLEAR +1 1 CLOUD +2 2 AEROSOL +3 3 ATTENUATED +4 4 SURFACE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40043.table b/definitions/bufr/tables/0/wmo/42/codetables/40043.table new file mode 100644 index 000000000..859484624 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40043.table @@ -0,0 +1,4 @@ +0 0 THE PLATFORM IS NOT UNDERGOING A MANOEUVRE +1 1 THE PLATFORM IS UNDERGOING A MANOEUVRE, NOMINAL PROCESSING +2 2 THE PLATFORM IS UNDERGOING A MANOEUVRE, NO PROCESSING +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40045.table b/definitions/bufr/tables/0/wmo/42/codetables/40045.table new file mode 100644 index 000000000..08b600150 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40045.table @@ -0,0 +1,4 @@ +1 1 CLOUD PRODUCTS RETRIEVED WITH THE CHI-SQUARED METHOD +2 2 CLOUD PRODUCTS RETRIEVED WITH THE CO2-SLICING +3 3 HEIGHT ASSIGNMENT PERFORMED WITH STATISTICAL FIRST GUESS RETRIEVAL +4 4 HEIGHT ASSIGNMENT PERFORMED WITH NWP FORECASTS diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40046.table b/definitions/bufr/tables/0/wmo/42/codetables/40046.table new file mode 100644 index 000000000..31077db10 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40046.table @@ -0,0 +1,5 @@ +0 0 THE IASI IFOV IS CLEAR +1 1 SMALL CLOUD CONTAMINATION POSSIBLE +2 2 THE IASI IFOV IS PARTIALLY COVERED BY CLOUDS +3 3 HIGH OR FULL CLOUD COVERAGE +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40047.table b/definitions/bufr/tables/0/wmo/42/codetables/40047.table new file mode 100644 index 000000000..f7f29c7b8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40047.table @@ -0,0 +1,4 @@ +0 0 THE MEASUREMENTS AND SIDE INFORMATION ARE AVAILABLE AND OF GOOD QUALITY FOR L2 PROCESSING +1 1 THE L1C PRODUCTS ARE OF DEGRADED QUALITY ACCORDING TO L1C FLAGS, NO L2 PROCESSING +2 2 QUALITY CONTROL INDICATES THAT THE L1C DATA ARE OF DEGRADED QUALITY (NOT INDICATED BY THE IASI L1C FLAGS), NO L2 PROCESSING +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40048.table b/definitions/bufr/tables/0/wmo/42/codetables/40048.table new file mode 100644 index 000000000..ee5d4fe0f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40048.table @@ -0,0 +1,4 @@ +0 0 THE EXPECTED AMSU MEASUREMENTS ARE AVAILABLE, OF GOOD QUALITY AND COLLOCATED WITH IASI FOR PROCESSING +1 1 AMSU-A DATA ARE AVAILABLE BUT OF DEGRADED QUALITY (ACCORDING TO AMSU L1 FLAGS OR QC TESTS) AND NOT USED FOR PROCESSING +2 2 NO COINCIDENT (TIME AND SPACE) AMSU MEASUREMENTS AVAILABLE FOR PROCESSING +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40049.table b/definitions/bufr/tables/0/wmo/42/codetables/40049.table new file mode 100644 index 000000000..19d1fe9d8 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40049.table @@ -0,0 +1,12 @@ +4 4 IASI CLOUD OPTICAL THICKNESS INDICATES A CLOUD +5 5 IASI CLOUD OPTICAL THICKNESS COMPUTED +6 6 AVHRR HETEROGENEITY TEST INDICATES A CLOUD +7 7 AVHRR HETEROGENEITY TEST EXECUTED +8 8 IASI-AVHRR ANN CLOUD TEST INDICATES A CLOUD +9 9 IASI-AVHRR ANN CLOUD TEST EXECUTED +10 10 AVHRR INTEGRATED CLOUD FRACTION INDICATES A CLOUD +11 11 AVHRR INTEGRATED CLOUD FRACTION ASSESSED +12 12 AMSU CLOUD TEST INDICATES A CLOUD +13 13 AMSU CLOUD TEST EXECUTED +14 14 IASI WINDOW CLOUD TEST INDICATES A CLOUD +15 15 IASI WINDOW CLOUD TEST EXECUTED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40050.table b/definitions/bufr/tables/0/wmo/42/codetables/40050.table new file mode 100644 index 000000000..503ab1443 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40050.table @@ -0,0 +1,3 @@ +5 5 MHS INCLUDED +6 6 AMSU INCLUDED +7 7 IASI INCLUDED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40051.table b/definitions/bufr/tables/0/wmo/42/codetables/40051.table new file mode 100644 index 000000000..60542bc0f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40051.table @@ -0,0 +1,8 @@ +0 0 OPTIMAL ESTIMATION METHODS (OEM) NOT ATTEMPTED +1 1 OEM ABORTED BECAUSE FIRST GUESS RESIDUALS TOO HIGH +2 2 THE MINIMIZATION DID NOT CONVERGE, SOUNDING REJECTED +3 3 THE MINIMIZATION DID NOT CONVERGE, SOUNDING ACCEPTED +4 4 THE MINIMIZATION CONVERGED BUT SOUNDING REJECTED +5 5 THE MINIMIZATION CONVERGED, SOUNDING ACCEPTED +6 6 RESERVED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40052.table b/definitions/bufr/tables/0/wmo/42/codetables/40052.table new file mode 100644 index 000000000..1f48809c0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40052.table @@ -0,0 +1,4 @@ +4 4 SUPERSATURATION CONDITIONS IN THE OEM RETRIEVAL +5 5 SUPERADIABATIC CONDITIONS IN THE OEM RETRIEVAL +6 6 SUPERSATURATION CONDITIONS IN THE FIRST GUESS +7 7 SUPERADIABATIC CONDITIONS IN THE FIRST GUESS diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40054.table b/definitions/bufr/tables/0/wmo/42/codetables/40054.table new file mode 100644 index 000000000..a034bc322 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40054.table @@ -0,0 +1,12 @@ +1 1 AN ERROR HAS BEEN DETECTED +2 2 MESSAGE FROM L1 +3 3 MESSAGE FROM L2 +4 4 MESSAGE FROM ANCILLARY DATA +5 5 MESSAGE FROM FITTING PROCEDURE +6 6 FILE OPENING +7 7 FILE READING +8 8 QUALITY FLAG +9 9 LEVEL 2 FROM LINEAR REGRESSION(F_QUAL), REPORT A PIXEL WHERE L2 ARE NOT FULLY TRUSTED +10 10 EMPTY FIELD OR DATA +11 11 MISSING SURFACE PRESSURE VALUE +12 12 RADIANCE FILTERING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40055.table b/definitions/bufr/tables/0/wmo/42/codetables/40055.table new file mode 100644 index 000000000..7aa99d433 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40055.table @@ -0,0 +1,20 @@ +1 1 RADIANCE FILTERING +2 2 POLAR REGIONS +3 3 LOCATION IN THE NIGHT +4 4 NEGATIVE ALTITUDE SURFACE BELOW MEAN SEA LEVEL +5 5 CLOUD COVERED SCENE +6 6 SCENE ABOVE THE SEA +7 7 SCENE ABOVE DESERT +8 8 SKIN TEMPERATURE +9 9 SKIN TEMPERATURE DIFFERENTIAL +10 10 SPECTRAL LINE CONTRAST TOO WEAK +11 11 MAXIMUM NUMBER OF ITERATIONS EXCEEDED +12 12 NEGATIVE PARTIAL COLUMNS +13 13 MATRIX ILL CONDITIONED +14 14 FIT DIVERGED +15 15 ERROR IN GNU SCIENTIFIC LIBRARY (GSL) USAGE +16 16 RESIDUALS BIASED +17 17 RESIDUALS SLOPED +18 18 RESIDUALS ROOT MEAN SQUARE (RMS) ERROR IS LARGE +19 19 WEIRD AVERAGING KERNELS +20 20 ICE PRESENCE DETECTED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40056.table b/definitions/bufr/tables/0/wmo/42/codetables/40056.table new file mode 100644 index 000000000..f4a31d340 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40056.table @@ -0,0 +1,4 @@ +0 0 USE NOT RECOMMENDED +1 1 USE WITH CAUTION +2 2 BEST QUALITY +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40057.table b/definitions/bufr/tables/0/wmo/42/codetables/40057.table new file mode 100644 index 000000000..c8a50e778 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40057.table @@ -0,0 +1,30 @@ +1 1 AN ERROR HAS BEEN DETECTED +2 2 MESSAGE FROM L1 +3 3 MESSAGE FROM L2 +4 4 MESSAGE FROM ANCILLARY DATA +5 5 MESSAGE FROM FITTING PROCEDURE +6 6 RESERVED +7 7 BAD L1 OR L2 FLAG RAISED +8 8 LEVEL 2 NOT FULLY TRUSTED +9 9 MISSING TEMPERATURE OR HUMIDITY LEVELS IN THE VERTICAL PROFILE +10 10 MISSING SURFACE PRESSURE VALUE +11 11 RADIANCE FILTERING +12 12 POLAR REGIONS +13 13 LOCATION IN THE NIGHT +14 14 NEGATIVE ALTITUDE +15 15 CLOUD COVERED SCENE +16 16 SCENE ABOVE THE SEA +17 17 SCENE ABOVE DESERT +18 18 MISSING SKIN TEMPERATURE +19 19 RETRIEVED SKIN TEMPERATURE TOO DIFFERENT FROM MODEL +20 20 SPECTRAL LINE CONTRAST TOO WEAK +21 21 MAXIMUM NUMBER OF ITERATIONS EXCEEDS +22 22 NEGATIVE PARTIAL COLUMNS +23 23 MATRIX ILL CONDITIONED +24 24 FIT DIVERGED +25 25 ERROR IN GSL USAGE +26 26 RESIDUALS BIASED +27 27 RESIDUALS SLOPED +28 28 RESIDUALS RMS ERROR IS LARGE +29 29 WEIRD AVERAGING KERNELS +30 30 ICE PRESENCE DETECTED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40068.table b/definitions/bufr/tables/0/wmo/42/codetables/40068.table new file mode 100644 index 000000000..0b1484e0b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40068.table @@ -0,0 +1,4 @@ +0 0 VALUES CALCULATED WITH IASI L2 +1 1 PRESSURE AND TEMPERATURE PROFILES MISSING IN IASI L2 DATA; MODEL/FORECAST DATA USED INSTEAD +2 2 BEST QUALITY +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40074.table b/definitions/bufr/tables/0/wmo/42/codetables/40074.table new file mode 100644 index 000000000..911a95245 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40074.table @@ -0,0 +1,10 @@ +1 1 INCOMPATIBILITY OF A SCAN ANGLE FOR ELECTROENCEPHALOGRAM +2 2 CALIBRATION FAILURE (LIMIT OF BLACK BODY TEMPERATURE REACHED, NOT ENOUGH SOURCES FOR INTERFEROMETRY, ETC.) +3 3 GEOLOCATION EXECUTED TAKING INTO ACCOUNT THE ORIENTATION OF THE SPACECRAFT AND USING THE STAR CATALOGUE +4 4 HIGH LEVEL OF CRYOGENIC SEDIMENT REACHED, REQUIRING OUTGASSING OF THE RADIATION COOLER. SET WHEN NESR LEVEL OF THE ICE COVER THRESHOLD CROSSED +5 5 INTERFEROMETRY PACKAGE FLAG +6 6 GENERAL ACCURACY FLAG +7 7 NOISE PRESENT DURING THE INTERFEROMETRY +8 8 OUTGASSING OF THE RADIATION COOLER +9 9 FLAG PRECEDING THE FIRST 24 HOURS/DAY MARK (SET TO ON AS A RULE) +10 10 TELEMETRY PACKAGE FLAG diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40077.table b/definitions/bufr/tables/0/wmo/42/codetables/40077.table new file mode 100644 index 000000000..4c778cdba --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40077.table @@ -0,0 +1,4 @@ +1 1 SEA SURFACE TEMPERATURE NOT OK +2 2 SEA SURFACE WIND SPEED NOT OK +3 3 ATMOSPHERIC WATER VAPOUR CONTENT NOT OK +4 4 CLOUD LIQUID WATER CONTENT NOT OK diff --git a/definitions/bufr/tables/0/wmo/42/codetables/40080.table b/definitions/bufr/tables/0/wmo/42/codetables/40080.table new file mode 100644 index 000000000..b62c5f888 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/40080.table @@ -0,0 +1,4 @@ +1 1 THIN CIRRUS DETECTION EXECUTED +2 2 THIN CIRRUS DETECTION INDICATES A CLOUD +3 3 AEROSOL DUST DETECTION EXECUTED +4 4 AEROSOL DUST DETECTED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/4059.table b/definitions/bufr/tables/0/wmo/42/codetables/4059.table new file mode 100644 index 000000000..91fc6f4f9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/4059.table @@ -0,0 +1,5 @@ +1 1 0000 UTC +2 2 0600 UTC +3 3 1200 UTC +4 4 1800 UTC +5 5 OTHER HOURS diff --git a/definitions/bufr/tables/0/wmo/42/codetables/4080.table b/definitions/bufr/tables/0/wmo/42/codetables/4080.table new file mode 100644 index 000000000..84caf2108 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/4080.table @@ -0,0 +1,6 @@ +0 0 SPOT VALUES +1 1 LESS THAN 15 MINUTES +2 2 FROM 15 TO 45 MINUTES +3 3 MORE THAN 45 MINUTES +9 9 DATA NOT AVAILABLE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/42004.table b/definitions/bufr/tables/0/wmo/42/codetables/42004.table new file mode 100644 index 000000000..15a91da16 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/42004.table @@ -0,0 +1,3 @@ +0 0 WAVE DIRECTION RESOLVED +1 1 180-DEGREE AMBIGUITY NOT RESOLVED +15 15 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/42017.table b/definitions/bufr/tables/0/wmo/42/codetables/42017.table new file mode 100644 index 000000000..d2eb790f0 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/42017.table @@ -0,0 +1,5 @@ +0 0 GOOD +1 1 MEDIUM +2 2 LOW +3 3 POOR +15 15 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/42018.table b/definitions/bufr/tables/0/wmo/42/codetables/42018.table new file mode 100644 index 000000000..7999d0aed --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/42018.table @@ -0,0 +1,6 @@ +0 0 VERY GOOD +1 1 GOOD +2 2 MEDIUM +3 3 LOW +4 4 POOR +15 15 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/5069.table b/definitions/bufr/tables/0/wmo/42/codetables/5069.table new file mode 100644 index 000000000..24c2f5bbb --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/5069.table @@ -0,0 +1,4 @@ +0 0 MIE +1 1 RAYLEIGH +2 2 CROSS POLAR +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8001.table b/definitions/bufr/tables/0/wmo/42/codetables/8001.table new file mode 100644 index 000000000..6210da3b3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8001.table @@ -0,0 +1,6 @@ +1 1 SURFACE +2 2 STANDARD LEVEL +3 3 TROPOPAUSE LEVEL +4 4 MAXIMUM WIND LEVEL +5 5 SIGNIFICANT LEVEL, TEMPERATURE AND/OR RELATIVE HUMIDITY +6 6 SIGNIFICANT LEVEL, WIND diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8002.table b/definitions/bufr/tables/0/wmo/42/codetables/8002.table new file mode 100644 index 000000000..6ab4fd72d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8002.table @@ -0,0 +1,19 @@ +0 0 OBSERVING RULES FOR BASE OF LOWEST CLOUD AND CLOUD TYPES OF FM 12 SYNOP AND FM 13 SHIP APPLY +1 1 FIRST NON-CUMULONIMBUS SIGNIFICANT LAYER +2 2 SECOND NON-CUMULONIMBUS SIGNIFICANT LAYER +3 3 THIRD NON-CUMULONIMBUS SIGNIFICANT LAYER +4 4 CUMULONIMBUS LAYER +5 5 CEILING +6 6 CLOUDS NOT DETECTED BELOW THE FOLLOWING HEIGHT(S) +7 7 LOW CLOUD +8 8 MIDDLE CLOUD +9 9 HIGH CLOUD +10 10 CLOUD LAYER WITH BASE BELOW AND TOP ABOVE THE STATION +11 11 CLOUD LAYER WITH BASE AND TOP BELOW THE STATION LEVEL +20 20 NO CLOUDS DETECTED BY THE CLOUD DETECTION SYSTEM +21 21 FIRST INSTRUMENT DETECTED CLOUD LAYER +22 22 SECOND INSTRUMENT DETECTED CLOUD LAYER +23 23 THIRD INSTRUMENT DETECTED CLOUD LAYER +24 24 FOURTH INSTRUMENT DETECTED CLOUD LAYER +62 62 VALUE NOT APPLICABLE +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8003.table b/definitions/bufr/tables/0/wmo/42/codetables/8003.table new file mode 100644 index 000000000..373135140 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8003.table @@ -0,0 +1,12 @@ +0 0 SURFACE +1 1 BASE OF SATELLITE SOUNDING +2 2 CLOUD TOP +3 3 TROPOPAUSE +4 4 PRECIPITABLE WATER +5 5 SOUNDING RADIANCES +6 6 MEAN TEMPERATURES +7 7 OZONE +8 8 LOW CLOUD +9 9 MED CLOUD +10 10 HIGH CLOUD +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8004.table b/definitions/bufr/tables/0/wmo/42/codetables/8004.table new file mode 100644 index 000000000..2a8925eeb --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8004.table @@ -0,0 +1,6 @@ +2 2 UNSTEADY (UNS) +3 3 LEVEL FLIGHT, ROUTINE OBSERVATION (LVR) +4 4 LEVEL FLIGHT, HIGHEST WIND ENCOUNTERED (LVW) +5 5 ASCENDING (ASC) +6 6 DESCENDING (DES) +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8005.table b/definitions/bufr/tables/0/wmo/42/codetables/8005.table new file mode 100644 index 000000000..587ea9924 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8005.table @@ -0,0 +1,7 @@ +0 0 RESERVED +1 1 STORM CENTRE +2 2 OUTER LIMIT OR EDGE OF STORM +3 3 LOCATION OF MAXIMUM WIND +4 4 LOCATION OF THE STORM IN THE PERTURBED ANALYSIS +5 5 LOCATION OF THE STORM IN THE ANALYSIS +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8006.table b/definitions/bufr/tables/0/wmo/42/codetables/8006.table new file mode 100644 index 000000000..9f56c628d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8006.table @@ -0,0 +1,8 @@ +1 1 SURFACE +2 2 STANDARD LEVEL +3 3 TROPOPAUSE LEVEL +4 4 PROMINENT MAXIMUM LEVEL +5 5 PROMINENT MINIMUM LEVEL +6 6 MINIMUM PRESSURE LEVEL +7 7 RESERVED +8 8 LEVEL OF UNDETERMINED SIGNIFICANCE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8007.table b/definitions/bufr/tables/0/wmo/42/codetables/8007.table new file mode 100644 index 000000000..3e4d2cc3c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8007.table @@ -0,0 +1,5 @@ +0 0 POINT +1 1 LINE +2 2 AREA +3 3 VOLUME +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8008.table b/definitions/bufr/tables/0/wmo/42/codetables/8008.table new file mode 100644 index 000000000..2714b5aa2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8008.table @@ -0,0 +1,8 @@ +1 1 SURFACE +2 2 STANDARD LEVEL +3 3 TROPOPAUSE LEVEL +4 4 LEVEL OF BETA RADIATION MAXIMUM +5 5 LEVEL OF GAMMA RADIATION MAXIMUM +6 6 MINIMUM PRESSURE LEVEL +7 7 RESERVED +8 8 LEVEL OF UNDETERMINED SIGNIFICANCE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8009.table b/definitions/bufr/tables/0/wmo/42/codetables/8009.table new file mode 100644 index 000000000..b03398230 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8009.table @@ -0,0 +1,16 @@ +0 0 LEVEL FLIGHT, ROUTINE OBSERVATION, UNSTEADY +1 1 LEVEL FLIGHT, HIGHEST WIND ENCOUNTERED, UNSTEADY +2 2 UNSTEADY (UNS) +3 3 LEVEL FLIGHT, ROUTINE OBSERVATION (LVR) +4 4 LEVEL FLIGHT, HIGHEST WIND ENCOUNTERED (LVW) +5 5 ASCENDING (ASC) +6 6 DESCENDING (DES) +7 7 ASCENDING, OBSERVATION INTERVALS SELECTED BY TIME INCREMENTS +8 8 ASCENDING, OBSERVATION INTERVALS SELECTED BY TIME INCREMENTS, UNSTEADY +9 9 ASCENDING, OBSERVATION INTERVALS SELECTED BY PRESSURE INCREMENTS +10 10 ASCENDING, OBSERVATION INTERVALS SELECTED BY PRESSURE INCREMENTS, UNSTEADY +11 11 DESCENDING, OBSERVATION INTERVALS SELECTED BY TIME INCREMENTS +12 12 DESCENDING, OBSERVATION INTERVALS SELECTED BY TIME INCREMENTS, UNSTEADY +13 13 DESCENDING, OBSERVATION INTERVALS SELECTED BY PRESSURE INCREMENTS +14 14 DESCENDING, OBSERVATION INTERVALS SELECTED BY PRESSURE INCREMENTS, UNSTEADY +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8010.table b/definitions/bufr/tables/0/wmo/42/codetables/8010.table new file mode 100644 index 000000000..3c5fe71f3 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8010.table @@ -0,0 +1,14 @@ +0 0 RESERVED +1 1 BARE SOIL +2 2 BARE ROCK +3 3 LAND GRASS COVER +4 4 WATER (LAKE, SEA) +5 5 FLOOD WATER UNDERNEATH +6 6 SNOW +7 7 ICE +8 8 RUNWAY OR ROAD +9 9 SHIP OR PLATFORM DECK IN STEEL +10 10 SHIP OR PLATFORM DECK IN WOOD +11 11 SHIP OR PLATFORM DECK PARTLY COVERED WITH RUBBER MAT +12 12 BUILDING ROOF +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8011.table b/definitions/bufr/tables/0/wmo/42/codetables/8011.table new file mode 100644 index 000000000..e7a822114 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8011.table @@ -0,0 +1,27 @@ +0 0 QUASI-STATIONARY FRONT AT THE SURFACE +1 1 QUASI-STATIONARY FRONT ABOVE THE SURFACE +2 2 WARM FRONT AT THE SURFACE +3 3 WARM FRONT ABOVE THE SURFACE +4 4 COLD FRONT AT THE SURFACE +5 5 COLD FRONT ABOVE THE SURFACE +6 6 OCCLUSION +7 7 INSTABILITY LINE +8 8 INTERTROPICAL FRONT +9 9 CONVERGENCE LINE +10 10 JET STREAM +11 11 CLOUD CLEAR +12 12 CLOUD +13 13 TURBULENCE +14 14 STORM +15 15 AIRFRAME ICING +16 16 PHENOMENON +17 17 VOLCANO +18 18 ATMOSPHERICS +19 19 RESERVED +20 20 SPECIAL CLOUDS +21 21 THUNDERSTORM +22 22 TROPICAL CYCLONE +23 23 MOUNTAIN WAVE +24 24 DUSTSTORM +25 25 SANDSTORM +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8012.table b/definitions/bufr/tables/0/wmo/42/codetables/8012.table new file mode 100644 index 000000000..769bc0bb7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8012.table @@ -0,0 +1,4 @@ +0 0 LAND +1 1 SEA +2 2 COAST +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8013.table b/definitions/bufr/tables/0/wmo/42/codetables/8013.table new file mode 100644 index 000000000..e18d2959b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8013.table @@ -0,0 +1,4 @@ +0 0 NIGHT +1 1 DAY +2 2 TWILIGHT +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8014.table b/definitions/bufr/tables/0/wmo/42/codetables/8014.table new file mode 100644 index 000000000..e6f2e46b6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8014.table @@ -0,0 +1,10 @@ +0 0 10-MINUTE MEAN VALUE - NORMAL VALUE +1 1 10-MINUTE MEAN VALUE - ABOVE THE UPPER LIMIT FOR ASSESSMENTS OF RVR (P) +2 2 10-MINUTE MEAN VALUE - BELOW THE LOWER LIMIT FOR ASSESSMENTS OF RVR (M) +3 3 ONE-MINUTE MINIMUM VALUE - NORMAL VALUE +4 4 ONE-MINUTE MINIMUM VALUE - ABOVE THE UPPER LIMIT FOR ASSESSMENTS OF RVR (P) +5 5 ONE-MINUTE MINIMUM VALUE - BELOW THE LOWER LIMIT FOR ASSESSMENTS OF RVR (M) +6 6 ONE-MINUTE MAXIMUM VALUE - NORMAL VALUE +7 7 ONE-MINUTE MAXIMUM VALUE - ABOVE THE UPPER LIMIT FOR ASSESSMENTS OF RVR (P) +8 8 ONE-MINUTE MAXIMUM VALUE - BELOW THE LOWER LIMIT FOR ASSESSMENTS OF RVR (M) +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8015.table b/definitions/bufr/tables/0/wmo/42/codetables/8015.table new file mode 100644 index 000000000..6830b9591 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8015.table @@ -0,0 +1,4 @@ +0 0 SINGLE SENSOR +1 1 PRIMARY SENSOR +2 2 SECONDARY SENSOR (BACKUP) +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8016.table b/definitions/bufr/tables/0/wmo/42/codetables/8016.table new file mode 100644 index 000000000..6b8a1fa66 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8016.table @@ -0,0 +1,5 @@ +0 0 NOSIG +1 1 BECMG +2 2 TEMPO +3 3 FM +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8017.table b/definitions/bufr/tables/0/wmo/42/codetables/8017.table new file mode 100644 index 000000000..b3156f87e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8017.table @@ -0,0 +1,4 @@ +0 0 FM +1 1 TL +2 2 AT +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8018.table b/definitions/bufr/tables/0/wmo/42/codetables/8018.table new file mode 100644 index 000000000..f91e554ea --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8018.table @@ -0,0 +1,4 @@ +1 1 LAND IS PRESENT +2 2 SURFACE ICE MAP INDICATES ICE IS PRESENT +11 11 ICE MAP DATA NOT AVAILABLE +12 12 ATTENUATION MAP DATA NOT AVAILABLE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8019.table b/definitions/bufr/tables/0/wmo/42/codetables/8019.table new file mode 100644 index 000000000..4ed413301 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8019.table @@ -0,0 +1,8 @@ +0 0 RESERVED +1 1 ATS (AIR TRAFFIC SERVICE) UNIT SERVING FIR (FLIGHT INFORMATION REGION) +2 2 FIR (FLIGHT INFORMATION REGION) +3 3 UIR (UPPER FLIGHT INFORMATION REGION) +4 4 CTA (CONTROL AREA) +5 5 VAAC (VOLCANIC ASH ADVISORY CENTRE) +6 6 MWO (METEOROLOGICAL WATCH OFFICE) ISSUING SIGMET +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8021.table b/definitions/bufr/tables/0/wmo/42/codetables/8021.table new file mode 100644 index 000000000..8fbd35dd4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8021.table @@ -0,0 +1,32 @@ +0 0 RESERVED +1 1 TIME SERIES +2 2 TIME AVERAGED +3 3 ACCUMULATED +4 4 FORECAST +5 5 FORECAST TIME SERIES +6 6 FORECAST TIME AVERAGED +7 7 FORECAST ACCUMULATED +8 8 ENSEMBLE MEAN +9 9 ENSEMBLE MEAN TIME SERIES +10 10 ENSEMBLE MEAN TIME AVERAGED +11 11 ENSEMBLE MEAN ACCUMULATED +12 12 ENSEMBLE MEAN FORECAST +13 13 ENSEMBLE MEAN FORECAST TIME SERIES +14 14 ENSEMBLE MEAN FORECAST TIME AVERAGED +15 15 ENSEMBLE MEAN FORECAST ACCUMULATED +16 16 ANALYSIS +17 17 START OF PHENOMENON +18 18 RADIOSONDE LAUNCH TIME +19 19 START OF ORBIT +20 20 END OF ORBIT +21 21 TIME OF ASCENDING NODE +22 22 TIME OF OCCURRENCE OF WIND SHIFT +23 23 MONITORING PERIOD +24 24 AGREED TIME LIMIT FOR REPORT RECEPTION +25 25 NOMINAL REPORTING TIME +26 26 TIME OF LAST KNOWN POSITION +27 27 FIRST GUESS +28 28 START OF SCAN +29 29 END OF SCAN OR TIME OF ENDING +30 30 TIME OF OCCURRENCE +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8023.table b/definitions/bufr/tables/0/wmo/42/codetables/8023.table new file mode 100644 index 000000000..4f78743a5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8023.table @@ -0,0 +1,15 @@ +2 2 MAXIMUM VALUE +3 3 MINIMUM VALUE +4 4 MEAN VALUE +5 5 MEDIAN VALUE +6 6 MODAL VALUE +7 7 MEAN ABSOLUTE ERROR +8 8 RESERVED +9 9 BEST ESTIMATE OF STANDARD DEVIATION (N-1) +10 10 STANDARD DEVIATION (N) +11 11 HARMONIC MEAN +12 12 ROOT-MEAN-SQUARE VECTOR ERROR +13 13 ROOT-MEAN-SQUARE +14 14 ROOT-MEAN-SQUARE ERROR +32 32 VECTOR MEAN +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8024.table b/definitions/bufr/tables/0/wmo/42/codetables/8024.table new file mode 100644 index 000000000..377858bb1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8024.table @@ -0,0 +1,12 @@ +2 2 OBSERVED MINUS MAXIMUM +3 3 OBSERVED MINUS MINIMUM +4 4 OBSERVED MINUS MEAN +5 5 OBSERVED MINUS MEDIAN +6 6 OBSERVED MINUS MODE +11 11 OBSERVED MINUS CLIMATOLOGY (ANOMALY) +12 12 OBSERVED MINUS ANALYSED VALUE +13 13 OBSERVED MINUS INITIALIZED ANALYSED VALUE +14 14 OBSERVED MINUS FORECAST VALUE +21 21 OBSERVED MINUS INTERPOLATED VALUE +22 22 OBSERVED MINUS HYDROSTATICALLY CALCULATED VALUE +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8025.table b/definitions/bufr/tables/0/wmo/42/codetables/8025.table new file mode 100644 index 000000000..1d88fa54f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8025.table @@ -0,0 +1,5 @@ +0 0 UNIVERSAL TIME COORDINATED (UTC) MINUS LOCAL STANDARD TIME (LST) +1 1 LOCAL STANDARD TIME +2 2 UNIVERSAL TIME COORDINATED (UTC) MINUS SATELLITE CLOCK +5 5 TIME DIFFERENCE FROM EDGE OF PROCESSING SEGMENT +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8026.table b/definitions/bufr/tables/0/wmo/42/codetables/8026.table new file mode 100644 index 000000000..9bcef7864 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8026.table @@ -0,0 +1,5 @@ +0 0 AVERAGING KERNEL MATRIX +1 1 CORRELATION MATRIX (C) +2 2 LOWER TRIANGULAR CORRELATION MATRIX SQUARE ROOT (L FROM C=LLT) +3 3 INVERSE OF LOWER TRIANGULAR CORRELATION MATRIX SQUARE ROOT (L-1) +63 63 MISSING OR UNDEFINED SIGNIFICANCE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8029.table b/definitions/bufr/tables/0/wmo/42/codetables/8029.table new file mode 100644 index 000000000..ef493dbde --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8029.table @@ -0,0 +1,24 @@ +0 0 OPEN OCEAN OR SEMI-ENCLOSED SEA +1 1 ENCLOSED SEA OR LAKE +2 2 CONTINENTAL ICE +3 3 LAND +4 4 LOW INLAND (BELOW SEA LEVEL) +5 5 MIX OF LAND AND WATER +6 6 MIX OF LAND AND LOW INLAND +11 11 RIVER +12 12 LAKE +13 13 SEA +14 14 GLACIER +15 15 URBAN LAND +16 16 RURAL LAND +17 17 SUBURBAN LAND +18 18 SEA ICE +19 19 FOREST +20 20 SHRUBLANDS +21 21 SAVANNA +22 22 DESERT +23 23 GRASSLANDS +24 24 WETLANDS +25 25 SNOW/ICE +26 26 COAST +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8032.table b/definitions/bufr/tables/0/wmo/42/codetables/8032.table new file mode 100644 index 000000000..712400dd1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8032.table @@ -0,0 +1,7 @@ +0 0 ROUTINE OPERATION +1 1 EVENT TRIGGERED BY STORM SURGE +2 2 EVENT TRIGGERED BY TSUNAMI +3 3 EVENT TRIGGERED MANUALLY +4 4 INSTALLATION TESTING +5 5 MAINTENANCE TESTING +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8033.table b/definitions/bufr/tables/0/wmo/42/codetables/8033.table new file mode 100644 index 000000000..1c695372b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8033.table @@ -0,0 +1,6 @@ +0 0 RESERVED +1 1 PERCENTAGE CONFIDENCE CALCULATED USING CLOUD FRACTION +2 2 PERCENTAGE CONFIDENCE CALCULATED USING STANDARD DEVIATION OF TEMPERATURE +3 3 PERCENTAGE CONFIDENCE CALCULATED USING PROBABILITY OF CLOUD CONTAMINATION +4 4 PERCENTAGE CONFIDENCE CALCULATED USING NORMALITY OF DISTRIBUTION +127 127 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8034.table b/definitions/bufr/tables/0/wmo/42/codetables/8034.table new file mode 100644 index 000000000..879f27400 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8034.table @@ -0,0 +1,10 @@ +0 0 SECONDARY SAMPLING: AVERAGED +1 1 SECONDARY SAMPLING: DISCRETE +2 2 SECONDARY SAMPLING: MIXED +3 3 NEAR-SURFACE SAMPLING: AVERAGED, PUMPED +4 4 NEAR-SURFACE SAMPLING: AVERAGED, UNPUMPED +5 5 NEAR-SURFACE SAMPLING: DISCRETE, PUMPED +6 6 NEAR-SURFACE SAMPLING: DISCRETE, UNPUMPED +7 7 NEAR-SURFACE SAMPLING: MIXED, PUMPED +8 8 NEAR-SURFACE SAMPLING: MIXED, UNPUMPED +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8035.table b/definitions/bufr/tables/0/wmo/42/codetables/8035.table new file mode 100644 index 000000000..3d641fd15 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8035.table @@ -0,0 +1,8 @@ +0 0 GLOBAL +1 1 REGIONAL +2 2 NATIONAL +3 3 SPECIAL +4 4 BILATERAL +5 5 RESERVED +6 6 RESERVED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8036.table b/definitions/bufr/tables/0/wmo/42/codetables/8036.table new file mode 100644 index 000000000..6436989e6 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8036.table @@ -0,0 +1,8 @@ +0 0 WMO SECRETARIAT +1 1 WMO +2 2 RSMC +3 3 NMC +4 4 RTH +5 5 OBSERVING SITE +6 6 OTHER +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8037.table b/definitions/bufr/tables/0/wmo/42/codetables/8037.table new file mode 100644 index 000000000..a5f9be382 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8037.table @@ -0,0 +1,4 @@ +0 0 MANUFACTURER'S BASELINE CHECK UNIT +1 1 WEATHER SCREEN +2 2 GRUAN STANDARD HUMIDITY CHAMBER +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8038.table b/definitions/bufr/tables/0/wmo/42/codetables/8038.table new file mode 100644 index 000000000..aa4d7b77b --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8038.table @@ -0,0 +1,3 @@ +0 0 VERIFIED INSTRUMENT READING +1 1 REFERENCE INSTRUMENT READING +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8039.table b/definitions/bufr/tables/0/wmo/42/codetables/8039.table new file mode 100644 index 000000000..f4403c63d --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8039.table @@ -0,0 +1,8 @@ +0 0 ISSUE TIME OF FORECAST +1 1 TIME OF COMMENCEMENT OF PERIOD OF THE FORECAST +2 2 TIME OF ENDING OF PERIOD OF THE FORECAST +3 3 FORECAST TIME OF MAXIMUM TEMPERATURE +4 4 FORECAST TIME OF MINIMUM TEMPERATURE +5 5 TIME OF BEGINNING OF THE FORECAST CHANGE +6 6 TIME OF ENDING OF THE FORECAST CHANGE +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8040.table b/definitions/bufr/tables/0/wmo/42/codetables/8040.table new file mode 100644 index 000000000..42c5af0e5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8040.table @@ -0,0 +1,49 @@ +0 0 HIGH-RESOLUTION DATA SAMPLE +1 1 WITHIN 20 HPA OF SURFACE +2 2 PRESSURE LESS THAN 10 HPA (I.E., 9, 8, 7, ETC.) WHEN NO OTHER REASON APPLIES +3 3 BASE PRESSURE LEVEL FOR STABILITY INDEX +4 4 BEGIN DOUBTFUL TEMPERATURE, HEIGHT DATA +5 5 BEGIN MISSING DATA (ALL ELEMENTS) +6 6 BEGIN MISSING RELATIVE HUMIDITY DATA +7 7 BEGIN MISSING TEMPERATURE DATA +8 8 HIGHEST LEVEL REACHED BEFORE BALLOON DESCENT BECAUSE OF ICING OR TURBULENCE +9 9 END DOUBTFUL TEMPERATURE, HEIGHT DATA +10 10 END MISSING DATA (ALL ELEMENTS) +11 11 END MISSING RELATIVE HUMIDITY DATA +12 12 END MISSING TEMPERATURE DATA +13 13 ZERO DEGREES CELSIUS CROSSING(S) FOR RADAT +14 14 STANDARD PRESSURE LEVEL +15 15 OPERATOR-ADDED LEVEL +16 16 OPERATOR-DELETED LEVEL +17 17 BALLOON RE-ASCENDED BEYOND PREVIOUS HIGHEST ASCENT LEVEL +18 18 SIGNIFICANT RELATIVE HUMIDITY LEVEL +19 19 RELATIVE HUMIDITY LEVEL SELECTION TERMINATED +20 20 SURFACE LEVEL +21 21 SIGNIFICANT TEMPERATURE LEVEL +22 22 MANDATORY TEMPERATURE LEVEL +23 23 FLIGHT TERMINATION LEVEL +24 24 TROPOPAUSE(S) +25 25 AIRCRAFT REPORT +26 26 INTERPOLATED (GENERATED) LEVEL +27 27 MANDATORY WIND LEVEL +28 28 SIGNIFICANT WIND LEVEL +29 29 MAXIMUM WIND LEVEL +30 30 INCREMENTAL WIND LEVEL (FIXED REGIONAL) +31 31 INCREMENTAL HEIGHT LEVEL (GENERATED) +32 32 WIND TERMINATION LEVEL +33 33 PRESSURE 100 TO 110 HPA, WHEN NO OTHER REASON APPLIES +34 34 FREEZING LEVEL BASE +35 35 FREEZING LEVEL TOP +36 36 FLIGHT LEVEL BASE +37 37 FLIGHT LEVEL TOP +38 38 TOP OF WIND SOUNDING +39 39 BOTTOM OF WIND SOUNDING +40 40 SIGNIFICANT THERMODYNAMIC LEVEL (INVERSION) +41 41 SIGNIFICANT RELATIVE HUMIDITY LEVEL (ACCORDING TO NCDC CRITERIA) +42 42 SIGNIFICANT TEMPERATURE LEVEL (ACCORDING TO NCDC) +43 43 BEGIN MISSING WIND DATA +44 44 END MISSING WIND DATA +60 60 LEVEL OF 80-KNOT ISOTACH ABOVE JET +61 61 LEVEL OF 80-KNOT ISOTACH BELOW JET +62 62 OTHER +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8041.table b/definitions/bufr/tables/0/wmo/42/codetables/8041.table new file mode 100644 index 000000000..1f48fbedc --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8041.table @@ -0,0 +1,15 @@ +0 0 PARENT SITE +1 1 OBSERVATION SITE +2 2 BALLOON MANUFACTURE DATE +3 3 BALLOON LAUNCH POINT +4 4 SURFACE OBSERVATION +5 5 SURFACE OBSERVATION DISPLACEMENT FROM LAUNCH POINT +6 6 FLIGHT LEVEL OBSERVATION +7 7 FLIGHT LEVEL TERMINATION POINT +8 8 IFR CEILING AND VISIBILITY +9 9 MOUNTAIN OBSCURATION +10 10 STRONG SURFACE WIND +11 11 FREEZING LEVEL +12 12 MULTIPLE FREEZING LEVEL +13 13 INSTRUMENT MANUFACTURE DATE +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8042.table b/definitions/bufr/tables/0/wmo/42/codetables/8042.table new file mode 100644 index 000000000..c71709a4c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8042.table @@ -0,0 +1,17 @@ +1 1 SURFACE +2 2 STANDARD LEVEL +3 3 TROPOPAUSE LEVEL +4 4 MAXIMUM WIND LEVEL +5 5 SIGNIFICANT TEMPERATURE LEVEL +6 6 SIGNIFICANT HUMIDITY LEVEL +7 7 SIGNIFICANT WIND LEVEL +8 8 BEGINNING OF MISSING TEMPERATURE DATA +9 9 END OF MISSING TEMPERATURE DATA +10 10 BEGINNING OF MISSING HUMIDITY DATA +11 11 END OF MISSING HUMIDITY DATA +12 12 BEGINNING OF MISSING WIND DATA +13 13 END OF MISSING WIND DATA +14 14 TOP OF WIND SOUNDING +15 15 LEVEL DETERMINED BY REGIONAL DECISION +16 16 FREEZING LEVEL +17 17 PRESSURE LEVEL ORIGINALLY INDICATED BY HEIGHT AS THE VERTICAL COORDINATE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8043.table b/definitions/bufr/tables/0/wmo/42/codetables/8043.table new file mode 100644 index 000000000..b6975ed39 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8043.table @@ -0,0 +1,20 @@ +0 0 OZONE +1 1 WATER VAPOUR +2 2 METHANE +3 3 CARBON DIOXIDE +4 4 CARBON MONOXIDE +5 5 NITROGEN DIOXIDE +6 6 NITROUS OXIDE +7 7 FORMALDEHYDE +8 8 SULPHUR DIOXIDE +9 9 VOLCANIC SULPHUR DIOXIDE +25 25 PARTICULATE MATTER < 1.0 MICRONS +26 26 PARTICULATE MATTER < 2.5 MICRONS +27 27 PARTICULATE MATTER < 10 MICRONS +28 28 AEROSOLS (GENERIC) +29 29 SMOKE (GENERIC) +30 30 CRUSTAL MATERIAL (GENERIC DUST) +31 31 VOLCANIC ASH +32 32 CLOUD +33 33 CLOUD AND AEROSOLS +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8045.table b/definitions/bufr/tables/0/wmo/42/codetables/8045.table new file mode 100644 index 000000000..18cf53d29 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8045.table @@ -0,0 +1,5 @@ +0 0 AEROSOLS ALL TYPES +1 1 DESERT DUST +2 2 BLACK CARBON +3 3 SEA SALT +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8046.table b/definitions/bufr/tables/0/wmo/42/codetables/8046.table new file mode 100644 index 000000000..6bd87c416 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8046.table @@ -0,0 +1,587 @@ +0 0 OZONE +1 1 WATER VAPOUR +2 2 METHANE +3 3 CARBON DIOXIDE +4 4 CARBON MONOXIDE +5 5 NITROGEN DIOXIDE +6 6 NITROUS OXIDE +7 7 FORMALDEHYDE +8 8 SULPHUR DIOXIDE +9 9 AMMONIA +10 10 AMMONIUM CATION +11 11 NITROGEN MONOXIDE +12 12 ATOMIC OXYGEN +13 13 NITRATE RADICAL +14 14 HYDROPEROXYL RADICAL +15 15 DINITROGEN PENTOXIDE +16 16 NITROUS ACID +17 17 NITRIC ACID +18 18 PEROXYNITRIC ACID +19 19 HYDROGEN PEROXIDE +20 20 DIHYDROGEN +21 21 ATOMIC NITROGEN +22 22 SULPHATE ANION +23 23 ATOMIC RADON +24 24 MERCURY VAPOUR +25 25 MERCURY(II) CATION +26 26 ATOMIC CHLORINE +27 27 CHLORINE MONOXIDE +28 28 DICHLORINE PEROXIDE +29 29 HYPOCHLOROUS ACID +30 30 CHLORINE NITRATE +31 31 CHLORINE DIOXIDE +32 32 ATOMIC BROMINE +33 33 BROMINE MONOXIDE +34 34 BROMINE CHLORIDE +35 35 HYDROGEN BROMIDE +36 36 HYPOBROMOUS ACID +37 37 BROMINE NITRATE +38 38 DIOXYGEN +39 39 NITRYL CHLORIDE +40 40 SULPHURIC ACID +41 41 HYDROGEN SULPHIDE +42 42 SULPHUR TRIOXIDE +43 43 BROMINE +44 44 HYDROFLUORIC ACID +45 45 SULPHUR HEXAFLUORIDE +46 46 CHLORINE +10000 10000 HYDROXYL RADICAL +10001 10001 METHYL PEROXY RADICAL +10002 10002 METHYL HYDROPEROXIDE +10004 10004 METHANOL +10005 10005 FORMIC ACID +10006 10006 HYDROGEN CYANIDE +10007 10007 ACETO NITRILE +10008 10008 ETHANE +10009 10009 ETHENE (= ETHYLENE) +10010 10010 ETHYNE (= ACETYLENE) +10011 10011 ETHANOL +10012 10012 ACETIC ACID +10013 10013 PEROXYACETYL NITRATE +10014 10014 PROPANE +10015 10015 PROPENE +10016 10016 BUTANE (ALL ISOMERS) +10017 10017 ISOPRENE +10018 10018 ALPHA PINENE +10019 10019 BETA PINENE +10020 10020 LIMONENE +10021 10021 BENZENE +10022 10022 TOLUENE +10023 10023 XYLENE +10024 10024 METHANESULPHONIC ACID +10025 10025 METHYLGLYOXAL (2-OXOPROPANAL) +10026 10026 PEROXYACETYL RADICAL +10027 10027 METHACRYLIC ACID (2-METHYLPROP-2-ENOIC ACID) +10028 10028 METHACROLEIN (2-METHYLPROP-2-ENAL) +10029 10029 ACETONE (PROPAN-2-ONE) +10030 10030 ETHYL DIOXIDANYL RADICAL +10031 10031 BUTADIENE (BUTA-1,3-DIENE) +10032 10032 ACETALDEHYDE (ETHANAL) +10033 10033 GLYCOLALDEHYDE (HYDROXYETHANAL) +10034 10034 CRESOL (METHYLPHENOL), ALL ISOMERS +10035 10035 PERACETIC ACID (ETHANEPEROXOIC ACID) +10036 10036 2-HYDROXYETHYL OXIDANYL RADICAL +10037 10037 2-HYDROXYETHYL DIOXIDANYL RADICAL +10038 10038 GLYOXAL (OXALDEHYDE) +10039 10039 ISOPROPYL DIOXIDANYL RADICAL +10040 10040 ISOPROPYL HYDROPEROXIDE (2-HYDROPEROXYPROPANE) +10041 10041 HYDROXYACETONE (1-HYDROXYPROPAN-2-ONE) +10042 10042 PEROXYACETIC ACID (ETHANEPEROXOIC ACID) +10043 10043 METHYL VINYL KETONE (BUT-3-EN-2-ONE) +10044 10044 PHENOXY RADICAL +10045 10045 METHYL RADICAL +10046 10046 CARBONYL SULPHIDE (CARBON OXIDE SULPHIDE) +10047 10047 DIBROMOMETHANE +10048 10048 METHOXY RADICAL +10049 10049 TRIBROMOMETHANE +10050 10050 FORMYL RADICAL (OXOMETHYL RADICAL) +10051 10051 HYDROXYMETHYL DIOXIDANYL RADICAL +10052 10052 ETHYL HYDROPEROXIDE +10053 10053 3-HYDROXYPROPYL DIOXIDANYL RADICAL +10054 10054 3-HYDROXYPROPYL HYDROPEROXIDE +10055 10055 METHYL-PEROXY-NITRATE (NITROPEROXY-METHANE) +10056 10056 2-LAMBDA^1-OXIDANYLOXY-2-METHYLBUT-3-EN-1-OL (4-HYDROXY-3-METHYL-1-BUTENE-3-YLPEROXY RADICAL) +10057 10057 2-LAMBDA^1-OXIDANYLOXY-3-METHYLBUT-3-EN-1-OL (2-HYDROXY-1-ISOPROPENYLETHYLPEROXY RADICAL) +10058 10058 (Z)-4-HYDROPEROXY-2-METHYL-2-BUTENAL +10059 10059 (Z)-4-HYDROPEROXY-3-METHYL-2-BUTENAL +10500 10500 DIMETHYL SULPHIDE +10501 10501 DMSO (DIMETHYL SULFOXIDE) +20001 20001 HYDROGEN CHLORIDE +20002 20002 CFC-11 (TRICHLOROFLUOROMETHANE) +20003 20003 CFC-12 (DICHLORODIFLUOROMETHANE) +20004 20004 CFC-113 (1,1,2-TRICHLORO-1,2,2-TRIFLUOROETHANE) +20005 20005 CFC-113A (1,1,1-TRICHLORO-2,2,2-TRIFLUOROETHANE) +20006 20006 CFC-114 (1,2-DICHLORO-1,1,2,2-TETRAFLUOROETHANE) +20007 20007 CFC-115 (1-CHLORO-1,1,2,2,2-PENTAFLUOROETHANE) +20008 20008 HCFC-22 (CHLORODIFLUOROMETHANE) +20009 20009 HCFC-141B (1,1-DICHLORO-1-FLUOROETHANE) +20010 20010 HCFC-142B (1-CHLORO-1,1-DIFLUOROETHANE) +20011 20011 HALON-1202 (DIBROMODIFLUOROMETHANE) +20012 20012 HALON-1211 (BROMOCHLORODIFLUOROMETHANE) +20013 20013 HALON-1301 (BROMOTRIFLUOROMETHANE) +20014 20014 HALON-2402 (1,2-DIBROMO-1,1,2,2-TETRAFLUOROETHANE) +20015 20015 HCC-40 (METHYL CHLORIDE) +20016 20016 HCC-10 (CARBON TETRACHLORIDE) +20017 20017 HCC-140A (1,1,1-TRICHLOROETHANE) +20018 20018 HBC-40B1 (METHYL BROMIDE) +20019 20019 HCH (HEXACHLOROCYCLOHEXANE) ALL ISOMERS +20020 20020 ALPHA-HCH (ALPHA-HEXACHLOROCYCLOHEXANE) BOTH ENANTIOMERS +20021 20021 PCB-153 (2,2',4,4',5,5'-HEXACHLOROBIPHENYL) +20022 20022 HCFC-141A (1,1-DICHLORO-2-FLUOROETHANE) +30000 30000 RADIOACTIVE POLLUTANT (TRACER, DEFINED BY ORIGINATING CENTRE) +30010 30010 TRITIUM (HYDROGEN 3) +30011 30011 TRITIUM ORGANIC BOUNDED +30012 30012 TRITIUM INORGANIC +30013 30013 BERYLLIUM 7 +30014 30014 BERYLLIUM 10 +30015 30015 CARBON 14 +30016 30016 CARBON 14 CO2 +30017 30017 CARBON 14 OTHER GASES +30018 30018 NITROGEN 13 +30019 30019 NITROGEN 16 +30020 30020 FLUORINE 18 +30021 30021 SODIUM 22 +30022 30022 PHOSPHATE 32 +30023 30023 PHOSPHATE 33 +30024 30024 SULPHUR 35 +30025 30025 CHLORINE 36 +30026 30026 POTASSIUM 40 +30027 30027 ARGON 41 +30028 30028 CALCIUM 41 +30029 30029 CALCIUM 45 +30030 30030 TITANIUM 44 +30031 30031 SCANDIUM 46 +30032 30032 VANADIUM 48 +30033 30033 VANADIUM 49 +30034 30034 CHROME 51 +30035 30035 MANGANESE 52 +30036 30036 MANGANESE 54 +30037 30037 IRON 55 +30038 30038 IRON 59 +30039 30039 COBALT 56 +30040 30040 COBALT 57 +30041 30041 COBALT 58 +30042 30042 COBALT 60 +30043 30043 NICKEL 59 +30044 30044 NICKEL 63 +30045 30045 ZINC 65 +30046 30046 GALLIUM 67 +30047 30047 GALLIUM 68 +30048 30048 GERMANIUM 68 +30049 30049 GERMANIUM 69 +30050 30050 ARSENIC 73 +30051 30051 SELENIUM 75 +30052 30052 SELENIUM 79 +30053 30053 RUBIDIUM 81 +30054 30054 RUBIDIUM 83 +30055 30055 RUBIDIUM 84 +30056 30056 RUBIDIUM 86 +30057 30057 RUBIDIUM 87 +30058 30058 RUBIDIUM 88 +30059 30059 KRYPTON 85 +30060 30060 KRYPTON 85 METASTABLE +30061 30061 KRYPTON 87 +30062 30062 KRYPTON 88 +30063 30063 KRYPTON 89 +30064 30064 STRONTIUM 85 +30065 30065 STRONTIUM 89 +30066 30066 STRONTIUM 89/90 +30067 30067 STRONTIUM 90 +30068 30068 STRONTIUM 91 +30069 30069 STRONTIUM 92 +30070 30070 YTTRIUM 87 +30071 30071 YTTRIUM 88 +30072 30072 YTTRIUM 90 +30073 30073 YTTRIUM 91 +30074 30074 YTTRIUM 91 METASTABLE +30075 30075 YTTRIUM 92 +30076 30076 YTTRIUM 93 +30077 30077 ZIRCONIUM 89 +30078 30078 ZIRCONIUM 93 +30079 30079 ZIRCONIUM 95 +30080 30080 ZIRCONIUM 97 +30081 30081 NIOBIUM 93 METASTABLE +30082 30082 NIOBIUM 94 +30083 30083 NIOBIUM 95 +30084 30084 NIOBIUM 95 METASTABLE +30085 30085 NIOBIUM 97 +30086 30086 NIOBIUM 97 METASTABLE +30087 30087 MOLYBDENUM 93 +30088 30088 MOLYBDENUM 99 +30089 30089 TECHNETIUM 95 METASTABLE +30090 30090 TECHNETIUM 96 +30091 30091 TECHNETIUM 99 +30092 30092 TECHNETIUM 99 METASTABLE +30093 30093 RHODIUM 99 +30094 30094 RHODIUM 101 +30095 30095 RHODIUM 102 METASTABLE +30096 30096 RHODIUM 103 METASTABLE +30097 30097 RHODIUM 105 +30098 30098 RHODIUM 106 +30099 30099 PALLADIUM 100 +30100 30100 PALLADIUM 103 +30101 30101 PALLADIUM 107 +30102 30102 RUTHENIUM 103 +30103 30103 RUTHENIUM 105 +30104 30104 RUTHENIUM 106 +30105 30105 SILVER 108 METASTABLE +30106 30106 SILVER 110 METASTABLE +30107 30107 CADMIUM 109 +30108 30108 CADMIUM 113 METASTABLE +30109 30109 CADMIUM 115 METASTABLE +30110 30110 INDIUM 114 METASTABLE +30111 30111 TIN 113 +30112 30112 TIN 119 METASTABLE +30113 30113 TIN 121 METASTABLE +30114 30114 TIN 122 +30115 30115 TIN 123 +30116 30116 TIN 126 +30117 30117 ANTIMONY 124 +30118 30118 ANTIMONY 125 +30119 30119 ANTIMONY 126 +30120 30120 ANTIMONY 127 +30121 30121 ANTIMONY 129 +30122 30122 TELLURIUM 123 METASTABLE +30123 30123 TELLURIUM 125 METASTABLE +30124 30124 TELLURIUM 127 +30125 30125 TELLURIUM 127 METASTABLE +30126 30126 TELLURIUM 129 +30127 30127 TELLURIUM 129 METASTABLE +30128 30128 TELLURIUM 131 METASTABLE +30129 30129 TELLURIUM 132 +30130 30130 IODINE 123 +30131 30131 IODINE 124 +30132 30132 IODINE 125 +30133 30133 IODINE 126 +30134 30134 IODINE 129 +30135 30135 IODINE 129 ELEMENTARY GASEOUS +30136 30136 IODINE 129 ORGANIC BOUNDED +30137 30137 IODINE 131 +30138 30138 IODINE 131 ELEMENTARY GASEOUS +30139 30139 IODINE 131 ORGANIC BOUNDED +30140 30140 IODINE 131 GASEOUS ELEMENTARY AND ORGANIC BOUNDED +30141 30141 IODINE 131 AEROSOL +30142 30142 IODINE 132 +30143 30143 IODINE 132 ELEMENTARY GASEOUS +30144 30144 IODINE 132 ORGANIC BOUNDED +30145 30145 IODINE 132 GASEOUS ELEMENTARY AND ORGANIC BOUNDED +30146 30146 IODINE 132 AEROSOL +30147 30147 IODINE 133 +30148 30148 IODINE 133 ELEMENTARY GASEOUS +30149 30149 IODINE 133 ORGANIC BOUNDED +30150 30150 IODINE 133 GASEOUS ELEMENTARY AND ORGANIC BOUNDED +30151 30151 IODINE 133 AEROSOL +30152 30152 IODINE 134 +30153 30153 IODINE 134 ELEMENTARY GASEOUS +30154 30154 IODINE 134 ORGANIC BOUNDED +30155 30155 IODINE 135 +30156 30156 IODINE 135 ELEMENTARY GASEOUS +30157 30157 IODINE 135 ORGANIC BOUNDED +30158 30158 IODINE 135 GASEOUS ELEMENTARY AND ORGANIC BOUNDED +30159 30159 IODINE 135 AEROSOL +30160 30160 XENON 131 METASTABLE +30161 30161 XENON 133 +30162 30162 XENON 133 METASTABLE +30163 30163 XENON 135 +30164 30164 XENON 135 METASTABLE +30165 30165 XENON 137 +30166 30166 XENON 138 +30167 30167 XENON SUM OF ALL XENON ISOTOPES +30168 30168 CAESIUM 131 +30169 30169 CAESIUM 134 +30170 30170 CAESIUM 135 +30171 30171 CAESIUM 136 +30172 30172 CAESIUM 137 +30173 30173 BARIUM 133 +30174 30174 BARIUM 137 METASTABLE +30175 30175 BARIUM 140 +30176 30176 CERIUM 139 +30177 30177 CERIUM 141 +30178 30178 CERIUM 143 +30179 30179 CERIUM 144 +30180 30180 LANTHANUM 140 +30181 30181 LANTHANUM 141 +30182 30182 PRASEODYMIUM 143 +30183 30183 PRASEODYMIUM 144 +30184 30184 PRASEODYMIUM 144 METASTABLE +30185 30185 SAMARIUM 145 +30186 30186 SAMARIUM 147 +30187 30187 SAMARIUM 151 +30188 30188 NEODYMIUM 147 +30189 30189 PROMETHIUM 146 +30190 30190 PROMETHIUM 147 +30191 30191 PROMETHIUM 151 +30192 30192 EUROPIUM 152 +30193 30193 EUROPIUM 154 +30194 30194 EUROPIUM 155 +30195 30195 GADOLINIUM 153 +30196 30196 TERBIUM 160 +30197 30197 HOLMIUM 166 METASTABLE +30198 30198 THULIUM 170 +30199 30199 YTTERBIUM 169 +30200 30200 HAFNIUM 175 +30201 30201 HAFNIUM 181 +30202 30202 TANTALUM 179 +30203 30203 TANTALUM 182 +30204 30204 RHENIUM 184 +30205 30205 IRIDIUM 192 +30206 30206 MERCURY 203 +30207 30207 THALLIUM 204 +30208 30208 THALLIUM 207 +30209 30209 THALLIUM 208 +30210 30210 THALLIUM 209 +30211 30211 BISMUTH 205 +30212 30212 BISMUTH 207 +30213 30213 BISMUTH 210 +30214 30214 BISMUTH 211 +30215 30215 BISMUTH 212 +30216 30216 BISMUTH 213 +30217 30217 BISMUTH 214 +30218 30218 POLONIUM 208 +30219 30219 POLONIUM 210 +30220 30220 POLONIUM 212 +30221 30221 POLONIUM 213 +30222 30222 POLONIUM 214 +30223 30223 POLONIUM 215 +30224 30224 POLONIUM 216 +30225 30225 POLONIUM 218 +30226 30226 LEAD 209 +30227 30227 LEAD 210 +30228 30228 LEAD 211 +30229 30229 LEAD 212 +30230 30230 LEAD 214 +30231 30231 ASTATINE 217 +30232 30232 RADON 219 +30233 30233 RADON 220 +30234 30234 RADON 222 +30235 30235 FRANCIUM 221 +30236 30236 FRANCIUM 223 +30237 30237 RADIUM 223 +30238 30238 RADIUM 224 +30239 30239 RADIUM 225 +30240 30240 RADIUM 226 +30241 30241 RADIUM 228 +30242 30242 ACTINIUM 225 +30243 30243 ACTINIUM 227 +30244 30244 ACTINIUM 228 +30245 30245 THORIUM 227 +30246 30246 THORIUM 228 +30247 30247 THORIUM 229 +30248 30248 THORIUM 230 +30249 30249 THORIUM 231 +30250 30250 THORIUM 232 +30251 30251 THORIUM 234 +30252 30252 PROTACTINIUM 231 +30253 30253 PROTACTINIUM 233 +30254 30254 PROTACTINIUM 234 METASTABLE +30255 30255 URANIUM 232 +30256 30256 URANIUM 233 +30257 30257 URANIUM 234 +30258 30258 URANIUM 235 +30259 30259 URANIUM 236 +30260 30260 URANIUM 237 +30261 30261 URANIUM 238 +30262 30262 PLUTONIUM 236 +30263 30263 PLUTONIUM 238 +30264 30264 PLUTONIUM 239 +30265 30265 PLUTONIUM 240 +30266 30266 PLUTONIUM 241 +30267 30267 PLUTONIUM 242 +30268 30268 PLUTONIUM 244 +30269 30269 NEPTUNIUM 237 +30270 30270 NEPTUNIUM 238 +30271 30271 NEPTUNIUM 239 +30272 30272 AMERICIUM 241 +30273 30273 AMERICIUM 242 +30274 30274 AMERICIUM 242 METASTABLE +30275 30275 AMERICIUM 243 +30276 30276 CURIUM 242 +30277 30277 CURIUM 243 +30278 30278 CURIUM 244 +30279 30279 CURIUM 245 +30280 30280 CURIUM 246 +30281 30281 CURIUM 247 +30282 30282 CURIUM 248 +30283 30283 CURIUM 243/244 +30284 30284 PLUTONIUM 238/AMERICIUM 241 +30285 30285 PLUTONIUM 239/240 +30286 30286 BERKELIUM 249 +30287 30287 CALIFORNIUM 249 +30288 30288 CALIFORNIUM 250 +30289 30289 CALIFORNIUM 252 +30290 30290 SUM AEROSOL PARTICULATES +30291 30291 SUM IODINE +30292 30292 SUM NOBLE GAS +30293 30293 ACTIVATION GAS +30294 30294 CS-137 EQUIVALENT +30295 30295 CARBON-13 +30296 30296 LEAD +30297 30297 TELLURIUM 131 +30298 30298 NEODYMIUM 137 +30299 30299 PSEUDO RADIONUCLIDE +30300 30300 SILVER 112 +30301 30301 SILVER 115 +30302 30302 BARIUM 139 +30303 30303 BARIUM 141 +30304 30304 BARIUM 142 +30305 30305 BROMINE 84 +30306 30306 CADMINUM 115 +30307 30307 CADMINUM 117 +30308 30308 CADMINUM 117 METASTABLE +30309 30309 CERIUM 145 +30310 30310 CERIUM 146 +30311 30311 COBALT 58 METASTABLE +30312 30312 CEASIUM 138 +30313 30313 CEASIUM 139 +30314 30314 IODINE 130 AEROSOL +30315 30315 IODINE 130 ELEMENTARY GASEOUS +30316 30316 IODINE 130 ORGANIC BOUNDED +30317 30317 IODINE 132 METASTABLE +30318 30318 IODINE 134 METASTABLE +30319 30319 INDIUM 115 METASTABLE +30320 30320 INDIUM 117 METASTABLE +30321 30321 KRYPTON 83 METASTABLE +30322 30322 LANTHANUM 142 +30323 30323 LANTHANUM 143 +30324 30324 MANGANESE 56 +30325 30325 MOLYBDENUM 101 +30326 30326 MOLYBDENUM 102 +30327 30327 NEODYMIUM 149 +30328 30328 NEODYMIUM 151 +30329 30329 PALLADIUM 109 +30330 30330 PALLADIUM 112 +30331 30331 PRASEODYMIUM 145 +30332 30332 PRASEODYMIUM 146 +30333 30333 PRASEODYMIUM 147 +30334 30334 RUBIDIUM 89 +30335 30335 RUBIDIUM 90 +30336 30336 RUBIDIUM 90 METASTABLE +30337 30337 RHODIUM 105 METASTABLE +30338 30338 RHODIUM 107 +30339 30339 ANTIMONY 128 +30340 30340 ANTIMONY 128 METASTABLE +30341 30341 ANTIMONY 129 METASTABLE +30342 30342 ANTIMONY 130 +30343 30343 ANTIMONY 130 METASTABLE +30344 30344 ANTIMONY 131 +30345 30345 ANTIMONY 132 +30346 30346 ANTIMONY 132 METASTABLE +30347 30347 ANTIMONY 133 +30348 30348 SELENIUM 83 +30349 30349 TIN 127 +30350 30350 TIN 127 METASTABLE +30351 30351 TIN 128 +30352 30352 TIN 129 METASTABLE +30353 30353 TIN 130 +30354 30354 STRONTIUM 93 +30355 30355 TECHNETIUM 101 +30356 30356 TECHNETIUM 102 +30357 30357 TECHNETIUM 104 +30358 30358 TECHNETIUM 105 +30359 30359 TELLURIUM 133 +30360 30360 TELLURIUM 133 METASTABLE +30361 30361 TELLURIUM 134 +30362 30362 YTTRIUM 93 METASTABLE +30363 30363 YTTRIUM 94 +30364 30364 YTTRIUM 95 +30365 30365 ZIRCONIUM 96 +40000 40000 SINGLET SIGMA OXYGEN (DIOXYGEN (SIGMA SINGLET)) +40001 40001 SINGLET DELTA OXYGEN (DIOXYGEN (DELTA SINGLET)) +40002 40002 SINGLET EXCITED OXYGEN ATOM +40003 40003 TRIPLET GROUND STATE OXYGEN ATOM +60000 60000 HOX RADICAL (OH+HO2) +60001 60001 TOTAL INORGANIC AND ORGANIC PEROXY RADICALS (HOO* + ROO*) +60002 60002 PASSIVE OZONE +60003 60003 NOX EXPRESSED AS NITROGEN +60004 60004 ALL NITROGEN OXIDES (NOY) EXPRESSED AS NITROGEN +60005 60005 TOTAL INORGANIC CHLORINE +60006 60006 TOTAL INORGANIC BROMINE +60007 60007 TOTAL INORGANIC CHLORINE EXCEPT HCL, CLONO2: CLOX +60008 60008 TOTAL INORGANIC BROMINE EXCEPT HBR, BRONO2: BROX +60009 60009 LUMPED ALKANES +60010 60010 LUMPED ALKENES +60011 60011 LUMPED AROMATIC COMPOUNDS +60012 60012 LUMPED TERPENES +60013 60013 NON-METHANE VOLATILE ORGANIC COMPOUNDS EXPRESSED AS CARBON +60014 60014 ANTHROPOGENIC NON-METHANE VOLATILE ORGANIC COMPOUNDS EXPRESSED AS CARBON +60015 60015 BIOGENIC NON-METHANE VOLATILE ORGANIC COMPOUNDS EXPRESSED AS CARBON +60016 60016 LUMPED OXYGENATED HYDROCARBONS +60017 60017 NOX EXPRESSED AS NITROGEN DIOXIDE (NO2) +60018 60018 ORGANIC ALDEHYDES +60019 60019 ORGANIC PEROXIDES +60020 60020 ORGANIC NITRATES +60021 60021 ETHERS +60022 60022 AMINES +60023 60023 KETONES +60024 60024 DICARBONYLS UNSATURATED +60025 60025 HYDROXY DICARBONYLS UNSATURATED +60026 60026 HYDROXY KETONES +60027 60027 OXIDES +60028 60028 PEROXYACYL NITRATES +60029 60029 AROMATIC PEROXIDE RADICAL (ARYL DIOXYDANYL RADICALS) +60030 60030 BIOGENIC SECONDARY ORGANIC COMPOUND +60031 60031 ANTHROPOGENIC SECONDARY ORGANIC COMPOUND +60032 60032 ALL HYDROXY-PEROXIDES PRODUCTS OF THE REACTION OF HYDROXY-ISOPRENE ADDUCTS WITH O2 +60033 60033 ANTHROPOGENIC VOLATILE ORGANIC COMPOUNDS +60034 60034 BIOMASS BURNING VOLATILE ORGANIC COMPOUNDS +62000 62000 TOTAL AEROSOL +62001 62001 DUST DRY +62002 62002 WATER IN AMBIENT +62003 62003 AMMONIUM DRY +62004 62004 NITRATE DRY +62005 62005 NITRIC ACID TRIHYDRATE +62006 62006 SULPHATE DRY +62007 62007 MERCURY DRY +62008 62008 SEA SALT DRY +62009 62009 BLACK CARBON DRY +62010 62010 PARTICULATE ORGANIC MATTER DRY +62011 62011 PRIMARY PARTICULATE ORGANIC MATTER DRY +62012 62012 SECONDARY PARTICULATE ORGANIC MATTER DRY +62013 62013 BLACK CARBON HYDROPHILIC DRY +62014 62014 BLACK CARBON HYDROPHOBIC DRY +62015 62015 PARTICULATE ORGANIC MATTER HYDROPHILIC DRY +62016 62016 PARTICULATE ORGANIC MATTER HYDROPHOBIC DRY +62017 62017 NITRATE HYDROPHILIC DRY +62018 62018 NITRATE HYDROPHOBIC DRY +62019 62019 RESERVED +62020 62020 SMOKE - HIGH ABSORPTION +62021 62021 SMOKE - LOW ABSORPTION +62022 62022 AEROSOL - HIGH ABSORPTION +62023 62023 AEROSOL - LOW ABSORPTION +62024 62024 RESERVED +62025 62025 VOLCANIC ASH +62026 62026 PARTICULATE MATTER (PM) +62027 62027 RESERVED +62028 62028 TOTAL AEROSOL HYDROPHILIC +62029 62029 TOTAL AEROSOL HYDROPHOBIC +62030 62030 PRIMARY PARTICULATE INORGANIC MATTER DRY +62031 62031 SECONDARY PARTICULATE INORGANIC MATTER DRY +62032 62032 BIOGENIC SECONDARY ORGANIC AEROSOL +62033 62033 ANTHROPOGENIC SECONDARY ORGANIC AEROSOL +62034 62034 RAIN WATER +62035 62035 CLOUD WATER +62036 62036 BROWN CARBON DRY +62100 62100 ALNUS (ALDER) POLLEN +62101 62101 BETULA (BIRCH) POLLEN +62102 62102 CASTANEA (CHESTNUT) POLLEN +62103 62103 CARPINUS (HORNBEAM) POLLEN +62104 62104 CORYLUS (HAZEL) POLLEN +62105 62105 FAGUS (BEECH) POLLEN +62106 62106 FRAXINUS (ASH) POLLEN +62107 62107 PINUS (PINE) POLLEN +62108 62108 PLATANUS (PLANE) POLLEN +62109 62109 POPULUS (COTTONWOOD, POPLAR) POLLEN +62110 62110 QUERCUS (OAK) POLLEN +62111 62111 SALIX (WILLOW) POLLEN +62112 62112 TAXUS (YEW) POLLEN +62113 62113 TILIA (LIME, LINDEN) POLLEN +62114 62114 ULMUS (ELM) POLLEN +62115 62115 OLEA (OLIVE) POLLEN +62200 62200 AMBROSIA (RAGWEED, BURR-RAGWEED) POLLEN +62201 62201 ARTEMISIA (SAGEBRUSH, WORMWOOD, MUGWORT) POLLEN +62202 62202 BRASSICA (RAPE, BROCCOLI, BRUSSELS SPROUTS, CABBAGE, CAULIFLOWER, COLLARDS, KALE, KOHLRABI, MUSTARD, RUTABAGA) POLLEN +62203 62203 PLANTAGO (PLANTAIN) POLLEN +62204 62204 RUMEX (DOCK, SORREL) POLLEN +62205 62205 URTICA (NETTLE) POLLEN +62300 62300 POACEAE (GRASS FAMILY) POLLEN +65535 65535 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8050.table b/definitions/bufr/tables/0/wmo/42/codetables/8050.table new file mode 100644 index 000000000..4b401f1d2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8050.table @@ -0,0 +1,11 @@ +0 0 RESERVED +1 1 PRESSURE +2 2 TEMPERATURE +3 3 EXTREME TEMPERATURE +4 4 VAPOUR PRESSURE +5 5 PRECIPITATION +6 6 SUNSHINE DURATION +7 7 MAXIMUM TEMPERATURE +8 8 MINIMUM TEMPERATURE +9 9 WIND +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8051.table b/definitions/bufr/tables/0/wmo/42/codetables/8051.table new file mode 100644 index 000000000..5249fe6a2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8051.table @@ -0,0 +1,7 @@ +1 1 PRESSURE +2 2 TEMPERATURE +3 3 EXTREME TEMPERATURE +4 4 VAPOUR PRESSURE +5 5 PRECIPITATION +6 6 SUNSHINE DURATION +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8052.table b/definitions/bufr/tables/0/wmo/42/codetables/8052.table new file mode 100644 index 000000000..46dcbbe21 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8052.table @@ -0,0 +1,26 @@ +0 0 MEAN WIND SPEED OVER A 10-MINUTE PERIOD OBSERVED OR RECORDED EQUAL TO OR MORE THAN 10 M S-1 OR 20 KNOTS +1 1 MEAN WIND SPEED OVER A 10-MINUTE PERIOD OBSERVED OR RECORDED EQUAL TO OR MORE THAN 20 M S-1 OR 40 KNOTS +2 2 MEAN WIND SPEED OVER A 10-MINUTE PERIOD OBSERVED OR RECORDED EQUAL TO OR MORE THAN 30 M S-1 OR 60 KNOTS +3 3 MAXIMUM TEMPERATURE LESS THAN 273.15 K +4 4 MAXIMUM TEMPERATURE EQUAL TO OR MORE THAN 298.15 K +5 5 MAXIMUM TEMPERATURE EQUAL TO OR MORE THAN 303.15 K +6 6 MAXIMUM TEMPERATURE EQUAL TO OR MORE THAN 308.15 K +7 7 MAXIMUM TEMPERATURE EQUAL TO OR MORE THAN 313.15 K +8 8 MINIMUM TEMPERATURE LESS THAN 273.15 K +9 9 MAXIMUM TEMPERATURE EQUAL TO OR MORE THAN 273.15 K +10 10 PRECIPITATION EQUAL TO OR MORE THAN 1.0 KG M-2 +11 11 PRECIPITATION EQUAL TO OR MORE THAN 5.0 KG M-2 +12 12 PRECIPITATION EQUAL TO OR MORE THAN 10.0 KG M-2 +13 13 PRECIPITATION EQUAL TO OR MORE THAN 50.0 KG M-2 +14 14 PRECIPITATION EQUAL TO OR MORE THAN 100.0 KG M-2 +15 15 PRECIPITATION EQUAL TO OR MORE THAN 150.0 KG M-2 +16 16 SNOW DEPTH MORE THAN 0.00 M +17 17 SNOW DEPTH MORE THAN 0.01 M +18 18 SNOW DEPTH MORE THAN 0.10 M +19 19 SNOW DEPTH MORE THAN 0.50 M +20 20 HORIZONTAL VISIBILITY LESS THAN 50 M +21 21 HORIZONTAL VISIBILITY LESS THAN 100 M +22 22 HORIZONTAL VISIBILITY LESS THAN 1000 M +23 23 HAIL +24 24 THUNDERSTORM +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8053.table b/definitions/bufr/tables/0/wmo/42/codetables/8053.table new file mode 100644 index 000000000..cbc11c9a7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8053.table @@ -0,0 +1,4 @@ +0 0 VALUE OCCURRED ON ONLY ONE DAY IN THE MONTH +1 1 VALUE OCCURRED ON MORE THAN ONE DAY IN THE MONTH +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8054.table b/definitions/bufr/tables/0/wmo/42/codetables/8054.table new file mode 100644 index 000000000..51b908e08 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8054.table @@ -0,0 +1,3 @@ +0 0 WIND SPEED OR GUST IS AS REPORTED +1 1 WIND SPEED IS GREATER THAN THAT REPORTED (P IN METAR/TAF/SPECI) +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8060.table b/definitions/bufr/tables/0/wmo/42/codetables/8060.table new file mode 100644 index 000000000..2865fece5 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8060.table @@ -0,0 +1,8 @@ +0 0 RESERVED +1 1 RANGE +2 2 AZIMUTH +3 3 HORIZONTAL +4 4 VERTICAL +5 5 NORTH/SOUTH +6 6 EAST/WEST +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8065.table b/definitions/bufr/tables/0/wmo/42/codetables/8065.table new file mode 100644 index 000000000..69b80ea33 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8065.table @@ -0,0 +1,4 @@ +0 0 NO SUN-GLINT +1 1 SUN-GLINT +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8066.table b/definitions/bufr/tables/0/wmo/42/codetables/8066.table new file mode 100644 index 000000000..fcc0252c9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8066.table @@ -0,0 +1,4 @@ +0 0 OPAQUE +1 1 SEMI-TRANSPARENT +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8070.table b/definitions/bufr/tables/0/wmo/42/codetables/8070.table new file mode 100644 index 000000000..f58061757 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8070.table @@ -0,0 +1,6 @@ +0 0 RESERVED +1 1 RESERVED +2 2 EARTH LOCATED INSTRUMENT COUNTS, CALIBRATION COEFFICIENTS AND HOUSEKEEPING (LEVEL 1B) +3 3 EARTH LOCATED CALIBRATED RADIANCES (LEVEL 1C) +4 4 MAPPED TO A COMMON FOOTPRINT, EARTH LOCATED CALIBRATED RADIANCES (LEVEL 1D) +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8071.table b/definitions/bufr/tables/0/wmo/42/codetables/8071.table new file mode 100644 index 000000000..8890d5739 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8071.table @@ -0,0 +1,4 @@ +0 0 FIRST GUESS +1 1 Y VECTOR +2 2 X VECTOR +7 7 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8072.table b/definitions/bufr/tables/0/wmo/42/codetables/8072.table new file mode 100644 index 000000000..033dd5850 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8072.table @@ -0,0 +1,8 @@ +0 0 MIXED +1 1 CLEAR +2 2 CLOUDY +3 3 PROBABLY CLEAR +4 4 PROBABLY CLOUDY +5 5 ASH +6 6 RESERVED +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8074.table b/definitions/bufr/tables/0/wmo/42/codetables/8074.table new file mode 100644 index 000000000..5778e6552 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8074.table @@ -0,0 +1,4 @@ +0 0 OPEN OCEAN OR SEMI-ENCLOSED SEA +1 1 NON-OCEAN LIKE +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8075.table b/definitions/bufr/tables/0/wmo/42/codetables/8075.table new file mode 100644 index 000000000..5f5e3a24c --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8075.table @@ -0,0 +1,4 @@ +0 0 ASCENDING ORBIT +1 1 DESCENDING ORBIT +2 2 RESERVED +3 3 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8076.table b/definitions/bufr/tables/0/wmo/42/codetables/8076.table new file mode 100644 index 000000000..431496fbc --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8076.table @@ -0,0 +1,9 @@ +0 0 KU +1 1 C +2 2 LONG-WAVE INFRARED +3 3 MEDIUM-WAVE INFRARED +4 4 SHORT-WAVE INFRARED +5 5 M +6 6 I +7 7 DAY/NIGHT +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8077.table b/definitions/bufr/tables/0/wmo/42/codetables/8077.table new file mode 100644 index 000000000..2c7902bd7 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8077.table @@ -0,0 +1,7 @@ +0 0 LAND +1 1 SEA +2 2 COASTAL +3 3 OPEN OCEAN OR SEMI-ENCLOSED SEA +4 4 ENCLOSED SEA OR LAKE +5 5 CONTINENTAL ICE +127 127 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8079.table b/definitions/bufr/tables/0/wmo/42/codetables/8079.table new file mode 100644 index 000000000..735a09c37 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8079.table @@ -0,0 +1,9 @@ +0 0 NORMAL ISSUE +1 1 CORRECTION TO A PREVIOUSLY ISSUED PRODUCT (COR) +2 2 AMENDMENT TO A PREVIOUSLY ISSUED PRODUCT (AMD) +3 3 CORRECTION TO A PREVIOUSLY ISSUED AMENDED PRODUCT (COR AMD) +4 4 CANCELLATION OF A PREVIOUSLY ISSUED PRODUCT (CNL) +5 5 NO PRODUCT AVAILABLE (NIL) +6 6 SPECIAL REPORT (SPECI) +7 7 CORRECTED SPECIAL REPORT (SPECI COR) +15 15 MISSING OR NOT APPLICABLE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8080.table b/definitions/bufr/tables/0/wmo/42/codetables/8080.table new file mode 100644 index 000000000..596dfc676 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8080.table @@ -0,0 +1,20 @@ +0 0 TOTAL WATER PRESSURE PROFILE +1 1 TOTAL WATER TEMPERATURE PROFILE +2 2 TOTAL WATER SALINITY PROFILE +3 3 TOTAL WATER CONDUCTIVITY PROFILE +4 4 TOTAL WATER DEPTH +10 10 WATER PRESSURE AT A LEVEL +11 11 WATER TEMPERATURE AT A LEVEL +12 12 SALINITY AT A LEVEL +13 13 WATER DEPTH AT A LEVEL +14 14 SEA/WATER CURRENT SPEED AT A LEVEL +15 15 SEA/WATER CURRENT DIRECTION AT A LEVEL +16 16 DISSOLVED OXYGEN AT A LEVEL +20 20 POSITION +21 21 CHLOROPHYLL-A AT A LEVEL +22 22 NITRATE AT A LEVEL +23 23 PH AT A LEVEL +24 24 BBP700 AT A LEVEL +25 25 WATER CONDUCTIVITY AT A LEVEL +26 26 SEA WATER POTENTIAL DENSITY REFERENCED TO SEA SURFACE AT A LEVEL +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8081.table b/definitions/bufr/tables/0/wmo/42/codetables/8081.table new file mode 100644 index 000000000..75d288732 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8081.table @@ -0,0 +1,5 @@ +0 0 SENSOR +1 1 TRANSMITTER +2 2 RECEIVER +3 3 OBSERVING PLATFORM +63 63 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8082.table b/definitions/bufr/tables/0/wmo/42/codetables/8082.table new file mode 100644 index 000000000..1f24db866 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8082.table @@ -0,0 +1,3 @@ +0 0 SENSOR HEIGHT IS NOT MODIFIED +1 1 SENSOR HEIGHT IS MODIFIED TO STANDARD LEVEL +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8083.table b/definitions/bufr/tables/0/wmo/42/codetables/8083.table new file mode 100644 index 000000000..174ef3428 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8083.table @@ -0,0 +1,9 @@ +1 1 ADJUSTED TO OR WITH RESPECT TO REPRESENTATIVE HEIGHT OF SENSOR ABOVE LOCAL GROUND (OR DECK OF MARINE PLATFORM) +2 2 ADJUSTED TO OR WITH RESPECT TO REPRESENTATIVE HEIGHT OF SENSOR ABOVE WATER SURFACE +3 3 ADJUSTED WITH RESPECT TO STANDARD SURFACE ROUGHNESS +4 4 ADJUSTED WITH RESPECT TO WIND SPEED +5 5 ADJUSTED WITH RESPECT TO TEMPERATURE +6 6 ADJUSTED WITH RESPECT TO PRESSURE +7 7 ADJUSTED WITH RESPECT TO HUMIDITY +8 8 ADJUSTED WITH RESPECT TO EVAPORATION +9 9 ADJUSTED WITH RESPECT TO WETTING LOSSES diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8085.table b/definitions/bufr/tables/0/wmo/42/codetables/8085.table new file mode 100644 index 000000000..79e1a3d90 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8085.table @@ -0,0 +1,4 @@ +0 0 FORE BEAM +1 1 MID BEAM +2 2 AFT BEAM +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8086.table b/definitions/bufr/tables/0/wmo/42/codetables/8086.table new file mode 100644 index 000000000..a9ecd0351 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8086.table @@ -0,0 +1,11 @@ +1 1 MODEL GROUND SURFACE +2 2 STANDARD LEVEL +3 3 TROPOPAUSE LEVEL +4 4 MAXIMUM WIND LEVEL +5 5 SIGNIFICANT TEMPERATURE LEVEL +6 6 SIGNIFICANT HUMIDITY LEVEL +7 7 SIGNIFICANT WIND LEVEL +8 8 VERTICALLY INTERPOLATED LEVEL (THIS SHOULD BE SET TO 1 FOR POINTS ON THE VERTICAL PROFILE THAT FALL BETWEEN THE MODEL'S NATIVE VERTICAL LEVELS.) +9 9 VIRTUAL STATION HEIGHT +10 10 LEVEL OF BEST FIT +11 11 RESERVED diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8087.table b/definitions/bufr/tables/0/wmo/42/codetables/8087.table new file mode 100644 index 000000000..d556c98de --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8087.table @@ -0,0 +1,5 @@ +0 0 UPPER LEFT +1 1 UPPER RIGHT +2 2 LOWER RIGHT +3 3 LOWER LEFT +7 7 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8088.table b/definitions/bufr/tables/0/wmo/42/codetables/8088.table new file mode 100644 index 000000000..d6f51be70 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8088.table @@ -0,0 +1,4 @@ +0 0 TOP VIEW (GEOGRAPHICAL LONGITUDE ON X-AXIS AND LATITUDE ON Y-AXIS) +1 1 NORTH-SOUTH VIEW (TRANSECT WITH GEOGRAPHICAL LONGITUDE ON X-AXIS AND VERTICAL HEIGHT ON Y-AXIS) +2 2 EAST-WEST VIEW (TRANSECT WITH GEOGRAPHICAL LATITUDE ON X-AXIS AND VERTICAL HEIGHT ON Y-AXIS) +63 63 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8091.table b/definitions/bufr/tables/0/wmo/42/codetables/8091.table new file mode 100644 index 000000000..3a8c44df1 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8091.table @@ -0,0 +1,11 @@ +0 0 SATELLITE COORDINATES +1 1 OBSERVATION COORDINATES +2 2 START OF OBSERVATION +3 3 END OF OBSERVATION +4 4 HORIZONTAL CENTRE OF GRAVITY OF THE OBSERVATION +5 5 VERTICAL CENTRE OF GRAVITY OF THE OBSERVATION +6 6 TOP OF THE OBSERVATION +7 7 BOTTOM OF THE OBSERVATION +8 8 PROJECTION ORIGIN +9 9 COORDINATES OF TRUE SCALE +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8092.table b/definitions/bufr/tables/0/wmo/42/codetables/8092.table new file mode 100644 index 000000000..e40754f8e --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8092.table @@ -0,0 +1,3 @@ +0 0 STANDARD UNCERTAINTY +1 1 COMBINED STANDARD UNCERTAINTY +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8093.table b/definitions/bufr/tables/0/wmo/42/codetables/8093.table new file mode 100644 index 000000000..74f5c3a63 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8093.table @@ -0,0 +1,4 @@ +0 0 TOTAL UNCERTAINTY +1 1 SYSTEMATIC COMPONENT OF UNCERTAINTY +2 2 RANDOM COMPONENT OF UNCERTAINTY +31 31 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8094.table b/definitions/bufr/tables/0/wmo/42/codetables/8094.table new file mode 100644 index 000000000..e2ead0bc9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8094.table @@ -0,0 +1,8 @@ +0 0 AVERAGE OF MAXIMUM AND MINIMUM VALUES: TM = (TX + TN)/2 +1 1 AVERAGE OF THE 8 OBSERVATIONS TAKEN EVERY THREE HOURS +2 2 AVERAGE OF THE 24 HOURLY OBSERVATIONS +3 3 WEIGHTED AVERAGE OF 3 OBSERVATIONS: TM = (AT1 +BT2 + CT3) +4 4 WEIGHTED AVERAGE OF 3 OBSERVATIONS AND ALSO MAXIMUM AND MINIMUM VALUES: TM= (AT1 +BT2 + CT3 +DTX + ETN) +5 5 AUTOMATIC WEATHER STATION COMPLETE INTEGRATION FROM MINUTE DATA +6 6 AVERAGE OF THE 4 OBSERVATIONS TAKEN EVERY SIX HOURS +255 255 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8095.table b/definitions/bufr/tables/0/wmo/42/codetables/8095.table new file mode 100644 index 000000000..f9d14f75f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8095.table @@ -0,0 +1,36 @@ +0 0 RESERVED +1 1 1A +2 2 1B +3 3 1C +4 4 1D +5 5 RESERVED +6 6 2A +7 7 2B +8 8 2C +9 9 2D +10 10 RESERVED +11 11 3A +12 12 3B +13 13 3C +14 14 3D +15 15 RESERVED +16 16 4A +17 17 4B +18 18 4C +19 19 4D +20 20 RESERVED +21 21 5A +22 22 5B +23 23 5C +24 24 5D +25 25 RESERVED +26 26 1 +27 27 2 +28 28 3 +29 29 4 +30 30 5 +31 31 A +32 32 B +33 33 C +34 34 D +255 255 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8096.table b/definitions/bufr/tables/0/wmo/42/codetables/8096.table new file mode 100644 index 000000000..f9d14f75f --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8096.table @@ -0,0 +1,36 @@ +0 0 RESERVED +1 1 1A +2 2 1B +3 3 1C +4 4 1D +5 5 RESERVED +6 6 2A +7 7 2B +8 8 2C +9 9 2D +10 10 RESERVED +11 11 3A +12 12 3B +13 13 3C +14 14 3D +15 15 RESERVED +16 16 4A +17 17 4B +18 18 4C +19 19 4D +20 20 RESERVED +21 21 5A +22 22 5B +23 23 5C +24 24 5D +25 25 RESERVED +26 26 1 +27 27 2 +28 28 3 +29 29 4 +30 30 5 +31 31 A +32 32 B +33 33 C +34 34 D +255 255 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8097.table b/definitions/bufr/tables/0/wmo/42/codetables/8097.table new file mode 100644 index 000000000..1107d7b19 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8097.table @@ -0,0 +1,4 @@ +0 0 THE AVERAGE OF SIX TEMPERATURE SENSORS PLACED THROUGHOUT THE PAYLOAD +1 1 AVERAGE OF WF-BAND IFP AND RFE SENSORS FOR CHANNELS 1 TO 8 +2 2 AVERAGE OF G-BAND RFE SENSOR FOR CHANNELS 9 TO 12 +127 127 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8098.table b/definitions/bufr/tables/0/wmo/42/codetables/8098.table new file mode 100644 index 000000000..63fb59bb9 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8098.table @@ -0,0 +1,7 @@ +0 0 ON-BOARD CALIBRATION TARGET +1 1 SPACE VIEW REFLECTOR +2 2 MAIN REFLECTOR +3 3 RACETRACK +4 4 SUN SHIELD +5 5 ROTATING REFLECTOR +15 15 MISSING diff --git a/definitions/bufr/tables/0/wmo/42/codetables/8099.table b/definitions/bufr/tables/0/wmo/42/codetables/8099.table new file mode 100644 index 000000000..b8c9664c4 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/codetables/8099.table @@ -0,0 +1,3 @@ +0 0 NADIR +1 1 OBLIQUE +15 15 MISSING VALUE diff --git a/definitions/bufr/tables/0/wmo/42/element.table b/definitions/bufr/tables/0/wmo/42/element.table new file mode 100644 index 000000000..7bedbd981 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/element.table @@ -0,0 +1,1834 @@ +#code|abbreviation|type|name|unit|scale|reference|width|crex_unit|crex_scale|crex_width +000001|tableAEntry|string|TABLE A: ENTRY|CCITT IA5|0|0|24|Character|0|3 +000002|tableALine1|string|TABLE A: DATA CATEGORY DESCRIPTION, LINE 1|CCITT IA5|0|0|256|Character|0|32 +000003|tableALine2|string|TABLE A: DATA CATEGORY DESCRIPTION, LINE 2|CCITT IA5|0|0|256|Character|0|32 +000004|masterTable|string|BUFR/CREX MASTER TABLE|CCITT IA5|0|0|16|Character|0|2 +000005|editionNumber|string|BUFR/CREX EDITION NUMBER|CCITT IA5|0|0|24|Character|0|3 +000006|bufrMasterTableVersionNumber|string|BUFR MASTER TABLE VERSION NUMBER|CCITT IA5|0|0|16|Character|0|2 +000007|crexMasterTableVersionNumber|string|CREX MASTER TABLE VERSION NUMBER|CCITT IA5|0|0|16|Character|0|2 +000008|bufrLocalTableVersionNumber|string|BUFR LOCAL TABLE VERSION NUMBER|CCITT IA5|0|0|16|Character|0|2 +000010|fDescriptorToBeAddedOrDefined|string|F DESCRIPTOR TO BE ADDED OR DEFINED|CCITT IA5|0|0|8|Character|0|1 +000011|xDescriptorToBeAddedOrDefined|string|X DESCRIPTOR TO BE ADDED OR DEFINED|CCITT IA5|0|0|16|Character|0|2 +000012|yDescriptorToBeAddedOrDefined|string|Y DESCRIPTOR TO BE ADDED OR DEFINED|CCITT IA5|0|0|24|Character|0|3 +000013|elementNameLine1|string|ELEMENT NAME, LINE 1|CCITT IA5|0|0|256|Character|0|32 +000014|elementNameLine2|string|ELEMENT NAME, LINE 2|CCITT IA5|0|0|256|Character|0|32 +000015|unitsName|string|UNITS NAME|CCITT IA5|0|0|192|Character|0|24 +000016|unitsScaleSign|string|UNITS SCALE SIGN|CCITT IA5|0|0|8|Character|0|1 +000017|unitsScale|string|UNITS SCALE|CCITT IA5|0|0|24|Character|0|3 +000018|unitsReferenceSign|string|UNITS REFERENCE SIGN|CCITT IA5|0|0|8|Character|0|1 +000019|unitsReferenceValue|string|UNITS REFERENCE VALUE|CCITT IA5|0|0|80|Character|0|10 +000020|elementDataWidth|string|ELEMENT DATA WIDTH|CCITT IA5|0|0|24|Character|0|3 +000024|codeFigure|string|CODE FIGURE|CCITT IA5|0|0|64|Character|0|8 +000025|codeFigureMeaning|string|CODE FIGURE MEANING|CCITT IA5|0|0|496|Character|0|62 +000026|bitNumber|string|BIT NUMBER|CCITT IA5|0|0|48|Character|0|6 +000027|bitNumberMeaning|string|BIT NUMBER MEANING|CCITT IA5|0|0|496|Character|0|62 +000030|descriptorDefiningSequence|string|DESCRIPTOR DEFINING SEQUENCE|CCITT IA5|0|0|48|Character|0|6 +001001|blockNumber|long|WMO BLOCK NUMBER|Numeric|0|0|7|Numeric|0|2 +001002|stationNumber|long|WMO STATION NUMBER|Numeric|0|0|10|Numeric|0|3 +001003|regionNumber|table|WMO REGION NUMBER/GEOGRAPHICAL AREA|CODE TABLE|0|0|3|CODE TABLE|0|1 +001004|wmoRegionSubArea|long|WMO REGION SUB-AREA|Numeric|0|0|3|Numeric|0|1 +001005|buoyOrPlatformIdentifier|long|BUOY/PLATFORM IDENTIFIER|Numeric|0|0|17|Numeric|0|5 +001006|aircraftFlightNumber|string|AIRCRAFT FLIGHT NUMBER|CCITT IA5|0|0|64|Character|0|8 +001007|satelliteIdentifier|table|SATELLITE IDENTIFIER|CODE TABLE|0|0|10|CODE TABLE|0|4 +001008|aircraftRegistrationNumberOrOtherIdentification|string|AIRCRAFT REGISTRATION NUMBER OR OTHER IDENTIFICATION|CCITT IA5|0|0|64|Character|0|8 +001009|commercialAircraftType|string|TYPE OF COMMERCIAL AIRCRAFT|CCITT IA5|0|0|64|Character|0|8 +001010|stationaryBuoyPlatformIdentifierEGCManBuoys|string|STATIONARY BUOY PLATFORM IDENTIFIER; E.G. C-MAN BUOYS|CCITT IA5|0|0|64|Character|0|8 +001011|shipOrMobileLandStationIdentifier|string|SHIP OR MOBILE LAND STATION IDENTIFIER|CCITT IA5|0|0|72|Character|0|9 +001012|directionOfMotionOfMovingObservingPlatform|long|DIRECTION OF MOTION OF MOVING OBSERVING PLATFORM|deg|0|0|9|deg|0|3 +001013|movingObservingPlatformSpeed|long|SPEED OF MOTION OF MOVING OBSERVING PLATFORM|m/s|0|0|10|m/s|0|3 +001014|platformDriftSpeed|double|PLATFORM DRIFT SPEED (HIGH PRECISION)|m/s|2|0|10|m/s|2|4 +001015|stationOrSiteName|string|STATION OR SITE NAME|CCITT IA5|0|0|160|Character|0|20 +001016|satelliteSubIdentifier|long|SATELLITE SUB-IDENTIFIER|Numeric|0|0|16|Numeric|0|5 +001018|shortStationName|string|SHORT STATION OR SITE NAME|CCITT IA5|0|0|40|Character|0|5 +001019|longStationName|string|LONG STATION OR SITE NAME|CCITT IA5|0|0|256|Character|0|32 +001020|wmoRegionSubArea|long|WMO REGION SUB-AREA|Numeric|0|0|4|Numeric|0|2 +001021|synopticFeatureIdentifier|long|SYNOPTIC FEATURE IDENTIFIER|Numeric|0|0|14|Numeric|0|4 +001022|featureName|string|NAME OF FEATURE|CCITT IA5|0|0|224|Character|0|28 +001023|observationSequenceNumber|long|OBSERVATION SEQUENCE NUMBER|Numeric|0|0|9|Numeric|0|3 +001024|windSpeedSource|table|WIND SPEED SOURCE|CODE TABLE|0|0|5|CODE TABLE|0|2 +001025|stormIdentifier|string|STORM IDENTIFIER|CCITT IA5|0|0|24|Character|0|3 +001026|stormName|string|WMO STORM NAME|CCITT IA5|0|0|64|Character|0|8 +001027|longStormName|string|WMO LONG STORM NAME|CCITT IA5|0|0|80|Character|0|10 +001028|aerosolOpticalDepthSource|table|AEROSOL OPTICAL DEPTH (AOD) SOURCE|CODE TABLE|0|0|5|CODE TABLE|0|2 +001029|ssiSource|table|SSI SOURCE|CODE TABLE|0|0|5|CODE TABLE|0|2 +001030|numericalModelIdentifier|string|NUMERICAL MODEL IDENTIFIER|CCITT IA5|0|0|128|Character|0|16 +001031|centre|table|IDENTIFICATION OF ORIGINATING/GENERATING CENTRE|CODE TABLE|0|0|16|CODE TABLE|0|5 +001032|generatingApplication|table|GENERATING APPLICATION|CODE TABLE defined by originating/generating centre|0|0|8|CODE TABLE|0|3 +001033|centre|table|IDENTIFICATION OF ORIGINATING/GENERATING CENTRE|Common CODE TABLE C-1|0|0|8|Common CODE TABLE C-1|0|3 +001034|subCentre|table|IDENTIFICATION OF ORIGINATING/GENERATING SUB-CENTRE|Common CODE TABLE C-12|0|0|8|Common CODE TABLE C-12|0|3 +001035|centre|table|ORIGINATING CENTRE|Common CODE TABLE C-11|0|0|16|Common CODE TABLE C-11|0|5 +001036|agencyInChargeOfOperatingObservingPlatform|table|AGENCY IN CHARGE OF OPERATING THE OBSERVING PLATFORM|CODE TABLE|0|0|20|CODE TABLE|0|7 +001037|sigmetSequenceIdentifier|string|SIGMET SEQUENCE IDENTIFIER|CCITT IA5|0|0|24|Character|0|3 +001038|sourceOfSeaIceFraction|table|SOURCE OF SEA ICE FRACTION|CODE TABLE|0|0|5|CODE TABLE|0|2 +001039|graphicalAreaForecastSequenceIdentifier|string|GRAPHICAL AREA FORECAST (GFA) SEQUENCE IDENTIFIER|CCITT IA5|0|0|40|Character|0|5 +001040|processingCentreIdCode|string|PROCESSING CENTRE ID CODE|CCITT IA5|0|0|48|Character|0|6 +001041|absolutePlatformVelocityFirstComponent|double|ABSOLUTE PLATFORM VELOCITY - FIRST COMPONENT|m/s|5|-1073741824|31|m/s|5|10 +001042|absolutePlatformVelocitySecondComponent|double|ABSOLUTE PLATFORM VELOCITY - SECOND COMPONENT|m/s|5|-1073741824|31|m/s|5|10 +001043|absolutePlatformVelocityThirdComponent|double|ABSOLUTE PLATFORM VELOCITY - THIRD COMPONENT|m/s|5|-1073741824|31|m/s|5|10 +001044|standardGeneratingApplication|table|STANDARD GENERATING APPLICATION|CODE TABLE|0|0|8|CODE TABLE|0|3 +001050|platformTransmitterIdNumber|long|PLATFORM TRANSMITTER ID NUMBER|Numeric|0|0|17|Numeric|0|6 +001051|platformTransmitterIdNumber|string|PLATFORM TRANSMITTER ID NUMBER|CCITT IA5|0|0|96|Character|0|12 +001052|platformTransmitterId|table|PLATFORM TRANSMITTER ID|CODE TABLE|0|0|3|CODE TABLE|0|1 +001053|tsunameterReportSequenceNumber|long|TSUNAMETER REPORT SEQUENCE NUMBER TRIGGERED BY A TSUNAMI EVENT|Numeric|0|0|7|Numeric|0|2 +001060|aircraftReportingPointBeaconIdentifier|string|AIRCRAFT REPORTING POINT (BEACON IDENTIFIER)|CCITT IA5|0|0|64|Character|0|8 +001062|shortIcaoLocationIndicator|string|SHORT ICAO LOCATION INDICATOR|CCITT IA5|0|0|32|Character|0|4 +001063|icaoLocationIndicator|string|ICAO LOCATION INDICATOR|CCITT IA5|0|0|64|Character|0|8 +001064|runwayDesignator|string|RUNWAY DESIGNATOR|CCITT IA5|0|0|32|Character|0|4 +001065|icaoRegionIdentifier|string|ICAO REGION IDENTIFIER|CCITT IA5|0|0|256|Character|0|32 +001075|tideStationIdentification|string|TIDE STATION IDENTIFICATION|CCITT IA5|0|0|40|Character|0|5 +001079|uniqueIdentifierForProfile|string|UNIQUE IDENTIFIER FOR THE PROFILE|CCITT IA5|0|0|64|Character|0|8 +001080|shipLineNumberAccordingToSoop|string|SHIP LINE NUMBER ACCORDING TO SOOP|CCITT IA5|0|0|32|Character|0|4 +001081|radiosondeSerialNumber|string|RADIOSONDE SERIAL NUMBER|CCITT IA5|0|0|160|Character|0|20 +001082|radiosondeAscensionNumber|long|RADIOSONDE ASCENSION NUMBER|Numeric|0|0|14|Numeric|0|4 +001083|radiosondeReleaseNumber|long|RADIOSONDE RELEASE NUMBER|Numeric|0|0|3|Numeric|0|1 +001085|observingPlatformManufacturerModel|string|OBSERVING PLATFORM MANUFACTURER'S MODEL|CCITT IA5|0|0|160|Character|0|20 +001086|observingPlatformManufacturerSerialNumber|string|OBSERVING PLATFORM MANUFACTURER'S SERIAL NUMBER|CCITT IA5|0|0|256|Character|0|32 +001087|marineObservingPlatformIdentifier|long|WMO MARINE OBSERVING PLATFORM EXTENDED IDENTIFIER|Numeric|0|0|23|Numeric|0|7 +001090|techniqueForMakingUpInitialPerturbations|table|TECHNIQUE FOR MAKING UP INITIAL PERTURBATIONS|CODE TABLE|0|0|8|CODE TABLE|0|3 +001091|ensembleMemberNumber|long|ENSEMBLE MEMBER NUMBER|Numeric|0|0|10|Numeric|0|4 +001092|ensembleForecastType|table|TYPE OF ENSEMBLE FORECAST|CODE TABLE|0|0|8|CODE TABLE|0|3 +001093|balloonLotNumber|string|BALLOON LOT NUMBER|CCITT IA5|0|0|96|Character|0|12 +001094|wbanNumber|long|WBAN NUMBER|Numeric|0|0|17|Numeric|0|5 +001095|observerIdentification|string|OBSERVER IDENTIFICATION|CCITT IA5|0|0|32|Character|0|4 +001096|stationAcquisition|string|STATION ACQUISITION|CCITT IA5|0|0|160|Character|0|20 +001099|uniqueProductDefinition|string|UNIQUE PRODUCT DEFINITION|CCITT IA5|0|0|248|Character|0|31 +001101|stateIdentifier|table|STATE IDENTIFIER|CODE TABLE|0|0|10|CODE TABLE|0|3 +001102|nationalStationNumber|long|NATIONAL STATION NUMBER|Numeric|0|0|30|Numeric|0|9 +001103|imoNumber|long|IMO NUMBER. UNIQUE LLOYD'S REGISTER|Numeric|0|0|24|Numeric|0|7 +001104|stateOrFederalStateIdentifier|string|STATE/FEDERAL STATE IDENTIFIER|CCITT IA5|0|0|32|Character|0|4 +001105|highwayDesignator|string|HIGHWAY DESIGNATOR|CCITT IA5|0|0|40|Character|0|5 +001106|locationAlongHighwayAsIndicatedByPositionMarkers|long|LOCATION ALONG HIGHWAY AS INDICATED BY POSITION MARKERS|m|-2|0|14|m|-2|5 +001110|aircraftTailNumber|string|AIRCRAFT TAIL NUMBER|CCITT IA5|0|0|48|Character|0|6 +001111|originationAirport|string|ORIGINATION AIRPORT|CCITT IA5|0|0|24|Character|0|3 +001112|destinationAirport|string|DESTINATION AIRPORT|CCITT IA5|0|0|24|Character|0|3 +001113|templateVersionNumberDefinedByOriginatingCentre|long|TEMPLATE VERSION NUMBER DEFINED BY ORIGINATING CENTRE|Numeric|1|0|9|Numeric|1|3 +001114|encryptedStationIdentifierBase64Encoding|string|ENCRYPTED SHIP OR MOBILE LAND STATION IDENTIFIER (BASE64 ENCODING)|CCITT IA5|0|0|352|Character|0|44 +001115|identifierOfTheCruiseOrMission|string|IDENTIFIER OF THE CRUISE OR MISSION UNDER WHICH THE DATA WERE COLLECTED|CCITT IA5|0|0|160|Character|0|20 +001124|gridPointIdentifier|long|GRID POINT IDENTIFIER|Numeric|0|0|24|Numeric|0|8 +001125|wigosIdentifierSeries|long|WIGOS IDENTIFIER SERIES|Numeric|0|0|4|Numeric|0|2 +001126|wigosIssuerOfIdentifier|long|WIGOS ISSUER OF IDENTIFIER|Numeric|0|0|16|Numeric|0|5 +001127|wigosIssueNumber|long|WIGOS ISSUE NUMBER|Numeric|0|0|16|Numeric|0|5 +001128|wigosLocalIdentifierCharacter|string|WIGOS LOCAL IDENTIFIER (CHARACTER)|CCITT IA5|0|0|128|Character|0|16 +001144|snapshotIdentifier|long|SNAPSHOT IDENTIFIER|Numeric|0|0|31|Numeric|0|10 +001145|lightSourceIdentifier|long|LIGHT SOURCE IDENTIFIER|Numeric|0|-8|20|Numeric|0|7 +001150|coordinateReferenceSystem|table|COORDINATE REFERENCE SYSTEM|CODE TABLE|0|0|16|CODE TABLE|0|5 +001151|fixedMeanSeaLevelReferenceDatum|table|FIXED MEAN SEA-LEVEL REFERENCE DATUM|CODE TABLE|0|0|12|CODE TABLE|0|4 +001152|semiMajorAxisOfRotationEllipsoid|double|SEMI-MAJOR AXIS OF ROTATION ELLIPSOID|m|2|0|31|m|2|11 +001153|semiMinorAxisOfRotationEllipsoid|double|SEMI-MINOR AXIS OF ROTATION ELLIPSOID|m|2|0|31|m|2|11 +001154|sensorIdentifier|long|SENSOR IDENTIFIER|Numeric|0|0|12|Numeric|0|4 +001155|retrievalIdentifier|table|RETRIEVAL IDENTIFIER|CODE TABLE|0|0|8|CODE TABLE|0|3 +002001|stationType|table|TYPE OF STATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +002002|instrumentationForWindMeasurement|flag|TYPE OF INSTRUMENTATION FOR WIND MEASUREMENT|FLAG TABLE|0|0|4|FLAG TABLE|0|2 +002003|measuringEquipmentType|table|TYPE OF MEASURING EQUIPMENT USED|CODE TABLE|0|0|4|CODE TABLE|0|2 +002004|typeOfInstrumentationForEvaporationMeasurement|table|TYPE OF INSTRUMENTATION FOR EVAPORATION MEASUREMENT OR TYPE OF CROP FOR WHICH EVAPOTRANSPIRATION IS REPORTED|CODE TABLE|0|0|4|CODE TABLE|0|2 +002005|temperatureObservationPrecision|double|PRECISION OF TEMPERATURE OBSERVATION|K|2|0|7|K|2|3 +002006|upperAirRemoteSensingInstrumentType|table|UPPER AIR REMOTE SENSING INSTRUMENT TYPE|CODE TABLE|0|0|6|CODE TABLE|0|0 +002007|sensorForWaterLevelMeasuringInstrumentType|table|TYPE OF SENSOR FOR WATER LEVEL MEASURING INSTRUMENT|CODE TABLE|0|0|6|CODE TABLE|0|2 +002008|typeOfOffshorePlatform|table|TYPE OF OFFSHORE PLATFORM|CODE TABLE|0|0|4|CODE TABLE|0|2 +002009|modisAerosolAlgorithm|table|MODIS AEROSOL ALGORITHM|CODE TABLE|0|0|4|CODE TABLE|0|2 +002011|radiosondeType|table|RADIOSONDE TYPE|CODE TABLE|0|0|8|CODE TABLE|0|3 +002012|radiosondeComputationalMethod|table|RADIOSONDE COMPUTATIONAL METHOD|CODE TABLE|0|0|4|CODE TABLE|0|2 +002013|solarAndInfraredRadiationCorrection|table|SOLAR AND INFRARED RADIATION CORRECTION|CODE TABLE|0|0|4|CODE TABLE|0|2 +002014|trackingTechniqueOrStatusOfSystem|table|TRACKING TECHNIQUE/STATUS OF SYSTEM USED|CODE TABLE|0|0|7|CODE TABLE|0|3 +002015|radiosondeCompleteness|table|RADIOSONDE COMPLETENESS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002016|radiosondeConfiguration|flag|RADIOSONDE CONFIGURATION|FLAG TABLE|0|0|5|FLAG TABLE|0|2 +002017|correctionAlgorithmsForHumidityMeasurements|table|CORRECTION ALGORITHMS FOR HUMIDITY MEASUREMENTS|CODE TABLE|0|0|5|CODE TABLE|0|2 +002019|satelliteInstruments|table|SATELLITE INSTRUMENTS|CODE TABLE|0|0|11|CODE TABLE|0|4 +002020|satelliteClassification|table|SATELLITE CLASSIFICATION|CODE TABLE|0|0|9|CODE TABLE|0|3 +002021|satelliteInstrumentDataUsedInProcessing|flag|SATELLITE INSTRUMENT DATA USED IN PROCESSING|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +002022|satelliteDataProcessingTechnique|flag|SATELLITE DATA-PROCESSING TECHNIQUE USED|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +002023|satelliteDerivedWindComputationMethod|table|SATELLITE-DERIVED WIND COMPUTATION METHOD|CODE TABLE|0|0|4|CODE TABLE|0|2 +002024|meanHumidityComputationalMethod|table|INTEGRATED MEAN HUMIDITY COMPUTATIONAL METHOD|CODE TABLE|0|0|4|CODE TABLE|0|2 +002025|satelliteChannelsUsedInComputation|flag|SATELLITE CHANNEL(S) USED IN COMPUTATION|FLAG TABLE|0|0|25|FLAG TABLE|0|9 +002026|crossTrackResolution|double|CROSS-TRACK RESOLUTION|m|2|0|12|m|2|4 +002027|alongTrackResolution|double|ALONG-TRACK RESOLUTION|m|2|0|12|m|2|4 +002028|segmentSizeAtNadirInXDirection|long|SEGMENT SIZE AT NADIR IN X-DIRECTION|m|0|0|18|m|0|6 +002029|segmentSizeAtNadirInYDirection|long|SEGMENT SIZE AT NADIR IN Y-DIRECTION|m|0|0|18|m|0|6 +002030|methodOfCurrentMeasurement|table|METHOD OF CURRENT MEASUREMENT|CODE TABLE|0|0|3|CODE TABLE|0|1 +002031|durationAndTimeOfCurrentMeasurement|table|DURATION AND TIME OF CURRENT MEASUREMENT|CODE TABLE|0|0|5|CODE TABLE|0|2 +002032|indicatorForDigitization|table|INDICATOR FOR DIGITIZATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +002033|methodOfSalinityOrDepthMeasurement|table|METHOD OF SALINITY/DEPTH MEASUREMENT|CODE TABLE|0|0|3|CODE TABLE|0|1 +002034|drogueType|table|DROGUE TYPE|CODE TABLE|0|0|5|CODE TABLE|0|2 +002035|cableLength|long|CABLE LENGTH|m|0|0|9|m|0|3 +002036|buoyType|table|BUOY TYPE|CODE TABLE|0|0|2|CODE TABLE|0|1 +002037|methodOfTidalObservation|table|METHOD OF TIDAL OBSERVATION|CODE TABLE|0|0|3|CODE TABLE|0|1 +002038|methodOfWaterTemperatureAndOrOrSalinityMeasurement|table|METHOD OF WATER TEMPERATURE AND/OR SALINITY MEASUREMENT|CODE TABLE|0|0|4|CODE TABLE|0|2 +002039|methodOfWetBulbTemperatureMeasurement|table|METHOD OF WET-BULB TEMPERATURE MEASUREMENT|CODE TABLE|0|0|3|CODE TABLE|0|1 +002040|methodOfRemovingVelocityAndMotionOfPlatformFromCurrent|table|METHOD OF REMOVING VELOCITY AND MOTION OF PLATFORM FROM CURRENT|CODE TABLE|0|0|4|CODE TABLE|0|2 +002041|methodForEstimatingReportsRelatedToSynopticFeatures|table|METHOD FOR ESTIMATING REPORTS RELATED TO SYNOPTIC FEATURES|CODE TABLE|0|0|6|CODE TABLE|0|2 +002042|indicatorForSeaSurfaceCurrentSpeed|table|INDICATOR FOR SEA-SURFACE CURRENT SPEED|CODE TABLE|0|0|2|CODE TABLE|0|1 +002044|indicatorForMethodOfCalculatingSpectralWaveData|table|INDICATOR FOR METHOD OF CALCULATING SPECTRAL WAVE DATA|CODE TABLE|0|0|4|CODE TABLE|0|2 +002045|platformType|table|INDICATOR FOR TYPE OF PLATFORM|CODE TABLE|0|0|4|CODE TABLE|0|2 +002046|waveMeasurementInstrumentation|table|WAVE MEASUREMENT INSTRUMENTATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +002047|deepOceanTsunameterType|table|DEEP-OCEAN TSUNAMETER TYPE|CODE TABLE|0|0|7|CODE TABLE|0|2 +002048|satelliteSensorIndicator|table|SATELLITE SENSOR INDICATOR|CODE TABLE|0|0|4|CODE TABLE|0|2 +002049|geostationarySatelliteDataProcessingTechnique|flag|GEOSTATIONARY SATELLITE DATA-PROCESSING TECHNIQUE USED|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +002050|geostationarySounderSatelliteChannels|flag|GEOSTATIONARY SOUNDER SATELLITE CHANNELS USED|FLAG TABLE|0|0|20|FLAG TABLE|0|7 +002051|indicatorToSpecifyObservingMethodForExtremeTemperatures|table|INDICATOR TO SPECIFY OBSERVING METHOD FOR EXTREME TEMPERATURES|CODE TABLE|0|0|4|CODE TABLE|0|2 +002052|geostationaryImagerSatelliteChannels|flag|GEOSTATIONARY IMAGER SATELLITE CHANNELS USED|FLAG TABLE|0|0|6|FLAG TABLE|0|2 +002053|goesBrightnessTemperatureCharacteristics|table|GOES-I/M BRIGHTNESS TEMPERATURE CHARACTERISTICS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002054|goesSoundingsParameter|table|GOES-I/M SOUNDINGS PARAMETER CHARACTERISTICS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002055|geostationarySoundingsStatisticalParameters|table|GEOSTATIONARY SOUNDINGS STATISTICAL PARAMETERS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002056|geostationarySoundingsAccuracyStatistics|table|GEOSTATIONARY SOUNDINGS ACCURACY STATISTICS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002057|originOfFirstGuessInformationForGoesIOrMSoundings|table|ORIGIN OF FIRST-GUESS INFORMATION FOR GOES-I/M SOUNDINGS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002058|validTimesOfFirstGuessInformationForGoesIOrMSoundings|table|VALID TIMES OF FIRST-GUESS INFORMATION FOR GOES-I/M SOUNDINGS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002059|originOfAnalysisInformationForGoesIOrMSoundings|table|ORIGIN OF ANALYSIS INFORMATION FOR GOES-I/M SOUNDINGS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002060|originOfSurfaceInformationForGoesIOrMSoundings|table|ORIGIN OF SURFACE INFORMATION FOR GOES-I/M SOUNDINGS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002061|aircraftNavigationalSystem|table|AIRCRAFT NAVIGATIONAL SYSTEM|CODE TABLE|0|0|3|CODE TABLE|0|1 +002062|aircraftDataRelaySystemType|table|TYPE OF AIRCRAFT DATA RELAY SYSTEM|CODE TABLE|0|0|4|CODE TABLE|0|2 +002063|aircraftRollAngle|double|AIRCRAFT ROLL ANGLE|deg|2|-18000|16|deg|2|5 +002064|aircraftRollAngleQuality|table|AIRCRAFT ROLL ANGLE QUALITY|CODE TABLE|0|0|2|CODE TABLE|0|1 +002065|acarsGroundReceivingStation|string|ACARS GROUND-RECEIVING STATION|CCITT IA5|0|0|40|Character|0|5 +002066|radiosondeGroundReceivingSystem|table|RADIOSONDE GROUND RECEIVING SYSTEM|CODE TABLE|0|0|6|CODE TABLE|0|2 +002067|radiosondeOperatingFrequency|long|RADIOSONDE OPERATING FREQUENCY|Hz|-5|0|15|Hz|-5|5 +002070|originalSpecificationOfLatitudeOrLongitude|table|ORIGINAL SPECIFICATION OF LATITUDE/LONGITUDE|CODE TABLE|0|0|4|CODE TABLE|0|2 +002071|spectrographicWavelength|double|SPECTROGRAPHIC WAVELENGTH|m|13|0|30|m|13|10 +002072|spectrographicWidth|double|SPECTROGRAPHIC WIDTH|m|13|0|30|m|13|10 +002080|balloonManufacturer|table|BALLOON MANUFACTURER|CODE TABLE|0|0|6|CODE TABLE|0|2 +002081|balloonType|table|TYPE OF BALLOON|CODE TABLE|0|0|5|CODE TABLE|0|2 +002082|weightOfBalloon|double|WEIGHT OF BALLOON|kg|3|0|12|kg|3|4 +002083|balloonShelterType|table|TYPE OF BALLOON SHELTER|CODE TABLE|0|0|4|CODE TABLE|0|2 +002084|typeOfGasUsedInBalloon|table|TYPE OF GAS USED IN BALLOON|CODE TABLE|0|0|4|CODE TABLE|0|2 +002085|amountOfGasUsedInBalloon|double|AMOUNT OF GAS USED IN BALLOON|kg|3|0|13|kg|3|4 +002086|balloonFlightTrainLength|double|BALLOON FLIGHT TRAIN LENGTH|m|1|0|10|m|1|4 +002087|parachuteSurfaceArea|double|PARACHUTE SURFACE AREA|m2|4|0|15|m2|4|5 +002088|volumeOfGasUsedInBalloon|double|VOLUME OF GAS USED IN BALLOON|m3|3|0|13|m3|3|4 +002090|instrumentWavelength|double|INSTRUMENT WAVELENGTH|m|9|0|16|m|9|5 +002091|entrySensor4Or20Ma|double|ENTRY SENSOR 4/20 MA|A|4|0|10|A|4|3 +002092|ozoneProfileComputationMethod|table|OZONE PROFILE COMPUTATION METHOD|CODE TABLE|0|0|3|CODE TABLE|0|1 +002095|pressureSensorType|table|TYPE OF PRESSURE SENSOR|CODE TABLE|0|0|5|CODE TABLE|0|2 +002096|temperatureSensorType|table|TYPE OF TEMPERATURE SENSOR|CODE TABLE|0|0|5|CODE TABLE|0|2 +002097|humiditySensorType|table|TYPE OF HUMIDITY SENSOR|CODE TABLE|0|0|5|CODE TABLE|0|2 +002099|polarization|table|POLARIZATION|CODE TABLE|0|0|3|CODE TABLE|0|1 +002100|radarConstant|double|RADAR CONSTANT|dB|1|0|12|dB|1|4 +002101|antennaType|table|TYPE OF ANTENNA|CODE TABLE|0|0|4|CODE TABLE|0|2 +002102|antennaHeightAboveTowerBase|long|ANTENNA HEIGHT ABOVE TOWER BASE|m|0|0|8|m|0|3 +002103|radome|flag|RADOME|FLAG TABLE|0|0|2|FLAG TABLE|0|1 +002104|antennaPolarization|table|ANTENNA POLARIZATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +002105|maximumAntennaGain|long|MAXIMUM ANTENNA GAIN|dB|0|0|6|dB|0|2 +002106|3DbBeamwidth|double|3-DB BEAMWIDTH|deg|1|0|6|deg|1|2 +002107|sidelobeSuppression|long|SIDELOBE SUPPRESSION|dB|0|0|6|dB|0|2 +002108|crosspolDiscriminationOnAxis|long|CROSSPOL DISCRIMINATION (ON AXIS)|dB|0|0|6|dB|0|2 +002109|antennaSpeedAzimuth|double|ANTENNA SPEED (AZIMUTH)|deg/s|2|0|12|deg/s|2|4 +002110|antennaSpeedElevation|double|ANTENNA SPEED (ELEVATION)|deg/s|2|0|12|deg/s|2|4 +002111|radarIncidenceAngle|double|RADAR INCIDENCE ANGLE|deg|1|0|10|deg|1|4 +002112|radarLookAngle|double|RADAR LOOK ANGLE|deg|1|0|12|deg|1|4 +002113|numberOfAzimuthLooks|long|NUMBER OF AZIMUTH LOOKS|Numeric|0|0|4|Numeric|0|2 +002114|antennaEffectiveSurfaceArea|long|ANTENNA EFFECTIVE SURFACE AREA|m2|0|0|15|m2|0|5 +002115|surfaceObservingEquipmentType|table|TYPE OF SURFACE OBSERVING EQUIPMENT|CODE TABLE|0|0|5|CODE TABLE|0|2 +002116|percentageOf320MhzBandProcessed|long|PERCENTAGE OF 320 MHZ BAND PROCESSED|%|0|0|7|%|0|3 +002117|percentageOf80MhzBandProcessed|long|PERCENTAGE OF 80 MHZ BAND PROCESSED|%|0|0|7|%|0|3 +002118|percentageOf20MhzBandProcessed|long|PERCENTAGE OF 20 MHZ BAND PROCESSED|%|0|0|7|%|0|3 +002119|ra2InstrumentOperations|table|RA-2 INSTRUMENT OPERATIONS|CODE TABLE|0|0|3|CODE TABLE|0|1 +002120|oceanWaveFrequency|double|OCEAN WAVE FREQUENCY|Hz|3|0|10|Hz|3|4 +002121|meanFrequency|long|MEAN FREQUENCY|Hz|-8|0|7|Hz|-8|3 +002122|frequencyAgilityRange|long|FREQUENCY AGILITY RANGE|Hz|-6|-128|8|Hz|-6|3 +002123|peakPower|long|PEAK POWER|W|-4|0|7|W|-4|3 +002124|averagePower|long|AVERAGE POWER|W|-1|0|7|W|-1|3 +002125|pulseRepetitionFrequency|long|PULSE REPETITION FREQUENCY|Hz|-1|0|8|Hz|-1|3 +002126|pulseWidth|double|PULSE WIDTH|s|7|0|6|s|7|2 +002127|receiverIntermediateFrequency|long|RECEIVER INTERMEDIATE FREQUENCY|Hz|-6|0|7|Hz|-6|3 +002128|intermediateFrequencyBandwidth|long|INTERMEDIATE FREQUENCY BANDWIDTH|Hz|-5|0|6|Hz|-5|2 +002129|minimumDetectableSignal|long|MINIMUM DETECTABLE SIGNAL|dB|0|-150|5|dB|0|3 +002130|dynamicRange|long|DYNAMIC RANGE|dB|0|0|7|dB|0|3 +002131|sensitivityTimeControl|flag|SENSITIVITY TIME CONTROL (STC)|FLAG TABLE|0|0|2|FLAG TABLE|0|1 +002132|azimuthPointingAccuracy|double|AZIMUTH POINTING ACCURACY|deg|2|0|6|deg|2|2 +002133|elevationPointingAccuracy|double|ELEVATION POINTING ACCURACY|deg|2|0|6|deg|2|2 +002134|antennaBeamAzimuth|double|ANTENNA BEAM AZIMUTH|deg|2|0|16|deg|2|5 +002135|antennaElevation|double|ANTENNA ELEVATION|deg|2|-9000|15|deg|2|5 +002136|rangeProcessedByRangeAttenuationCorrection|long|RANGE PROCESSED BY RANGE ATTENUATION CORRECTION|m|-3|0|16|m|-3|5 +002137|radarDualPrfRatio|table|RADAR DUAL PRF RATIO|CODE TABLE|0|0|4|CODE TABLE|0|2 +002138|antennaRotationDirection|table|ANTENNA ROTATION DIRECTION|CODE TABLE|0|0|2|CODE TABLE|0|1 +002139|siralInstrumentConfiguration|table|SIRAL INSTRUMENT CONFIGURATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +002140|satelliteRadarBeamAzimuthAngle|long|SATELLITE RADAR BEAM AZIMUTH ANGLE|deg|0|0|9|deg|0|3 +002141|measurementType|string|MEASUREMENT TYPE|CCITT IA5|0|0|24|Character|0|3 +002142|ozoneInstrument|string|OZONE INSTRUMENT SERIAL NUMBER/IDENTIFICATION|CCITT IA5|0|0|32|Character|0|4 +002143|ozoneInstrumentType|table|OZONE INSTRUMENT TYPE|CODE TABLE|0|0|7|CODE TABLE|0|3 +002144|lightSourceTypeForBrewerSpectrophotometer|table|LIGHT SOURCE TYPE FOR BREWER SPECTROPHOTOMETER|CODE TABLE|0|0|4|CODE TABLE|0|2 +002145|wavelengthSettingForDobsonInstruments|table|WAVELENGTH SETTING FOR DOBSON INSTRUMENTS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002146|sourceConditionsForDobsonInstruments|table|SOURCE CONDITIONS FOR DOBSON INSTRUMENTS|CODE TABLE|0|0|4|CODE TABLE|0|2 +002147|methodOfTransmissionToCollectionCentre|table|METHOD OF TRANSMISSION TO COLLECTION CENTRE|CODE TABLE|0|0|6|CODE TABLE|0|2 +002148|dataCollectionLocationSystem|table|DATA COLLECTION AND/OR LOCATION SYSTEM|CODE TABLE|0|0|5|CODE TABLE|0|2 +002149|dataBuoyType|table|TYPE OF DATA BUOY|CODE TABLE|0|0|6|CODE TABLE|0|2 +002150|tovsOrAtovsOrAvhrrInstrumentationChannelNumber|table|TOVS/ATOVS/AVHRR INSTRUMENTATION CHANNEL NUMBER|CODE TABLE|0|0|6|CODE TABLE|0|2 +002151|radiometerIdentifier|table|RADIOMETER IDENTIFIER|CODE TABLE|0|0|11|CODE TABLE|0|4 +002152|satelliteInstrumentUsedInDataProcessing|flag|SATELLITE INSTRUMENT USED IN DATA PROCESSING|FLAG TABLE|0|0|31|FLAG TABLE|0|10 +002153|satelliteChannelCentreFrequency|long|SATELLITE CHANNEL CENTRE FREQUENCY|Hz|-8|0|26|Hz|-8|8 +002154|satelliteChannelBandWidth|long|SATELLITE CHANNEL BAND WIDTH|Hz|-8|0|26|Hz|-8|8 +002155|satelliteChannelWavelength|double|SATELLITE CHANNEL WAVELENGTH|m|9|0|16|m|9|5 +002156|percentageOfValidKuOceanRetrackerMeasurements|long|PERCENTAGE OF VALID KU OCEAN RETRACKER MEASUREMENTS|%|0|0|7|%|0|3 +002157|percentageOfValidSOceanRetrackerMeasurements|long|PERCENTAGE OF VALID S OCEAN RETRACKER MEASUREMENTS|%|0|0|7|%|0|3 +002158|ra2Instrument|flag|RA-2 INSTRUMENT|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +002159|mwrInstrument|flag|MWR INSTRUMENT|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +002160|radarWaveLength|table|WAVELENGTH OF THE RADAR|CODE TABLE|0|0|4|CODE TABLE|0|2 +002161|windProcessingMethod|flag|WIND PROCESSING METHOD|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +002162|extendedHeightAssignmentMethod|table|EXTENDED HEIGHT ASSIGNMENT METHOD|CODE TABLE|0|0|6|CODE TABLE|0|2 +002163|heightAssignmentMethod|table|HEIGHT ASSIGNMENT METHOD|CODE TABLE|0|0|4|CODE TABLE|0|2 +002164|tracerCorrelationMethod|table|TRACER CORRELATION METHOD|CODE TABLE|0|0|3|CODE TABLE|0|1 +002165|radianceTypeFlags|flag|RADIANCE TYPE FLAGS|FLAG TABLE|0|0|15|FLAG TABLE|0|5 +002166|radianceType|table|RADIANCE TYPE|CODE TABLE|0|0|4|CODE TABLE|0|2 +002167|radianceComputationalMethod|table|RADIANCE COMPUTATIONAL METHOD|CODE TABLE|0|0|4|CODE TABLE|0|2 +002168|hydrostaticPressureOfLowerEndOfCableThermistorString|long|HYDROSTATIC PRESSURE OF LOWER END OF CABLE (THERMISTOR STRING)|Pa|-3|0|16|kPa|0|5 +002169|anemometerType|table|ANEMOMETER TYPE|CODE TABLE|0|0|4|CODE TABLE|0|2 +002170|aircraftHumiditySensors|table|AIRCRAFT HUMIDITY SENSORS|CODE TABLE|0|0|6|CODE TABLE|0|2 +002171|instrumentSerialNumberForWaterTemperatureProfile|string|INSTRUMENT SERIAL NUMBER FOR WATER TEMPERATURE PROFILE MEASUREMENT|CCITT IA5|0|0|64|Character|0|8 +002172|productTypeForRetrievedAtmosphericGases|table|PRODUCT TYPE FOR RETRIEVED ATMOSPHERIC GASES|CODE TABLE|0|0|8|CODE TABLE|0|3 +002173|squareOfOffNadirAngle|double|SQUARE OF THE OFF-NADIR ANGLE|deg2|4|0|10|deg2|4|4 +002174|meanAcrossTrackPixelNumber|long|MEAN ACROSS TRACK PIXEL NUMBER|Numeric|0|0|9|Numeric|0|3 +002175|methodOfPrecipitationMeasurement|table|METHOD OF PRECIPITATION MEASUREMENT|CODE TABLE|0|0|4|CODE TABLE|0|2 +002176|methodOfStateOfGroundMeasurement|table|METHOD OF STATE OF GROUND MEASUREMENT|CODE TABLE|0|0|4|CODE TABLE|0|2 +002177|methodOfSnowDepthMeasurement|table|METHOD OF SNOW DEPTH MEASUREMENT|CODE TABLE|0|0|4|CODE TABLE|0|2 +002178|methodOfLiquidContentMeasurementOfPrecipitation|table|METHOD OF LIQUID CONTENT MEASUREMENT OF PRECIPITATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +002179|skyConditionAlgorithmType|table|TYPE OF SKY CONDITION ALGORITHM|CODE TABLE|0|0|4|CODE TABLE|0|2 +002180|mainPresentWeatherDetectingSystem|table|MAIN PRESENT WEATHER DETECTING SYSTEM|CODE TABLE|0|0|4|CODE TABLE|0|2 +002181|supplementaryPresentWeatherSensor|flag|SUPPLEMENTARY PRESENT WEATHER SENSOR|FLAG TABLE|0|0|21|FLAG TABLE|0|7 +002182|visibilityMeasurementSystem|table|VISIBILITY MEASUREMENT SYSTEM|CODE TABLE|0|0|4|CODE TABLE|0|2 +002183|cloudDetectionSystem|table|CLOUD DETECTION SYSTEM|CODE TABLE|0|0|4|CODE TABLE|0|2 +002184|lightningDetectionSensorType|table|TYPE OF LIGHTNING DETECTION SENSOR|CODE TABLE|0|0|4|CODE TABLE|0|2 +002185|methodOfEvaporationMeasurement|table|METHOD OF EVAPORATION MEASUREMENT|CODE TABLE|0|0|4|CODE TABLE|0|2 +002186|capabilityToDetectPrecipitationPhenomena|flag|CAPABILITY TO DETECT PRECIPITATION PHENOMENA|FLAG TABLE|0|0|30|FLAG TABLE|0|10 +002187|capabilityToDetectOtherWeatherPhenomena|flag|CAPABILITY TO DETECT OTHER WEATHER PHENOMENA|FLAG TABLE|0|0|18|FLAG TABLE|0|6 +002188|capabilityToDetectObscuration|flag|CAPABILITY TO DETECT OBSCURATION|FLAG TABLE|0|0|21|FLAG TABLE|0|7 +002189|capabilityToDiscriminateLightningStrikes|flag|CAPABILITY TO DISCRIMINATE LIGHTNING STRIKES|FLAG TABLE|0|0|12|FLAG TABLE|0|4 +002190|lagrangianDrifterSubmergenceTimeSubmerged|long|LAGRANGIAN DRIFTER SUBMERGENCE (% TIME SUBMERGED)|%|0|0|7|%|0|3 +002191|geopotentialHeightCalculation|table|GEOPOTENTIAL HEIGHT CALCULATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +003001|surfaceStationType|table|SURFACE STATION TYPE|CODE TABLE|0|0|5|CODE TABLE|0|2 +003003|thermometerOrHygrometerHousing|table|THERMOMETER/HYGROMETER HOUSING|CODE TABLE|0|0|4|CODE TABLE|0|2 +003004|typeOfScreenOrShelterOrRadiationShield|table|TYPE OF SCREEN/SHELTER/RADIATION SHIELD|CODE TABLE|0|0|4|CODE TABLE|0|2 +003005|horizontalWidthOfScreenOrShieldX|double|HORIZONTAL WIDTH OF SCREEN OR SHIELD (X)|m|3|0|16|m|3|5 +003006|horizontalDepthOfScreenOrShieldY|double|HORIZONTAL DEPTH OF SCREEN OR SHIELD (Y)|m|3|0|16|m|3|5 +003007|verticalHeightOfScreenOrShieldZ|double|VERTICAL HEIGHT OF SCREEN OR SHIELD (Z)|m|3|0|16|m|3|5 +003008|artificiallyVentilatedScreenOrShield|table|ARTIFICIALLY VENTILATED SCREEN OR SHIELD|CODE TABLE|0|0|3|CODE TABLE|0|1 +003009|amountOfForcedVentilationAtTimeOfReading|double|AMOUNT OF FORCED VENTILATION AT TIME OF READING|m/s|1|0|9|m/s|1|3 +003010|methodOfSeaOrWaterCurrentMeasurement|table|METHOD OF SEA/WATER CURRENT MEASUREMENT|CODE TABLE|0|0|4|CODE TABLE|0|2 +003011|methodOfDepthCalculation|table|METHOD OF DEPTH CALCULATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +003012|instrumentTypeOrSensorForDissolvedOxygenMeasurement|table|INSTRUMENT TYPE/SENSOR FOR DISSOLVED OXYGEN MEASUREMENT|CODE TABLE|0|0|4|CODE TABLE|0|2 +003016|positionOfRoadSensors|table|POSITION OF ROAD SENSORS|CODE TABLE|0|0|4|CODE TABLE|0|2 +003017|extendedTypeOfStation|flag|EXTENDED TYPE OF STATION|FLAG TABLE|0|0|6|FLAG TABLE|0|2 +003018|typeOfRoad|table|TYPE OF ROAD|CODE TABLE|0|0|5|CODE TABLE|0|2 +003019|typeOfConstruction|table|TYPE OF CONSTRUCTION|CODE TABLE|0|0|4|CODE TABLE|0|2 +003020|materialForThermometerOrHygrometerHousing|table|MATERIAL FOR THERMOMETER/HYGROMETER HOUSING|CODE TABLE|0|0|3|CODE TABLE|0|1 +003021|hygrometerHeating|table|HYGROMETER HEATING|CODE TABLE|0|0|2|CODE TABLE|0|1 +003022|instrumentOwner|table|INSTRUMENT OWNER|CODE TABLE|0|0|3|CODE TABLE|0|1 +003023|configurationOfLouversForThermometerOrHygrometerScreen|table|CONFIGURATION OF LOUVERS FOR THERMOMETER/HYGROMETER SCREEN|CODE TABLE|0|0|3|CODE TABLE|0|1 +003024|psychrometricCoefficient|double|PSYCHROMETRIC COEFFICIENT|K-1|6|0|10|K-1|6|3 +003025|crossTrackEstimationAreaSize|long|CROSS-TRACK ESTIMATION AREA SIZE|m|0|5000|16|m|0|5 +003026|alongTrackEstimationAreaSize|long|ALONG-TRACK ESTIMATION AREA SIZE|m|0|5000|16|m|0|5 +003027|typeOfFlightRig|table|TYPE OF FLIGHT RIG|CODE TABLE|0|0|4|CODE TABLE|0|2 +003028|methodOfSnowWaterEquivalentMeasurement|table|METHOD OF SNOW WATER EQUIVALENT MEASUREMENT|CODE TABLE|0|0|6|CODE TABLE|0|2 +003029|swath|table|SWATH|CODE TABLE|0|0|3|CODE TABLE|0|1 +003030|antennaStatus|table|ANTENNA STATUS|CODE TABLE|0|0|3|CODE TABLE|0|1 +003031|channelBandwidthFullWidthHalfMaximum|double|CHANNEL BANDWIDTH, FULL WIDTH HALF MAXIMUM (FWHM)|m|11|0|16|m|11|13 +003032|channelCentreFrequency|long|CHANNEL CENTRE FREQUENCY|Hz|-6|0|26|Hz|-6|10 +003033|channelBandWidth|long|CHANNEL BAND WIDTH|Hz|-6|0|26|Hz|-6|10 +003034|channelWavelength|double|CHANNEL WAVELENGTH|m|9|0|16|m|9|5 +004001|year|long|YEAR|a|0|0|12|a|0|4 +004002|month|long|MONTH|mon|0|0|4|mon|0|2 +004003|day|long|DAY|d|0|0|6|d|0|2 +004004|hour|long|HOUR|h|0|0|5|h|0|2 +004005|minute|long|MINUTE|min|0|0|6|min|0|2 +004006|second|long|SECOND|s|0|0|6|s|0|2 +004007|secondsWithinAMinuteMicrosecond|double|SECONDS WITHIN A MINUTE (MICROSECOND ACCURACY)|s|6|0|26|s|6|8 +004011|timeIncrement|long|TIME INCREMENT|a|0|-1024|11|a|0|4 +004012|timeIncrement|long|TIME INCREMENT|mon|0|-1024|11|mon|0|4 +004013|timeIncrement|long|TIME INCREMENT|d|0|-1024|11|d|0|4 +004014|timeIncrement|long|TIME INCREMENT|h|0|-1024|11|h|0|4 +004015|timeIncrement|long|TIME INCREMENT|min|0|-2048|12|min|0|4 +004016|timeIncrement|long|TIME INCREMENT|s|0|-4096|13|s|0|4 +004017|referenceTimePeriodForAccumulatedOrExtremeData|long|REFERENCE TIME PERIOD FOR ACCUMULATED OR EXTREME DATA|min|0|-1440|12|min|0|4 +004021|timePeriod|long|TIME PERIOD OR DISPLACEMENT|a|0|-1024|11|a|0|4 +004022|timePeriod|long|TIME PERIOD OR DISPLACEMENT|mon|0|-1024|11|mon|0|4 +004023|timePeriod|long|TIME PERIOD OR DISPLACEMENT|d|0|-1024|11|d|0|4 +004024|timePeriod|long|TIME PERIOD OR DISPLACEMENT|h|0|-2048|12|h|0|4 +004025|timePeriod|long|TIME PERIOD OR DISPLACEMENT|min|0|-2048|12|min|0|4 +004026|timePeriod|long|TIME PERIOD OR DISPLACEMENT|s|0|-4096|13|s|0|4 +004031|durationOfTimeRelatingToFollowingValue|long|DURATION OF TIME RELATING TO FOLLOWING VALUE|h|0|0|8|h|0|3 +004032|durationOfTimeRelatingToFollowingValue|long|DURATION OF TIME RELATING TO FOLLOWING VALUE|min|0|0|6|min|0|2 +004041|timeDifferenceUtcLmt|long|TIME DIFFERENCE, UTC - LMT|min|0|-1440|12|min|0|4 +004043|dayOfYear|long|DAY OF THE YEAR|d|0|0|9|d|0|3 +004051|principalTimeOfDailyReadingOfMaximumTemperature|long|PRINCIPAL TIME OF DAILY READING OF MAXIMUM TEMPERATURE|h|0|0|5|h|0|2 +004052|principalTimeOfDailyReadingOfMinimumTemperature|long|PRINCIPAL TIME OF DAILY READING OF MINIMUM TEMPERATURE|h|0|0|5|h|0|2 +004053|numberOfDaysWithPrecipitationEqualToOrMoreThan1Mm|long|NUMBER OF DAYS WITH PRECIPITATION EQUAL TO OR MORE THAN 1 MM|Numeric|0|0|6|Numeric|0|2 +004059|timesOfObservationUsedToComputeReportedMeanValues|flag|TIMES OF OBSERVATION USED TO COMPUTE THE REPORTED MEAN VALUES|FLAG TABLE|0|0|6|FLAG TABLE|0|2 +004065|timeIncrement|long|SHORT TIME INCREMENT|min|0|-128|8|min|0|2 +004066|timeIncrement|long|SHORT TIME INCREMENT|s|0|-128|8|s|0|2 +004073|timePeriod|long|SHORT TIME PERIOD OR DISPLACEMENT|d|0|-128|8|d|0|2 +004074|timePeriod|long|SHORT TIME PERIOD OR DISPLACEMENT|h|0|-128|8|h|0|2 +004075|timePeriod|long|SHORT TIME PERIOD OR DISPLACEMENT|min|0|-128|8|min|0|2 +004080|averagingPeriodForFollowingValue|table|AVERAGING PERIOD FOR FOLLOWING VALUE|CODE TABLE|0|0|4|CODE TABLE|0|2 +004086|timePeriod|long|LONG TIME PERIOD OR DISPLACEMENT|s|0|-8192|15|s|0|5 +005001|latitude|double|LATITUDE (HIGH ACCURACY)|deg|5|-9000000|25|deg|5|7 +005002|latitude|double|LATITUDE (COARSE ACCURACY)|deg|2|-9000|15|deg|2|4 +005011|latitudeIncrement|double|LATITUDE INCREMENT (HIGH ACCURACY)|deg|5|-9000000|25|deg|5|7 +005012|latitudeIncrement|double|LATITUDE INCREMENT (COARSE ACCURACY)|deg|2|-9000|15|deg|2|4 +005015|latitudeDisplacement|double|LATITUDE DISPLACEMENT (HIGH ACCURACY)|deg|5|-9000000|25|deg|5|7 +005016|latitudeDisplacement|double|LATITUDE DISPLACEMENT (COARSE ACCURACY)|deg|2|-9000|15|deg|2|4 +005021|bearingOrAzimuth|double|BEARING OR AZIMUTH|deg|2|0|16|deg|2|5 +005022|solarAzimuth|double|SOLAR AZIMUTH|deg|2|0|16|deg|2|5 +005023|sunToSatelliteAzimuthDifference|double|SUN TO SATELLITE AZIMUTH DIFFERENCE|deg|1|-1800|12|deg|1|4 +005030|directionSpectral|long|DIRECTION (SPECTRAL)|deg|0|0|12|deg|0|4 +005031|rowNumber|long|ROW NUMBER|Numeric|0|0|12|Numeric|0|4 +005032|yOffset|double|Y OFFSET|m|2|-1073741824|31|m|2|11 +005033|pixelSizeOnHorizontal1|long|PIXEL SIZE ON HORIZONTAL - 1|m|-1|0|16|m|-1|5 +005034|alongTrackRowNumber|long|ALONG TRACK ROW NUMBER|Numeric|0|0|11|Numeric|0|4 +005035|xDimensionMaximumSize|long|MAXIMUM SIZE OF X-DIMENSION|Numeric|0|0|12|Numeric|0|4 +005036|shipTransectNumberAccordingToSoop|long|SHIP TRANSECT NUMBER ACCORDING TO SOOP|Numeric|0|0|7|Numeric|0|2 +005040|orbitNumber|long|ORBIT NUMBER|Numeric|0|0|24|Numeric|0|8 +005041|scanLineNumber|long|SCAN LINE NUMBER|Numeric|0|0|8|Numeric|0|3 +005042|channelNumber|long|CHANNEL NUMBER|Numeric|0|0|6|Numeric|0|2 +005043|fieldOfViewNumber|long|FIELD OF VIEW NUMBER|Numeric|0|0|8|Numeric|0|3 +005044|satelliteCycleNumber|long|SATELLITE CYCLE NUMBER|Numeric|0|0|11|Numeric|0|4 +005045|fieldOfRegardNumber|long|FIELD OF REGARD NUMBER|Numeric|0|0|8|Numeric|0|3 +005052|channelNumberIncrement|long|CHANNEL NUMBER INCREMENT|Numeric|0|0|5|Numeric|0|2 +005053|fieldOfViewNumberIncrement|long|FIELD OF VIEW NUMBER INCREMENT|Numeric|0|0|5|Numeric|0|2 +005060|yAngularPositionFromCentreOfGravity|double|Y ANGULAR POSITION FROM CENTRE OF GRAVITY|deg|6|-8000000|24|deg|6|8 +005061|zAngularPositionFromCentreOfGravity|double|Z ANGULAR POSITION FROM CENTRE OF GRAVITY|deg|6|-8000000|24|deg|6|8 +005063|spacecraftRoll|double|SPACECRAFT ROLL|deg|2|0|16|deg|2|5 +005064|spacecraftPitch|double|SPACECRAFT PITCH|deg|2|0|16|deg|2|5 +005066|spacecraftYaw|double|SPACECRAFT YAW|deg|2|0|16|deg|2|5 +005067|numberOfScanLines|long|NUMBER OF SCAN LINES|Numeric|0|0|8|Numeric|0|3 +005068|profileNumber|long|PROFILE NUMBER|Numeric|0|0|16|Numeric|0|5 +005069|receiverChannel|table|RECEIVER CHANNEL|CODE TABLE|0|0|2|CODE TABLE|0|1 +005070|observationIdentifier|long|OBSERVATION IDENTIFIER|Numeric|0|0|30|Numeric|0|10 +005071|stripmapIdentifier|long|STRIPMAP IDENTIFIER|Numeric|0|0|16|Numeric|0|5 +005072|numberOfSpectraInRangeDirection|long|NUMBER OF SPECTRA IN RANGE DIRECTION|Numeric|0|0|8|Numeric|0|3 +005073|numberOfSpectraInAzimuthalDirection|long|NUMBER OF SPECTRA IN AZIMUTHAL DIRECTION|Numeric|0|0|8|Numeric|0|3 +005074|indexInRangeDirection|long|INDEX IN RANGE DIRECTION|Numeric|0|0|8|Numeric|0|3 +005075|indexInAzimuthalDirection|long|INDEX IN AZIMUTHAL DIRECTION|Numeric|0|0|8|Numeric|0|3 +005076|solarAzimuthInInstrumentReferenceFrame|double|SOLAR AZIMUTH IN INSTRUMENT REFERENCE FRAME|deg|2|0|16|deg|2|6 +005077|subSatellitePointLatitude|double|SUB-SATELLITE POINT LATITUDE|deg|4|-900000|21|deg|4|7 +005078|hornNumber|long|HORN NUMBER|Numeric|0|0|4|Numeric|0|2 +005079|bandNumber|long|BAND NUMBER|Numeric|0|0|6|Numeric|0|2 +005080|resolutionRadius|long|RESOLUTION RADIUS|m|-3|0|6|m|-3|2 +006001|longitude|double|LONGITUDE (HIGH ACCURACY)|deg|5|-18000000|26|deg|5|8 +006002|longitude|double|LONGITUDE (COARSE ACCURACY)|deg|2|-18000|16|deg|2|5 +006011|longitudeIncrement|double|LONGITUDE INCREMENT (HIGH ACCURACY)|deg|5|-18000000|26|deg|5|8 +006012|longitudeIncrement|double|LONGITUDE INCREMENT (COARSE ACCURACY)|deg|2|-18000|16|deg|2|5 +006015|longitudeDisplacement|double|LONGITUDE DISPLACEMENT (HIGH ACCURACY)|deg|5|-18000000|26|deg|5|8 +006016|longitudeDisplacement|double|LONGITUDE DISPLACEMENT (COARSE ACCURACY)|deg|2|-18000|16|deg|2|5 +006021|distance|long|DISTANCE|m|-1|0|13|m|-1|4 +006029|waveNumber|double|WAVE NUMBER|/m|1|0|22|/m|1|7 +006030|waveNumberSpectral|double|WAVE NUMBER (SPECTRAL)|rad/m|5|0|13|rad/m|5|4 +006031|columnNumber|long|COLUMN NUMBER|Numeric|0|0|12|Numeric|0|4 +006032|xOffset|double|X OFFSET|m|2|-1073741824|31|m|2|11 +006033|pixelSizeOnHorizontal2|long|PIXEL SIZE ON HORIZONTAL - 2|m|-1|0|16|m|-1|5 +006034|crossTrackCellNumber|long|CROSS-TRACK CELL NUMBER|Numeric|0|0|7|Numeric|0|3 +006035|yDimensionMaximumSize|long|MAXIMUM SIZE OF Y-DIMENSION|Numeric|0|0|12|Numeric|0|4 +006040|radiusOfConfidence|long|RADIUS OF CONFIDENCE|m|0|0|13|m|0|4 +006041|earthScanSampleNumber|long|EARTH SCAN SAMPLE NUMBER|Numeric|0|0|11|Numeric|0|4 +006042|spaceOrMoonScanSampleNumber|long|SPACE/MOON SCAN SAMPLE NUMBER|Numeric|0|0|6|Numeric|0|2 +006043|subSatellitePointLongitude|double|SUB-SATELLITE POINT LONGITUDE|deg|4|-1800000|22|deg|4|8 +007001|heightOfStation|long|HEIGHT OF STATION|m|0|-400|15|m|0|5 +007002|height|long|HEIGHT OR ALTITUDE|m|-1|-40|16|m|-1|5 +007003|geopotential|long|GEOPOTENTIAL|m2 s-2|-1|-400|17|m2 s-2|-1|6 +007004|pressure|long|PRESSURE|Pa|-1|0|14|Pa|-1|5 +007005|heightIncrement|long|HEIGHT INCREMENT|m|0|-400|12|m|0|4 +007006|heightAboveStation|long|HEIGHT ABOVE STATION|m|0|0|15|m|0|5 +007007|height|long|HEIGHT|m|0|-1000|17|m|0|6 +007008|geopotential|long|GEOPOTENTIAL|m2 s-2|0|-10000|20|m2 s-2|0|7 +007009|geopotentialHeight|long|GEOPOTENTIAL HEIGHT|gpm|0|-1000|17|gpm|0|5 +007010|flightLevel|long|FLIGHT LEVEL|m|0|-1024|16|ft|-1|5 +007012|gridPointAltitude|double|GRID POINT ALTITUDE|m|2|-50000|20|m|2|7 +007021|elevation|double|ELEVATION|deg|2|-9000|15|deg|2|5 +007022|solarElevation|double|SOLAR ELEVATION|deg|2|-9000|15|deg|2|5 +007024|satelliteZenithAngle|double|SATELLITE ZENITH ANGLE|deg|2|-9000|15|deg|2|5 +007025|solarZenithAngle|double|SOLAR ZENITH ANGLE|deg|2|-9000|15|deg|2|5 +007026|satelliteZenithAngle|double|SATELLITE ZENITH ANGLE|deg|4|-900000|21|deg|4|7 +007030|heightOfStationGroundAboveMeanSeaLevel|double|HEIGHT OF STATION GROUND ABOVE MEAN SEA LEVEL|m|1|-4000|17|m|1|5 +007031|heightOfBarometerAboveMeanSeaLevel|double|HEIGHT OF BAROMETER ABOVE MEAN SEA LEVEL|m|1|-4000|17|m|1|5 +007032|heightOfSensorAboveLocalGroundOrDeckOfMarinePlatform|double|HEIGHT OF SENSOR ABOVE LOCAL GROUND (OR DECK OF MARINE PLATFORM)|m|2|0|16|m|2|5 +007033|heightOfSensorAboveWaterSurface|double|HEIGHT OF SENSOR ABOVE WATER SURFACE|m|1|0|12|m|1|4 +007035|zDimensionMaximumSize|long|MAXIMUM SIZE OF Z-DIMENSION|Numeric|0|0|12|Numeric|0|4 +007036|levelIndexOfZ|long|LEVEL INDEX OF Z|Numeric|0|0|12|Numeric|0|4 +007040|impactParameter|double|IMPACT PARAMETER|m|1|62000000|22|m|1|8 +007061|depthBelowLandSurface|double|DEPTH BELOW LAND SURFACE|m|2|0|14|m|2|5 +007062|depthBelowWaterSurface|double|DEPTH BELOW SEA/WATER SURFACE|m|1|0|17|m|1|6 +007063|depthBelowWaterSurface|double|DEPTH BELOW SEA/WATER SURFACE (CM)|m|2|0|20|m|2|7 +007064|representativeHeightOfSensorAboveStation|long|REPRESENTATIVE HEIGHT OF SENSOR ABOVE STATION|m|0|0|4|m|0|2 +007065|waterPressure|long|WATER PRESSURE|Pa|-3|0|17|Pa|-3|6 +007070|drogueDepth|long|DROGUE DEPTH|m|0|0|10|m|0|4 +007071|height|double|HEIGHT (HIGH RESOLUTION)|m|3|-10000000|26|m|3|8 +007072|scanAngle|double|SCAN ANGLE|deg|2|-9000|15|deg|2|6 +007073|angleBetweenMoonAndSpaceView|double|ANGLE BETWEEN MOON AND SPACE VIEW|deg|2|0|15|deg|2|5 +007074|solarElevationAngleInInstrumentReferenceFrame|double|SOLAR ELEVATION ANGLE IN INSTRUMENT REFERENCE FRAME|deg|2|-9000|15|deg|2|5 +007075|scatteringAngle|long|SCATTERING ANGLE|deg|0|0|8|deg|0|3 +007076|relativeAzimuthAngle|long|RELATIVE AZIMUTH ANGLE|deg|0|0|8|deg|0|3 +008001|verticalSoundingSignificance|flag|VERTICAL SOUNDING SIGNIFICANCE|FLAG TABLE|0|0|7|FLAG TABLE|0|3 +008002|verticalSignificanceSurfaceObservations|table|VERTICAL SIGNIFICANCE (SURFACE OBSERVATIONS)|CODE TABLE|0|0|6|CODE TABLE|0|2 +008003|verticalSignificanceSatelliteObservations|table|VERTICAL SIGNIFICANCE (SATELLITE OBSERVATIONS)|CODE TABLE|0|0|6|CODE TABLE|0|2 +008004|phaseOfAircraftFlight|table|PHASE OF AIRCRAFT FLIGHT|CODE TABLE|0|0|3|CODE TABLE|0|1 +008005|meteorologicalAttributeSignificance|table|METEOROLOGICAL ATTRIBUTE SIGNIFICANCE|CODE TABLE|0|0|4|CODE TABLE|0|2 +008006|ozoneVerticalSoundingSignificance|flag|OZONE VERTICAL SOUNDING SIGNIFICANCE|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +008007|dimensionalSignificance|table|DIMENSIONAL SIGNIFICANCE|CODE TABLE|0|0|4|CODE TABLE|0|2 +008008|radiationVerticalSoundingSignificance|flag|RADIATION VERTICAL SOUNDING SIGNIFICANCE|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +008009|detailedPhaseOfFlight|table|DETAILED PHASE OF FLIGHT|CODE TABLE|0|0|4|CODE TABLE|0|2 +008010|surfaceQualifierForTemperatureData|table|SURFACE QUALIFIER (TEMPERATURE DATA)|CODE TABLE|0|0|5|CODE TABLE|0|2 +008011|meteorologicalFeature|table|METEOROLOGICAL FEATURE|CODE TABLE|0|0|6|CODE TABLE|0|2 +008012|landOrSeaQualifier|table|LAND/SEA QUALIFIER|CODE TABLE|0|0|2|CODE TABLE|0|1 +008013|dayOrNightQualifier|table|DAY/NIGHT QUALIFIER|CODE TABLE|0|0|2|CODE TABLE|0|1 +008014|qualifierForRunwayVisualRange|table|QUALIFIER FOR RUNWAY VISUAL RANGE|CODE TABLE|0|0|4|CODE TABLE|0|2 +008015|significantQualifierForSensor|table|SIGNIFICANT QUALIFIER FOR SENSOR|CODE TABLE|0|0|3|CODE TABLE|0|1 +008016|changeQualifierOfATrendTypeForecastOrAnAerodromeForecast|table|CHANGE QUALIFIER OF A TREND-TYPE FORECAST OR AN AERODROME FORECAST|CODE TABLE|0|0|3|CODE TABLE|0|1 +008017|qualifierOfTimeWhenForecastChangeExpected|table|QUALIFIER OF THE TIME WHEN THE FORECAST CHANGE IS EXPECTED|CODE TABLE|0|0|2|CODE TABLE|0|1 +008018|seawindsLandOrIceSurfaceType|flag|SEAWINDS LAND/ICE SURFACE TYPE|FLAG TABLE|0|0|17|FLAG TABLE|0|6 +008019|qualifierForFollowingCentreIdentifier|table|QUALIFIER FOR FOLLOWING CENTRE IDENTIFIER|CODE TABLE|0|0|4|CODE TABLE|0|2 +008020|totalNumberOfMissingEntitiesWithRespectToAccumulationOrAverage|long|TOTAL NUMBER OF MISSING ENTITIES (WITH RESPECT TO ACCUMULATION OR AVERAGE)|Numeric|0|0|16|Numeric|0|5 +008021|timeSignificance|table|TIME SIGNIFICANCE|CODE TABLE|0|0|5|CODE TABLE|0|2 +008022|totalNumberWithRespectToAccumulationOrAverage|long|TOTAL NUMBER (WITH RESPECT TO ACCUMULATION OR AVERAGE)|Numeric|0|0|16|Numeric|0|5 +008023|firstOrderStatistics|table|FIRST-ORDER STATISTICS|CODE TABLE|0|0|6|CODE TABLE|0|2 +008024|differenceStatistics|table|DIFFERENCE STATISTICS|CODE TABLE|0|0|6|CODE TABLE|0|2 +008025|timeDifferenceQualifier|table|TIME DIFFERENCE QUALIFIER|CODE TABLE|0|0|4|CODE TABLE|0|2 +008026|matrixSignificance|table|MATRIX SIGNIFICANCE|CODE TABLE|0|0|6|CODE TABLE|0|2 +008029|surfaceType|table|SURFACE TYPE|CODE TABLE|0|0|8|CODE TABLE|0|3 +008030|manualOnCodesVolumeI1SectionCCodeTableFromWhichDataAreDerived|long|MANUAL ON CODES (VOLUME I.1, SECTION C) CODE TABLE FROM WHICH DATA ARE DERIVED|Numeric|0|0|13|Numeric|0|4 +008031|dataCategoryCrexTableA|long|DATA CATEGORY - CREX TABLE A|Numeric|0|0|8|Numeric|0|3 +008032|statusOfOperation|table|STATUS OF OPERATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +008033|methodOfDerivationOfPercentageConfidence|table|METHOD OF DERIVATION OF PERCENTAGE CONFIDENCE|CODE TABLE|0|0|7|CODE TABLE|0|3 +008034|temperatureOrSalinityMeasurementQualifier|table|TEMPERATURE/SALINITY MEASUREMENT QUALIFIER|CODE TABLE|0|0|4|CODE TABLE|0|2 +008035|monitoringExerciseType|table|TYPE OF MONITORING EXERCISE|CODE TABLE|0|0|3|CODE TABLE|0|1 +008036|typeOfCentreOrStationPerformingMonitoring|table|TYPE OF CENTRE OR STATION PERFORMING MONITORING|CODE TABLE|0|0|3|CODE TABLE|0|1 +008037|baselineCheckSignificance|table|BASELINE CHECK SIGNIFICANCE|CODE TABLE|0|0|5|CODE TABLE|0|2 +008038|instrumentDataSignificance|table|INSTRUMENT DATA SIGNIFICANCE|CODE TABLE|0|0|8|CODE TABLE|0|3 +008039|timeSignificanceAviationForecast|table|TIME SIGNIFICANCE (AVIATION FORECAST)|CODE TABLE|0|0|6|CODE TABLE|0|2 +008040|flightLevelSignificance|table|FLIGHT LEVEL SIGNIFICANCE|CODE TABLE|0|0|6|CODE TABLE|0|2 +008041|dataSignificance|table|DATA SIGNIFICANCE|CODE TABLE|0|0|5|CODE TABLE|0|2 +008042|extendedVerticalSoundingSignificance|flag|EXTENDED VERTICAL SOUNDING SIGNIFICANCE|FLAG TABLE|0|0|18|FLAG TABLE|0|6 +008043|atmosphericChemical|table|ATMOSPHERIC CHEMICAL OR PHYSICAL CONSTITUENT TYPE|CODE TABLE|0|0|8|CODE TABLE|0|3 +008044|casRegistryNumber|string|CAS REGISTRY NUMBER|CCITT IA5|0|0|88|Character|0|11 +008045|characterOfParticulateMatter|table|CHARACTER OF PARTICULATE MATTER|CODE TABLE|0|0|8|Character|0|2 +008046|atmosphericChemical|table|ATMOSPHERIC CHEMICAL OR PHYSICAL CONSTITUENT TYPE|Common CODE TABLE C-14|0|0|16|Common CODE TABLE C-14|0|5 +008049|numberOfObservations|long|NUMBER OF OBSERVATIONS|Numeric|0|0|8|Numeric|0|3 +008050|qualifierForNumberOfMissingValuesInCalculationOfStatistic|table|QUALIFIER FOR NUMBER OF MISSING VALUES IN CALCULATION OF STATISTIC|CODE TABLE|0|0|4|CODE TABLE|0|2 +008051|qualifierForNumberOfMissingValuesInCalculationOfStatistic|table|QUALIFIER FOR NUMBER OF MISSING VALUES IN CALCULATION OF STATISTIC|CODE TABLE|0|0|3|CODE TABLE|0|1 +008052|conditionForWhichNumberOfDaysOfOccurrenceFollows|table|CONDITION FOR WHICH NUMBER OF DAYS OF OCCURRENCE FOLLOWS|CODE TABLE|0|0|5|CODE TABLE|0|2 +008053|dayOfOccurrenceQualifier|table|DAY OF OCCURRENCE QUALIFIER|CODE TABLE|0|0|2|CODE TABLE|0|1 +008054|qualifierForWindSpeedOrWindGusts|table|QUALIFIER FOR WIND SPEED OR WIND GUSTS|CODE TABLE|0|0|3|CODE TABLE|0|1 +008060|sampleScanningModeSignificance|table|SAMPLE SCANNING MODE SIGNIFICANCE|CODE TABLE|0|0|4|CODE TABLE|0|2 +008065|sunGlintIndicator|table|SUN-GLINT INDICATOR|CODE TABLE|0|0|2|CODE TABLE|0|1 +008066|semiTransparencyIndicator|table|SEMI-TRANSPARENCY INDICATOR|CODE TABLE|0|0|2|CODE TABLE|0|1 +008070|verticalSoundingProductQualifier|table|VERTICAL SOUNDING PRODUCT QUALIFIER|CODE TABLE|0|0|4|CODE TABLE|0|2 +008071|typeOfCostEstimation|table|TYPE OF COST ESTIMATION|CODE TABLE|0|0|3|CODE TABLE|0|1 +008072|pixelType|table|PIXEL(S) TYPE|CODE TABLE|0|0|3|CODE TABLE|0|1 +008074|altimeterEchoType|table|ALTIMETER ECHO TYPE|CODE TABLE|0|0|2|CODE TABLE|0|1 +008075|orbitQualifier|table|ASCENDING/DESCENDING ORBIT QUALIFIER|CODE TABLE|0|0|2|CODE TABLE|0|1 +008076|band|table|TYPE OF BAND|CODE TABLE|0|0|6|CODE TABLE|0|2 +008077|radiometerSensedSurfaceType|table|RADIOMETER SENSED SURFACE TYPE|CODE TABLE|0|0|7|CODE TABLE|0|3 +008079|productStatus|table|PRODUCT STATUS|CODE TABLE|0|0|4|CODE TABLE|0|2 +008080|qualifierForGtsppQualityFlag|table|QUALIFIER FOR GTSPP QUALITY FLAG|CODE TABLE|0|0|6|CODE TABLE|0|2 +008081|equipmentType|table|TYPE OF EQUIPMENT|CODE TABLE|0|0|6|CODE TABLE|0|2 +008082|modificationOfSensorHeightToAnotherValue|table|MODIFICATION OF SENSOR HEIGHT TO ANOTHER VALUE|CODE TABLE|0|0|3|CODE TABLE|0|1 +008083|nominalValueIndicator|flag|NOMINAL VALUE INDICATOR|FLAG TABLE|0|0|15|FLAG TABLE|0|5 +008085|beamIdentifier|table|BEAM IDENTIFIER|CODE TABLE|0|0|3|CODE TABLE|0|1 +008086|verticalSignificanceForNwp|flag|VERTICAL SIGNIFICANCE FOR NWP|FLAG TABLE|0|0|12|FLAG TABLE|0|4 +008087|cornerPositionOfObservation|table|CORNER POSITION OF OBSERVATION|CODE TABLE|0|0|3|CODE TABLE|0|1 +008088|mapSignificance|table|MAP SIGNIFICANCE|CODE TABLE|0|0|6|CODE TABLE|0|2 +008090|decimalScaleOfFollowingSignificands|long|DECIMAL SCALE OF FOLLOWING SIGNIFICANDS|Numeric|0|-127|8|Numeric|0|3 +008091|coordinatesSignificance|table|COORDINATES SIGNIFICANCE|CODE TABLE|0|0|8|CODE TABLE|0|3 +008092|measurementUncertaintyExpression|table|MEASUREMENT UNCERTAINTY EXPRESSION|CODE TABLE|0|0|5|CODE TABLE|0|2 +008093|measurementUncertaintySignificance|table|MEASUREMENT UNCERTAINTY SIGNIFICANCE|CODE TABLE|0|0|5|CODE TABLE|0|2 +008094|methodUsedToCalculateTheAverageDailyTemperature|table|METHOD USED TO CALCULATE THE AVERAGE DAILY TEMPERATURE|CODE TABLE|0|0|8|CODE TABLE|0|3 +008095|sitingAndMeasurementQualityClassificationForTemperature|table|SITING AND MEASUREMENT QUALITY CLASSIFICATION FOR TEMPERATURE|CODE TABLE|0|0|8|CODE TABLE|0|3 +008096|sitingAndMeasurementQualityClassificationForPrecipitation|table|SITING AND MEASUREMENT QUALITY CLASSIFICATION FOR PRECIPITATION|CODE TABLE|0|0|8|CODE TABLE|0|3 +008097|methodUsedToCalculateTheAverageInstrumentTemperature|table|METHOD USED TO CALCULATE THE AVERAGE INSTRUMENT TEMPERATURE|CODE TABLE|0|0|7|CODE TABLE|0|3 +008098|sourceOfTemperatureMeasurement|table|SOURCE OF TEMPERATURE MEASUREMENT|CODE TABLE|0|0|4|CODE TABLE|0|2 +008099|sensingDirection|table|SENSING DIRECTION|CODE TABLE|0|0|4|CODE TABLE|0|2 +010001|heightOfLandSurface|long|HEIGHT OF LAND SURFACE|m|0|-400|15|m|0|5 +010002|nonCoordinateHeight|long|HEIGHT|m|-1|-40|16|m|-1|5 +010003|nonCoordinateGeopotential|long|GEOPOTENTIAL|m2 s-2|-1|-400|17|m2 s-2|-1|6 +010004|nonCoordinatePressure|long|PRESSURE|Pa|-1|0|14|Pa|-1|5 +010007|nonCoordinateHeight|long|HEIGHT|m|0|-1000|17|m|0|6 +010008|nonCoordinateGeopotential|long|GEOPOTENTIAL|m2 s-2|0|-10000|20|m2 s-2|0|7 +010009|nonCoordinateGeopotentialHeight|long|GEOPOTENTIAL HEIGHT|gpm|0|-1000|17|gpm|0|5 +010010|minimumPressureReducedToMeanSeaLevel|long|MINIMUM PRESSURE REDUCED TO MEAN SEA LEVEL|Pa|-1|0|14|Pa|-1|5 +010011|maximumPressureReducedToMeanSeaLevel|long|MAXIMUM PRESSURE REDUCED TO MEAN SEA LEVEL|Pa|-1|0|14|Pa|-1|5 +010031|DistanceFromEarthCentreInDirectionOfNorthPole|double|IN DIRECTION OF THE NORTH POLE, DISTANCE FROM THE EARTH'S CENTRE|m|2|-1073741824|31|m|2|10 +010032|satelliteDistanceToEarthCentre|double|SATELLITE DISTANCE TO EARTH'S CENTRE|m|1|0|27|m|2|9 +010033|altitudePlatformToEllipsoid|double|ALTITUDE (PLATFORM TO ELLIPSOID)|m|1|0|27|m|2|9 +010034|earthRadius|double|EARTH'S RADIUS|m|1|0|27|m|2|9 +010035|earthLocalRadiusOfCurvature|double|EARTH'S LOCAL RADIUS OF CURVATURE|m|1|62000000|22|m|1|8 +010036|geoidUndulation|double|GEOID UNDULATION|m|2|-15000|15|m|2|6 +010038|maximumHeightOfDeckCargoAboveSummerLoadLine|long|MAXIMUM HEIGHT OF DECK CARGO ABOVE SUMMER LOAD LINE|m|0|0|6|m|0|2 +010039|departureOfReferenceLevelSummerMaximumLoadLineFromActualSeaLevel|long|DEPARTURE OF REFERENCE LEVEL (SUMMER MAXIMUM LOAD LINE) FROM ACTUAL SEA LEVEL|m|0|-32|6|m|0|3 +010040|numberOfRetrievedLayers|long|NUMBER OF RETRIEVED LAYERS|Numeric|0|0|10|Numeric|0|4 +010050|standardDeviationAltitude|double|STANDARD DEVIATION ALTITUDE|m|2|0|16|m|2|5 +010051|pressureReducedToMeanSeaLevel|long|PRESSURE REDUCED TO MEAN SEA LEVEL|Pa|-1|0|14|Pa|-1|5 +010052|altimeterSettingQnh|long|ALTIMETER SETTING (QNH)|Pa|-1|0|14|Pa|-1|5 +010053|globalNavigationSatelliteSystemAltitude|long|GLOBAL NAVIGATION SATELLITE SYSTEM ALTITUDE|m|0|-1000|17|m|0|5 +010060|pressureChange|long|PRESSURE CHANGE|Pa|-1|-1024|11|Pa|-1|4 +010061|3HourPressureChange|long|3-HOUR PRESSURE CHANGE|Pa|-1|-500|10|Pa|-1|4 +010062|24HourPressureChange|long|24-HOUR PRESSURE CHANGE|Pa|-1|-1000|11|Pa|-1|4 +010063|characteristicOfPressureTendency|table|CHARACTERISTIC OF PRESSURE TENDENCY|CODE TABLE|0|0|4|CODE TABLE|0|2 +010064|sigmetCruisingLevel|table|SIGMET CRUISING LEVEL|CODE TABLE|0|0|3|CODE TABLE|0|1 +010070|indicatedAircraftAltitude|long|INDICATED AIRCRAFT ALTITUDE|m|0|-400|16|m|0|5 +010071|verticalResolution|long|VERTICAL RESOLUTION|m|0|0|14|m|0|5 +010073|heightOfPlume|double|HEIGHT OF PLUME|m|2|0|21|m|2|7 +010079|offNadirAngleOfTheSatelliteFromPlatformData|double|OFF-NADIR ANGLE OF THE SATELLITE FROM PLATFORM DATA|deg|4|0|16|deg|4|5 +010080|viewingZenithAngle|double|VIEWING ZENITH ANGLE|deg|2|-9000|15|deg|2|5 +010081|cogAltitudeAboveReferenceEllipsoid|double|ALTITUDE OF COG ABOVE REFERENCE ELLIPSOID|m|3|0|31|m|3|10 +010082|instantaneousAltitudeRate|double|INSTANTANEOUS ALTITUDE RATE|m/s|3|-65536|17|m/s|3|6 +010083|squaredOffNadirAngleOfSatelliteFromPlatformData|double|SQUARED OFF-NADIR ANGLE OF THE SATELLITE FROM PLATFORM DATA|deg2|2|0|16|deg2|2|5 +010084|squaredOffNadirAngleOfSatelliteFromWaveformData|double|SQUARED OFF-NADIR ANGLE OF THE SATELLITE FROM WAVEFORM DATA|deg2|2|0|16|deg2|2|5 +010085|meanSeaSurfaceHeight|double|MEAN SEA-SURFACE HEIGHT|m|3|-131072|18|m|3|6 +010086|geoidHeight|double|GEOID'S HEIGHT|m|3|-131072|18|m|3|6 +010087|oceanDepthOrLandElevation|double|OCEAN DEPTH/LAND ELEVATION|m|1|-131072|18|m|1|6 +010088|totalGeocentricOceanTideHeightSolution1|double|TOTAL GEOCENTRIC OCEAN TIDE HEIGHT (SOLUTION 1)|m|3|-32768|16|m|3|5 +010089|totalGeocentricOceanTideHeightSolution2|double|TOTAL GEOCENTRIC OCEAN TIDE HEIGHT (SOLUTION 2)|m|3|-32768|16|m|3|5 +010090|longPeriodTideHeight|double|LONG PERIOD TIDE HEIGHT|m|3|-32768|16|m|3|5 +010091|tidalLoadingHeight|double|TIDAL LOADING HEIGHT|m|3|-32768|16|m|3|5 +010092|solidEarthTideHeight|double|SOLID EARTH TIDE HEIGHT|m|3|-32768|16|m|3|5 +010093|geocentricPoleTideHeight|double|GEOCENTRIC POLE TIDE HEIGHT|m|3|-32768|16|m|3|5 +010095|heightOfAtmosphere|long|HEIGHT OF ATMOSPHERE USED|m|0|0|16|m|0|5 +010096|meanDynamicTopography|double|MEAN DYNAMIC TOPOGRAPHY|m|3|-131072|18|m|3|6 +010097|meanSeaSurfaceHeightFromAltimeterOnly|double|MEAN SEA-SURFACE HEIGHT FROM ALTIMETER ONLY|m|3|-131072|18|m|3|6 +010098|loadingTideHeightGeocentricOceanTideSolution1|double|LOADING TIDE HEIGHT GEOCENTRIC OCEAN TIDE SOLUTION 1|m|4|-2000|12|m|4|4 +010099|loadingTideHeightGeocentricOceanTideSolution2|double|LOADING TIDE HEIGHT GEOCENTRIC OCEAN TIDE SOLUTION 2|m|4|-2000|12|m|4|4 +010100|nonEquilibriumLongPeriodTideHeight|double|NON-EQUILIBRIUM LONG PERIOD TIDE HEIGHT|m|4|-2000|12|m|4|4 +010101|squaredOffNadirAngleOfSatelliteFromWaveformData|double|SQUARED OFF-NADIR ANGLE OF THE SATELLITE FROM WAVEFORM DATA|deg2|2|-32768|16|deg2|2|5 +010102|seaSurfaceHeightAnomaly|double|SEA-SURFACE HEIGHT ANOMALY|m|3|-32768|16|m|3|5 +010103|meanDynamicTopographyAccuracy|double|MEAN DYNAMIC TOPOGRAPHY ACCURACY|m|3|-131072|18|m|3|6 +011001|windDirection|long|WIND DIRECTION|deg|0|0|9|deg|0|3 +011002|windSpeed|double|WIND SPEED|m/s|1|0|12|m/s|1|4 +011003|u|double|U-COMPONENT|m/s|1|-4096|13|m/s|1|4 +011004|v|double|V-COMPONENT|m/s|1|-4096|13|m/s|1|4 +011005|w|double|W-COMPONENT|Pa/s|1|-512|10|Pa/s|1|4 +011006|w|double|W-COMPONENT|m/s|2|-4096|13|m/s|2|4 +011007|relativeWindDirectionInDegreesOffBow|long|RELATIVE WIND DIRECTION (IN DEGREES OFF BOW)|deg|0|0|9|deg|0|3 +011008|relativeWindSpeed|double|RELATIVE WIND SPEED|m/s|1|0|12|m/s|1|4 +011010|windDirectionAssociatedWithWindSpeedWhichFollows|long|WIND DIRECTION ASSOCIATED WITH WIND SPEED WHICH FOLLOWS|deg|0|0|9|deg|0|3 +011011|windDirectionAt10M|long|WIND DIRECTION AT 10 M|deg|0|0|9|deg|0|3 +011012|windSpeedAt10M|double|WIND SPEED AT 10 M|m/s|1|0|12|m/s|1|4 +011013|windDirectionAt5M|long|WIND DIRECTION AT 5 M|deg|0|0|9|deg|0|3 +011014|windSpeedAt5M|double|WIND SPEED AT 5 M|m/s|1|0|12|m/s|1|4 +011016|extremeCounterclockwiseWindDirectionOfAVariableWind|long|EXTREME COUNTERCLOCKWISE WIND DIRECTION OF A VARIABLE WIND|deg|0|0|9|deg|0|3 +011017|extremeClockwiseWindDirectionOfAVariableWind|long|EXTREME CLOCKWISE WIND DIRECTION OF A VARIABLE WIND|deg|0|0|9|deg|0|3 +011019|steadinessOfWind|long|STEADINESS OF WIND|%|0|0|7|%|0|3 +011021|relativeVorticity|double|RELATIVE VORTICITY|/s|9|-65536|17|/s|9|6 +011022|divergence|double|DIVERGENCE|/s|9|-65536|17|/s|9|6 +011023|velocityPotential|long|VELOCITY POTENTIAL|m2/s|-2|-65536|17|m2/s|-2|6 +011030|extendedDegreeOfTurbulence|table|EXTENDED DEGREE OF TURBULENCE|CODE TABLE|0|0|6|CODE TABLE|0|2 +011031|degreeOfTurbulence|table|DEGREE OF TURBULENCE|CODE TABLE|0|0|4|CODE TABLE|0|2 +011032|heightOfBaseOfTurbulence|long|HEIGHT OF BASE OF TURBULENCE|m|-1|-40|16|m|-1|5 +011033|heightOfTopOfTurbulence|long|HEIGHT OF TOP OF TURBULENCE|m|-1|-40|16|m|-1|5 +011034|verticalGustVelocity|double|VERTICAL GUST VELOCITY|m/s|1|-1024|11|m/s|1|4 +011035|verticalGustAcceleration|double|VERTICAL GUST ACCELERATION|m s-2|2|-8192|14|m s-2|2|5 +011036|maximumDerivedEquivalentVerticalGustSpeed|double|MAXIMUM DERIVED EQUIVALENT VERTICAL GUST SPEED|m/s|1|0|10|m/s|1|4 +011037|turbulenceIndex|table|TURBULENCE INDEX|CODE TABLE|0|0|6|CODE TABLE|0|2 +011038|timeOfOccurrenceOfPeakEddyDissipationRate|table|TIME OF OCCURRENCE OF PEAK EDDY DISSIPATION RATE|CODE TABLE|0|0|5|CODE TABLE|0|2 +011039|extendedTimeOfOccurrenceOfPeakEddyDissipationRate|table|EXTENDED TIME OF OCCURRENCE OF PEAK EDDY DISSIPATION RATE|CODE TABLE|0|0|6|CODE TABLE|0|2 +011040|maximumWindSpeedMeanWind|double|MAXIMUM WIND SPEED (MEAN WIND)|m/s|1|0|12|m/s|1|4 +011041|maximumWindGustSpeed|double|MAXIMUM WIND GUST SPEED|m/s|1|0|12|m/s|1|4 +011042|maximumWindSpeed10MinuteMeanWind|double|MAXIMUM WIND SPEED (10-MINUTE MEAN WIND)|m/s|1|0|12|m/s|1|4 +011043|maximumWindGustDirection|long|MAXIMUM WIND GUST DIRECTION|deg|0|0|9|deg|0|3 +011044|meanWindDirectionForSurfaceTo1500M|long|MEAN WIND DIRECTION FOR SURFACE - 1 500 M (5 000 FEET)|deg|0|0|9|deg|0|3 +011045|meanWindSpeedForSurfaceTo1500M|double|MEAN WIND SPEED FOR SURFACE - 1 500 M (5 000 FEET)|m/s|1|0|12|m/s|1|4 +011046|maximumInstantaneousWindSpeed|double|MAXIMUM INSTANTANEOUS WIND SPEED|m/s|1|0|12|m/s|1|4 +011047|maximumInstantaneousWindSpeedOver10Minutes|double|MAXIMUM INSTANTANEOUS WIND SPEED OVER 10 MINUTES|m/s|1|0|12|m/s|1|4 +011049|windDirectionStandardDeviation|long|STANDARD DEVIATION OF WIND DIRECTION|deg|0|0|9|deg|0|3 +011050|standardDeviationOfHorizontalWindSpeed|double|STANDARD DEVIATION OF HORIZONTAL WIND SPEED|m/s|1|0|12|m/s|1|4 +011051|standardDeviationOfVerticalWindSpeed|double|STANDARD DEVIATION OF VERTICAL WIND SPEED|m/s|1|0|8|m/s|1|3 +011052|formalUncertaintyInWindSpeed|double|FORMAL UNCERTAINTY IN WIND SPEED|m/s|2|0|13|m/s|2|5 +011053|formalUncertaintyInWindDirection|double|FORMAL UNCERTAINTY IN WIND DIRECTION|deg|2|0|15|deg|2|5 +011054|meanWindDirectionFor1500To3000M|long|MEAN WIND DIRECTION FOR 1 500 - 3 000 M|deg|0|0|9|deg|0|3 +011055|meanWindSpeedFor1500To3000M|double|MEAN WIND SPEED FOR 1 500 - 3 000 M|m/s|1|0|12|m/s|1|4 +011061|absoluteWindShearIn1KmLayerBelow|double|ABSOLUTE WIND SHEAR IN 1 KM LAYER BELOW|m/s|1|0|12|m/s|1|4 +011062|absoluteWindShearIn1KmLayerAbove|double|ABSOLUTE WIND SHEAR IN 1 KM LAYER ABOVE|m/s|1|0|12|m/s|1|4 +011070|designatorOfRunwayAffectedByWindShearIncludingAll|string|DESIGNATOR OF THE RUNWAY AFFECTED BY WIND SHEAR (INCLUDING ALL)|CCITT IA5|0|0|32|Character|0|4 +011071|turbulentVerticalMomentumFlux|double|TURBULENT VERTICAL MOMENTUM FLUX|m2 s-2|3|-128|14|m2 s-2|3|5 +011072|turbulentVerticalBuoyancyFlux|double|TURBULENT VERTICAL BUOYANCY FLUX|K m s-1|3|-128|11|K m s-1|3|4 +011073|turbulentKineticEnergy|double|TURBULENT KINETIC ENERGY|m2 s-2|2|-1024|13|m2 s-2|2|4 +011074|dissipationEnergy|double|DISSIPATION ENERGY|m2 s-2|2|-1024|10|m2 s-2|2|4 +011075|meanTurbulenceIntensityEddyDissipationRate|double|MEAN TURBULENCE INTENSITY (EDDY DISSIPATION RATE)|m2/3 s-1|2|0|8|m2/3 s-1|2|3 +011076|peakTurbulenceIntensityEddyDissipationRate|double|PEAK TURBULENCE INTENSITY (EDDY DISSIPATION RATE)|m2/3 s-1|2|0|8|m2/3 s-1|2|3 +011077|reportingIntervalOrAveragingTimeForEddyDissipationRate|long|REPORTING INTERVAL OR AVERAGING TIME FOR EDDY DISSIPATION RATE|s|0|0|12|s|0|4 +011081|modelWindDirectionAt10M|double|MODEL WIND DIRECTION AT 10 M|deg|2|0|16|deg|2|5 +011082|modelWindSpeedAt10M|double|MODEL WIND SPEED AT 10 M|m/s|2|0|14|m/s|2|4 +011083|windSpeed|long|WIND SPEED|km/h|0|0|9|km/h|0|3 +011084|windSpeed|long|WIND SPEED|kt|0|0|8|kt|0|3 +011085|maximumWindGustSpeed|long|MAXIMUM WIND GUST SPEED|km/h|0|0|9|km/h|0|3 +011086|maximumWindGustSpeed|long|MAXIMUM WIND GUST SPEED|kt|0|0|8|kt|0|3 +011095|u|double|U-COMPONENT OF THE MODEL WIND VECTOR|m/s|1|-4096|13|m/s|1|4 +011096|v|double|V-COMPONENT OF THE MODEL WIND VECTOR|m/s|1|-4096|13|m/s|1|4 +011097|windSpeedFromAltimeter|double|WIND SPEED FROM ALTIMETER|m/s|2|0|12|m/s|2|4 +011098|windSpeedFromRadiometer|double|WIND SPEED FROM RADIOMETER|m/s|2|0|12|m/s|2|4 +011100|aircraftTrueAirspeed|double|AIRCRAFT TRUE AIRSPEED|m/s|1|0|12|m/s|1|4 +011101|aircraftGroundSpeedUComponent|double|AIRCRAFT GROUND SPEED U-COMPONENT|m/s|1|-4096|13|m/s|1|4 +011102|aircraftGroundSpeedVComponent|double|AIRCRAFT GROUND SPEED V-COMPONENT|m/s|1|-4096|13|m/s|1|4 +011103|aircraftGroundSpeedWComponent|double|AIRCRAFT GROUND SPEED W-COMPONENT|m/s|1|-512|10|m/s|1|3 +011104|aircraftTrueHeading|long|TRUE HEADING OF AIRCRAFT, SHIP OR OTHER MOBILE PLATFORM|deg|0|0|9|deg|0|3 +011105|edrAlgorithmVersion|long|EDR ALGORITHM VERSION|Numeric|0|0|6|Numeric|0|2 +011106|runningMinimumConfidence|long|RUNNING MINIMUM CONFIDENCE|Numeric|1|0|4|Numeric|1|2 +011107|maximumNumberBadInputs|long|MAXIMUM NUMBER BAD INPUTS|Numeric|0|0|5|Numeric|0|2 +011108|peakLocation|long|PEAK LOCATION|Numeric|1|0|4|Numeric|1|2 +011109|numberOfGoodEdr|long|NUMBER OF GOOD EDR|Numeric|0|0|4|Numeric|0|2 +011110|uncertaintyInUComponent|double|UNCERTAINTY IN U-COMPONENT|m/s|1|-4096|13|m/s|1|4 +011111|uncertaintyInVComponent|double|UNCERTAINTY IN V-COMPONENT|m/s|1|-4096|13|m/s|1|4 +011112|uncertaintyInWComponent|double|UNCERTAINTY IN W-COMPONENT|m/s|2|-4096|13|m/s|2|4 +011113|trackingCorrelationOfVector|long|TRACKING CORRELATION OF VECTOR|Numeric|3|-1000|12|Numeric|3|4 +012001|airTemperature|double|TEMPERATURE/AIR TEMPERATURE|K|1|0|12|C|1|3 +012002|wetBulbTemperature|double|WET-BULB TEMPERATURE|K|1|0|12|C|1|3 +012003|dewpointTemperature|double|DEWPOINT TEMPERATURE|K|1|0|12|C|1|3 +012004|airTemperatureAt2M|double|AIR TEMPERATURE AT 2 M|K|1|0|12|C|1|3 +012005|wetBulbTemperatureAt2M|double|WET-BULB TEMPERATURE AT 2 M|K|1|0|12|C|1|3 +012006|dewpointTemperatureAt2M|double|DEWPOINT TEMPERATURE AT 2 M|K|1|0|12|C|1|3 +012007|virtualTemperature|double|VIRTUAL TEMPERATURE|K|1|0|12|C|1|3 +012008|uncertaintyInVirtualTemperature|double|UNCERTAINTY IN VIRTUAL TEMPERATURE|K|1|0|12|C|1|4 +012011|maximumTemperatureAtHeightAndOverPeriodSpecified|double|MAXIMUM TEMPERATURE, AT HEIGHT AND OVER PERIOD SPECIFIED|K|1|0|12|C|1|3 +012012|minimumTemperatureAtHeightAndOverPeriodSpecified|double|MINIMUM TEMPERATURE, AT HEIGHT AND OVER PERIOD SPECIFIED|K|1|0|12|C|1|3 +012013|groundMinimumTemperaturePast12Hours|double|GROUND MINIMUM TEMPERATURE, PAST 12 HOURS|K|1|0|12|C|1|3 +012014|maximumTemperatureAt2MPast12Hours|double|MAXIMUM TEMPERATURE AT 2 M, PAST 12 HOURS|K|1|0|12|C|1|3 +012015|minimumTemperatureAt2MPast12Hours|double|MINIMUM TEMPERATURE AT 2 M, PAST 12 HOURS|K|1|0|12|C|1|3 +012016|maximumTemperatureAt2MPast24Hours|double|MAXIMUM TEMPERATURE AT 2 M, PAST 24 HOURS|K|1|0|12|C|1|3 +012017|minimumTemperatureAt2MPast24Hours|double|MINIMUM TEMPERATURE AT 2 M, PAST 24 HOURS|K|1|0|12|C|1|3 +012021|maximumTemperatureAt2M|double|MAXIMUM TEMPERATURE AT 2 M|K|2|0|16|C|2|4 +012022|minimumTemperatureAt2M|double|MINIMUM TEMPERATURE AT 2 M|K|2|0|16|C|2|4 +012023|temperature|long|TEMPERATURE|C|0|-99|8|C|0|2 +012024|dewpointTemperature|long|DEWPOINT TEMPERATURE|C|0|-99|8|C|0|2 +012030|soilTemperature|double|SOIL TEMPERATURE|K|1|0|12|C|1|3 +012049|temperatureChangeOverSpecifiedPeriod|long|TEMPERATURE CHANGE OVER SPECIFIED PERIOD|K|0|-30|6|C|0|2 +012051|standardDeviationTemperature|double|STANDARD DEVIATION TEMPERATURE|K|1|0|10|C|1|3 +012052|highestDailyMeanTemperature|double|HIGHEST DAILY MEAN TEMPERATURE|K|1|0|12|C|1|3 +012053|lowestDailyMeanTemperature|double|LOWEST DAILY MEAN TEMPERATURE|K|1|0|12|C|1|3 +012060|awsEnclosureInternalTemperature|double|AWS ENCLOSURE INTERNAL TEMPERATURE|K|1|0|12|C|1|3 +012061|skinTemperature|double|SKIN TEMPERATURE|K|1|0|12|C|1|3 +012062|equivalentBlackBodyTemperature|double|EQUIVALENT BLACK BODY TEMPERATURE|K|1|0|12|C|1|3 +012063|brightnessTemperature|double|BRIGHTNESS TEMPERATURE|K|1|0|12|C|1|3 +012064|instrumentTemperature|double|INSTRUMENT TEMPERATURE|K|1|0|12|K|1|4 +012065|standardDeviationBrightnessTemperature|double|STANDARD DEVIATION BRIGHTNESS TEMPERATURE|K|1|0|12|K|1|4 +012066|antennaTemperature|double|ANTENNA TEMPERATURE|K|2|0|16|C|2|5 +012070|warmLoadTemperature|double|WARM LOAD TEMPERATURE|K|2|0|16|K|2|5 +012071|coldestClusterTemperature|double|COLDEST CLUSTER TEMPERATURE|K|1|0|12|K|1|4 +012072|radiance|double|RADIANCE|W m-2 sr-1|6|0|31|W m-2 sr-1|6|9 +012075|spectralRadiance|long|SPECTRAL RADIANCE|W m-3 sr-1|-3|0|16|W m-3 sr-1|-3|5 +012076|radiance|double|RADIANCE|W m-2 sr-1|3|0|16|W m-2 sr-1|3|5 +012080|brightnessTemperatureRealPart|double|BRIGHTNESS TEMPERATURE REAL PART|K|2|-10000|16|K|2|5 +012081|brightnessTemperatureImaginaryPart|double|BRIGHTNESS TEMPERATURE IMAGINARY PART|K|2|-10000|16|K|2|5 +012082|pixelRadiometricAccuracy|double|PIXEL RADIOMETRIC ACCURACY|K|2|0|12|K|2|4 +012083|temperatureDifferenceBetweenObservedAndComputed|double|TEMPERATURE DIFFERENCE BETWEEN OBSERVED AND COMPUTED|K|2|-10000|16|K|2|6 +012101|airTemperature|double|TEMPERATURE/AIR TEMPERATURE|K|2|0|16|C|2|4 +012102|wetBulbTemperature|double|WET-BULB TEMPERATURE|K|2|0|16|C|2|4 +012103|dewpointTemperature|double|DEWPOINT TEMPERATURE|K|2|0|16|C|2|4 +012104|airTemperatureAt2M|double|AIR TEMPERATURE AT 2 M|K|2|0|16|C|2|4 +012105|webBulbTemperatureAt2M|double|WEB-BULB TEMPERATURE AT 2 M|K|2|0|16|C|2|4 +012106|dewpointTemperatureAt2M|double|DEWPOINT TEMPERATURE AT 2 M|K|2|0|16|C|2|4 +012107|virtualTemperature|double|VIRTUAL TEMPERATURE|K|2|0|16|C|2|4 +012111|maximumTemperatureAtHeightAndOverPeriodSpecified|double|MAXIMUM TEMPERATURE, AT HEIGHT AND OVER PERIOD SPECIFIED|K|2|0|16|C|2|4 +012112|minimumTemperatureAtHeightAndOverPeriodSpecified|double|MINIMUM TEMPERATURE, AT HEIGHT AND OVER PERIOD SPECIFIED|K|2|0|16|C|2|4 +012113|groundMinimumTemperaturePast12Hours|double|GROUND MINIMUM TEMPERATURE, PAST 12 HOURS|K|2|0|16|C|2|4 +012114|maximumTemperatureAt2MPast12Hours|double|MAXIMUM TEMPERATURE AT 2 M, PAST 12 HOURS|K|2|0|16|C|2|4 +012115|minimumTemperatureAt2MPast12Hours|double|MINIMUM TEMPERATURE AT 2 M, PAST 12 HOURS|K|2|0|16|C|2|4 +012116|maximumTemperatureAt2MPast24Hours|double|MAXIMUM TEMPERATURE AT 2 M, PAST 24 HOURS|K|2|0|16|C|2|4 +012117|minimumTemperatureAt2MPast24Hours|double|MINIMUM TEMPERATURE AT 2 M, PAST 24 HOURS|K|2|0|16|C|2|4 +012118|maximumTemperatureAtHeightSpecifiedPast24Hours|double|MAXIMUM TEMPERATURE AT HEIGHT SPECIFIED, PAST 24 HOURS|K|2|0|16|C|2|4 +012119|minimumTemperatureAtHeightSpecifiedPast24Hours|double|MINIMUM TEMPERATURE AT HEIGHT SPECIFIED, PAST 24 HOURS|K|2|0|16|C|2|4 +012120|groundTemperature|double|GROUND TEMPERATURE|K|2|0|16|C|2|4 +012121|groundMinimumTemperature|double|GROUND MINIMUM TEMPERATURE|K|2|0|16|C|2|4 +012122|groundMinimumTemperatureOfPrecedingNight|double|GROUND MINIMUM TEMPERATURE OF THE PRECEDING NIGHT|K|2|0|16|C|2|4 +012128|roadSurfaceTemperature|double|ROAD SURFACE TEMPERATURE|K|2|0|16|C|2|5 +012129|roadSubSurfaceTemperature|double|ROAD SUBSURFACE TEMPERATURE|K|2|0|16|C|2|5 +012130|soilTemperature|double|SOIL TEMPERATURE|K|2|0|16|C|2|4 +012131|snowTemperature|double|SNOW TEMPERATURE|K|2|0|16|C|2|4 +012132|iceSurfaceTemperature|double|ICE SURFACE TEMPERATURE|K|2|0|16|C|2|4 +012151|dailyMeanTemperatureStandardDeviation|double|STANDARD DEVIATION OF DAILY MEAN TEMPERATURE|K|2|0|12|C|2|4 +012152|highestDailyMeanTemperature|double|HIGHEST DAILY MEAN TEMPERATURE|K|2|0|16|C|2|4 +012153|lowestDailyMeanTemperature|double|LOWEST DAILY MEAN TEMPERATURE|K|2|0|16|C|2|4 +012158|noiseEquivalentDeltaTemperatureWhileViewingColdTarget|double|NOISE-EQUIVALENT DELTA TEMPERATURE WHILE VIEWING COLD TARGET|K|2|0|12|C|2|4 +012159|noiseEquivalentDeltaTemperatureWhileViewingWarmTarget|double|NOISE-EQUIVALENT DELTA TEMPERATURE WHILE VIEWING WARM TARGET|K|2|0|12|C|2|4 +012161|skinTemperature|double|SKIN TEMPERATURE|K|2|0|16|C|2|4 +012162|equivalentBlackBodyTemperature|double|EQUIVALENT BLACK BODY TEMPERATURE|K|2|0|16|C|2|4 +012163|brightnessTemperature|double|BRIGHTNESS TEMPERATURE|K|2|0|16|C|2|4 +012164|instrumentTemperature|double|INSTRUMENT TEMPERATURE|K|2|0|16|K|2|5 +012165|directSunBrightnessTemperature|long|DIRECT SUN BRIGHTNESS TEMPERATURE|K|0|0|23|K|0|7 +012166|snapshotAccuracy|double|SNAPSHOT ACCURACY|K|1|-4000|13|K|1|4 +012167|radiometricAccuracyPurePolarization|double|RADIOMETRIC ACCURACY (PURE POLARIZATION)|K|1|0|9|K|1|3 +012168|radiometricAccuracyCrossPolarization|double|RADIOMETRIC ACCURACY (CROSS POLARIZATION)|K|1|0|9|K|1|3 +012169|brightnessTemperatureDifference|double|BRIGHTNESS TEMPERATURE DIFFERENCE|K|3|-100000|18|K|3|6 +012171|coldestClusterTemperature|double|COLDEST CLUSTER TEMPERATURE|K|2|0|16|K|2|5 +012180|averaged12MicronBtForAllClearPixelsAtNadir|double|AVERAGED 12 MICRON BT FOR ALL CLEAR PIXELS AT NADIR|K|2|0|16|K|2|5 +012181|averaged11MicronBtForAllClearPixelsAtNadir|double|AVERAGED 11 MICRON BT FOR ALL CLEAR PIXELS AT NADIR|K|2|0|16|K|2|5 +012182|averaged37MicronBtForAllClearPixelsAtNadir|double|AVERAGED 3.7 MICRON BT FOR ALL CLEAR PIXELS AT NADIR|K|2|0|16|K|2|5 +012183|averaged12MicronBtForAllClearPixelsForwardView|double|AVERAGED 12 MICRON BT FOR ALL CLEAR PIXELS, FORWARD VIEW|K|2|0|16|K|2|5 +012184|averaged11MicronBtForAllClearPixelsForwardView|double|AVERAGED 11 MICRON BT FOR ALL CLEAR PIXELS, FORWARD VIEW|K|2|0|16|K|2|5 +012185|averaged37MicronBtForAllClearPixelsForwardView|double|AVERAGED 3.7 MICRON BT FOR ALL CLEAR PIXELS, FORWARD VIEW|K|2|0|16|K|2|5 +012186|meanNadirSeaSurfaceTemperature|double|MEAN NADIR SEA-SURFACE TEMPERATURE|K|2|0|16|K|2|5 +012187|meanDualViewSeaSurfaceTemperature|double|MEAN DUAL VIEW SEA-SURFACE TEMPERATURE|K|2|0|16|K|2|5 +012188|interpolated238GhzBrightnessTFromMwr|double|INTERPOLATED 23.8 GHZ BRIGHTNESS T FROM MWR|K|2|0|16|K|2|5 +012189|interpolated365GhzBrightnessTFromMwr|double|INTERPOLATED 36.5 GHZ BRIGHTNESS T FROM MWR|K|2|0|16|K|2|5 +012190|brightnessTemperatureErrorCovariance|double|BRIGHTNESS TEMPERATURE ERROR COVARIANCE|K2|3|-15000|15|K2|3|8 +013001|specificHumidity|double|SPECIFIC HUMIDITY|kg/kg|5|0|14|kg/kg|5|5 +013002|mixingRatio|double|MIXING RATIO|kg/kg|5|0|14|kg/kg|5|5 +013003|relativeHumidity|long|RELATIVE HUMIDITY|%|0|0|7|%|0|3 +013004|vapourPressure|long|VAPOUR PRESSURE|Pa|-1|0|10|Pa|-1|4 +013005|vapourDensity|double|VAPOUR DENSITY|kg m-3|3|0|7|kg m-3|3|3 +013006|mixingHeights|long|MIXING HEIGHTS|m|-1|-40|16|m|-1|5 +013007|minimumRelativeHumidity|long|MINIMUM RELATIVE HUMIDITY|%|0|0|7|%|0|3 +013008|maximumRelativeHumidity|long|MAXIMUM RELATIVE HUMIDITY|%|0|0|7|%|0|3 +013009|relativeHumidity|double|RELATIVE HUMIDITY|%|1|-1000|12|%|1|4 +013011|totalPrecipitationOrTotalWaterEquivalent|double|TOTAL PRECIPITATION/TOTAL WATER EQUIVALENT|kg m-2|1|-1|14|kg m-2|1|5 +013012|depthOfFreshSnow|double|DEPTH OF FRESH SNOW|m|2|-2|12|m|2|4 +013013|totalSnowDepth|double|TOTAL SNOW DEPTH|m|2|-2|16|m|2|5 +013014|rainfallOrWaterEquivalentOfSnowAveragedRate|double|RAINFALL/WATER EQUIVALENT OF SNOW (AVERAGED RATE)|kg m-2 s-1|4|0|12|kg m-2 s-1|4|4 +013015|snowfallAveragedRate|double|SNOWFALL (AVERAGED RATE)|m/s|7|0|12|m/s|7|4 +013016|precipitableWater|long|PRECIPITABLE WATER|kg m-2|0|0|7|kg m-2|0|3 +013019|totalPrecipitationPast1Hour|double|TOTAL PRECIPITATION PAST 1 HOUR|kg m-2|1|-1|14|kg m-2|1|4 +013020|totalPrecipitationPast3Hours|double|TOTAL PRECIPITATION PAST 3 HOURS|kg m-2|1|-1|14|kg m-2|1|5 +013021|totalPrecipitationPast6Hours|double|TOTAL PRECIPITATION PAST 6 HOURS|kg m-2|1|-1|14|kg m-2|1|5 +013022|totalPrecipitationPast12Hours|double|TOTAL PRECIPITATION PAST 12 HOURS|kg m-2|1|-1|14|kg m-2|1|5 +013023|totalPrecipitationPast24Hours|double|TOTAL PRECIPITATION PAST 24 HOURS|kg m-2|1|-1|14|kg m-2|1|5 +013031|evapotranspiration|long|EVAPOTRANSPIRATION|kg m-2|0|0|7|kg m-2|0|3 +013032|evaporation|double|EVAPORATION/EVAPOTRANSPIRATION|kg m-2|1|0|8|kg m-2|1|3 +013033|evaporation|double|EVAPORATION/EVAPOTRANSPIRATION|kg m-2|1|0|10|kg m-2|1|4 +013038|superadiabaticIndicator|table|SUPERADIABATIC INDICATOR|CODE TABLE|0|0|2|CODE TABLE|0|1 +013039|terrainTypeIceOrSnow|table|TERRAIN TYPE (ICE/SNOW)|CODE TABLE|0|0|3|CODE TABLE|0|1 +013040|surfaceFlag|table|SURFACE FLAG|CODE TABLE|0|0|4|CODE TABLE|0|2 +013041|pasquillGiffordStabilityCategory|table|PASQUILL-GIFFORD STABILITY CATEGORY|CODE TABLE|0|0|4|CODE TABLE|0|2 +013042|parcelLiftedIndexTo500Hpa|long|PARCEL LIFTED INDEX (TO 500 HPA)|K|0|-20|6|K|0|2 +013043|bestLiftedIndexTo500Hpa|long|BEST LIFTED INDEX (TO 500 HPA)|K|0|-20|6|K|0|2 +013044|kIndex|long|K INDEX|K|0|-30|8|K|0|3 +013045|koIndex|long|KO INDEX|K|0|-30|8|K|0|3 +013046|maximumBuoyancy|long|MAXIMUM BUOYANCY|K|0|-30|8|K|0|3 +013047|modifiedShowalterStabilityIndex|long|MODIFIED SHOWALTER STABILITY INDEX|K|0|-60|6|C|0|2 +013048|waterFraction|double|WATER FRACTION|%|1|0|10|%|1|4 +013051|frequencyGroupPrecipitation|table|FREQUENCY GROUP, PRECIPITATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +013052|highestDailyAmountOfPrecipitation|double|HIGHEST DAILY AMOUNT OF PRECIPITATION|kg m-2|1|-1|14|kg m-2|1|5 +013055|intensityOfPrecipitation|double|INTENSITY OF PRECIPITATION|kg m-2 s-1|4|0|8|mm/h|1|4 +013056|characterAndIntensityOfPrecipitation|table|CHARACTER AND INTENSITY OF PRECIPITATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +013057|timeOfBeginningOrEndOfPrecipitation|table|TIME OF BEGINNING OR END OF PRECIPITATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +013058|sizeOfPrecipitatingElement|double|SIZE OF PRECIPITATING ELEMENT|m|4|0|7|mm|1|3 +013059|numberOfFlashesThunderstorm|long|NUMBER OF FLASHES (THUNDERSTORM)|Numeric|0|0|7|Numeric|0|3 +013060|totalAccumulatedPrecipitation|double|TOTAL ACCUMULATED PRECIPITATION|kg m-2|1|-1|17|kg m-2|1|5 +013071|upstreamWaterLevel|double|UPSTREAM WATER LEVEL|m|2|0|14|m|2|4 +013072|downstreamWaterLevel|double|DOWNSTREAM WATER LEVEL|m|2|0|14|m|2|4 +013073|maximumWaterLevel|double|MAXIMUM WATER LEVEL|m|2|0|14|m|2|4 +013074|groundWaterLevel|double|GROUND WATER LEVEL|m|2|0|18|m|2|6 +013080|waterPh|double|WATER PH|pH unit|1|0|10|pH unit|1|3 +013081|waterConductivity|double|WATER CONDUCTIVITY|S/m|3|0|14|S/m|3|4 +013082|waterTemperature|double|WATER TEMPERATURE|K|1|0|12|K|1|4 +013083|dissolvedOxygen|double|DISSOLVED OXYGEN|kg m-3|6|0|15|kg m-3|6|5 +013084|turbidity|long|TURBIDITY|lm|0|0|14|lm|0|4 +013085|oxidationReductionPotential|double|OXIDATION REDUCTION POTENTIAL (ORP)|V|3|0|14|V|3|4 +013090|radiometerWaterVapourContent|double|RADIOMETER WATER VAPOUR CONTENT|kg m-2|1|0|10|kg m-2|1|4 +013091|radiometerLiquidContent|double|RADIOMETER LIQUID CONTENT|kg m-2|2|0|8|kg m-2|2|3 +013093|cloudOpticalThickness|long|CLOUD OPTICAL THICKNESS|Numeric|0|0|8|Numeric|0|3 +013094|log10OfCloudOpticalThickness|long|LOG10 OF CLOUD OPTICAL THICKNESS|Numeric|3|-2000|14|Numeric|3|5 +013095|totalColumnWaterVapour|double|TOTAL COLUMN WATER VAPOUR|kg m-2|4|0|19|kg m-2|4|6 +013096|mwrWaterVapourContent|double|MWR WATER VAPOUR CONTENT|kg m-2|2|0|14|kg m-2|2|5 +013097|mwrLiquidWaterContent|double|MWR LIQUID WATER CONTENT|kg m-2|2|0|14|kg m-2|2|5 +013098|integratedWaterVapourDensity|double|INTEGRATED WATER VAPOUR DENSITY|kg m-2|8|0|30|kg m-2|8|10 +013099|log10OfIntegratedCloudParticleDensity|double|LOG10 OF INTEGRATED CLOUD PARTICLE DENSITY|log (m-2)|1|0|7|log (m-2)|1|3 +013100|log10OfIntegratedCloudParticleArea|double|LOG10 OF INTEGRATED CLOUD PARTICLE AREA|log (m2 m-2)|1|-70|7|log (m2 m-2)|1|2 +013101|log10OfIntegratedCloudParticleVolume|double|LOG10 OF INTEGRATED CLOUD PARTICLE VOLUME|log (m3 m-2)|1|-140|7|log (m3 m-2)|1|3 +013109|iceOrLiquidWaterPath|double|ICE/LIQUID WATER PATH|kg m-2|3|0|10|kg m-2|3|4 +013110|massMixingRatio|long|MASS MIXING RATIO|%|0|0|7|%|0|3 +013111|soilMoisture|long|SOIL MOISTURE|g/kg|0|0|10|g/kg|0|4 +013112|objectWetnessDuration|long|OBJECT WETNESS DURATION|s|0|0|17|s|0|5 +013114|rateOfIceAccretion|double|RATE OF ICE ACCRETION|kg m-2 h-1|1|0|11|kg m-2 h-1|1|4 +013115|iceThickness|double|ICE THICKNESS|m|2|0|19|m|2|6 +013116|waterFilmThickness|double|WATER FILM THICKNESS|m|4|0|10|m|3|2 +013117|snowDensityLiquidWaterContent|long|SNOW DENSITY (LIQUID WATER CONTENT)|kg m-3|0|0|10|kg m-3|0|3 +013118|freshSnowDepth|double|DEPTH OF FRESH SNOW (HIGH ACCURACY)|m|3|-2|14|m|3|5 +013155|precipitationIntensityHighAccuracy|double|INTENSITY OF PRECIPITATION (HIGH ACCURACY)|kg m-2 s-1|5|-1|16|mm/h|2|5 +013160|radiometerLiquidContent|double|RADIOMETER LIQUID CONTENT|kg m-2|2|-350|10|kg m-2|2|3 +013162|cloudLiquidWater|double|CLOUD LIQUID WATER|kg m-2|2|0|8|kg m-2|2|3 +013163|snowWaterEquivalent|long|SNOW WATER EQUIVALENT|kg m-2|0|0|16|kg m-2|0|5 +013164|seaIceFreeboard|double|SEA ICE FREEBOARD|m|3|-131072|18|m|3|6 +013165|capeConvectiveAvailablePotentialEnergy|long|CAPE (CONVECTIVE AVAILABLE POTENTIAL ENERGY)|J/kg|0|0|14|J/kg|0|5 +013166|totalTotalsIndex|double|TOTAL TOTALS INDEX|K|1|0|10|C|0|5 +013167|sIndexStt|double|S INDEX (STT)|K|1|-1000|11|C|0|6 +013168|fogThreatIndex|double|FOG THREAT INDEX|K|1|-100|8|C|0|5 +013169|mdpiMicroburstDayPotentialIndex|double|MDPI (MICROBURST DAY POTENTIAL INDEX)|K/K|1|-100|8|K/K|0|5 +013170|tqIndex|double|TQ INDEX|K|1|-1000|11|C|0|6 +013171|cinConvectiveInhibition|long|CIN (CONVECTIVE INHIBITION)|J/kg|0|-1000|10|J/kg|0|5 +014001|longWaveRadiationIntegratedOver24Hours|long|LONG-WAVE RADIATION, INTEGRATED OVER 24 HOURS|J m-2|-3|-65536|17|J m-2|-3|5 +014002|longWaveRadiationIntegratedOverPeriodSpecified|long|LONG-WAVE RADIATION, INTEGRATED OVER PERIOD SPECIFIED|J m-2|-3|-65536|17|J m-2|-3|5 +014003|shortWaveRadiationIntegratedOver24Hours|long|SHORT-WAVE RADIATION, INTEGRATED OVER 24 HOURS|J m-2|-3|-65536|17|J m-2|-3|5 +014004|shortWaveRadiationIntegratedOverPeriodSpecified|long|SHORT-WAVE RADIATION, INTEGRATED OVER PERIOD SPECIFIED|J m-2|-3|-65536|17|J m-2|-3|5 +014011|netLongWaveRadiationIntegratedOver24Hours|long|NET LONG-WAVE RADIATION, INTEGRATED OVER 24 HOURS|J m-2|-3|-65536|17|J m-2|-3|5 +014012|netLongWaveRadiationIntegratedOverPeriodSpecified|long|NET LONG-WAVE RADIATION, INTEGRATED OVER PERIOD SPECIFIED|J m-2|-3|-65536|17|J m-2|-3|5 +014013|netShortWaveRadiation24Hours|long|NET SHORT-WAVE RADIATION, INTEGRATED OVER 24 HOURS|J m-2|-3|-65536|17|J m-2|-3|5 +014014|netShortWaveRadiationIntegratedOverPeriodSpecified|long|NET SHORT-WAVE RADIATION, INTEGRATED OVER PERIOD SPECIFIED|J m-2|-3|-65536|17|J m-2|-3|5 +014015|netRadiationIntegratedOver24Hours|long|NET RADIATION, INTEGRATED OVER 24 HOURS|J m-2|-4|-16384|15|J m-2|-4|5 +014016|netRadiationIntegratedOverPeriodSpecified|long|NET RADIATION, INTEGRATED OVER PERIOD SPECIFIED|J m-2|-4|-16384|15|J m-2|-4|5 +014017|instantaneousLongWaveRadiation|long|INSTANTANEOUS LONG-WAVE RADIATION|W m-2|0|-512|10|W m-2|0|4 +014018|instantaneousShortWaveRadiation|long|INSTANTANEOUS SHORT-WAVE RADIATION|W m-2|0|-2048|12|W m-2|0|4 +014019|surfaceAlbedo|long|SURFACE ALBEDO|%|0|0|7|%|0|3 +014020|globalSolarRadiation24Hours|long|GLOBAL SOLAR RADIATION, INTEGRATED OVER 24 HOURS|J m-2|-4|0|15|J m-2|-4|5 +014021|globalSolarRadiationIntegratedOverPeriodSpecified|long|GLOBAL SOLAR RADIATION, INTEGRATED OVER PERIOD SPECIFIED|J m-2|-4|0|15|J m-2|-4|5 +014022|diffuseSolarRadiationIntegratedOver24Hours|long|DIFFUSE SOLAR RADIATION, INTEGRATED OVER 24 HOURS|J m-2|-4|0|15|J m-2|-4|5 +014023|diffuseSolarRadiationIntegratedOverPeriodSpecified|long|DIFFUSE SOLAR RADIATION, INTEGRATED OVER PERIOD SPECIFIED|J m-2|-4|0|15|J m-2|-4|5 +014024|directSolarRadiationIntegratedOver24Hours|long|DIRECT SOLAR RADIATION, INTEGRATED OVER 24 HOURS|J m-2|-4|0|15|J m-2|-4|5 +014025|directSolarRadiationIntegratedOverPeriodSpecified|long|DIRECT SOLAR RADIATION, INTEGRATED OVER PERIOD SPECIFIED|J m-2|-4|0|15|J m-2|-4|5 +014026|cloudTopAlbedo|long|ALBEDO AT THE TOP OF CLOUDS|%|0|0|7|%|0|3 +014027|albedo|long|ALBEDO|%|0|0|7|%|0|3 +014028|globalSolarRadiationIntegratedOverPeriodSpecified|long|GLOBAL SOLAR RADIATION (HIGH ACCURACY), INTEGRATED OVER PERIOD SPECIFIED|J m-2|-2|0|20|J m-2|-2|6 +014029|diffuseSolarRadiationIntegratedOverPeriodSpecified|long|DIFFUSE SOLAR RADIATION (HIGH ACCURACY), INTEGRATED OVER PERIOD SPECIFIED|J m-2|-2|0|20|J m-2|-2|6 +014030|directSolarRadiationIntegratedOverPeriodSpecified|long|DIRECT SOLAR RADIATION (HIGH ACCURACY), INTEGRATED OVER PERIOD SPECIFIED|J m-2|-2|0|20|J m-2|-2|6 +014031|totalSunshine|long|TOTAL SUNSHINE|min|0|0|11|min|0|4 +014032|totalSunshine|long|TOTAL SUNSHINE|h|0|0|10|h|0|4 +014033|totalSunshine|long|TOTAL SUNSHINE|%|0|0|9|%|0|3 +014034|sunshineOverPeriodSpecified|long|SUNSHINE OVER PERIOD SPECIFIED|min|0|0|11|min|0|4 +014035|solarRadiationFlux|double|SOLAR RADIATION FLUX|W m-2|1|0|14|W m-2|1|5 +014042|bidirectionalReflectance|long|BIDIRECTIONAL REFLECTANCE|%|0|0|7|%|0|3 +014043|channelRadiance|double|CHANNEL RADIANCE|W m-2 sr-1 um-1|4|0|23|W m-2 sr-1 um-1|4|7 +014044|channelRadiance|double|CHANNEL RADIANCE|W m-2 sr-1 cm|7|-100000|22|W m-2 sr-1 cm|7|7 +014045|channelRadiance|long|CHANNEL RADIANCE|W m-2 sr-1 cm|0|0|11|W m-2 sr-1 cm|0|4 +014046|scaledRadiance|long|SCALED RADIANCE|W m-2 sr-1 m|0|-5000|16|W m-2 sr-1 m|0|5 +014047|scaledMeanAvhrrRadiance|long|SCALED MEAN AVHRR RADIANCE|W m-2 sr-1 m|0|0|31|W m-2 sr-1 m|0|10 +014048|scaledStandardDeviationAvhrrRadiance|long|SCALED STANDARD DEVIATION AVHRR RADIANCE|W m-2 sr-1 m|0|0|31|W m-2 sr-1 m|0|10 +014049|noiseEquivalentDeltaRadiance|double|NOISE EQUIVALENT DELTA RADIANCE|W m-2 sr-1 cm|7|0|22|W m-2 sr-1 cm|0|0 +014050|emissivity|double|EMISSIVITY|%|1|0|10|%|1|4 +014051|directSolarRadiationIntegratedOverLastHour|long|DIRECT SOLAR RADIATION INTEGRATED OVER LAST HOUR|J m-2|-3|0|14|J m-2|-3|4 +014052|globalUpwardSolarRadiationIntegratedOverPeriodSpecified|long|GLOBAL UPWARD SOLAR RADIATION, INTEGRATED OVER PERIOD SPECIFIED|J m-2|-2|-1048574|20|J m-2|-2|7 +014053|netRadiationIntegratedOverPeriodSpecified|long|NET RADIATION (HIGH ACCURACY), INTEGRATED OVER PERIOD SPECIFIED|J m-2|-2|-1048574|21|J m-2|-2|7 +014054|photosyntheticallyActiveRadiationIntegratedOverPeriodSpecified|long|PHOTOSYNTHETICALLY ACTIVE RADIATION, INTEGRATED OVER PERIOD SPECIFIED|J m-2|-3|0|16|J m-2|-3|5 +014055|solarActivityIndex|long|SOLAR ACTIVITY INDEX|Numeric|0|-32768|16|Numeric|0|5 +014056|backgroundLuminance|long|BACKGROUND LUMINANCE|cd m-2|0|0|18|cd m-2|0|6 +014057|soilHeatFlux|long|SOIL HEAT FLUX|J m-2|-2|-1048574|21|J m-2|-2|7 +014058|correctedCrossPoleBackscatter|double|CORRECTED CROSS-POLE BACKSCATTER|dB|2|-5000|13|dB|2|5 +014072|globalUvIrradiation|long|GLOBAL UV IRRADIATION|J m-2|0|-4000000|23|J m-2|0|7 +015001|totalOzone|long|TOTAL OZONE|DU|0|0|10|DU|0|4 +015002|airMassSlantPathAt22Km|long|AIR MASS (SLANT PATH AT 22 KM)|Numeric|2|0|10|Numeric|2|3 +015003|measuredOzonePartialPressureSounding|double|MEASURED OZONE PARTIAL PRESSURE (SOUNDING)|Pa|4|0|9|nbar|0|3 +015004|ozoneSoundingCorrectionFactor|long|OZONE SOUNDING CORRECTION FACTOR (CF)|Numeric|3|0|11|Numeric|3|4 +015005|ozoneP|long|OZONE P|DU|0|0|10|DU|0|3 +015006|log10OfNumberDensityOfAtmosphere|double|LOG10 OF NUMBER DENSITY OF ATMOSPHERE|log (m-3)|5|1800000|20|log (m-3)|5|7 +015007|estimatedAmountOfChemicalConstituent|double|ESTIMATED AMOUNT OF CHEMICAL CONSTITUENT|DU|2|0|16|DU|2|6 +015008|significandOfVolumetricMixingRatio|long|SIGNIFICAND OF VOLUMETRIC MIXING RATIO|Numeric|0|0|10|Numeric|0|4 +015009|log10OfNumberDensityOfOzone|double|LOG10 OF NUMBER DENSITY OF OZONE|log (m-3)|5|1200000|20|log (m-3)|5|7 +015011|log10IntegratedElectronDensity|double|LOG10 OF INTEGRATED ELECTRON DENSITY|log (m-2)|3|14000|13|log (m-2)|3|4 +015012|totalElectronCountPerSquareMetre|long|TOTAL ELECTRON COUNT PER SQUARE METRE|m-2|-16|0|6|m-2|-16|2 +015015|maxImageSpectralComponentBeforeNormalization|long|MAXIMUM IMAGE SPECTRAL COMPONENT BEFORE NORMALIZATION|Numeric|0|0|31|Numeric|0|10 +015020|integratedOzoneDensity|double|INTEGRATED OZONE DENSITY|kg m-2|8|0|21|kg m-2|8|7 +015021|integratedMassDensity|double|INTEGRATED MASS DENSITY|kg m-2|11|0|31|kg m-2|11|10 +015022|extendedIntegratedMassDensity|double|EXTENDED INTEGRATED MASS DENSITY|kg m-2|1|-100000000|31|kg m-2|1|10 +015024|opticalDepth|long|OPTICAL DEPTH|Numeric|4|0|24|Numeric|4|8 +015025|pollutantType|table|TYPE OF POLLUTANT|CODE TABLE|0|0|4|CODE TABLE|0|2 +015026|moleFractionOfPollutant|double|CONCENTRATION OF POLLUTANT (MOL MOL-1)|mol/mol|9|0|9|mol/mol|9|3 +015027|massConcentrationOfPollutant|double|CONCENTRATION OF POLLUTANT (KG M-3)|kg m-3|9|0|10|kg m-3|9|4 +015028|moleFractionOfAtmosphericConstituentOrPollutantInDryAir|double|MOLE FRACTION OF ATMOSPHERIC CONSTITUENT/POLLUTANT IN DRY AIR|0/00|5|0|16|0/00|5|5 +015029|extinctionCoefficient|double|EXTINCTION COEFFICIENT|/m|9|0|30|/m|9|10 +015030|aerosolContaminationIndex|long|AEROSOL CONTAMINATION INDEX|Numeric|2|-1000|12|Numeric|2|4 +015031|atmosphericPathDelayInSatelliteSignal|double|ATMOSPHERIC PATH DELAY IN SATELLITE SIGNAL|m|4|10000|15|m|4|5 +015032|estimatedErrorInAtmosphericPathDelay|double|ESTIMATED ERROR IN ATMOSPHERIC PATH DELAY|m|4|0|10|m|4|4 +015033|differenceInPathDelaysForLimbViewsAtExtremesOfScan|double|DIFFERENCE IN PATH DELAYS FOR LIMB VIEWS AT EXTREMES OF SCAN|m|5|-10000|15|m|5|5 +015034|estimatedErrorInPathDelayDifference|double|ESTIMATED ERROR IN PATH DELAY DIFFERENCE|m|5|0|14|m|5|5 +015035|componentOfZenithPathDelayDueToWaterVapour|double|COMPONENT OF ZENITH PATH DELAY DUE TO WATER VAPOUR|m|4|0|14|m|4|5 +015036|atmosphericRefractivity|double|ATMOSPHERIC REFRACTIVITY|N units|3|0|19|N units|3|6 +015037|bendingAngle|double|BENDING ANGLE|rad|8|-100000|23|rad|8|7 +015038|pathDelayDueToNeutralAtmosphere|double|PATH DELAY DUE TO NEUTRAL ATMOSPHERE|m|4|0|20|m|4|11 +015039|estimatedErrorInNeutralAtmospherePathDelay|double|ESTIMATED ERROR IN NEUTRAL ATMOSPHERE PATH DELAY|m|4|0|14|m|4|9 +015041|sulphurDioxideIndex|long|SULPHUR DIOXIDE INDEX|Numeric|2|-1200|14|Numeric|2|4 +015042|reflectance|double|REFLECTANCE|%|2|0|14|%|2|5 +015043|numberOfAveragingKernelLayers|long|NUMBER OF AVERAGING KERNEL LAYERS|Numeric|0|0|10|Numeric|0|0 +015044|averagingKernelValue|long|AVERAGING KERNEL VALUE|Numeric|6|-5000000|31|Numeric|0|0 +015045|sulphurDioxide|double|SULPHUR DIOXIDE|DU|2|-2000|15|DU|2|5 +015046|volcanoContaminationIndex|long|VOLCANO CONTAMINATION INDEX|Numeric|2|-1000|11|Numeric|2|4 +015049|aerosolAngstromWavelengthExponent|long|AEROSOL ANGSTROM WAVELENGTH EXPONENT|Numeric|3|-2000|14|Numeric|3|5 +015051|meteorologicalOpticalRange|long|METEOROLOGICAL OPTICAL RANGE|m|0|0|18|m|0|6 +015052|log10OfNumberDensityOfAerosolParticlesWithDiameterGreaterThan5Nm|double|LOG10 OF NUMBER DENSITY OF AEROSOL PARTICLES WITH DIAMETER GREATER THAN 5 NM|log (m-3)|1|60|6|log (m-3)|1|3 +015053|log10OfNumberDensityOfAerosolParticlesWithDiameterGreaterThan14Nm|double|LOG10 OF NUMBER DENSITY OF AEROSOL PARTICLES WITH DIAMETER GREATER THAN 14 NM|log (m-3)|2|600|9|log (m-3)|2|4 +015054|log10OfNumberDensityOfAerosolParticlesWithDiameterBetween0p25And2p5|double|LOG10 OF NUMBER DENSITY OF AEROSOL PARTICLES WITH DIAMETER BETWEEN 0.25 AND 2.5 UM|log (m-3)|2|550|9|log (m-3)|2|4 +015055|nonVolatileAerosolRatio|long|NON VOLATILE AEROSOL RATIO|Numeric|2|0|7|Numeric|2|3 +015062|aerosolOpticalThickness|long|AEROSOL OPTICAL THICKNESS|Numeric|3|-1000|14|Numeric|3|5 +015063|attenuatedBackscatter|double|ATTENUATED BACKSCATTER|m-1 sr-1|8|0|20|m-1 sr-1|8|7 +015064|uncertaintyInAttenuatedBackscatter|double|UNCERTAINTY IN ATTENUATED BACKSCATTER|m-1 sr-1|8|0|20|m-1 sr-1|8|7 +015065|particleBackscatterCoefficient|double|PARTICLE BACKSCATTER COEFFICIENT|m-1 sr-1|8|0|20|m-1 sr-1|8|7 +015066|uncertaintyInParticleBackscatterCoefficient|double|UNCERTAINTY IN PARTICLE BACKSCATTER COEFFICIENT|m-1 sr-1|8|0|20|m-1 sr-1|8|7 +015067|particleExtinctionCoefficient|double|PARTICLE EXTINCTION COEFFICIENT|/m|8|0|20|/m|8|7 +015068|uncertaintyInParticleExtinctionCoefficient|double|UNCERTAINTY IN PARTICLE EXTINCTION COEFFICIENT|/m|8|0|20|/m|8|7 +015069|particleLidarRatio|double|PARTICLE LIDAR RATIO|sr|2|0|14|sr|2|5 +015070|uncertaintyInLidarRatio|double|UNCERTAINTY IN LIDAR RATIO|sr|2|0|14|sr|2|5 +015071|particleDepolarizationRatio|double|PARTICLE DEPOLARIZATION RATIO|%|2|0|14|%|2|5 +015072|uncertaintyInDepolarizationRatio|double|UNCERTAINTY IN DEPOLARIZATION RATIO|%|2|0|14|%|2|5 +015073|attenuatedBackscatter1|double|ATTENUATED BACKSCATTER|m-1 sr-1|8|-524288|20|m-1 sr-1|8|7 +015074|particleBackscatterCoefficient1|double|PARTICLE BACKSCATTER COEFFICIENT|m-1 sr-1|8|-524288|20|m-1 sr-1|8|7 +015075|particleExtinctionCoefficient1|double|PARTICLE EXTINCTION COEFFICIENT|m|8|-524288|20|/m|8|7 +015076|particleLidarRatio1|double|PARTICLE LIDAR RATIO|sr|1|-2048|13|sr|1|5 +015077|uncertaintyInLidarRatio1|double|UNCERTAINTY IN LIDAR RATIO|sr|1|0|12|sr|1|5 +015078|particleDepolarizationRatio1|double|PARTICLE DEPOLARIZATION RATIO|%|2|-8192|15|%|2|5 +015079|zenithPathDelayDueToNeutralAtmosphere|double|ZENITH PATH DELAY DUE TO NEUTRAL ATMOSPHERE|m|4|0|15|m|4|9 +015080|estimatedErrorInNeutralAtmosphereZenithPathDelay|double|ESTIMATED ERROR IN NEUTRAL ATMOSPHERE ZENITH PATH DELAY|m|4|0|12|m|4|8 +015081|wetPathDelayDueToNeutralAtmosphere|double|WET PATH DELAY DUE TO NEUTRAL ATMOSPHERE|m|4|0|18|m|4|10 +015082|pathIntegratedWaterVapour|double|PATH INTEGRATED WATER VAPOUR|kg m-2|1|0|16|kg m-2|1|10 +015083|gnssDerivedNeutralAtmosphereGradient|double|GNSS DERIVED NEUTRAL ATMOSPHERE GRADIENT|m|5|-8192|14|m|5|9 +015084|gnssLeastSquaresResidual|double|GNSS LEAST SQUARES RESIDUAL|m|4|0|14|m|4|9 +015085|gnssMultiPathDelay|double|GNSS MULTI-PATH DELAY|m|4|0|14|m|4|9 +015086|gnssHydrostaticMappingFunction|long|GNSS HYDROSTATIC MAPPING FUNCTION|Numeric|3|0|16|Numeric|3|10 +015087|gnssWetMappingFunction|long|GNSS WET MAPPING FUNCTION|Numeric|3|0|16|Numeric|3|10 +015088|gnssGradientMappingFunction|long|GNSS GRADIENT MAPPING FUNCTION|Numeric|3|0|16|Numeric|3|10 +015089|zenithPathDelayDueToNeutralHydrostaticAtmosphere|double|ZENITH PATH DELAY DUE TO NEUTRAL HYDROSTATIC ATMOSPHERE|m|4|0|15|m|4|9 +015090|pathDelayDueToNeutralHydrostaticAtmosphere|double|PATH DELAY DUE TO NEUTRAL HYDROSTATIC ATMOSPHERE|m|4|0|20|m|4|11 +019001|synopticFeatureType|table|TYPE OF SYNOPTIC FEATURE|CODE TABLE|0|0|6|CODE TABLE|0|2 +019002|effectiveRadiusOfFeature|long|EFFECTIVE RADIUS OF FEATURE|m|-2|0|12|m|-2|4 +019003|windSpeedThreshold|long|WIND SPEED THRESHOLD|m/s|0|0|8|m/s|0|3 +019004|effectiveRadiusWithRespectToWindSpeedsAboveThreshold|long|EFFECTIVE RADIUS WITH RESPECT TO WIND SPEEDS ABOVE THRESHOLD|m|-2|0|12|m|-2|4 +019005|featureDirectionOfMotion|long|DIRECTION OF MOTION OF FEATURE|deg|0|0|9|deg|0|3 +019006|speedOfMotionOfFeature|double|SPEED OF MOTION OF FEATURE|m/s|2|0|14|m/s|2|5 +019007|effectiveRadiusOfFeature|long|EFFECTIVE RADIUS OF FEATURE|m|-3|0|12|m|-3|4 +019008|verticalExtentOfCirculation|table|VERTICAL EXTENT OF CIRCULATION|CODE TABLE|0|0|3|CODE TABLE|0|1 +019009|effectiveRadiusWithRespectToWindSpeedsAboveThresholdLargeStorms|long|EFFECTIVE RADIUS WITH RESPECT TO WIND SPEEDS ABOVE THRESHOLD (LARGE STORMS)|m|-3|0|12|m|-3|4 +019010|methodForTrackingCentreOfSynopticFeature|table|METHOD FOR TRACKING THE CENTRE OF SYNOPTIC FEATURE|CODE TABLE|0|0|4|CODE TABLE|0|2 +019100|timeIntervalToCalculateMovementOfTropicalCyclone|table|TIME INTERVAL TO CALCULATE THE MOVEMENT OF THE TROPICAL CYCLONE|CODE TABLE|0|0|4|CODE TABLE|0|2 +019101|accuracyOfPositionOfCentreOfTropicalCyclone|table|ACCURACY OF THE POSITION OF THE CENTRE OF THE TROPICAL CYCLONE|CODE TABLE|0|0|4|CODE TABLE|0|2 +019102|shapeAndDefinitionOfEyeOfTropicalCyclone|table|SHAPE AND DEFINITION OF THE EYE OF THE TROPICAL CYCLONE|CODE TABLE|0|0|3|CODE TABLE|0|1 +019103|diameterOfMajorAxisOfEyeOfTropicalCyclone|table|DIAMETER OF MAJOR AXIS OF THE EYE OF THE TROPICAL CYCLONE|CODE TABLE|0|0|4|CODE TABLE|0|2 +019104|changeInCharacterOfEyeDuring30Minutes|table|CHANGE IN CHARACTER OF THE EYE DURING THE 30 MINUTES|CODE TABLE|0|0|4|CODE TABLE|0|2 +019105|distanceBetweenEndOfSpiralBandAndCentre|table|DISTANCE BETWEEN THE END OF SPIRAL BAND AND THE CENTRE|CODE TABLE|0|0|4|CODE TABLE|0|2 +019106|identificationNumberOfTropicalCyclone|long|IDENTIFICATION NUMBER OF TROPICAL CYCLONE|Numeric|0|0|7|Numeric|0|3 +019107|timeIntervalOverWhichMovementOfTropicalCycloneHasBeenCalculated|table|TIME INTERVAL OVER WHICH THE MOVEMENT OF THE TROPICAL CYCLONE HAS BEEN CALCULATED|CODE TABLE|0|0|4|CODE TABLE|0|2 +019108|accuracyOfGeographicalPositionOfTropicalCyclone|table|ACCURACY OF GEOGRAPHICAL POSITION OF THE TROPICAL CYCLONE|CODE TABLE|0|0|3|CODE TABLE|0|1 +019109|meanDiameterOfOvercastCloudOfTropicalCyclone|table|MEAN DIAMETER OF THE OVERCAST CLOUD OF THE TROPICAL CYCLONE|CODE TABLE|0|0|4|CODE TABLE|0|2 +019110|apparent24HourChangeInIntensityOfTropicalCyclone|table|APPARENT 24-HOUR CHANGE IN INTENSITY OF THE TROPICAL CYCLONE|CODE TABLE|0|0|4|CODE TABLE|0|2 +019111|currentIntensityNumberOfTropicalCyclone|long|CURRENT INTENSITY (CI) NUMBER OF THE TROPICAL CYCLONE|Numeric|1|0|7|Numeric|1|3 +019112|dataTropicalNumberOfTropicalCyclone|long|DATA TROPICAL (DT) NUMBER OF THE TROPICAL CYCLONE|Numeric|1|0|7|Numeric|1|3 +019113|cloudPatternTypeOfDtNumber|table|CLOUD PATTERN TYPE OF THE DT-NUMBER|CODE TABLE|0|0|4|CODE TABLE|0|2 +019114|modelExpectedTropicalNumberOfTropicalCyclone|long|MODEL EXPECTED TROPICAL (MET) NUMBER OF THE TROPICAL CYCLONE|Numeric|1|0|7|Numeric|1|3 +019115|trendOfPast24HourChangeDevelopedWeakened|long|TREND OF THE PAST 24-HOUR CHANGE (+: DEVELOPED, -: WEAKENED)|Numeric|1|-30|6|Numeric|1|2 +019116|patternTropicalNumberOfTropicalCyclone|long|PATTERN TROPICAL (PT) NUMBER OF THE TROPICAL CYCLONE|Numeric|1|0|7|Numeric|1|3 +019117|cloudPictureTypeOfPtNumber|table|CLOUD PICTURE TYPE OF THE PT-NUMBER|CODE TABLE|0|0|3|CODE TABLE|0|1 +019118|finalTropicalNumberOfTropicalCyclone|long|FINAL TROPICAL (T) NUMBER OF THE TROPICAL CYCLONE|Numeric|1|0|7|Numeric|1|3 +019119|finalTNumberType|table|TYPE OF THE FINAL T-NUMBER|CODE TABLE|0|0|3|CODE TABLE|0|1 +019150|typhoonInternationalCommonNumberTyphoonCommittee|string|TYPHOON INTERNATIONAL COMMON NUMBER (TYPHOON COMMITTEE)|CCITT IA5|0|0|32|Character|0|4 +020001|horizontalVisibility|long|HORIZONTAL VISIBILITY|m|-1|0|13|m|-1|4 +020002|verticalVisibility|long|VERTICAL VISIBILITY|m|-1|0|7|m|-1|3 +020003|presentWeather|table|PRESENT WEATHER|CODE TABLE|0|0|9|CODE TABLE|0|3 +020004|pastWeather1|table|PAST WEATHER (1)|CODE TABLE|0|0|5|CODE TABLE|0|2 +020005|pastWeather2|table|PAST WEATHER (2)|CODE TABLE|0|0|5|CODE TABLE|0|2 +020006|flightRules|table|FLIGHT RULES|CODE TABLE|0|0|3|CODE TABLE|0|1 +020008|cloudDistributionForAviation|table|CLOUD DISTRIBUTION FOR AVIATION|CODE TABLE|0|0|5|CODE TABLE|0|2 +020009|generalWeatherIndicatorTafOrMetar|table|GENERAL WEATHER INDICATOR (TAF/METAR)|CODE TABLE|0|0|4|CODE TABLE|0|2 +020010|cloudCoverTotal|long|CLOUD COVER (TOTAL)|%|0|0|7|%|0|3 +020011|cloudAmount|table|CLOUD AMOUNT|CODE TABLE|0|0|4|CODE TABLE|0|2 +020012|cloudType|table|CLOUD TYPE|CODE TABLE|0|0|6|CODE TABLE|0|2 +020013|heightOfBaseOfCloud|long|HEIGHT OF BASE OF CLOUD|m|-1|-40|11|m|-1|4 +020014|heightOfTopOfCloud|long|HEIGHT OF TOP OF CLOUD|m|-1|-40|11|m|-1|4 +020015|pressureAtBaseOfCloud|long|PRESSURE AT BASE OF CLOUD|Pa|-1|0|14|Pa|-1|5 +020016|pressureAtTopOfCloud|long|PRESSURE AT TOP OF CLOUD|Pa|-1|0|14|Pa|-1|5 +020017|cloudTopDescription|table|CLOUD TOP DESCRIPTION|CODE TABLE|0|0|4|CODE TABLE|0|2 +020018|tendencyOfRunwayVisualRange|table|TENDENCY OF RUNWAY VISUAL RANGE|CODE TABLE|0|0|2|CODE TABLE|0|1 +020019|significantWeather|string|SIGNIFICANT PRESENT OR FORECAST WEATHER|CCITT IA5|0|0|72|Character|0|9 +020020|significantRecentWeatherPhenomena|string|SIGNIFICANT RECENT WEATHER PHENOMENA|CCITT IA5|0|0|32|Character|0|4 +020021|precipitationType|flag|TYPE OF PRECIPITATION|FLAG TABLE|0|0|30|FLAG TABLE|0|10 +020022|characterOfPrecipitation|table|CHARACTER OF PRECIPITATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +020023|otherWeatherPhenomena|flag|OTHER WEATHER PHENOMENA|FLAG TABLE|0|0|18|FLAG TABLE|0|6 +020024|intensityOfPhenomena|table|INTENSITY OF PHENOMENA|CODE TABLE|0|0|3|CODE TABLE|0|1 +020025|obscuration|flag|OBSCURATION|FLAG TABLE|0|0|21|FLAG TABLE|0|7 +020026|characterOfObscuration|table|CHARACTER OF OBSCURATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +020027|phenomenaOccurrence|flag|PHENOMENA OCCURRENCE|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +020028|expectedChangeInIntensity|table|EXPECTED CHANGE IN INTENSITY|CODE TABLE|0|0|3|CODE TABLE|0|1 +020029|rainFlag|table|RAIN FLAG|CODE TABLE|0|0|2|CODE TABLE|0|1 +020031|iceDepositThickness|double|ICE DEPOSIT (THICKNESS)|m|2|0|7|m|2|3 +020032|rateOfIceAccretionEstimated|table|RATE OF ICE ACCRETION (ESTIMATED)|CODE TABLE|0|0|3|CODE TABLE|0|1 +020033|causeOfIceAccretion|flag|CAUSE OF ICE ACCRETION|FLAG TABLE|0|0|4|FLAG TABLE|0|2 +020034|seaIceConcentration|table|SEA ICE CONCENTRATION|CODE TABLE|0|0|5|CODE TABLE|0|2 +020035|amountAndTypeOfIce|table|AMOUNT AND TYPE OF ICE|CODE TABLE|0|0|4|CODE TABLE|0|2 +020036|iceSituation|table|ICE SITUATION|CODE TABLE|0|0|5|CODE TABLE|0|2 +020037|iceDevelopment|table|ICE DEVELOPMENT|CODE TABLE|0|0|5|CODE TABLE|0|2 +020038|iceEdgeBearing|long|BEARING OF ICE EDGE|deg|0|0|12|deg|0|3 +020039|iceDistance|long|ICE DISTANCE|m|-1|0|13|m|-1|4 +020040|evolutionOfDriftSnow|table|EVOLUTION OF DRIFT SNOW|CODE TABLE|0|0|4|CODE TABLE|0|2 +020041|airframeIcing|table|AIRFRAME ICING|CODE TABLE|0|0|4|CODE TABLE|0|2 +020042|airframeIcingPresent|table|AIRFRAME ICING PRESENT|CODE TABLE|0|0|2|CODE TABLE|0|1 +020043|peakLiquidWaterContent|double|PEAK LIQUID WATER CONTENT|kg m-3|4|0|7|kg m-3|4|2 +020044|averageLiquidWaterContent|double|AVERAGE LIQUID WATER CONTENT|kg m-3|4|0|7|kg m-3|4|2 +020045|supercooledLargeDropletConditions|table|SUPERCOOLED LARGE DROPLET (SLD) CONDITIONS|CODE TABLE|0|0|2|CODE TABLE|0|1 +020048|evolutionOfFeature|table|EVOLUTION OF FEATURE|CODE TABLE|0|0|4|CODE TABLE|0|2 +020050|cloudIndex|table|CLOUD INDEX|CODE TABLE|0|0|8|CODE TABLE|0|3 +020051|amountOfLowClouds|long|AMOUNT OF LOW CLOUDS|%|0|0|7|%|0|3 +020052|amountOfMiddleClouds|long|AMOUNT OF MIDDLE CLOUDS|%|0|0|7|%|0|3 +020053|amountOfHighClouds|long|AMOUNT OF HIGH CLOUDS|%|0|0|7|%|0|3 +020054|trueDirectionFromWhichAPhenomenonOrCloudsAreMovingOrInWhichTheyAreObserved|long|TRUE DIRECTION FROM WHICH A PHENOMENON OR CLOUDS ARE MOVING OR IN WHICH THEY ARE OBSERVED|deg|0|0|9|deg|0|3 +020055|stateOfSkyInTropics|table|STATE OF SKY IN THE TROPICS|CODE TABLE|0|0|4|CODE TABLE|0|2 +020056|cloudPhase|table|CLOUD PHASE|CODE TABLE|0|0|3|CODE TABLE|0|1 +020058|visibilitySeawardsFromACoastalStation|long|VISIBILITY SEAWARDS FROM A COASTAL STATION|m|-1|0|13|m|-1|4 +020059|minimumHorizontalVisibility|long|MINIMUM HORIZONTAL VISIBILITY|m|-1|0|9|m|-1|3 +020060|prevailingHorizontalVisibility|long|PREVAILING HORIZONTAL VISIBILITY|m|-1|0|10|m|-1|4 +020061|runwayVisualRangeRvr|long|RUNWAY VISUAL RANGE (RVR)|m|0|0|12|m|0|4 +020062|stateOfGround|table|STATE OF THE GROUND (WITH OR WITHOUT SNOW)|CODE TABLE|0|0|5|CODE TABLE|0|2 +020063|specialPhenomena|table|SPECIAL PHENOMENA|CODE TABLE|0|0|10|CODE TABLE|0|4 +020065|snowCover|long|SNOW COVER|%|0|0|7|%|0|3 +020066|maximumDiameterOfHailstones|double|MAXIMUM DIAMETER OF HAILSTONES|m|3|0|8|m|3|3 +020067|diameterOfDeposit|double|DIAMETER OF DEPOSIT|m|3|0|9|m|3|3 +020070|minimumNumberOfAtmospherics|long|MINIMUM NUMBER OF ATMOSPHERICS|Numeric|0|0|7|Numeric|0|3 +020071|accuracyOfFixAndRateOfAtmospherics|table|ACCURACY OF FIX AND RATE OF ATMOSPHERICS|CODE TABLE|0|0|4|CODE TABLE|0|2 +020079|snowOrIceCrystalsIndicator|table|SNOW OR ICE CRYSTALS INDICATOR|CODE TABLE|0|0|2|CODE TABLE|0|1 +020081|cloudAmountInSegment|long|CLOUD AMOUNT IN SEGMENT|%|0|0|7|%|0|3 +020082|amountSegmentCloudFree|long|AMOUNT SEGMENT CLOUD FREE|%|0|0|7|%|0|3 +020083|amountOfSegmentCoveredByScene|long|AMOUNT OF SEGMENT COVERED BY SCENE|%|0|0|7|%|0|3 +020085|generalConditionOfRunway|table|GENERAL CONDITION OF RUNWAY|CODE TABLE|0|0|4|CODE TABLE|0|1 +020086|runwayDeposits|table|RUNWAY DEPOSITS|CODE TABLE|0|0|4|CODE TABLE|0|1 +020087|runwayContamination|table|RUNWAY CONTAMINATION|CODE TABLE|0|0|4|CODE TABLE|0|1 +020088|depthOfRunwayDeposits|double|DEPTH OF RUNWAY DEPOSITS|m|3|0|12|m|0|4 +020089|runwayFrictionCoefficient|table|RUNWAY FRICTION COEFFICIENT|CODE TABLE|0|0|7|CODE TABLE|0|2 +020090|specialClouds|table|SPECIAL CLOUDS|CODE TABLE|0|0|4|CODE TABLE|0|2 +020091|verticalVisibility|long|VERTICAL VISIBILITY|ft|-2|0|10|ft|-2|3 +020092|heightOfBaseOfCloud|long|HEIGHT OF BASE OF CLOUD|ft|-2|0|10|ft|-2|3 +020093|heightOfInversion|long|HEIGHT OF INVERSION|m|-1|0|8|m|-1|3 +020095|iceProbability|long|ICE PROBABILITY|Numeric|3|0|10|Numeric|3|4 +020096|iceAgeAParameter|double|ICE AGE (A PARAMETER)|dB|2|-4096|13|dB|2|4 +020101|locustAcridianName|table|LOCUST (ACRIDIAN) NAME|CODE TABLE|0|0|4|CODE TABLE|0|2 +020102|locustMaturityColour|table|LOCUST (MATURITY) COLOUR|CODE TABLE|0|0|4|CODE TABLE|0|2 +020103|stageOfDevelopmentOfLocusts|table|STAGE OF DEVELOPMENT OF LOCUSTS|CODE TABLE|0|0|4|CODE TABLE|0|2 +020104|organizationStateOfSwarm|table|ORGANIZATION STATE OF SWARM OR BAND OF LOCUSTS|CODE TABLE|0|0|4|CODE TABLE|0|2 +020105|sizeOfSwarmOrBandOfLocustsAndDurationOfPassageOfSwarm|table|SIZE OF SWARM OR BAND OF LOCUSTS AND DURATION OF PASSAGE OF SWARM|CODE TABLE|0|0|4|CODE TABLE|0|2 +020106|locustPopulationDensity|table|LOCUST POPULATION DENSITY|CODE TABLE|0|0|4|CODE TABLE|0|2 +020107|directionOfMovementsOfLocustSwarm|table|DIRECTION OF MOVEMENTS OF LOCUST SWARM|CODE TABLE|0|0|4|CODE TABLE|0|2 +020108|extentOfVegetation|table|EXTENT OF VEGETATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +020111|xAxisErrorEllipseMajorComponent|long|X-AXIS ERROR ELLIPSE MAJOR COMPONENT|m|-1|0|17|m|-1|6 +020112|yAxisErrorEllipseMinorComponent|long|Y-AXIS ERROR ELLIPSE MINOR COMPONENT|m|-1|0|17|m|-1|6 +020113|zAxisErrorEllipseComponent|long|Z-AXIS ERROR ELLIPSE COMPONENT|m|-1|0|17|m|-1|6 +020114|angleOfXAxisInErrorEllipse|double|ANGLE OF X-AXIS IN ERROR ELLIPSE|deg|2|-18000|16|deg|2|5 +020115|angleOfZAxisInErrorEllipse|double|ANGLE OF Z-AXIS IN ERROR ELLIPSE|deg|2|-18000|16|deg|2|5 +020116|emissionHeightOfCloudStroke|long|EMISSION HEIGHT OF CLOUD STROKE|m|0|0|16|m|0|5 +020117|amplitudeOfLightningStrike|long|AMPLITUDE OF LIGHTNING STRIKE|A|-1|-32000|16|A|-1|5 +020118|lightningDetectionError|long|LIGHTNING DETECTION ERROR|m|0|0|19|m|0|6 +020119|lightningDischargePolarity|table|LIGHTNING DISCHARGE POLARITY|CODE TABLE|0|0|2|CODE TABLE|0|1 +020121|thresholdValueForPolarityDecision|double|THRESHOLD VALUE FOR POLARITY DECISION|V|3|0|16|V|3|5 +020122|thresholdValueForPolarityDecision|long|THRESHOLD VALUE FOR POLARITY DECISION|A|0|0|16|A|0|5 +020123|minimumDirectionThreshold|double|MINIMUM THRESHOLD FOR DETECTION|V/m|3|0|16|V/m|3|5 +020124|lightningStrokeOrFlash|table|LIGHTNING STROKE OR FLASH|CODE TABLE|0|0|2|CODE TABLE|0|1 +020126|lightningRateOfDischarge|long|LIGHTNING RATE OF DISCHARGE|/h|0|0|23|/h|0|7 +020127|lightningDistanceFromStation|long|LIGHTNING - DISTANCE FROM STATION|m|-3|0|8|m|-3|3 +020128|lightningDirectionFromStation|double|LIGHTNING - DIRECTION FROM STATION|deg|1|0|12|deg|1|4 +020129|lightningDensityStrokeFlashOrEvent|double|LIGHTNING DENSITY (STROKE, FLASH OR EVENT)|m-2|6|0|10|m-2|6|4 +020130|cloudHydrometeorConcentration|long|CLOUD HYDROMETEOR CONCENTRATION|Numeric|0|0|10|Numeric|0|3 +020131|effectiveRadiusOfCloudHydrometeors|double|EFFECTIVE RADIUS OF CLOUD HYDROMETEORS|m|5|0|6|m|5|2 +020132|cloudLiquidWaterContent|double|CLOUD LIQUID WATER CONTENT|kg m-3|5|0|11|kg m-3|5|4 +020133|hydrometeorRadius|double|HYDROMETEOR RADIUS|m|5|0|6|m|5|2 +020135|iceMassOnARod|double|ICE MASS (ON A ROD)|kg/m|1|0|10|kg/m|1|3 +020136|supplementaryCloudType|table|SUPPLEMENTARY CLOUD TYPE|CODE TABLE|0|0|9|CODE TABLE|0|3 +020137|evolutionOfClouds|table|EVOLUTION OF CLOUDS|CODE TABLE|0|0|4|CODE TABLE|0|2 +020138|roadSurfaceCondition|table|ROAD SURFACE CONDITION|CODE TABLE|0|0|4|CODE TABLE|0|2 +020139|finalCloudModelAssumption|table|FINAL CLOUD MODEL ASSUMPTION|CODE TABLE|0|0|4|CODE TABLE|0|2 +020140|lightningArea|long|LIGHTNING AREA|m2|0|0|30|m2|0|0 +020141|lightningEnergy|double|LIGHTNING ENERGY|J|19|0|30|J|0|0 +020142|lightningDetectionEfficiency|long|LIGHTNING DETECTION EFFICIENCY|%|0|0|7|%|0|0 +020143|liquidCloud|table|LIQUID CLOUD|CODE TABLE|0|0|2|CODE TABLE|0|1 +021001|horizontalReflectivity|long|HORIZONTAL REFLECTIVITY|dB|0|-64|7|dB|0|3 +021002|verticalReflectivity|long|VERTICAL REFLECTIVITY|dB|0|-64|7|dB|0|3 +021003|differentialReflectivity|double|DIFFERENTIAL REFLECTIVITY|dB|1|-5|7|dB|1|3 +021004|differentialReflectivity|double|DIFFERENTIAL REFLECTIVITY|dB|2|-800|11|dB|2|4 +021005|linearDepolarizationRatio|long|LINEAR DEPOLARIZATION RATIO|dB|0|-65|6|dB|0|2 +021006|circularDepolarizationRatio|long|CIRCULAR DEPOLARIZATION RATIO|dB|0|-65|6|dB|0|2 +021007|radarReflectivityFactor|double|RADAR REFLECTIVITY FACTOR|dB|2|-9000|15|dB|0|0 +021008|uncertaintyInRadarReflectivityFactor|double|UNCERTAINTY IN RADAR REFLECTIVITY FACTOR|dB|2|0|13|dB|0|0 +021009|verticalDopplerVelocity|double|VERTICAL DOPPLER VELOCITY|m/s|2|-10000|15|m/s|0|0 +021010|uncertaintyInVerticalDopplerVelocity|double|UNCERTAINTY IN VERTICAL DOPPLER VELOCITY|m/s|2|-10000|15|m/s|0|0 +021011|dopplerMeanVelocityXDirection|long|DOPPLER MEAN VELOCITY IN X-DIRECTION|m/s|0|-128|8|m/s|0|3 +021012|dopplerMeanVelocityYDirection|long|DOPPLER MEAN VELOCITY IN Y-DIRECTION|m/s|0|-128|8|m/s|0|3 +021013|dopplerMeanVelocityZDirection|long|DOPPLER MEAN VELOCITY IN Z-DIRECTION|m/s|0|-128|8|m/s|0|3 +021014|dopplerMeanVelocityRadial|double|DOPPLER MEAN VELOCITY (RADIAL)|m/s|1|-4096|13|m/s|1|4 +021017|dopplerVelocitySpectralWidth|double|DOPPLER VELOCITY SPECTRAL WIDTH|m/s|1|0|8|m/s|1|3 +021018|extendedNyquistVelocity|double|EXTENDED NYQUIST VELOCITY|m/s|1|0|10|m/s|1|4 +021019|highNyquistVelocity|double|HIGH NYQUIST VELOCITY|m/s|1|0|10|m/s|1|3 +021021|echoTops|long|ECHO TOPS|m|-3|0|4|m|-3|2 +021022|rangeBinOffset|double|RANGE BIN OFFSET|m|1|0|14|m|1|5 +021023|rangeBinSize|long|RANGE BIN SIZE|m|0|0|14|m|0|5 +021024|azimuthOffset|double|AZIMUTH OFFSET|deg|1|0|12|deg|1|4 +021025|azimuthalResolution|double|AZIMUTHAL RESOLUTION|deg|1|0|8|deg|1|3 +021026|ascatSigma0Usability|table|ASCAT SIGMA-0 USABILITY|CODE TABLE|0|0|3|CODE TABLE|0|1 +021027|landContributionRatio|long|LAND CONTRIBUTION RATIO|Numeric|4|0|14|Numeric|4|5 +021028|differentialPhase|double|DIFFERENTIAL PHASE|deg|1|0|12|deg|1|4 +021029|crossPolarizationCorrelationCoefficient|long|CROSS-POLARIZATION CORRELATION COEFFICIENT|Numeric|2|-100|8|Numeric|2|3 +021030|signalToNoiseRatio|long|SIGNAL TO NOISE RATIO|dB|0|-32|8|dB|0|3 +021031|verticallyIntegratedLiquidWaterContent|long|VERTICALLY INTEGRATED LIQUID-WATER CONTENT|kg m-2|0|0|7|kg m-2|0|3 +021036|radarRainfallIntensity|double|RADAR RAINFALL INTENSITY|m/s|7|0|12|m/s|7|4 +021041|brightBandHeight|long|BRIGHT-BAND HEIGHT|m|-2|0|8|m|-2|3 +021051|signalPowerAbove1Mw|long|SIGNAL POWER ABOVE 1 MW|dB|0|-256|8|dB|0|3 +021062|backscatter|double|BACKSCATTER|dB|2|-5000|13|dB|2|4 +021063|radiometricResolutionNoiseValue|double|RADIOMETRIC RESOLUTION (NOISE VALUE)|%|1|0|10|%|1|4 +021064|clutterNoiseEstimate|long|CLUTTER NOISE ESTIMATE|Numeric|0|0|8|Numeric|0|3 +021065|missingPacketCounter|long|MISSING PACKET COUNTER|Numeric|0|-127|8|Numeric|0|3 +021066|waveScatterometerProductConfidenceData|flag|WAVE SCATTEROMETER PRODUCT CONFIDENCE DATA|FLAG TABLE|0|0|12|FLAG TABLE|0|4 +021067|windProductConfidenceData|flag|WIND PRODUCT CONFIDENCE DATA|FLAG TABLE|0|0|13|FLAG TABLE|0|5 +021068|radarAltimeterProductConfidenceData|flag|RADAR ALTIMETER PRODUCT CONFIDENCE DATA|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +021069|sstProductConfidenceData|flag|SST PRODUCT CONFIDENCE DATA|FLAG TABLE|0|0|10|FLAG TABLE|0|4 +021070|sstProductConfidenceDataSadist2|flag|SST PRODUCT CONFIDENCE DATA (SADIST-2)|FLAG TABLE|0|0|23|FLAG TABLE|0|6 +021071|peakiness|long|PEAKINESS|Numeric|0|0|16|Numeric|0|5 +021072|satelliteAltimeterCalibrationStatus|flag|SATELLITE ALTIMETER CALIBRATION STATUS|FLAG TABLE|0|0|4|FLAG TABLE|0|2 +021073|satelliteAltimeterInstrumentMode|flag|SATELLITE ALTIMETER INSTRUMENT MODE|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +021075|imageSpectrumIntensity|long|IMAGE SPECTRUM INTENSITY|Numeric|0|0|8|Numeric|0|3 +021076|representationOfIntensities|table|REPRESENTATION OF INTENSITIES|CODE TABLE|0|0|3|CODE TABLE|0|1 +021077|altitudeCorrectionIonosphere|double|ALTITUDE CORRECTION (IONOSPHERE)|m|3|0|14|m|3|5 +021078|altitudeCorrectionDryTroposphere|double|ALTITUDE CORRECTION (DRY TROPOSPHERE)|m|3|0|9|m|3|3 +021079|altitudeCorrectionWetTroposphere|double|ALTITUDE CORRECTION (WET TROPOSPHERE)|m|3|2000|10|m|3|4 +021080|altitudeCorrectionCalibrationConstant|double|ALTITUDE CORRECTION (CALIBRATION CONSTANT)|m|3|0|11|m|3|4 +021081|openLoopCorrectionHeightTimeLoop|double|OPEN LOOP CORRECTION (HEIGHT-TIME LOOP)|m|3|0|10|m|3|4 +021082|openLoopCorrectionAutoGainControl|double|OPEN LOOP CORRECTION (AUTO GAIN CONTROL)|dB|3|-3000|14|dB|3|5 +021083|warmTargetCalibration|long|WARM TARGET CALIBRATION|Numeric|0|0|16|Numeric|0|5 +021084|coldTargetCalibration|long|COLD TARGET CALIBRATION|Numeric|0|0|16|Numeric|0|5 +021085|atsrSeaSurfaceTemperatureAcrossTrackBandNumber|long|ATSR SEA-SURFACE TEMPERATURE ACROSS-TRACK BAND NUMBER|Numeric|0|0|4|Numeric|0|2 +021086|numberOfPixelsInNadirOnlyAverage|long|NUMBER OF PIXELS IN NADIR ONLY, AVERAGE|Numeric|0|0|9|Numeric|0|3 +021087|numberOfPixelsInDualViewAverage|long|NUMBER OF PIXELS IN DUAL VIEW, AVERAGE|Numeric|0|0|9|Numeric|0|3 +021088|wetBackscatter|double|WET BACKSCATTER|dB|2|-5000|13|dB|2|4 +021091|radarSignalDopplerSpectrum0thMoment|long|RADAR SIGNAL DOPPLER SPECTRUM 0TH MOMENT|dB|0|-100|8|dB|0|3 +021092|rassSignalDopplerSpectrum0thMomentReferringToRassSignal|long|RASS SIGNAL DOPPLER SPECTRUM 0TH MOMENT, REFERRING TO RASS SIGNAL|dB|0|-100|8|dB|0|3 +021093|kuBandPeakiness|long|KU BAND PEAKINESS|Numeric|3|0|16|Numeric|3|5 +021094|sBandPeakiness|long|S BAND PEAKINESS|Numeric|3|0|16|Numeric|3|5 +021095|kpCoefficientA|long|KP COEFFICIENT A|Numeric|6|0|20|Numeric|6|7 +021096|kpCoefficientB|long|KP COEFFICIENT B|Numeric|6|0|20|Numeric|6|7 +021097|kpCoefficientC|long|KP COEFFICIENT C|Numeric|6|0|20|Numeric|6|7 +021101|numberOfVectorAmbiguities|long|NUMBER OF VECTOR AMBIGUITIES|Numeric|0|0|3|Numeric|0|1 +021102|indexOfSelectedWindVector|long|INDEX OF SELECTED WIND VECTOR|Numeric|0|0|3|Numeric|0|1 +021103|totalNumberOfSigma0Measurements|long|TOTAL NUMBER OF SIGMA-0 MEASUREMENTS|Numeric|0|0|5|Numeric|0|2 +021104|likelihoodComputedForSolution|long|LIKELIHOOD COMPUTED FOR SOLUTION|Numeric|3|-30000|15|Numeric|3|5 +021105|normalizedRadarCrossSection|double|NORMALIZED RADAR CROSS-SECTION|dB|2|-10000|14|dB|2|5 +021106|kpVarianceCoefficientAlpha|long|KP VARIANCE COEFFICIENT (ALPHA)|Numeric|3|0|14|Numeric|3|5 +021107|kpVarianceCoefficientBeta|long|KP VARIANCE COEFFICIENT (BETA)|Numeric|8|0|16|Numeric|8|5 +021109|seawindsWindVectorCellQuality|flag|SEAWINDS WIND VECTOR CELL QUALITY|FLAG TABLE|0|0|17|FLAG TABLE|0|6 +021110|numberOfInnerBeamSigma0ForwardOfSatellite|long|NUMBER OF INNER-BEAM SIGMA-0 (FORWARD OF SATELLITE)|Numeric|0|0|6|Numeric|0|2 +021111|numberOfOuterBeamSigma0ForwardOfSatellite|long|NUMBER OF OUTER-BEAM SIGMA-0 (FORWARD OF SATELLITE)|Numeric|0|0|6|Numeric|0|2 +021112|numberOfInnerBeamSigma0AftOfSatellite|long|NUMBER OF INNER-BEAM SIGMA-0 (AFT OF SATELLITE)|Numeric|0|0|6|Numeric|0|2 +021113|numberOfOuterBeamSigma0AftOfSatellite|long|NUMBER OF OUTER-BEAM SIGMA-0 (AFT OF SATELLITE)|Numeric|0|0|6|Numeric|0|2 +021114|kpVarianceCoefficientGamma|double|KP VARIANCE COEFFICIENT (GAMMA)|dB|3|-140000|18|dB|3|6 +021115|seawindsSigma0Quality|flag|SEAWINDS SIGMA-0 QUALITY|FLAG TABLE|0|0|17|FLAG TABLE|0|6 +021116|seawindsSigma0Mode|flag|SEAWINDS SIGMA-0 MODE|FLAG TABLE|0|0|17|FLAG TABLE|0|6 +021117|sigma0VarianceQualityControl|long|SIGMA-0 VARIANCE QUALITY CONTROL|Numeric|2|0|16|Numeric|2|5 +021118|attenuationCorrectionOnSigma0|double|ATTENUATION CORRECTION ON SIGMA-0|dB|2|-10000|14|dB|2|5 +021119|windScatterometerGeophysicalModelFunction|table|WIND SCATTEROMETER GEOPHYSICAL MODEL FUNCTION|CODE TABLE|0|0|6|CODE TABLE|0|2 +021120|probabilityOfRain|long|PROBABILITY OF RAIN|Numeric|3|0|10|Numeric|3|4 +021121|seawindsNofRainIndex|long|SEAWINDS NOF RAIN INDEX|Numeric|0|0|8|Numeric|0|3 +021122|attenuationCorrectionOnSigma0FromTb|double|ATTENUATION CORRECTION ON SIGMA-0 (FROM TB)|dB|2|-10000|14|dB|2|5 +021123|seawindsNormalizedRadarCrossSection|double|SEAWINDS NORMALIZED RADAR CROSS-SECTION|dB|2|-30000|15|dB|2|5 +021128|numberOfValidPointsPerSecondUsedToDerivePreviousParameters|long|NUMBER OF VALID POINTS PER SECOND USED TO DERIVE PREVIOUS PARAMETERS|Numeric|0|0|8|Numeric|0|3 +021130|spectrumTotalEnergy|long|SPECTRUM TOTAL ENERGY|Numeric|6|0|28|Numeric|6|9 +021131|spectrumMaxEnergy|long|SPECTRUM MAX ENERGY|Numeric|6|0|28|Numeric|6|9 +021132|directionOfSpectrumMaxOnHigherResolutionGrid|double|DIRECTION OF SPECTRUM MAX ON HIGHER RESOLUTION GRID|deg|3|0|19|deg|3|6 +021133|wavelengthOfSpectrumMaxOnHigherResolutionGrid|double|WAVELENGTH OF SPECTRUM MAX ON HIGHER RESOLUTION GRID|m|3|0|29|m|3|9 +021134|rangeResolutionOfCressCovarianceSpectrum|double|RANGE RESOLUTION OF CRESS COVARIANCE SPECTRUM|rad/m|3|0|19|rad/m|3|6 +021135|realPartOfCrossSpectraPolarGridNumberOfBins|long|REAL PART OF CROSS SPECTRA POLAR GRID NUMBER OF BINS|Numeric|3|-524288|20|Numeric|3|7 +021136|imaginaryPartOfCrossSpectraPolarGridNumberOfBins|long|IMAGINARY PART OF CROSS SPECTRA POLAR GRID NUMBER OF BINS|Numeric|3|-524288|20|Numeric|3|7 +021137|kuBandCorrectedOceanBackscatterCoefficient|double|KU BAND CORRECTED OCEAN BACKSCATTER COEFFICIENT|dB|2|-32768|16|dB|2|5 +021138|stdKuBandCorrectedOceanBackscatterCoefficient|double|STD KU BAND CORRECTED OCEAN BACKSCATTER COEFFICIENT|dB|2|-32768|16|dB|2|5 +021139|kuBandNetInstrumentalCorrectionForAgc|double|KU BAND NET INSTRUMENTAL CORRECTION FOR AGC|dB|2|-2048|12|dB|2|4 +021140|sBandCorrectedOceanBackscatterCoefficient|double|S BAND CORRECTED OCEAN BACKSCATTER COEFFICIENT|dB|2|-32768|16|dB|2|5 +021141|stdSBandCorrectedOceanBackscatterCoefficient|double|STD S BAND CORRECTED OCEAN BACKSCATTER COEFFICIENT|dB|2|-32768|16|dB|2|5 +021142|sBandNetInstrumentalCorrectionForAgc|double|S BAND NET INSTRUMENTAL CORRECTION FOR AGC|dB|2|-1024|11|dB|2|4 +021143|kuBandRainAttenuation|double|KU BAND RAIN ATTENUATION|dB|2|-1073741824|31|dB|2|10 +021144|altimeterRainFlag|flag|ALTIMETER RAIN FLAG|FLAG TABLE|0|0|2|FLAG TABLE|0|1 +021145|kuBandAutomaticGainControl|double|KU BAND AUTOMATIC GAIN CONTROL|dB|2|0|13|dB|2|4 +021146|rmsKuBandAutomaticGainControl|double|RMS KU BAND AUTOMATIC GAIN CONTROL|dB|2|0|8|dB|2|3 +021147|numberOfValidPointsForKuBandAutomaticGainControl|long|NUMBER OF VALID POINTS FOR KU BAND AUTOMATIC GAIN CONTROL|Numeric|0|0|5|Numeric|0|2 +021148|trailingEdgeVariationFlag|flag|TRAILING EDGE VARIATION FLAG|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +021150|beamCollocation|table|BEAM CO-LOCATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +021151|estimatedErrorInSigma0At40DegreesIncidenceAngle|double|ESTIMATED ERROR IN SIGMA-0 AT 40 DEGREES INCIDENCE ANGLE|dB|2|0|9|dB|2|3 +021152|slopeAt40DegreesIncidenceAngle|double|SLOPE AT 40 DEGREES INCIDENCE ANGLE|dB/deg|2|-80|7|dB/deg|2|2 +021153|estimatedErrorInSlopeAt40DegreesIncidenceAngle|double|ESTIMATED ERROR IN SLOPE AT 40 DEGREES INCIDENCE ANGLE|dB/deg|2|-40|6|dB/deg|2|2 +021154|soilMoistureSensitivity|double|SOIL MOISTURE SENSITIVITY|dB|2|0|12|dB|2|4 +021155|windVectorCellQuality|flag|WIND VECTOR CELL QUALITY|FLAG TABLE|0|0|24|FLAG TABLE|0|8 +021156|backscatterDistance|long|BACKSCATTER DISTANCE|Numeric|1|-4096|13|Numeric|1|4 +021157|lossPerUnitLengthOfAtmosphere|double|LOSS PER UNIT LENGTH OF ATMOSPHERE USED|dB/m|10|0|22|dB/m|10|7 +021158|ascatKpEstimateQuality|table|ASCAT KP ESTIMATE QUALITY|CODE TABLE|0|0|2|CODE TABLE|0|1 +021159|ascatSigma0Usability|table|ASCAT SIGMA-0 USABILITY|CODE TABLE|0|0|2|CODE TABLE|0|1 +021160|ascatUseOfSyntheticData|long|ASCAT USE OF SYNTHETIC DATA|Numeric|3|0|10|Numeric|3|4 +021161|ascatSyntheticDataQuantity|long|ASCAT SYNTHETIC DATA QUANTITY|Numeric|3|0|10|Numeric|3|4 +021162|ascatSatelliteOrbitAndAttitudeQuality|long|ASCAT SATELLITE ORBIT AND ATTITUDE QUALITY|Numeric|3|0|10|Numeric|3|4 +021163|ascatSolarArrayReflectionContamination|long|ASCAT SOLAR ARRAY REFLECTION CONTAMINATION|Numeric|3|0|10|Numeric|3|4 +021164|ascatTelemetryPresenceAndQuality|long|ASCAT TELEMETRY PRESENCE AND QUALITY|Numeric|3|0|10|Numeric|3|4 +021165|ascatExtrapolatedReferenceFunctionPresence|long|ASCAT EXTRAPOLATED REFERENCE FUNCTION PRESENCE|Numeric|3|0|10|Numeric|3|4 +021166|landFraction|long|LAND FRACTION|Numeric|3|0|10|Numeric|3|4 +021167|subsurfaceScatteringProbability|long|SUBSURFACE SCATTERING PROBABILITY|%|0|0|7|%|0|3 +021169|icePresenceIndicator|table|ICE PRESENCE INDICATOR|CODE TABLE|0|0|2|CODE TABLE|0|1 +021170|cBandCorrectedOceanBackscatterCoefficient|double|C BAND CORRECTED OCEAN BACKSCATTER COEFFICIENT|dB|2|-32768|16|dB|2|5 +021171|rmsCBandCorrectedOceanBackscatterCoefficient|double|RMS C BAND CORRECTED OCEAN BACKSCATTER COEFFICIENT|dB|2|-32768|16|dB|2|5 +021172|cBandNetInstrumentalCorrectionForAgc|double|C BAND NET INSTRUMENTAL CORRECTION FOR AGC|dB|2|-2048|12|dB|2|4 +021173|cBandAutomaticGainControl|double|C BAND AUTOMATIC GAIN CONTROL|dB|2|0|13|dB|2|4 +021174|rmsCBandAutomaticGainControl|double|RMS C BAND AUTOMATIC GAIN CONTROL|dB|2|0|9|dB|2|3 +021175|numberOfValidPointsForCBandAutomaticGainControl|long|NUMBER OF VALID POINTS FOR C BAND AUTOMATIC GAIN CONTROL|Numeric|0|0|10|Numeric|0|4 +021176|highFrequencyVariabilityCorrection|double|HIGH FREQUENCY VARIABILITY CORRECTION|m|3|0|16|m|3|5 +021177|correctedOcogBackscatterCoefficient|double|CORRECTED OCOG BACKSCATTER COEFFICIENT|dB|2|0|16|dB|2|5 +021178|stdOf20HzOcogBackscatterCoefficient|double|STD OF 20 HZ OCOG BACKSCATTER COEFFICIENT|dB|2|0|16|dB|2|5 +021179|numberOf20HzValidPointsForOcogBackscatterCoefficient|long|NUMBER OF 20 HZ VALID POINTS FOR OCOG BACKSCATTER COEFFICIENT|Numeric|0|0|16|Numeric|0|5 +021180|numberOf20HzValidPointsForOceanBackscatterCoefficient|long|NUMBER OF 20 HZ VALID POINTS FOR OCEAN BACKSCATTER COEFFICIENT|Numeric|0|0|8|Numeric|0|3 +021181|20HzOceanBackscatterCoefficient|double|20 HZ OCEAN BACKSCATTER COEFFICIENT|dB|2|0|16|dB|2|5 +021182|20HzKuBandPeakiness|long|20 HZ KU BAND PEAKINESS|Numeric|3|0|16|Numeric|3|5 +021183|specificBandCorrectedOceanBackscatterCoefficient|double|SPECIFIC BAND CORRECTED OCEAN BACKSCATTER COEFFICIENT|dB|2|-32768|16|dB|2|5 +021184|stdSpecificBandCorrectedOceanBackscatterCoefficient|double|STD SPECIFIC BAND CORRECTED OCEAN BACKSCATTER COEFFICIENT|dB|2|-32768|16|dB|2|5 +021185|specificBandNetInstrumentalCorrectionForAgc|double|SPECIFIC BAND NET INSTRUMENTAL CORRECTION FOR AGC|dB|2|-2048|12|dB|2|4 +021186|specificBandAutomaticGainControl|double|SPECIFIC BAND AUTOMATIC GAIN CONTROL|dB|2|0|13|dB|2|4 +021187|rmsSpecificBandAutomaticGainControl|double|RMS SPECIFIC BAND AUTOMATIC GAIN CONTROL|dB|2|0|8|dB|2|3 +021188|numberOfValidPointsForSpecificBandAutomaticGainControl|long|NUMBER OF VALID POINTS FOR SPECIFIC BAND AUTOMATIC GAIN CONTROL|Numeric|0|0|7|Numeric|0|3 +021189|correctedOcogBackscatterCoefficientNegativeReference|double|CORRECTED OCOG BACKSCATTER COEFFICIENT (NEGATIVE REFERENCE)|dB|2|-32768|16|dB|2|6 +022001|wavesDirection|long|DIRECTION OF WAVES|deg|0|0|9|deg|0|3 +022002|windWavesDirection|long|DIRECTION OF WIND WAVES|deg|0|0|9|deg|0|3 +022003|swellWavesDirection|long|DIRECTION OF SWELL WAVES|deg|0|0|9|deg|0|3 +022004|currentDirection|long|DIRECTION OF CURRENT|deg|0|0|9|deg|0|3 +022005|seaSurfaceCurrentDirection|long|DIRECTION OF SEA-SURFACE CURRENT|deg|0|0|9|deg|0|3 +022011|periodOfWaves|long|PERIOD OF WAVES|s|0|0|6|s|0|2 +022012|periodOfWindWaves|long|PERIOD OF WIND WAVES|s|0|0|6|s|0|2 +022013|periodOfSwellWaves|long|PERIOD OF SWELL WAVES|s|0|0|6|s|0|2 +022021|heightOfWaves|double|HEIGHT OF WAVES|m|1|0|10|m|1|4 +022022|heightOfWindWaves|double|HEIGHT OF WIND WAVES|m|1|0|10|m|1|4 +022023|heightOfSwellWaves|double|HEIGHT OF SWELL WAVES|m|1|0|10|m|1|4 +022025|standardDeviationWaveHeight|double|STANDARD DEVIATION WAVE HEIGHT|m|2|0|10|m|2|4 +022026|standardDeviationOfSignificantWaveHeight|double|STANDARD DEVIATION OF SIGNIFICANT WAVE HEIGHT|m|2|0|10|m|2|4 +022031|speedOfCurrent|double|SPEED OF CURRENT|m/s|2|0|13|m/s|2|4 +022032|speedOfSeaSurfaceCurrent|double|SPEED OF SEA-SURFACE CURRENT|m/s|2|0|13|m/s|2|4 +022035|tidalElevationWithRespectToLocalChartDatum|double|TIDAL ELEVATION WITH RESPECT TO LOCAL CHART DATUM|m|2|0|14|m|2|4 +022036|meteorologicalResidualTidalElevationSurgeOrOffset|double|METEOROLOGICAL RESIDUAL TIDAL ELEVATION (SURGE OR OFFSET)|m|2|0|14|m|2|4 +022037|tidalElevationWithRespectToNationalLandDatum|double|TIDAL ELEVATION WITH RESPECT TO NATIONAL LAND DATUM|m|3|-10000|15|m|3|5 +022038|tidalElevationWithRespectToLocalChartDatum|double|TIDAL ELEVATION WITH RESPECT TO LOCAL CHART DATUM|m|3|-10000|15|m|3|5 +022039|meteorologicalResidualTidalElevationSurgeOrOffset|double|METEOROLOGICAL RESIDUAL TIDAL ELEVATION (SURGE OR OFFSET)|m|3|-5000|13|m|3|4 +022040|meteorologicalResidualTidalElevationSurgeOrOffset|double|METEOROLOGICAL RESIDUAL TIDAL ELEVATION (SURGE OR OFFSET)|m|3|-5000|14|m|3|5 +022041|seaSurfaceTemperature15DayRunningMean|double|SEA-SURFACE TEMPERATURE (15-DAY RUNNING MEAN)|K|1|0|12|K|1|4 +022042|oceanographicWaterTemperature|double|SEA/WATER TEMPERATURE|K|1|0|12|K|1|4 +022043|oceanographicWaterTemperature|double|SEA/WATER TEMPERATURE|K|2|0|15|K|2|5 +022044|soundVelocity|double|SOUND VELOCITY|m/s|1|0|14|m/s|1|5 +022045|oceanographicWaterTemperature|double|SEA/WATER TEMPERATURE|K|3|0|19|K|3|6 +022046|seaIceFraction|long|SEA ICE FRACTION|Numeric|2|0|7|Numeric|2|3 +022049|seaSurfaceTemperature|double|SEA-SURFACE TEMPERATURE|K|2|0|15|K|2|5 +022050|standardDeviationSeaSurfaceTemperature|double|STANDARD DEVIATION SEA-SURFACE TEMPERATURE|K|2|0|8|K|2|3 +022055|floatCycleNumber|long|FLOAT CYCLE NUMBER|Numeric|0|0|10|Numeric|0|3 +022056|directionOfProfile|table|DIRECTION OF PROFILE|CODE TABLE|0|0|2|CODE TABLE|0|1 +022059|seaSurfaceSalinity|double|SEA-SURFACE SALINITY|0/00|2|0|14|0/00|2|5 +022060|lagrangianDrifterDrogueStatus|table|LAGRANGIAN DRIFTER DROGUE STATUS|CODE TABLE|0|0|3|CODE TABLE|0|1 +022061|seaState|table|STATE OF THE SEA|CODE TABLE|0|0|4|CODE TABLE|0|2 +022062|salinity|double|SALINITY|0/00|2|0|14|0/00|2|5 +022063|totalWaterDepth|long|TOTAL WATER DEPTH|m|0|0|14|m|0|5 +022064|salinity|double|SALINITY|0/00|3|0|17|0/00|3|6 +022065|oceanographicWaterPressure|long|WATER PRESSURE|Pa|-3|0|17|Pa|-3|6 +022066|oceanographicWaterConductivity|double|WATER CONDUCTIVITY|S/m|6|0|26|S/m|6|8 +022067|instrumentTypeForWaterTemperatureOrSalinityProfileMeasurement|table|INSTRUMENT TYPE FOR WATER TEMPERATURE/SALINITY PROFILE MEASUREMENT|CODE TABLE|0|0|10|CODE TABLE|0|4 +022068|waterTemperatureProfileRecorderTypes|table|WATER TEMPERATURE PROFILE RECORDER TYPES|CODE TABLE|0|0|7|CODE TABLE|0|3 +022069|spectralWaveDensity|double|SPECTRAL WAVE DENSITY|m2/Hz|3|0|22|m2/Hz|3|7 +022070|significantWaveHeight|double|SIGNIFICANT WAVE HEIGHT|m|2|0|13|m|2|4 +022071|spectralPeakWavePeriod|double|SPECTRAL PEAK WAVE PERIOD|s|1|0|9|s|1|3 +022072|spectralPeakWaveLength|long|SPECTRAL PEAK WAVELENGTH|m|0|0|13|m|0|4 +022073|maximumWaveHeight|double|MAXIMUM WAVE HEIGHT|m|2|0|13|m|2|4 +022074|averageWavePeriod|double|AVERAGE WAVE PERIOD|s|1|0|9|s|1|3 +022075|averageWaveLength|long|AVERAGE WAVELENGTH|m|0|0|13|m|0|4 +022076|directionFromWhichDominantWavesAreComing|long|DIRECTION FROM WHICH DOMINANT WAVES ARE COMING|deg|0|0|9|deg|0|3 +022077|directionalSpreadOfDominantWave|long|DIRECTIONAL SPREAD OF DOMINANT WAVE|deg|0|0|9|deg|0|3 +022078|durationOfWaveRecord|long|DURATION OF WAVE RECORD|s|0|0|12|s|0|4 +022079|lengthOfWaveRecord|long|LENGTH OF WAVE RECORD|m|0|0|16|m|0|5 +022080|wavebandCentralFrequency|double|WAVEBAND CENTRAL FREQUENCY|Hz|3|0|10|Hz|3|4 +022081|wavebandCentralWaveNumber|double|WAVEBAND CENTRAL WAVE NUMBER|/m|5|0|13|/m|5|4 +022082|maximumNonDirectionalSpectralWaveDensity|double|MAXIMUM NON-DIRECTIONAL SPECTRAL WAVE DENSITY|m2 s|2|0|20|m2 s|2|7 +022083|maximumNonDirectionalSpectralWaveNumber|double|MAXIMUM NON-DIRECTIONAL SPECTRAL WAVE NUMBER|m3|2|0|20|m3|2|7 +022084|bandContainingMaximumNonDirectionalSpectralWaveDensity|long|BAND CONTAINING MAXIMUM NON-DIRECTIONAL SPECTRAL WAVE DENSITY|Numeric|0|0|7|Numeric|0|3 +022085|spectralWaveDensityRatio|long|SPECTRAL WAVE DENSITY RATIO|Numeric|0|0|7|Numeric|0|3 +022086|meanDirectionFromWhichWavesAreComing|long|MEAN DIRECTION FROM WHICH WAVES ARE COMING|deg|0|0|9|deg|0|3 +022087|principalDirectionFromWhichWavesAreComing|long|PRINCIPAL DIRECTION FROM WHICH WAVES ARE COMING|deg|0|0|9|deg|0|3 +022088|firstNormalizedPolarCoordinateFromFourierCoefficients|long|FIRST NORMALIZED POLAR COORDINATE FROM FOURIER COEFFICIENTS|Numeric|2|0|7|Numeric|2|3 +022089|secondNormalizedPolarCoordinateFromFourierCoefficients|long|SECOND NORMALIZED POLAR COORDINATE FROM FOURIER COEFFICIENTS|Numeric|2|0|7|Numeric|2|3 +022090|nonDirectionalSpectralEstimateByWaveFrequency|double|NON-DIRECTIONAL SPECTRAL ESTIMATE BY WAVE FREQUENCY|m2 s|2|0|20|m2 s|2|7 +022091|nonDirectionalSpectralEstimateByWaveNumber|double|NON-DIRECTIONAL SPECTRAL ESTIMATE BY WAVE NUMBER|m3|2|0|20|m3|2|7 +022092|directionalSpectralEstimateByWaveFrequency|double|DIRECTIONAL SPECTRAL ESTIMATE BY WAVE FREQUENCY|m2 rad-1 s|2|0|20|m2 rad-1 s|2|7 +022093|directionalSpectralEstimateByWaveNumber|double|DIRECTIONAL SPECTRAL ESTIMATE BY WAVE NUMBER|m4|2|0|20|m4|2|7 +022094|totalNumberOfWaveBands|long|TOTAL NUMBER OF WAVE BANDS|Numeric|0|0|7|Numeric|0|3 +022095|directionalSpreadOfIndividualWaves|long|DIRECTIONAL SPREAD OF INDIVIDUAL WAVES|deg|0|0|8|deg|0|3 +022096|spectralBandWidth|double|SPECTRAL BAND WIDTH|/s|3|0|4|/s|3|2 +022097|meanWavelength731MOfImageSpectrumAtLowWaveNumbers|long|MEAN WAVELENGTH > 731 M OF IMAGE SPECTRUM AT LOW WAVE NUMBERS|m|0|0|14|m|0|5 +022098|wavelengthSpreadWavelength731MAtLowWaveNumbers|long|WAVELENGTH SPREAD (WAVELENGTH > 731 M) AT LOW WAVE NUMBERS|m|0|0|14|m|0|5 +022099|meanDirectionAtLowWaveNumbersWavelength731M|long|MEAN DIRECTION AT LOW WAVE NUMBERS (WAVELENGTH > 731 M)|deg|0|0|9|deg|0|3 +022100|directionSpreadAtLowWaveNumbersWavelength731M|long|DIRECTION SPREAD AT LOW WAVE NUMBERS (WAVELENGTH > 731 M)|deg|0|0|9|deg|0|3 +022101|totalEnergyWavelength731mAtLowWaveNumbers|long|TOTAL ENERGY (WAVELENGTH > 731M) AT LOW WAVE NUMBERS|Numeric|0|0|31|Numeric|0|10 +022102|scaledMaximumNonDirectionalSpectralWaveDensityByFrequency|long|SCALED MAXIMUM NON-DIRECTIONAL SPECTRAL WAVE DENSITY BY FREQUENCY|m2 s|0|0|14|m2 s|0|5 +022103|scaledMaximumNonDirectionalSpectralWaveDensityByWavenumber|long|SCALED MAXIMUM NON-DIRECTIONAL SPECTRAL WAVE DENSITY BY WAVE NUMBER|m3|0|0|14|m3|0|5 +022104|scaledNonDirectionalSpectralWaveDensityByFrequency|long|SCALED NON-DIRECTIONAL SPECTRAL WAVE DENSITY BY FREQUENCY|m2 s|0|0|14|m2 s|0|5 +022105|scaledNonDirectionalSpectralWaveDensityByWavenumber|long|SCALED NON-DIRECTIONAL SPECTRAL WAVE DENSITY BY WAVE NUMBER|m3|0|0|14|m3|0|5 +022106|scaledDirectionalSpectralWaveDensityByFrequency|long|SCALED DIRECTIONAL SPECTRAL WAVE DENSITY BY FREQUENCY|m2 rad-1 s|0|0|14|m2 rad-1 s|0|5 +022107|scaledDirectionalSpectralWaveDensityByWavenumber|long|SCALED DIRECTIONAL SPECTRAL WAVE DENSITY BY WAVE NUMBER|m4|0|0|14|m4|0|5 +022108|spectralWaveDensityRatio|long|SPECTRAL WAVE DENSITY RATIO|%|0|0|7|%|0|3 +022120|tideStationAutomatedWaterLevelCheck|table|TIDE STATION AUTOMATED WATER LEVEL CHECK|CODE TABLE|0|0|5|CODE TABLE|0|2 +022121|tideStationManualWaterLevelCheck|table|TIDE STATION MANUAL WATER LEVEL CHECK|CODE TABLE|0|0|5|CODE TABLE|0|2 +022122|automatedMeteorologicalDataCheck|table|TIDE STATION AUTOMATED METEOROLOGICAL DATA CHECK|CODE TABLE|0|0|5|CODE TABLE|0|2 +022123|tideStationManualMeteorologicalDataCheck|table|TIDE STATION MANUAL METEOROLOGICAL DATA CHECK|CODE TABLE|0|0|5|CODE TABLE|0|2 +022130|numberOfValidPointsForSpecificBand|long|NUMBER OF VALID POINTS FOR SPECIFIC BAND|Numeric|0|0|10|Numeric|0|4 +022131|rmsSpecificBandSignificantWaveHeight|double|RMS SPECIFIC BAND SIGNIFICANT WAVE HEIGHT|m|3|0|16|m|3|5 +022132|numberOfValidPointsForSpecificBandSignificantWaveHeight|long|NUMBER OF VALID POINTS FOR SPECIFIC BAND SIGNIFICANT WAVE HEIGHT|Numeric|0|0|10|Numeric|0|4 +022133|specificBandNetInstrumentCorrectionForSignificantWaveHeight|double|SPECIFIC BAND NET INSTRUMENT CORRECTION FOR SIGNIFICANT WAVE HEIGHT|m|3|-1000|11|m|3|4 +022134|numberOfValidPointsForSpecificBandBackscatter|long|NUMBER OF VALID POINTS FOR SPECIFIC BAND BACKSCATTER|Numeric|0|0|10|Numeric|0|4 +022141|seaSurfaceTemperature15DayRunningMean|double|SEA-SURFACE TEMPERATURE (15-DAY RUNNING MEAN)|K|2|0|15|K|2|5 +022142|squareOfSignificantWaveHeight|double|SQUARE OF SIGNIFICANT WAVE HEIGHT|m2|3|-33554432|26|m2|3|8 +022143|stdOf20HzSwhSquared|double|STD OF 20 HZ SWH SQUARED|m2|3|-8388608|24|m2|3|8 +022144|numberOf20HzValidPointsForSwhSquared|long|NUMBER OF 20 HZ VALID POINTS FOR SWH SQUARED|Numeric|0|0|9|Numeric|0|3 +022145|stdOf20HzOceanRange|double|STD OF 20 HZ OCEAN RANGE|m|3|-33554432|31|m|3|10 +022146|ocogRange|double|OCOG RANGE|m|3|0|31|m|3|10 +022147|stdOf20HzOcogRange|double|STD OF 20 HZ OCOG RANGE|m|3|-8388608|31|m|3|10 +022148|numberOf20HzValidPointsForOceanRange|long|NUMBER OF 20 HZ VALID POINTS FOR OCEAN RANGE|Numeric|0|0|9|Numeric|0|3 +022149|20HzSignificantWaveHeightSquared|double|20 HZ SIGNIFICANT WAVE HEIGHT SQUARED|m2|3|-33554432|26|m2|3|8 +022150|numberOf18HzValidPointsForKuBand|long|NUMBER OF 18 HZ VALID POINTS FOR KU BAND|Numeric|0|0|10|Numeric|0|4 +022151|kuBandOceanRange|double|KU BAND OCEAN RANGE|m|3|0|31|m|3|10 +022152|stdOf18HzKuBandOceanRange|double|STD OF 18 HZ KU BAND OCEAN RANGE|m|3|0|16|m|3|5 +022153|numberOf18HzValidPointsForSBand|long|NUMBER OF 18 HZ VALID POINTS FOR S BAND|Numeric|0|0|10|Numeric|0|4 +022154|sBandOceanRange|double|S BAND OCEAN RANGE|m|3|0|31|m|3|10 +022155|stdOf18HzSBandOceanRange|double|STD OF 18 HZ S BAND OCEAN RANGE|m|3|0|16|m|3|5 +022156|kuBandSignificantWaveHeight|double|KU BAND SIGNIFICANT WAVE HEIGHT|m|3|0|16|m|3|5 +022157|stdOf18HzKuBandOceanRange|double|STD OF 18 HZ KU BAND OCEAN RANGE|m|3|0|16|m|3|5 +022158|sBandSignificantWaveHeight|double|S BAND SIGNIFICANT WAVE HEIGHT|m|3|0|16|m|3|5 +022159|stdOf18HzSBandSignificantWaveHeight|double|STD OF 18 HZ S BAND SIGNIFICANT WAVE HEIGHT|m|3|0|16|m|3|5 +022160|normalizedInverseWaveAge|long|NORMALIZED INVERSE WAVE AGE|Numeric|6|0|21|Numeric|6|7 +022161|waveSpectra|double|WAVE SPECTRA|m4|4|0|27|m4|4|9 +022162|rmsOf20HzKuBandOceanRange|double|RMS OF 20 HZ KU BAND OCEAN RANGE|m|3|0|16|m|3|5 +022163|numberOf20HzValidPointsForKuBand|long|NUMBER OF 20 HZ VALID POINTS FOR KU BAND|Numeric|0|0|10|Numeric|0|4 +022164|rms20HzKuBandSignificantWaveHeight|double|RMS 20 HZ KU BAND SIGNIFICANT WAVE HEIGHT|m|3|0|16|m|3|5 +022165|numberOf20HzValidPointsForKuBandSignificantWaveHeight|long|NUMBER OF 20 HZ VALID POINTS FOR KU BAND SIGNIFICANT WAVE HEIGHT|Numeric|0|0|10|Numeric|0|4 +022166|kuBandNetInstrumentalCorrectionForSignificantWaveHeight|double|KU BAND NET INSTRUMENTAL CORRECTION FOR SIGNIFICANT WAVE HEIGHT|m|3|-1000|11|m|3|4 +022167|numberOfValidPointsForKuBandBackscatter|long|NUMBER OF VALID POINTS FOR KU BAND BACKSCATTER|Numeric|0|0|10|Numeric|0|4 +022168|cBandOceanRange|double|C BAND OCEAN RANGE|m|3|0|31|m|3|10 +022169|rmsOfCBandOceanRange|double|RMS OF C BAND OCEAN RANGE|m|3|0|16|m|3|5 +022170|numberOf20HzValidPointsForCBand|long|NUMBER OF 20 HZ VALID POINTS FOR C BAND|Numeric|0|0|10|Numeric|0|4 +022171|cBandSignificantWaveHeight|double|C BAND SIGNIFICANT WAVE HEIGHT|m|3|0|16|m|3|5 +022172|rms20HzCBandSignificantWaveHeight|double|RMS 20 HZ C BAND SIGNIFICANT WAVE HEIGHT|m|3|0|16|m|3|5 +022173|numberOf20HzValidPointsForCBandSignificantWaveHeight|long|NUMBER OF 20 HZ VALID POINTS FOR C BAND SIGNIFICANT WAVE HEIGHT|Numeric|0|0|10|Numeric|0|4 +022174|cBandNetInstrumentalCorrectionForSignificantWaveHeight|double|C BAND NET INSTRUMENTAL CORRECTION FOR SIGNIFICANT WAVE HEIGHT|m|3|-1000|11|m|3|4 +022175|numberOfValidPointsForCBandBackscatter|long|NUMBER OF VALID POINTS FOR C BAND BACKSCATTER|Numeric|0|0|10|Numeric|0|4 +022177|heightOfXbtOrXctdLauncher|long|HEIGHT OF XBT/XCTD LAUNCHER|m|0|0|6|m|0|3 +022178|xbtOrXctdLauncherType|table|XBT/XCTD LAUNCHER TYPE|CODE TABLE|0|0|8|CODE TABLE|0|3 +022179|specificBandSignificantWaveHeightNegativeReference|double|SPECIFIC BAND SIGNIFICANT WAVE HEIGHT (NEGATIVE REFERENCE)|m|3|-500|16|m|3|6 +022182|waterColumnHeight|double|WATER COLUMN HEIGHT|m|3|0|23|m|3|7 +022184|waterColumnHeightDeviationFromReferenceValue|double|WATER COLUMN HEIGHT DEVIATION FROM THE REFERENCE VALUE|m|3|-2000|12|m|3|4 +022185|bprTransmissionCount|long|BPR TRANSMISSION COUNT|Numeric|0|0|10|Numeric|0|3 +022186|directionFromWhichWavesAreComing|long|DIRECTION FROM WHICH WAVES ARE COMING|deg|0|0|9|deg|0|3 +022187|directionalSpreadOfWaves|long|DIRECTIONAL SPREAD OF WAVE|deg|0|0|9|deg|0|3 +022188|oceanographicDissolvedOxygen|double|DISSOLVED OXYGEN|umol/kg|3|0|19|umol/kg|3|6 +022189|specificBandOceanRange|double|SPECIFIC BAND OCEAN RANGE|m|3|0|31|m|3|10 +022190|specificBandSignificantWaveHeight|double|SPECIFIC BAND SIGNIFICANT WAVE HEIGHT|m|3|0|16|m|3|5 +022191|rmsOfSpecificBandOceanRange|double|RMS OF SPECIFIC BAND OCEAN RANGE|m|4|0|16|m|4|5 +023001|accidentEarlyNotificationArticleApplicable|table|ACCIDENT EARLY NOTIFICATION - ARTICLE APPLICABLE|CODE TABLE|0|0|3|CODE TABLE|0|1 +023002|facilityInvolvedInIncident|table|ACTIVITY OR FACILITY INVOLVED IN INCIDENT|CODE TABLE|0|0|5|CODE TABLE|0|2 +023003|releaseType|table|TYPE OF RELEASE|CODE TABLE|0|0|3|CODE TABLE|0|1 +023004|countermeasuresTakenNearBorder|table|COUNTERMEASURES TAKEN NEAR BORDER|CODE TABLE|0|0|3|CODE TABLE|0|1 +023005|causeOfIncident|table|CAUSE OF INCIDENT|CODE TABLE|0|0|2|CODE TABLE|0|1 +023006|incidentSituation|table|INCIDENT SITUATION|CODE TABLE|0|0|3|CODE TABLE|0|1 +023007|characteristicsOfRelease|table|CHARACTERISTICS OF RELEASE|CODE TABLE|0|0|3|CODE TABLE|0|1 +023008|stateOfCurrentRelease|table|STATE OF CURRENT RELEASE|CODE TABLE|0|0|2|CODE TABLE|0|1 +023009|stateOfExpectedRelease|table|STATE OF EXPECTED RELEASE|CODE TABLE|0|0|2|CODE TABLE|0|1 +023016|possibilityOfSignificantChemicalToxicHealthEffect|table|POSSIBILITY OF SIGNIFICANT CHEMICAL TOXIC HEALTH EFFECT|CODE TABLE|0|0|2|CODE TABLE|0|1 +023017|flowDischargeOfMajorRecipient|double|FLOW DISCHARGE OF MAJOR RECIPIENT|m3/s|6|0|20|m3/s|6|7 +023018|releaseBehaviourOverTime|table|RELEASE BEHAVIOUR OVER TIME|CODE TABLE|0|0|3|CODE TABLE|0|1 +023019|actualReleaseHeight|long|ACTUAL RELEASE HEIGHT|m|0|-15000|17|m|0|6 +023021|effectiveReleaseHeight|long|EFFECTIVE RELEASE HEIGHT|m|0|-15000|17|m|0|6 +023022|distanceOfReleasePointOrSiteOfIncident|long|DISTANCE OF RELEASE POINT OR SITE OF INCIDENT|m|0|0|24|m|0|8 +023023|mainTransportSpeedInAtmosphere|double|MAIN TRANSPORT SPEED IN THE ATMOSPHERE|m/s|1|0|12|m/s|1|4 +023024|mainTransportSpeedInWater|double|MAIN TRANSPORT SPEED IN WATER|m/s|2|0|13|m/s|2|4 +023025|mainTransportSpeedInGroundWater|double|MAIN TRANSPORT SPEED IN GROUND WATER|m/s|2|0|13|m/s|2|4 +023027|mainTransportDirectionInTheAtmosphere|long|MAIN TRANSPORT DIRECTION IN THE ATMOSPHERE|deg|0|0|9|deg|0|3 +023028|mainTransportDirectionInWater|long|MAIN TRANSPORT DIRECTION IN WATER|deg|0|0|9|deg|0|3 +023029|mainTransportDirectionInGroundWater|long|MAIN TRANSPORT DIRECTION IN GROUND WATER|deg|0|0|9|deg|0|3 +023031|possibilityPlume|table|POSSIBILITY THAT PLUME WILL ENCOUNTER PRECIPITATION IN STATE IN WHICH INCIDENT OCCURRED|CODE TABLE|0|0|2|CODE TABLE|0|1 +023032|plumeWillEncounterChangeInWindDirectionAndOrOrSpeedFlag|table|PLUME WILL ENCOUNTER CHANGE IN WIND DIRECTION AND/OR SPEED FLAG|CODE TABLE|0|0|2|CODE TABLE|0|1 +023040|flowDischargeRiver|double|FLOW DISCHARGE - RIVER|m3/s|1|0|22|m3/s|1|7 +023041|flowDischargeWell|double|FLOW DISCHARGE - WELL|m3/s|3|0|16|m3/s|3|5 +024001|estimateOfAmountOfRadioactivityReleasedUpToSpecifiedTime|long|ESTIMATE OF AMOUNT OF RADIOACTIVITY RELEASED UP TO SPECIFIED TIME|Bq|-11|0|28|Bq|-11|9 +024002|estimatedMaximumPotentialRelease|long|ESTIMATED MAXIMUM POTENTIAL RELEASE|Bq|-11|0|28|Bq|-11|9 +024003|compositionOfRelease|table|COMPOSITION OF RELEASE|CODE TABLE|0|0|5|CODE TABLE|0|2 +024004|elementName|string|ELEMENT NAME|CCITT IA5|0|0|16|Character|0|2 +024005|isotopeMass|long|ISOTOPE MASS|Numeric|0|0|9|Numeric|0|3 +024011|dose|double|DOSE|mSv|2|0|32|mSv|2|10 +024012|trajectoryDoseDefinedLocationAndExpectedTimeOfArrival|double|TRAJECTORY DOSE (DEFINED LOCATION AND EXPECTED TIME OF ARRIVAL)|mSv|2|0|32|mSv|2|10 +024013|gammaDoseInAirAlongMainTransportPathDefinedLocationAndTimePeriod|double|GAMMA DOSE IN AIR ALONG THE MAIN TRANSPORT PATH (DEFINED LOCATION AND TIME PERIOD)|mSv|2|0|32|mSv|2|10 +024014|gammaRadiationDoseRate|double|GAMMA RADIATION DOSE RATE|nSv/h|1|0|14|nSv/h|1|4 +024021|airConcentrationOfNamedIsotopeTypeIncludingGrossBeta|double|AIR CONCENTRATION (OF NAMED ISOTOPE TYPE INCLUDING GROSS BETA)|Bq m-3|2|0|32|Bq m-3|2|10 +024022|concentrationInPrecipitationOfNamedIsotopeType|double|CONCENTRATION IN PRECIPITATION (OF NAMED ISOTOPE TYPE)|Bq/l|2|0|32|Bq/l|2|10 +024023|pulseRateOfBetaRadiation|double|PULSE RATE OF BETA RADIATION|/s|1|0|14|/s|1|4 +024024|pulseRateOfGammaRadiation|double|PULSE RATE OF GAMMA RADIATION|/s|1|0|14|/s|1|4 +025001|rangeGateLength|long|RANGE-GATE LENGTH|m|-1|0|6|m|-1|2 +025002|numberOfGatesAveraged|long|NUMBER OF GATES AVERAGED|Numeric|0|0|4|Numeric|0|2 +025003|numberOfIntegratedPulses|long|NUMBER OF INTEGRATED PULSES|Numeric|0|0|8|Numeric|0|3 +025004|echoProcessing|table|ECHO PROCESSING|CODE TABLE|0|0|2|CODE TABLE|0|1 +025005|echoIntegration|table|ECHO INTEGRATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +025006|zToRConversion|table|Z TO R CONVERSION|CODE TABLE|0|0|3|CODE TABLE|0|1 +025007|zToRConversionFactor|long|Z TO R CONVERSION FACTOR|Numeric|0|0|12|Numeric|0|4 +025008|zToRConversionExponent|long|Z TO R CONVERSION EXPONENT|Numeric|2|0|9|Numeric|2|3 +025009|calibrationMethod|flag|CALIBRATION METHOD|FLAG TABLE|0|0|4|FLAG TABLE|0|2 +025010|clutterTreatment|table|CLUTTER TREATMENT|CODE TABLE|0|0|4|CODE TABLE|0|2 +025011|groundOccultationCorrectionScreening|table|GROUND OCCULTATION CORRECTION (SCREENING)|CODE TABLE|0|0|2|CODE TABLE|0|1 +025012|rangeAttenuationCorrection|table|RANGE ATTENUATION CORRECTION|CODE TABLE|0|0|2|CODE TABLE|0|1 +025013|brightBandCorrection|flag|BRIGHT-BAND CORRECTION|FLAG TABLE|0|0|2|FLAG TABLE|0|1 +025014|azimuthClutterCutOff|long|AZIMUTH CLUTTER CUT-OFF|Numeric|0|0|12|Numeric|0|4 +025015|radomeAttenuationCorrection|flag|RADOME ATTENUATION CORRECTION|FLAG TABLE|0|0|2|FLAG TABLE|0|1 +025016|clearAirAttenuationCorrection|double|CLEAR-AIR ATTENUATION CORRECTION|dB/m|5|0|6|dB/m|5|2 +025017|precipitationAttenuationCorrection|flag|PRECIPITATION ATTENUATION CORRECTION|FLAG TABLE|0|0|2|FLAG TABLE|0|1 +025018|aToZLawForAttenuationFactor|long|A TO Z LAW FOR ATTENUATION FACTOR|Numeric|7|0|6|Numeric|7|2 +025019|aToZLawForAttenuationExponent|long|A TO Z LAW FOR ATTENUATION EXPONENT|Numeric|2|0|7|Numeric|2|3 +025020|meanSpeedEstimation|table|MEAN SPEED ESTIMATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +025021|windComputationEnhancement|flag|WIND COMPUTATION ENHANCEMENT|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +025022|ghrsstRejectionFlag|flag|GHRSST REJECTION FLAG|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +025023|ghrsstConfidenceFlag|flag|GHRSST CONFIDENCE FLAG|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +025024|ghrsstDataQuality|table|GHRSST DATA QUALITY|CODE TABLE|0|0|4|CODE TABLE|0|2 +025025|batteryVoltage|double|BATTERY VOLTAGE|V|1|0|9|V|1|3 +025026|batteryVoltageLargeRange|double|BATTERY VOLTAGE (LARGE RANGE)|V|1|0|12|V|1|4 +025028|operatorOrManufacturerDefinedParameter|long|OPERATOR OR MANUFACTURER DEFINED PARAMETER|Numeric|1|-16384|15|Numeric|1|5 +025029|calibrationMethod|flag|CALIBRATION METHOD|FLAG TABLE|0|0|6|FLAG TABLE|0|2 +025030|runningMeanSeaSurfaceTemperatureUsage|table|RUNNING MEAN SEA-SURFACE TEMPERATURE USAGE|CODE TABLE|0|0|2|CODE TABLE|0|1 +025031|nwpGeneratedVerticalProfileThinningMethod|table|NWP-GENERATED VERTICAL PROFILE THINNING METHOD|CODE TABLE|0|0|3|CODE TABLE|0|1 +025032|windProfilerModeInformation|table|WIND PROFILER MODE INFORMATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +025033|windProfilerSubmodeInformation|table|WIND PROFILER SUBMODE INFORMATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +025034|windProfilerQualityControlTestResults|flag|WIND PROFILER QUALITY CONTROL TEST RESULTS|FLAG TABLE|0|0|4|FLAG TABLE|0|2 +025035|decisionMethodForPolarity|table|DECISION METHOD FOR POLARITY|CODE TABLE|0|0|3|CODE TABLE|0|1 +025036|atmosphericsLocationMethod|table|ATMOSPHERICS LOCATION METHOD|CODE TABLE|0|0|4|CODE TABLE|0|2 +025037|sstBias|double|SST BIAS|K|2|-127|8|K|2|3 +025038|differenceBetweenSstAndAnalysis|double|DIFFERENCE BETWEEN SST AND ANALYSIS|K|1|-127|8|K|1|3 +025040|co2WindProductDerivation|table|CO2 WIND PRODUCT DERIVATION|CODE TABLE|0|0|4|CODE TABLE|0|2 +025041|movingPlatformDirectionReportingMethod|table|MOVING PLATFORM DIRECTION REPORTING METHOD|CODE TABLE|0|0|2|CODE TABLE|0|1 +025042|movingPlatformSpeedReportingMethod|table|MOVING PLATFORM SPEED REPORTING METHOD|CODE TABLE|0|0|2|CODE TABLE|0|1 +025043|waveSamplingIntervalTime|double|WAVE SAMPLING INTERVAL (TIME)|s|4|0|15|s|4|5 +025044|waveSamplingIntervalSpace|double|WAVE SAMPLING INTERVAL (SPACE)|m|2|0|14|m|2|5 +025045|hirsChannelCombination|flag|HIRS CHANNEL COMBINATION|FLAG TABLE|0|0|21|FLAG TABLE|0|7 +025046|msuChannelCombination|flag|MSU CHANNEL COMBINATION|FLAG TABLE|0|0|5|FLAG TABLE|0|2 +025047|ssuChannelCombination|flag|SSU CHANNEL COMBINATION|FLAG TABLE|0|0|4|FLAG TABLE|0|2 +025048|amsuAChannelCombination|flag|AMSU-A CHANNEL COMBINATION|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +025049|amsuBChannelCombination|flag|AMSU-B CHANNEL COMBINATION|FLAG TABLE|0|0|6|FLAG TABLE|0|2 +025050|principalComponentScore|long|PRINCIPAL COMPONENT SCORE|Numeric|4|-131072|18|Numeric|4|6 +025051|avhrrChannelCombination|flag|AVHRR CHANNEL COMBINATION|FLAG TABLE|0|0|7|FLAG TABLE|0|3 +025052|log10OfPrincipalComponentsNormalizedFitToData|long|LOG10 OF PRINCIPAL COMPONENTS NORMALIZED FIT TO DATA|Numeric|4|0|15|Numeric|4|5 +025053|observationQuality|flag|OBSERVATION QUALITY|FLAG TABLE|0|0|12|FLAG TABLE|0|4 +025054|ssmisSubframeIdNumber|long|SSMIS SUBFRAME ID NUMBER|Numeric|0|0|5|Numeric|0|2 +025055|multiplexerHousekeeping|double|MULTIPLEXER HOUSEKEEPING|K|2|0|16|K|2|5 +025056|normalizedErrorEstimateInBackscatterMeasurementKp|long|NORMALIZED ERROR ESTIMATE IN BACKSCATTER MEASUREMENT (KP)|Numeric|4|0|14|Numeric|4|5 +025060|softwareIdentification|long|SOFTWARE IDENTIFICATION|Numeric|0|0|14|Numeric|0|5 +025061|softwareVersionNumber|string|SOFTWARE IDENTIFICATION AND VERSION NUMBER|CCITT IA5|0|0|96|Character|0|12 +025062|databaseIdentification|long|DATABASE IDENTIFICATION|Numeric|0|0|14|Numeric|0|5 +025063|SystemIdentifier|table|CENTRAL PROCESSOR OR SYSTEM IDENTIFIER|CODE TABLE|0|0|8|CODE TABLE|0|3 +025065|orientationCorrectionAzimuth|double|ORIENTATION CORRECTION (AZIMUTH)|deg|2|-1000|11|deg|2|4 +025066|orientationCorrectionElevation|double|ORIENTATION CORRECTION (ELEVATION)|deg|2|-1000|11|deg|2|4 +025067|radiosondeReleasePointPressureCorrection|long|RADIOSONDE RELEASE POINT PRESSURE CORRECTION|Pa|0|-8000|14|Pa|0|4 +025068|numberOfArchiveRecomputes|long|NUMBER OF ARCHIVE RECOMPUTES|Numeric|0|0|7|Numeric|0|3 +025069|flightLevelPressureCorrections|flag|FLIGHT LEVEL PRESSURE CORRECTIONS|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +025070|majorFrameCount|long|MAJOR FRAME COUNT|Numeric|0|0|4|Numeric|0|2 +025071|frameCount|long|FRAME COUNT|Numeric|0|0|5|Numeric|0|2 +025075|satelliteAntennaCorrectionsVersionNumber|long|SATELLITE ANTENNA CORRECTIONS VERSION NUMBER|Numeric|0|0|5|Numeric|0|2 +025076|log10OfTemperatureRadianceCentralWaveNumberForAtovs|double|LOG10 OF (TEMPERATURE-RADIANCE CENTRAL WAVE NUMBER) FOR ATOVS|log (m-1)|8|0|30|log (m-1)|8|10 +025077|bandwidthCorrectionCoefficient1|long|BANDWIDTH CORRECTION COEFFICIENT 1|Numeric|5|-100000|18|Numeric|5|7 +025078|bandwidthCorrectionCoefficient2|long|BANDWIDTH CORRECTION COEFFICIENT 2|Numeric|5|0|17|Numeric|5|6 +025079|albedoRadianceSolarFilteredIrradianceForAtovs|double|ALBEDO-RADIANCE SOLAR FILTERED IRRADIANCE FOR ATOVS|W m-2|4|0|24|W m-2|4|8 +025080|albedoRadianceEquivalentFilterWidthForAtovs|double|ALBEDO-RADIANCE EQUIVALENT FILTER WIDTH FOR ATOVS|m|10|0|14|m|10|5 +025081|incidenceAngle|double|INCIDENCE ANGLE|deg|3|0|17|deg|3|6 +025082|azimuthAngle|double|AZIMUTH ANGLE|deg|3|0|19|deg|3|6 +025083|faradayRotationalAngle|double|FARADAY ROTATIONAL ANGLE|deg|3|0|19|deg|3|6 +025084|geometricRotationalAngle|double|GEOMETRIC ROTATIONAL ANGLE|deg|5|0|26|deg|5|8 +025085|fractionOfClearPixelsInHirsFov|long|FRACTION OF CLEAR PIXELS IN HIRS FOV|Numeric|0|0|7|Numeric|0|3 +025086|depthCorrectionIndicator|table|DEPTH CORRECTION INDICATOR|CODE TABLE|0|0|2|CODE TABLE|0|1 +025090|orbitStateFlag|table|ORBIT STATE FLAG|CODE TABLE|0|0|4|CODE TABLE|0|2 +025091|structureConstantOfRefractionIndexCn2|double|STRUCTURE CONSTANT OF THE REFRACTION INDEX (CN2)|dB|3|-18192|13|dB|3|5 +025092|acousticPropagationVelocity|double|ACOUSTIC PROPAGATION VELOCITY|m/s|2|28000|14|m/s|2|5 +025093|rassComputationCorrection|flag|RASS COMPUTATION CORRECTION|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +025095|altimeterStateFlag|flag|ALTIMETER STATE FLAG|FLAG TABLE|0|0|2|FLAG TABLE|0|1 +025096|radiometerStateFlag|flag|RADIOMETER STATE FLAG|FLAG TABLE|0|0|5|FLAG TABLE|0|2 +025097|threeDimensionalErrorEstimateOfNavigatorOrbit|table|THREE-DIMENSIONAL ERROR ESTIMATE OF THE NAVIGATOR ORBIT|CODE TABLE|0|0|4|CODE TABLE|0|2 +025098|altimeterDataQualityFlag|flag|ALTIMETER DATA QUALITY FLAG|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +025099|altimeterCorrectionQualityFlag|flag|ALTIMETER CORRECTION QUALITY FLAG|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +025100|xbtOrXctdFallRateEquationCoefficientA|long|XBT/XCTD FALL RATE EQUATION COEFFICIENT A|Numeric|5|0|20|Numeric|5|6 +025101|xbtOrXctdFallRateEquationCoefficientB|long|XBT/XCTD FALL RATE EQUATION COEFFICIENT B|Numeric|5|-500000|21|Numeric|5|6 +025102|numberOfMissingLinesExcludingDataGaps|long|NUMBER OF MISSING LINES EXCLUDING DATA GAPS|Numeric|0|0|8|Numeric|0|3 +025103|numberOfDirectionalBins|long|NUMBER OF DIRECTIONAL BINS|Numeric|0|0|8|Numeric|0|3 +025104|numberOfWavelengthBins|long|NUMBER OF WAVELENGTH BINS|Numeric|0|0|8|Numeric|0|3 +025105|firstDirectionalBin|double|FIRST DIRECTIONAL BIN|deg|3|0|19|deg|3|6 +025106|directionalBinStep|double|DIRECTIONAL BIN STEP|deg|3|0|19|deg|3|6 +025107|firstWavelengthBin|double|FIRST WAVELENGTH BIN|m|3|0|29|m|3|9 +025108|lastWavelengthBin|double|LAST WAVELENGTH BIN|m|3|0|29|m|3|9 +025110|imageProcessingSummary|flag|IMAGE PROCESSING SUMMARY|FLAG TABLE|0|0|10|FLAG TABLE|0|4 +025111|numberOfInputDataGaps|long|NUMBER OF INPUT DATA GAPS|Numeric|0|0|8|Numeric|0|3 +025112|bandSpecificAltimeterDataQualityFlag|flag|BAND SPECIFIC ALTIMETER DATA QUALITY FLAG|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +025113|bandSpecificAltimeterCorrectionQualityFlag|flag|BAND SPECIFIC ALTIMETER CORRECTION QUALITY FLAG|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +025120|ra2L2ProcessingFlag|table|RA2-L2-PROCESSING FLAG|CODE TABLE|0|0|2|CODE TABLE|0|1 +025121|ra2L2ProcessingQuality|long|RA2-L2-PROCESSING QUALITY|%|0|0|7|%|0|3 +025122|hardwareConfigurationForRf|table|HARDWARE CONFIGURATION FOR RF|CODE TABLE|0|0|2|CODE TABLE|0|1 +025123|hardwareConfigurationForHpa|table|HARDWARE CONFIGURATION FOR HPA|CODE TABLE|0|0|2|CODE TABLE|0|1 +025124|mwrL2ProcessingFlag|table|MWR-L2-PROCESSING FLAG|CODE TABLE|0|0|2|CODE TABLE|0|1 +025125|mwrL2ProcessingQuality|long|MWR-L2-PROCESSING QUALITY|%|0|0|7|%|0|3 +025126|modelDryTroposphericCorrection|double|MODEL DRY TROPOSPHERIC CORRECTION|m|3|-32768|16|m|3|5 +025127|invertedBarometerCorrection|double|INVERTED BAROMETER CORRECTION|m|3|-32768|16|m|3|5 +025128|modelWetTroposphericCorrection|double|MODEL WET TROPOSPHERIC CORRECTION|m|3|-32768|16|m|3|5 +025129|mwrDerivedWetTroposphericCorrection|double|MWR DERIVED WET TROPOSPHERIC CORRECTION|m|3|-32768|16|m|3|5 +025130|ra2IonosphericCorrectionOnKuBand|double|RA2 IONOSPHERIC CORRECTION ON KU BAND|m|3|-32768|16|m|3|5 +025131|ionosphericCorrectionFromDorisOnKuBand|double|IONOSPHERIC CORRECTION FROM DORIS ON KU BAND|m|3|-32768|16|m|3|5 +025132|ionosphericCorrectionFromModelOnKuBand|double|IONOSPHERIC CORRECTION FROM MODEL ON KU BAND|m|3|-32768|16|m|3|5 +025133|seaStateBiasCorrectionOnKuBand|double|SEA STATE BIAS CORRECTION ON KU BAND|m|3|-32768|16|m|3|5 +025134|ra2IonosphericCorrectionOnSBand|double|RA2 IONOSPHERIC CORRECTION ON S BAND|m|3|-32768|16|m|3|5 +025135|ionosphericCorrectionFromDorisOnSBand|double|IONOSPHERIC CORRECTION FROM DORIS ON S BAND|m|3|-32768|16|m|3|5 +025136|ionosphericCorrectionFromModelOnSBand|double|IONOSPHERIC CORRECTION FROM MODEL ON S BAND|m|3|-32768|16|m|3|5 +025137|seaStateBiasCorrectionOnSBand|double|SEA STATE BIAS CORRECTION ON S BAND|m|3|-32768|16|m|3|5 +025138|averageSignalToNoiseRatio|long|AVERAGE SIGNAL-TO-NOISE RATIO|Numeric|0|-2048|12|Numeric|0|4 +025139|processingLevel|long|PROCESSING LEVEL|Numeric|0|0|5|Numeric|0|4 +025140|startChannel|long|START CHANNEL|Numeric|0|0|14|Numeric|0|5 +025141|endChannel|long|END CHANNEL|Numeric|0|0|14|Numeric|0|5 +025142|channelScaleFactor|long|CHANNEL SCALE FACTOR|Numeric|0|0|6|Numeric|0|2 +025143|linearCoefficient|long|LINEAR COEFFICIENT|Numeric|6|-5000000|24|Numeric|6|8 +025144|numberOfVisualChannelsUsedInProcessing|long|NUMBER OF VISUAL CHANNELS USED IN PROCESSING|Numeric|0|0|6|Numeric|0|2 +025145|numberOfInfraredChannelsUsedInProcessing|long|NUMBER OF INFRARED CHANNELS USED IN PROCESSING|Numeric|0|0|6|Numeric|0|2 +025148|coefficientOfVariation|long|COEFFICIENT OF VARIATION|Numeric|2|-10000|15|Numeric|2|5 +025149|optimalEstimationCost|long|OPTIMAL ESTIMATION COST|Numeric|0|0|8|Numeric|0|3 +025150|methodOfTropicalCycloneIntensityAnalysisUsingSatelliteData|table|METHOD OF TROPICAL CYCLONE INTENSITY ANALYSIS USING SATELLITE DATA|CODE TABLE|0|0|4|CODE TABLE|0|2 +025160|kuBandNetInstrumentalCorrection|double|KU BAND NET INSTRUMENTAL CORRECTION|m|4|-120000|18|m|4|6 +025161|cBandNetInstrumentalCorrection|double|C BAND NET INSTRUMENTAL CORRECTION|m|4|-120000|18|m|4|6 +025162|seaStateBiasCorrectionOnCBand|double|SEA STATE BIAS CORRECTION ON C BAND|m|4|-6000|13|m|4|4 +025163|altimeterIonosphericCorrectionOnKuBand|double|ALTIMETER IONOSPHERIC CORRECTION ON KU BAND|m|3|-32768|16|m|3|5 +025164|radiometerWetTroposphericCorrection|double|RADIOMETER WET TROPOSPHERIC CORRECTION|m|4|-5000|13|m|4|4 +025165|ionosphericCorrectionFromModelOnSpecificBand|double|IONOSPHERIC CORRECTION FROM MODEL ON SPECIFIC BAND|m|4|-32768|16|m|4|5 +025166|seaStateBiasCorrectionOnSpecificBand|double|SEA STATE BIAS CORRECTION ON SPECIFIC BAND|m|4|-32768|16|m|4|5 +025167|specificBandNetInstrumentalCorrection|double|SPECIFIC BAND NET INSTRUMENTAL CORRECTION|m|4|-120000|18|m|4|6 +025170|samplingIntervalTime|long|SAMPLING INTERVAL (TIME)|s|0|0|10|s|0|4 +025171|sampleAveragingPeriod|long|SAMPLE AVERAGING PERIOD|s|0|0|10|s|0|4 +025172|numberOfSamples|long|NUMBER OF SAMPLES|Numeric|0|0|10|Numeric|0|4 +025174|smosInformationFlag|flag|SMOS INFORMATION FLAG|FLAG TABLE|0|0|14|FLAG TABLE|0|5 +025175|modifiedResidual|long|MODIFIED RESIDUAL|Numeric|2|0|13|Numeric|2|4 +025180|lrmPercent|double|LRM PER CENT|%|2|0|16|%|2|5 +025181|l2ProcessingFlag|table|L2 PROCESSING FLAG|CODE TABLE|0|0|2|CODE TABLE|0|1 +025182|l1ProcessingFlag|table|L1 PROCESSING FLAG|CODE TABLE|0|0|2|CODE TABLE|0|1 +025183|l1ProcessingQuality|double|L1 PROCESSING QUALITY|%|2|0|14|%|2|5 +025184|l2ProductStatus|table|L2 PRODUCT STATUS|CODE TABLE|0|0|2|CODE TABLE|0|1 +025185|encryptionMethod|table|ENCRYPTION METHOD|CODE TABLE|0|0|8|CODE TABLE|0|3 +025186|encryptionKeyVersion|string|ENCRYPTION KEY VERSION|CCITT IA5|0|0|96|Character|0|12 +025187|confidenceFlag|table|CONFIDENCE FLAG|CODE TABLE|0|0|4|CODE TABLE|0|2 +025188|methodForReducingPressureToSeaLevel|table|METHOD FOR REDUCING PRESSURE TO SEA LEVEL|CODE TABLE|0|0|5|CODE TABLE|0|2 +025189|rangeCutOffWavelength|long|RANGE CUT-OFF WAVELENGTH|m|0|1|9|m|0|3 +025190|altimeterEchoProcessingMode|table|ALTIMETER ECHO PROCESSING MODE|CODE TABLE|0|0|8|CODE TABLE|0|3 +025191|altimeterTrackingMode|table|ALTIMETER TRACKING MODE|CODE TABLE|0|0|8|CODE TABLE|0|3 +026001|principalTimeOfDailyReadingInUtcOfMaximumTemperature|double|PRINCIPAL TIME OF DAILY READING IN UTC OF MAXIMUM TEMPERATURE|h|1|0|12|h|1|3 +026002|principalTimeOfDailyReadingInUtcOfMinimumTemperature|double|PRINCIPAL TIME OF DAILY READING IN UTC OF MINIMUM TEMPERATURE|h|1|0|12|h|1|3 +026003|timeDifference|long|TIME DIFFERENCE|min|0|-1440|12|min|0|4 +026010|hoursIncluded|flag|HOURS INCLUDED|FLAG TABLE|0|0|26|FLAG TABLE|0|9 +026020|durationOfPrecipitation|long|DURATION OF PRECIPITATION|min|0|0|11|min|0|4 +026021|nonCoordinateYear|long|YEAR|a|0|0|12|a|0|4 +026022|nonCoordinateMonth|long|MONTH|mon|0|0|4|mon|0|2 +026023|nonCoordinateDay|long|DAY|d|0|0|6|d|0|2 +026030|measurementIntegrationTime|double|MEASUREMENT INTEGRATION TIME|s|2|0|8|s|2|3 +027001|nonCoordinateLatitude|double|LATITUDE (HIGH ACCURACY)|deg|5|-9000000|25|deg|5|7 +027002|nonCoordinateLatitude|double|LATITUDE (COARSE ACCURACY)|deg|2|-9000|15|deg|2|4 +027003|alternateLatitude|double|ALTERNATE LATITUDE (COARSE ACCURACY)|deg|2|-9000|15|deg|2|4 +027004|alternateLatitude|double|ALTERNATE LATITUDE (HIGH ACCURACY)|deg|5|-9000000|25|deg|5|7 +027010|footprintAxis1|long|FOOTPRINT AXIS 1|m|-1|0|14|m|-1|5 +027020|satelliteLocationCounter|long|SATELLITE LOCATION COUNTER|Numeric|0|0|16|Numeric|0|5 +027021|satelliteSublocationDimension|long|SATELLITE SUBLOCATION DIMENSION|Numeric|0|0|16|Numeric|0|5 +027031|DistanceFromEarthCentreInDirectionOf0DegreesLongitude|double|IN DIRECTION OF 0 DEGREES LONGITUDE, DISTANCE FROM THE EARTH'S CENTRE|m|2|-1073741824|31|m|2|10 +027079|horizontalWidthOfSampledVolume|long|HORIZONTAL WIDTH OF SAMPLED VOLUME|m|0|0|18|m|0|6 +027080|viewingAzimuthAngle|double|VIEWING AZIMUTH ANGLE|deg|2|0|16|deg|0|5 +028001|nonCoordinateLongitude|double|LONGITUDE (HIGH ACCURACY)|deg|5|-18000000|26|deg|5|8 +028002|nonCoordinateLongitude|double|LONGITUDE (COARSE ACCURACY)|deg|2|-18000|16|deg|2|5 +028003|alternateLongitude|double|ALTERNATE LONGITUDE (COARSE ACCURACY)|deg|2|-18000|16|deg|2|5 +028004|alternateLongitude|double|ALTERNATE LONGITUDE (HIGH ACCURACY)|deg|5|-18000000|26|deg|5|8 +028010|footprintAxis2|long|FOOTPRINT AXIS 2|m|-1|0|14|m|-1|5 +028031|DistanceFromEarthCentreInDirection90DegreesEast|double|IN DIRECTION 90 DEGREES EAST, DISTANCE FROM THE EARTH'S CENTRE|m|2|-1073741824|31|m|2|10 +029001|projectionType|table|PROJECTION TYPE|CODE TABLE|0|0|3|CODE TABLE|0|1 +029002|coordinateGridType|table|COORDINATE GRID TYPE|CODE TABLE|0|0|3|CODE TABLE|0|1 +029014|optionalListOfParametersForAnExternalMapProjectionLibrary|string|OPTIONAL LIST OF PARAMETERS FOR AN EXTERNAL MAP PROJECTION LIBRARY|CCITT IA5|0|0|504|Character|0|63 +030001|pixelValue4Bits|long|PIXEL VALUE (4 BITS)|Numeric|0|0|4|Numeric|0|2 +030002|pixelValue8Bits|long|PIXEL VALUE (8 BITS)|Numeric|0|0|8|Numeric|0|3 +030004|pixelValue16Bits|long|PIXEL VALUE (16 BITS)|Numeric|0|0|16|Numeric|0|5 +030010|numberOfGridPoints|long|NUMBER OF GRID POINTS|Numeric|0|0|13|Numeric|0|4 +030021|numberOfPixelsPerRow|long|NUMBER OF PIXELS PER ROW|Numeric|0|0|12|Numeric|0|4 +030022|numberOfPixelsPerColumn|long|NUMBER OF PIXELS PER COLUMN|Numeric|0|0|12|Numeric|0|4 +030031|pictureType|table|PICTURE TYPE|CODE TABLE|0|0|4|CODE TABLE|0|2 +030032|combinationWithOtherData|flag|COMBINATION WITH OTHER DATA|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +030033|numberOfBinsAlongRadial|long|NUMBER OF BINS ALONG THE RADIAL|Numeric|0|0|12|Numeric|0|4 +030034|numberOfAzimuths|long|NUMBER OF AZIMUTHS|Numeric|0|0|12|Numeric|0|4 +031000|shortDelayedDescriptorReplicationFactor|long|SHORT DELAYED DESCRIPTOR REPLICATION FACTOR|Numeric|0|0|1|NA|0|0 +031001|delayedDescriptorReplicationFactor|long|DELAYED DESCRIPTOR REPLICATION FACTOR|Numeric|0|0|8|NA|0|0 +031002|extendedDelayedDescriptorReplicationFactor|long|EXTENDED DELAYED DESCRIPTOR REPLICATION FACTOR|Numeric|0|0|16|NA|0|0 +031011|delayedDescriptorAndDataRepetitionFactor|long|DELAYED DESCRIPTOR AND DATA REPETITION FACTOR|Numeric|0|0|8|NA|0|0 +031012|extendedDelayedDescriptorAndDataRepetitionFactor|long|EXTENDED DELAYED DESCRIPTOR AND DATA REPETITION FACTOR|Numeric|0|0|16|NA|0|0 +031021|associatedFieldSignificance|table|ASSOCIATED FIELD SIGNIFICANCE|CODE TABLE|0|0|6|NA|0|0 +031031|dataPresentIndicator|flag|DATA PRESENT INDICATOR|FLAG TABLE|0|0|1|NA|0|0 +033002|qualityInformation|table|QUALITY INFORMATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +033003|qualityInformation|table|QUALITY INFORMATION|CODE TABLE|0|0|3|CODE TABLE|0|1 +033005|qualityInformationAwsData|flag|QUALITY INFORMATION (AWS DATA)|FLAG TABLE|0|0|30|FLAG TABLE|0|10 +033006|internalMeasurementStatusInformationAws|table|INTERNAL MEASUREMENT STATUS INFORMATION (AWS)|CODE TABLE|0|0|3|CODE TABLE|0|1 +033007|percentConfidence|long|PER CENT CONFIDENCE|%|0|0|7|%|0|3 +033015|dataQualityCheckIndicator|table|DATA QUALITY-CHECK INDICATOR|CODE TABLE|0|0|6|CODE TABLE|0|2 +033020|qualityControlIndicationOfFollowingValue|table|QUALITY CONTROL INDICATION OF FOLLOWING VALUE|CODE TABLE|0|0|3|CODE TABLE|0|1 +033021|qualityOfFollowingValue|table|QUALITY OF FOLLOWING VALUE|CODE TABLE|0|0|2|CODE TABLE|0|1 +033022|qualityOfBuoySatelliteTransmission|table|QUALITY OF BUOY SATELLITE TRANSMISSION|CODE TABLE|0|0|2|CODE TABLE|0|1 +033023|qualityOfBuoyLocation|table|QUALITY OF BUOY LOCATION|CODE TABLE|0|0|2|CODE TABLE|0|1 +033024|stationElevationQualityMarkForMobileStations|table|STATION ELEVATION QUALITY MARK (FOR MOBILE STATIONS)|CODE TABLE|0|0|4|CODE TABLE|0|2 +033025|acarsInterpolatedValuesIndicator|table|ACARS INTERPOLATED VALUES INDICATOR|CODE TABLE|0|0|3|CODE TABLE|0|1 +033026|moistureQuality|table|MOISTURE QUALITY|CODE TABLE|0|0|6|CODE TABLE|0|2 +033027|locationQualityClassRangeOfRadiusOf66Confidence|table|LOCATION QUALITY CLASS (RANGE OF RADIUS OF 66 % CONFIDENCE)|CODE TABLE|0|0|3|CODE TABLE|0|1 +033028|snapshotOverallQuality|table|SNAPSHOT OVERALL QUALITY|CODE TABLE|0|0|3|CODE TABLE|0|1 +033030|scanLineStatusFlagsForAtovs|flag|SCAN LINE STATUS FLAGS FOR ATOVS|FLAG TABLE|0|0|24|FLAG TABLE|0|8 +033031|scanLineQualityFlagsForAtovs|flag|SCAN LINE QUALITY FLAGS FOR ATOVS|FLAG TABLE|0|0|24|FLAG TABLE|0|8 +033032|channelQualityFlagsForAtovs|flag|CHANNEL QUALITY FLAGS FOR ATOVS|FLAG TABLE|0|0|24|FLAG TABLE|0|8 +033033|fieldOfViewQualityFlagsForAtovs|flag|FIELD OF VIEW QUALITY FLAGS FOR ATOVS|FLAG TABLE|0|0|24|FLAG TABLE|0|8 +033035|qualityControl|table|MANUAL/AUTOMATIC QUALITY CONTROL|CODE TABLE|0|0|4|CODE TABLE|0|2 +033036|nominalConfidenceThreshold|long|NOMINAL CONFIDENCE THRESHOLD|%|0|0|7|%|0|3 +033037|windCorrelationError|flag|WIND CORRELATION ERROR|FLAG TABLE|0|0|20|FLAG TABLE|0|7 +033038|qualityFlagsForGroundBasedGnssData|flag|QUALITY FLAGS FOR GROUND-BASED GNSS DATA|FLAG TABLE|0|0|10|FLAG TABLE|0|4 +033039|radioOccultationDataQualityFlags|flag|QUALITY FLAGS FOR RADIO OCCULTATION DATA|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033040|confidenceInterval|long|CONFIDENCE INTERVAL|%|0|0|7|%|0|3 +033041|attributeOfFollowingValue|table|ATTRIBUTE OF FOLLOWING VALUE|CODE TABLE|0|0|2|CODE TABLE|0|1 +033042|typeOfLimitRepresentedByFollowingValue|table|TYPE OF LIMIT REPRESENTED BY FOLLOWING VALUE|CODE TABLE|0|0|3|CODE TABLE|0|1 +033043|astConfidence|flag|AST CONFIDENCE|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +033044|asarQualityInformation|flag|ASAR QUALITY INFORMATION|FLAG TABLE|0|0|15|FLAG TABLE|0|5 +033045|probabilityOfFollowingEvent|long|PROBABILITY OF FOLLOWING EVENT|%|0|0|7|%|0|3 +033046|conditionalProbability|long|CONDITIONAL PROBABILITY OF FOLLOWING EVENT WITH RESPECT TO SPECIFIED CONDITIONING EVENT|%|0|0|7|%|0|3 +033047|measurementConfidenceData|flag|MEASUREMENT CONFIDENCE DATA|FLAG TABLE|0|0|31|FLAG TABLE|0|11 +033048|confidenceMeasureOfSarInversion|table|CONFIDENCE MEASURE OF SAR INVERSION|CODE TABLE|0|0|2|CODE TABLE|0|1 +033049|confidenceMeasureOfWindRetrieval|table|CONFIDENCE MEASURE OF WIND RETRIEVAL|CODE TABLE|0|0|2|CODE TABLE|0|1 +033050|globalGtsppQualityFlag|table|GLOBAL GTSPP QUALITY FLAG|CODE TABLE|0|0|4|CODE TABLE|0|2 +033052|sBandOceanRetrackingQuality|flag|S BAND OCEAN RETRACKING QUALITY|FLAG TABLE|0|0|21|FLAG TABLE|0|7 +033053|kuBandOceanRetrackingQuality|flag|KU BAND OCEAN RETRACKING QUALITY|FLAG TABLE|0|0|21|FLAG TABLE|0|7 +033054|overallQualityOfRetrievedAtmosphericProfile|table|OVERALL QUALITY OF RETRIEVED ATMOSPHERIC PROFILE|CODE TABLE|0|0|3|CODE TABLE|0|1 +033055|windVectorQualityFlag|flag|WIND VECTOR QUALITY FLAG|FLAG TABLE|0|0|24|FLAG TABLE|0|8 +033056|sigma0QualityFlag|flag|SIGMA-0 QUALITY FLAG|FLAG TABLE|0|0|24|FLAG TABLE|0|8 +033060|gqisFlagQual|table|GQISFLAGQUAL - INDIVIDUAL IASI-SYSTEM QUALITY FLAG|CODE TABLE|0|0|2|CODE TABLE|0|1 +033061|gqisQualIndex|long|GQISQUALINDEX - INDICATOR FOR INSTRUMENT NOISE PERFORMANCE (CONTRIBUTIONS FROM SPECTRAL AND RADIOMETRIC CALIBRATION)|%|0|0|7|%|0|3 +033062|gqisQualIndexLoc|long|GQISQUALINDEXLOC - INDICATOR FOR GEOMETRIC QUALITY INDEX|%|0|0|7|%|0|3 +033063|gqisQualIndexRad|long|GQISQUALINDEXRAD - INDICATOR FOR INSTRUMENT NOISE PERFORMANCE (CONTRIBUTIONS FROM RADIOMETRIC CALIBRATION)|%|0|0|7|%|0|3 +033064|gqisQualIndexSpect|long|GQISQUALINDEXSPECT - INDICATOR FOR INSTRUMENT NOISE PERFORMANCE (CONTRIBUTIONS FROM SPECTRAL CALIBRATION)|%|0|0|7|%|0|3 +033065|gqisSysTecQual|long|GQISSYSTECSONDQUAL - OUTPUT OF SYSTEM TEC (TECHNICAL EXPERTISE CENTRE) QUALITY FUNCTION|Numeric|0|0|24|Numeric|0|8 +033066|amvQualityFlag|flag|AMV QUALITY FLAG|FLAG TABLE|0|0|24|FLAG TABLE|0|8 +033070|totalOzoneQuality|table|TOTAL OZONE QUALITY|CODE TABLE|0|0|4|CODE TABLE|0|2 +033071|profileOzoneQuality|table|PROFILE OZONE QUALITY|CODE TABLE|0|0|4|CODE TABLE|0|2 +033072|ozoneError|table|OZONE ERROR|CODE TABLE|0|0|5|CODE TABLE|0|2 +033075|scanLevelDataValidityQualityFlags|flag|SCAN-LEVEL QUALITY FLAGS|FLAG TABLE|0|0|13|FLAG TABLE|0|5 +033076|calibrationQualityFlags|flag|CALIBRATION QUALITY FLAGS|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +033077|fieldOfViewQualityFlags|flag|FIELD-OF-VIEW QUALITY FLAGS|FLAG TABLE|0|0|19|FLAG TABLE|0|7 +033078|geolocationQuality|table|GEOLOCATION QUALITY|CODE TABLE|0|0|4|CODE TABLE|0|2 +033079|granuleLevelQualityFlags|flag|GRANULE LEVEL QUALITY FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033080|scanLevelQualityFlags|flag|SCAN LEVEL QUALITY FLAGS|FLAG TABLE|0|0|20|FLAG TABLE|0|7 +033081|channelDataQualityFlags|flag|CHANNEL DATA QUALITY FLAGS|FLAG TABLE|0|0|12|FLAG TABLE|0|4 +033082|geolocationQualityFlags|flag|GEOLOCATION QUALITY FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033083|radianceDataQualityFlags|flag|RADIANCE DATA QUALITY FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033084|pixelLevelQualityFlags|flag|PIXEL LEVEL QUALITY FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033085|aerosolOpticalThicknessQualityFlags|flag|AEROSOL OPTICAL THICKNESS QUALITY FLAGS|FLAG TABLE|0|0|18|FLAG TABLE|0|6 +033086|qualityOfPixelLevelRetrieval|table|QUALITY OF PIXEL LEVEL RETRIEVAL|CODE TABLE|0|0|3|CODE TABLE|0|1 +033087|extentOfSatelliteWithinSouthAtlanticAnomalyBasedOnClimatologicalData|table|EXTENT OF SATELLITE WITHIN SOUTH ATLANTIC ANOMALY (BASED ON CLIMATOLOGICAL DATA)|CODE TABLE|0|0|4|CODE TABLE|0|1 +033088|ozoneTotalColumnQualityFlag|flag|OZONE TOTAL COLUMN QUALITY FLAG|FLAG TABLE|0|0|18|FLAG TABLE|0|6 +033089|noiseEquivalentDeltaTemperatureNedtQualityIndicatorsForWarmTargetCalibration|double|NOISE EQUIVALENT DELTA TEMPERATURE (NEDT) QUALITY INDICATORS FOR WARM TARGET CALIBRATION|K|2|0|12|K|2|4 +033090|nedtQualityIndicatorsForColdTargetCalibration|double|NEDT QUALITY INDICATORS FOR COLD TARGET CALIBRATION|K|2|0|12|K|2|4 +033091|nedtQualityIndicatorsForOverallCalibration|double|NEDT QUALITY INDICATORS FOR OVERALL CALIBRATION|K|2|0|12|K|2|4 +033092|bandSpecificOceanQualityFlag|flag|BAND SPECIFIC OCEAN QUALITY FLAG|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +033093|extendedQualityFlagsForGroundBasedGnssData|flag|EXTENDED QUALITY FLAGS FOR GROUND-BASED GNSS DATA|FLAG TABLE|0|0|31|FLAG TABLE|0|31 +033094|calibrationQualityControlFlags|flag|CALIBRATION QUALITY CONTROL FLAGS|FLAG TABLE|0|0|24|FLAG TABLE|0|24 +033095|mwiTemperaturesFlag|flag|MWI TEMPERATURES FLAG|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +033096|mwiCalibrationFlag|flag|MWI CALIBRATION FLAG|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033097|mwiScanQualityFlag|flag|MWI SCAN QUALITY FLAG|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033098|mwiDataQualityFlag|flag|MWI DATA QUALITY FLAG|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +033099|mwiNavigationStatusFlag|flag|MWI NAVIGATION STATUS FLAG|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033100|iciTemperaturesFlag|flag|ICI TEMPERATURES FLAG|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +033101|iciCalibrationFlag|flag|ICI CALIBRATION FLAG|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033102|iciScanQualityFlag|flag|ICI SCAN QUALITY FLAG|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033103|iciDataQualityFlag|flag|ICI DATA QUALITY FLAG|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +033104|iciNavigationStatusFlag|flag|ICI NAVIGATION STATUS FLAG|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033105|iciProcessingFlags|flag|ICI PROCESSING FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033106|mwiProcessingFlags|flag|MWI PROCESSING FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033107|mwsScanLineProcessingFlags|flag|MWS SCAN LINE PROCESSING FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033108|mwsNavigationStatusFlags|flag|MWS NAVIGATION STATUS FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033109|mwsOverallQualityFlags|flag|MWS OVERALL QUALITY FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033110|mwsChannelProcessingFlags|flag|MWS CHANNEL PROCESSING FLAGS|FLAG TABLE|0|0|9|FLAG TABLE|0|3 +033111|scaQualityFlags|flag|SCA QUALITY FLAGS|FLAG TABLE|0|0|32|FLAG TABLE|0|11 +033112|faradayRotationAngleOneWay|double|FARADAY ROTATION ANGLE (ONE WAY)|deg|2|-18000|16|deg|2|6 +033113|iasiNgGeneralQualityFlags|flag|IASI-NG GENERAL QUALITY FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +033114|outOfBoundsCheck|flag|OUT OF BOUNDS CHECK|FLAG TABLE|0|0|17|FLAG TABLE|0|6 +033115|aerosolOpticalDepthQualityInformation|table|AEROSOL OPTICAL DEPTH QUALITY INFORMATION|CODE TABLE|0|0|5|CODE TABLE|0|2 +033116|firstGuessInBoundsCheck|flag|FIRST GUESS IN BOUNDS CHECK|FLAG TABLE|0|0|17|FLAG TABLE|0|6 +033117|inBoundsCheck|flag|IN BOUNDS CHECK|FLAG TABLE|0|0|17|FLAG TABLE|0|6 +033118|relativeErrorPercentage|double|RELATIVE ERROR PERCENTAGE|%|2|-10000|15|%|2|5 +033119|forecastErrorPercentage|long|FORECAST ERROR PERCENTAGE|%|0|-100|8|%|0|3 +035000|fmAndRegionalCodeNumber|table|FM AND REGIONAL CODE NUMBER|CODE TABLE|0|0|10|CODE TABLE|0|3 +035001|timeFrameForMonitoring|table|TIME FRAME FOR MONITORING|CODE TABLE|0|0|3|CODE TABLE|0|1 +035011|numberOfReportsActuallyReceived|long|NUMBER OF REPORTS ACTUALLY RECEIVED|Numeric|0|0|14|Numeric|0|4 +035021|bulletinBeingMonitoredTtaaii|string|BULLETIN BEING MONITORED (TTAAII)|CCITT IA5|0|0|48|Character|0|6 +035022|bulletinBeingMonitoredYygggg|string|BULLETIN BEING MONITORED (YYGGGG)|CCITT IA5|0|0|48|Character|0|6 +035023|bulletinBeingMonitoredCccc|string|BULLETIN BEING MONITORED (CCCC)|CCITT IA5|0|0|32|Character|0|4 +035024|bulletinBeingMonitoredBbb|string|BULLETIN BEING MONITORED (BBB)|CCITT IA5|0|0|24|Character|0|3 +035030|discrepanciesInAvailabilityOfExpectedData|table|DISCREPANCIES IN THE AVAILABILITY OF EXPECTED DATA|CODE TABLE|0|0|4|CODE TABLE|0|1 +035031|qualifierOnMonitoringResults|table|QUALIFIER ON MONITORING RESULTS|CODE TABLE|0|0|7|CODE TABLE|0|2 +035032|causeOfMissingData|table|CAUSE OF MISSING DATA|CODE TABLE|0|0|4|CODE TABLE|0|1 +035033|observationAndCollectionDeficiencies|table|OBSERVATION AND COLLECTION DEFICIENCIES|CODE TABLE|0|0|7|CODE TABLE|0|2 +035034|statisticalTrendsForAvailabilityOfDataDuringSurveyPeriods|table|STATISTICAL TRENDS FOR AVAILABILITY OF DATA (DURING THE SURVEY PERIOD(S))|CODE TABLE|0|0|3|CODE TABLE|0|1 +035035|reasonForTermination|table|REASON FOR TERMINATION|CODE TABLE|0|0|5|CODE TABLE|0|2 +040001|surfaceSoilMoisture|double|SURFACE SOIL MOISTURE (MS)|%|1|0|10|%|1|4 +040002|estimatedErrorInSurfaceSoilMoisture|double|ESTIMATED ERROR IN SURFACE SOIL MOISTURE|%|1|0|10|%|1|4 +040003|meanSurfaceSoilMoisture|long|MEAN SURFACE SOIL MOISTURE|Numeric|3|0|10|Numeric|3|4 +040004|rainFallDetection|long|RAIN FALL DETECTION|Numeric|3|0|10|Numeric|3|4 +040005|soilMoistureCorrectionFlag|flag|SOIL MOISTURE CORRECTION FLAG|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +040006|soilMoistureProcessingFlag|flag|SOIL MOISTURE PROCESSING FLAG|FLAG TABLE|0|0|16|FLAG TABLE|0|6 +040007|soilMoistureQuality|double|SOIL MOISTURE QUALITY|%|1|0|10|%|1|4 +040008|frozenLandSurfaceFraction|double|FROZEN LAND SURFACE FRACTION|%|1|0|10|%|1|4 +040009|inundationAndWetlandFraction|double|INUNDATION AND WETLAND FRACTION|%|1|0|10|%|1|4 +040010|topographicComplexity|double|TOPOGRAPHIC COMPLEXITY|%|1|0|10|%|1|4 +040011|interpolationFlag|flag|INTERPOLATION FLAG|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +040012|radiometerDataQualityFlag|flag|RADIOMETER DATA QUALITY FLAG|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +040013|radiometerBrightnessTemperatureInterpretationFlag|table|RADIOMETER BRIGHTNESS TEMPERATURE INTERPRETATION FLAG|CODE TABLE|0|0|3|CODE TABLE|0|1 +040014|highFrequencyFluctuationsOfSeaSurfaceTopographyCorrection|double|HIGH-FREQUENCY FLUCTUATIONS OF THE SEA-SURFACE TOPOGRAPHY CORRECTION|m|4|-3000|13|m|4|4 +040015|normalizedDifferentialVegetationIndex|long|NORMALIZED DIFFERENTIAL VEGETATION INDEX (NDVI)|Numeric|2|-100|8|Numeric|2|3 +040016|residualRmsInBand|long|RESIDUAL RMS IN BAND|Numeric|3|0|14|Numeric|3|5 +040017|nonNormalizedPrincipalComponentScore|long|NON-NORMALIZED PRINCIPAL COMPONENT SCORE|Numeric|0|-1073741824|31|Numeric|0|10 +040018|averageOfImagerMeasurements|double|GIACAVGIMAGIIS - AVERAGE OF IMAGER MEASUREMENTS|W m-2 sr-1 m|6|0|24|W m-2 sr-1 m|6|8 +040019|giacvarimagiisVarianceOfImagerMeasurements|double|GIACVARIMAGIIS - VARIANCE OF IMAGER MEASUREMENTS|W m-2 sr-1 m|6|0|24|W m-2 sr-1 m|6|8 +040020|gqisFlagQualDetailed|flag|GQISFLAGQUALDETAILED - QUALITY FLAG FOR THE SYSTEM|FLAG TABLE|0|0|17|FLAG TABLE|0|6 +040021|fractionOfWeightedAvhrrPixelInIasiFovCoveredWithSnowOrIce|long|FRACTION OF WEIGHTED AVHRR PIXEL IN IASI FOV COVERED WITH SNOW/ICE|%|0|0|7|%|0|3 +040022|numberOfMissingBadOrFailedAvhrrPixels|long|NUMBER OF MISSING, BAD OR FAILED AVHRR PIXELS|Numeric|0|0|7|Numeric|0|3 +040023|auxiliaryAltimeterStateFlags|flag|AUXILIARY ALTIMETER STATE FLAGS|FLAG TABLE|0|0|5|FLAG TABLE|0|2 +040024|meteorologicalMapAvailability|table|METEOROLOGICAL MAP AVAILABILITY|CODE TABLE|0|0|3|CODE TABLE|0|1 +040025|interpolationFlagForMeanDiurnalTide|table|INTERPOLATION FLAG FOR MEAN DIURNAL TIDE|CODE TABLE|0|0|2|CODE TABLE|0|1 +040026|scoreQuantizationFactor|long|SCORE QUANTIZATION FACTOR|Numeric|2|0|16|Numeric|2|5 +040027|sunGlintAngle|double|SUN GLINT ANGLE|deg|2|-18000|16|deg|2|5 +040028|gmiQualityFlag|table|GMI QUALITY FLAG|CODE TABLE|0|0|4|CODE TABLE|0|2 +040029|horizontalObservationIntegrationLength|long|HORIZONTAL OBSERVATION INTEGRATION LENGTH|m|0|0|26|m|0|8 +040030|horizontalLineOfSightWind|double|HORIZONTAL LINE OF SIGHT WIND|m/s|2|-32767|16|m/s|2|5 +040031|errorEstimateOfHorizontalLineOfSightWind|double|ERROR ESTIMATE OF HORIZONTAL LINE OF SIGHT WIND|m/s|2|0|15|m/s|2|5 +040032|derivativeWindToPressure|double|DERIVATIVE WIND TO PRESSURE|m s-1 Pa-1|3|-100000|18|m s-1 Pa-1|3|6 +040033|derivativeWindToTemperature|double|DERIVATIVE WIND TO TEMPERATURE|m s-1 K-1|3|-100000|18|m s-1 K-1|3|6 +040034|derivativeWindToBackscatterRatio|double|DERIVATIVE WIND TO BACKSCATTER RATIO|m/s|3|-200000|19|m/s|3|6 +040035|satelliteRange|long|SATELLITE RANGE|m|0|380000|18|m|0|6 +040036|lidarL2bClassificationType|table|LIDAR L2B CLASSIFICATION TYPE|CODE TABLE|0|0|4|CODE TABLE|0|2 +040037|backscatterRatio|long|BACKSCATTER RATIO|Numeric|3|500|20|Numeric|3|7 +040038|cloudParticleSize|double|CLOUD PARTICLE SIZE|m|7|0|28|m|7|6 +040039|singleLookComplexImageIntensity|long|SINGLE LOOK COMPLEX IMAGE INTENSITY|Numeric|0|-25|5|Numeric|0|3 +040040|singleLookComplexImageSkewness|long|SINGLE LOOK COMPLEX IMAGE SKEWNESS|Numeric|2|1|13|Numeric|0|4 +040041|singleLookComplexImageKurtosis|long|SINGLE LOOK COMPLEX IMAGE KURTOSIS|Numeric|2|1|13|Numeric|0|4 +040042|singleLookComplexImageVariance|long|SINGLE LOOK COMPLEX IMAGE VARIANCE|Numeric|2|1|13|Numeric|0|4 +040043|satelliteManoeuvreIndicator|table|SATELLITE MANOEUVRE INDICATOR|CODE TABLE|0|0|3|CODE TABLE|0|1 +040044|dustIndex|long|DUST INDEX|Numeric|1|0|8|Numeric|1|3 +040045|cloudFormationAndHeightAssignment|flag|CLOUD FORMATION AND HEIGHT ASSIGNMENT|FLAG TABLE|0|0|5|FLAG TABLE|0|2 +040046|cloudinessSummary|table|CLOUDINESS SUMMARY|CODE TABLE|0|0|3|CODE TABLE|0|1 +040047|validationFlagForIasiOrIasiNgLevel1Product|table|VALIDATION FLAG FOR IASI OR IASI-NG LEVEL 1 PRODUCT|CODE TABLE|0|0|3|CODE TABLE|0|1 +040048|validationFlagOfAmsuALevel1DataFlow|table|VALIDATION FLAG OF AMSU-A LEVEL 1 DATA FLOW|CODE TABLE|0|0|3|CODE TABLE|0|1 +040049|cloudTestsExecutedAndResults|flag|CLOUD TESTS EXECUTED AND RESULTS|FLAG TABLE|0|0|16|FLAG TABLE|0|5 +040050|retrievalInitialisation|flag|RETRIEVAL INITIALISATION|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +040051|convergenceOfTheIterativeRetrieval|table|CONVERGENCE OF THE ITERATIVE RETRIEVAL|CODE TABLE|0|0|3|CODE TABLE|0|1 +040052|indicationOfSuperAdiabaticAndSuperSaturationInFinalRetrieval|flag|INDICATION OF SUPER-ADIABATIC AND SUPER-SATURATION IN FINAL RETRIEVAL|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +040053|numberOfIterationsUsedForRetrieval|long|NUMBER OF ITERATIONS USED FOR RETRIEVAL|Numeric|0|0|8|Numeric|0|3 +040054|potentialProcessingAndInputsErrors|flag|POTENTIAL PROCESSING AND INPUTS ERRORS|FLAG TABLE|0|0|13|FLAG TABLE|0|4 +040055|diagnosticsOnTheRetrieval|flag|DIAGNOSTICS ON THE RETRIEVAL|FLAG TABLE|0|0|21|FLAG TABLE|0|7 +040056|generalRetrievalQuality|table|GENERAL RETRIEVAL QUALITY|CODE TABLE|0|0|3|CODE TABLE|0|1 +040057|iasiLevel2RetrievalFlags|flag|IASI LEVEL 2 RETRIEVAL FLAGS|FLAG TABLE|0|0|31|FLAG TABLE|0|10 +040058|numberOfVectorsDescribingTheCharacterizationMatrices|long|NUMBER OF VECTORS DESCRIBING THE CHARACTERIZATION MATRICES|Numeric|0|0|8|Numeric|0|3 +040059|numberOfLayersActuallyRetrieved|long|NUMBER OF LAYERS ACTUALLY RETRIEVED|Numeric|0|0|8|Numeric|0|3 +040060|numberOfProfilesRetrievedInScanline|long|NUMBER OF PROFILES RETRIEVED IN SCANLINE|Numeric|0|0|8|Numeric|0|3 +040061|airPartialColumnsOnEachRetrievedLayer|double|AIR PARTIAL COLUMNS ON EACH RETRIEVED LAYER|mol cm-2|3|0|16|mol cm-2|3|5 +040062|aPrioriPartialColumnsOnEachRetrievedLayer|double|A-PRIORI PARTIAL COLUMNS ON EACH RETRIEVED LAYER|mol cm-2|10|0|16|mol cm-2|10|5 +040063|scalingVectorMultiplyingTheAPrioriVectorInOrderToDefineTheRetrievedVector|long|SCALING VECTOR MULTIPLYING THE A PRIORI VECTOR IN ORDER TO DEFINE THE RETRIEVED VECTOR|Numeric|5|0|26|Numeric|5|8 +040064|mainEigenvaluesOfTheSensitivityMatrix|long|MAIN EIGENVALUES OF THE SENSITIVITY MATRIX|Numeric|6|0|31|Numeric|6|10 +040065|mainEigenvectorsOfTheSensitivityMatrix|long|MAIN EIGENVECTORS OF THE SENSITIVITY MATRIX|Numeric|6|-1000000000|31|Numeric|6|10 +040066|qualityIndicatorForAtmosphericWaterVapour|long|QUALITY INDICATOR FOR ATMOSPHERIC WATER VAPOUR|Numeric|1|0|8|Numeric|1|3 +040067|qualityIndicatorForAtmosphericTemperature|long|QUALITY INDICATOR FOR ATMOSPHERIC TEMPERATURE|Numeric|1|0|8|Numeric|1|3 +040068|generalRetrievalQualityFlagForSo2|table|GENERAL RETRIEVAL QUALITY FLAG FOR SO2|CODE TABLE|0|0|4|CODE TABLE|0|2 +040069|pwlrEstimatedRetrievalErrorForSurfaceAirTemperature|double|PWLR ESTIMATED RETRIEVAL ERROR FOR SURFACE AIR TEMPERATURE|K|4|-1000000|21|K|4|7 +040070|pwlrEstimatedRetrievalErrorOfSurfaceDewpoint|double|PWLR ESTIMATED RETRIEVAL ERROR OF SURFACE DEWPOINT|K|4|-1000000|21|K|4|7 +040071|retrievalErrorCovarianceMatrixForOzoneInPrincipalComponentDomain|long|RETRIEVAL ERROR COVARIANCE MATRIX FOR OZONE IN PRINCIPAL COMPONENT DOMAIN|Numeric|4|-1000000|21|Numeric|4|7 +040072|pwlrEstimatedRetrievalQualityIndicatorOfAtmosphericOzone|long|PWLR ESTIMATED RETRIEVAL QUALITY INDICATOR OF ATMOSPHERIC OZONE|Numeric|1|0|8|Numeric|1|3 +040073|pwlrEstimatedRetrievalErrorOfSurfaceSkinTemperature|double|PWLR ESTIMATED RETRIEVAL ERROR OF SURFACE SKIN TEMPERATURE|K|1|0|8|K|1|3 +040074|generalInterferometryQualityFlags|flag|GENERAL INTERFEROMETRY QUALITY FLAGS|FLAG TABLE|0|0|16|FLAG TABLE|0|0 +040075|retrievalErrorCovarianceMatrixForHumidityInPrincipalComponentDomain|long|RETRIEVAL ERROR COVARIANCE MATRIX FOR HUMIDITY IN PRINCIPAL COMPONENT DOMAIN|Numeric|0|0|21|Numeric|0|7 +040076|retrievalErrorCovarianceMatrixForTemperatureInPrincipalComponentDomain|long|RETRIEVAL ERROR COVARIANCE MATRIX FOR TEMPERATURE IN PRINCIPAL COMPONENT DOMAIN|Numeric|0|0|21|Numeric|0|7 +040077|oceanProductQualityFlag|flag|OCEAN PRODUCT QUALITY FLAG|FLAG TABLE|0|0|8|FLAG TABLE|0|3 +040080|cloudTestResultsForIasiNgLevel2|flag|CLOUD TEST RESULTS FOR IASI-NG LEVEL 2|FLAG TABLE|0|0|5|FLAG TABLE|0|2 +041001|pco2|double|PCO2|Pa|3|0|18|Pa|3|6 +041002|fluorescence|double|FLUORESCENCE|kg l-1|12|0|16|kg l-1|12|5 +041003|dissolvedNitrates|double|DISSOLVED NITRATES|umol/kg|3|0|17|umol/kg|3|5 +041004|chlorophyllA|double|CHLOROPHYLL-A|mg m-3|4|0|19|mg m-3|4|7 +041005|turbidity|double|TURBIDITY|NTU|2|0|12|NTU|2|4 +041006|seaWaterPh|long|SEA WATER PH|Numeric|4|70000|15|Numeric|4|5 +041007|bbp700|double|BBP700|/m|7|0|20|/m|7|7 +042001|dominantSwellWaveDirectionOfSpectralPartition|long|DOMINANT SWELL WAVE DIRECTION OF SPECTRAL PARTITION|deg|0|0|9|deg|0|3 +042002|significantSwellWaveHeightOfSpectralPartition|double|SIGNIFICANT SWELL WAVE HEIGHT OF SPECTRAL PARTITION|m|1|0|9|m|1|3 +042003|dominantSwellWavelengthOfSpectralPartition|double|DOMINANT SWELL WAVELENGTH OF SPECTRAL PARTITION|m|2|100|17|m|2|6 +042004|confidenceOfInversionForEachPartitionOfSwellWaveSpectra|table|CONFIDENCE OF INVERSION FOR EACH PARTITION OF SWELL WAVE SPECTRA|CODE TABLE|0|0|4|CODE TABLE|0|2 +042005|ambiguityRemovalFactorForSwellWavePartition|long|AMBIGUITY REMOVAL FACTOR FOR SWELL WAVE PARTITION|Numeric|5|-100000|18|Numeric|5|6 +042006|waveAge|long|WAVE AGE|Numeric|2|1|8|Numeric|2|3 +042007|shortestOceanWavelengthOnSpectralResolution|double|SHORTEST OCEAN WAVELENGTH ON SPECTRAL RESOLUTION|m|2|0|16|m|2|5 +042008|nonlinearInverseSpectralWidth|double|NONLINEAR INVERSE SPECTRAL WIDTH|m|2|0|16|m|2|5 +042009|binPartitionReference|long|BIN PARTITION REFERENCE|Numeric|0|0|8|Numeric|0|3 +042010|partitionNumber|long|PARTITION NUMBER|Numeric|0|1|4|Numeric|0|2 +042011|a1CoefficientOfTheDirectionalFourierSeries|long|A1 COEFFICIENT OF THE DIRECTIONAL FOURIER SERIES|Numeric|4|-20000|15|Numeric|4|6 +042012|b1CoefficientOfTheDirectionalFourierSeries|long|B1 COEFFICIENT OF THE DIRECTIONAL FOURIER SERIES|Numeric|4|-20000|15|Numeric|4|6 +042013|a2CoefficientOfTheDirectionalFourierSeries|long|A2 COEFFICIENT OF THE DIRECTIONAL FOURIER SERIES|Numeric|4|-20000|15|Numeric|4|6 +042014|b2CoefficientOfTheDirectionalFourierSeries|long|B2 COEFFICIENT OF THE DIRECTIONAL FOURIER SERIES|Numeric|4|-20000|15|Numeric|4|6 +042015|checkFactorK|long|CHECK FACTOR K|Numeric|2|0|12|Numeric|2|4 +042016|seaWaterPotentialDensityReferencedToSeaSurface|double|SEA WATER POTENTIAL DENSITY REFERENCED TO SEA SURFACE|kg m-3|5|-10000000|24|kg m-3|5|9 +042017|qualityFlagOfSwellWaveSpectra|table|QUALITY FLAG OF SWELL WAVE SPECTRA|CODE TABLE|0|0|4|CODE TABLE|0|2 +042018|qualityFlagForEachPartitionOfSwellWaveSpectra|table|QUALITY FLAG FOR EACH PARTITION OF SWELL WAVE SPECTRA|CODE TABLE|0|0|4|CODE TABLE|0|4 diff --git a/definitions/bufr/tables/0/wmo/42/sequence.def b/definitions/bufr/tables/0/wmo/42/sequence.def new file mode 100644 index 000000000..262e978d2 --- /dev/null +++ b/definitions/bufr/tables/0/wmo/42/sequence.def @@ -0,0 +1,1303 @@ +"300002" = [ 000002, 000003 ] +"300003" = [ 000010, 000011, 000012 ] +"300004" = [ 300003, 000013, 000014, 000015, 000016, 000017, 000018, 000019, 000020 ] +"300010" = [ 300003, 101000, 031001, 000030 ] +"300015" = [ 000030, 102000, 031002, 000024, 000025 ] +"300016" = [ 000030, 102000, 031001, 000026, 000027 ] +"301001" = [ 001001, 001002 ] +"301002" = [ 001003, 001004, 001005 ] +"301003" = [ 001011, 001012, 001013 ] +"301004" = [ 001001, 001002, 001015, 002001 ] +"301005" = [ 001035, 001034 ] +"301011" = [ 004001, 004002, 004003 ] +"301012" = [ 004004, 004005 ] +"301013" = [ 004004, 004005, 004006 ] +"301014" = [ 102002, 301011, 301012 ] +"301018" = [ 001114, 025185, 025186 ] +"301021" = [ 005001, 006001 ] +"301022" = [ 005001, 006001, 007001 ] +"301023" = [ 005002, 006002 ] +"301024" = [ 005002, 006002, 007001 ] +"301025" = [ 301023, 004003, 301012 ] +"301026" = [ 301021, 004003, 004003, 004004, 004004, 004005, 004005 ] +"301027" = [ 008007, 101000, 031001, 301028, 008007 ] +"301028" = [ 008040, 033042, 007010, 101000, 031002, 301023, 019007, 008040 ] +"301029" = [ 001018, 002001, 301011 ] +"301030" = [ 001018, 002001, 301011, 301024 ] +"301031" = [ 301001, 002001, 301011, 301012, 301022 ] +"301032" = [ 301001, 002001, 301011, 301012, 301024 ] +"301033" = [ 001005, 002001, 301011, 301012, 301021 ] +"301034" = [ 001005, 002001, 301011, 301012, 301023 ] +"301035" = [ 001005, 001012, 001013, 002001, 301011, 301012, 301023 ] +"301036" = [ 301003, 002001, 301011, 301012, 301023 ] +"301037" = [ 301001, 002011, 002012, 301011, 301012, 301022 ] +"301038" = [ 301001, 002011, 002012, 301011, 301012, 301024 ] +"301039" = [ 301003, 002011, 002012, 301011, 301012, 301023 ] +"301040" = [ 301003, 002011, 002012, 301011, 301012, 301024 ] +"301041" = [ 001007, 002021, 002022, 301011, 301012 ] +"301042" = [ 301041, 301021 ] +"301043" = [ 001007, 002023, 301011, 301013, 301021 ] +"301044" = [ 001007, 002024, 301011, 301013, 301021 ] +"301045" = [ 301011, 301012, 201138, 202131, 004006, 201000, 202000, 304030, 304031 ] +"301046" = [ 001007, 001012, 002048, 021119, 025060, 202124, 002026, 002027, 202000, 005040 + ] +"301047" = [ 001007, 025060, 001033, 001034, 001012, 301045, 002021, 301011, 301012, 201138, + 202131, 004006, 201000, 202000, 301023 ] +"301048" = [ 002104, 002121, 002113, 002026, 002027, 002111, 002140, 202127, 001013, 202126, + 007001, 202000, 025010, 021064 ] +"301049" = [ 002111, 002112, 021062, 021063, 021065 ] +"301051" = [ 001006, 002061, 301011, 301012, 301021, 008004 ] +"301055" = [ 001005, 002001, 301011, 301012, 301021, 001012, 001014 ] +"301056" = [ 001087, 001011, 001015, 002008, 002001, 301011, 301012, 301021, 007030, 007031 + ] +"301058" = [ 301011, 301012, 201152, 202135, 004006, 202000, 201000, 301021, 020111, 020112, + 020113, 020114, 020115, 020116, 020117, 020118, 020119, 025035, 020121, 020122, + 020123, 020124, 025175, 020023, 025063, 202136, 201136, 002121, 201000, 202000, + 025061, 002184, 002189, 025036, 101000, 031002, 301059 ] +"301059" = [ 301021, 007030, 007032 ] +"301062" = [ 101000, 031001, 301001 ] +"301065" = [ 001006, 001008, 002001, 002002, 002005, 002062, 002070, 002065 ] +"301066" = [ 301011, 301013, 301023, 007004, 002064, 008004 ] +"301070" = [ 002143, 002142, 002144 ] +"301071" = [ 001007, 001031, 002020, 002028, 002029 ] +"301072" = [ 301071, 301011, 301013, 301021 ] +"301074" = [ 002143, 002142, 002145, 002146 ] +"301075" = [ 301001, 001015, 301024, 008021, 301011, 301012 ] +"301076" = [ 002011, 002143, 002142 ] +"301089" = [ 001101, 001102 ] +"301090" = [ 301004, 301011, 301012, 301021, 007030, 007031 ] +"301091" = [ 002180, 002181, 002182, 002183, 002184, 002179, 002186, 002187, 002188, 002189 + ] +"301092" = [ 001011, 001003, 002001, 301011, 301012, 301021, 007030, 007031, 033024 ] +"301093" = [ 301036, 007030, 007031 ] +"301110" = [ 301001, 001011, 002011, 002014, 002003 ] +"301111" = [ 301001, 001011, 002011, 002013, 002014, 002003 ] +"301112" = [ 001006, 002011, 002013, 002014, 002003 ] +"301113" = [ 008021, 301011, 301013 ] +"301114" = [ 301021, 007030, 007031, 007007, 033024 ] +"301120" = [ 301001, 001094, 002011, 301121 ] +"301121" = [ 008041, 301122, 301021, 007031, 007007 ] +"301122" = [ 301011, 301012, 201135, 202130, 004006, 202000, 201000 ] +"301123" = [ 102002, 008041, 001062, 301001, 001094, 002011, 001018, 001095, 025061, 025068, + 001082, 001083, 001081, 002067, 002066, 002014, 025067, 025065, 025066, 002095, + 002096, 002097, 002016, 002083, 002080, 002081, 001093, 002084, 002085, 002086, + 002082, 008041, 301011 ] +"301125" = [ 001033, 001034, 025060, 001007, 002019, 001012 ] +"301126" = [ 001087, 001015, 002149, 301011, 301012, 301021 ] +"301128" = [ 001081, 001082, 001083, 001095, 002015, 002016, 002017, 002066, 002067, 002080, + 002081, 002082, 002083, 002084, 002085, 002086, 002095, 002096, 002097, 002103, + 002191, 025061, 035035 ] +"301129" = [ 001007, 001031, 002019, 002020 ] +"301130" = [ 301011, 301012, 202131, 201138, 004006, 201000, 202000 ] +"301131" = [ 301021, 007024, 005021, 007025, 005022 ] +"301132" = [ 301150, 301001, 301021, 007030, 008021, 301011, 301012, 002006, 001079, 001085 + ] +"301150" = [ 001125, 001126, 001127, 001128 ] +"302001" = [ 010004, 010051, 010061, 010063 ] +"302002" = [ 010004, 007004, 010003, 010061, 010063 ] +"302003" = [ 011011, 011012, 012004, 012006, 013003, 020001, 020003, 020004, 020005 ] +"302004" = [ 020010, 008002, 020011, 020013, 020012, 020012, 020012 ] +"302005" = [ 008002, 020011, 020012, 020013 ] +"302006" = [ 010004, 010051, 010062, 010063 ] +"302011" = [ 302001, 302003, 302004 ] +"302012" = [ 302002, 302003, 302004 ] +"302013" = [ 302006, 302003, 101000, 031001, 302005 ] +"302021" = [ 022001, 022011, 022021 ] +"302022" = [ 022002, 022012, 022022 ] +"302023" = [ 022003, 022013, 022023 ] +"302024" = [ 302022, 101002, 302023 ] +"302031" = [ 302001, 010062, 007004, 010009 ] +"302032" = [ 007032, 012101, 012103, 013003 ] +"302033" = [ 007032, 020001 ] +"302034" = [ 007032, 013023 ] +"302035" = [ 302032, 302033, 302034, 007032, 302004, 101000, 031001, 302005 ] +"302036" = [ 105000, 031001, 008002, 020011, 020012, 020014, 020017 ] +"302037" = [ 020062, 013013, 012113 ] +"302038" = [ 020003, 004024, 020004, 020005 ] +"302039" = [ 004024, 014031 ] +"302040" = [ 007032, 102002, 004024, 013011 ] +"302041" = [ 007032, 004024, 004024, 012111, 004024, 004024, 012112 ] +"302042" = [ 007032, 002002, 008021, 004025, 011001, 011002, 008021, 103002, 004025, 011043, + 011041 ] +"302043" = [ 302038, 101002, 302039, 302040, 302041, 302042, 007032 ] +"302044" = [ 004024, 002004, 013033 ] +"302045" = [ 004024, 014002, 014004, 014016, 014028, 014029, 014030 ] +"302046" = [ 004024, 004024, 012049 ] +"302047" = [ 102003, 008002, 020054 ] +"302048" = [ 005021, 007021, 020012, 005021, 007021 ] +"302049" = [ 008002, 020011, 020013, 020012, 020012, 020012, 008002 ] +"302050" = [ 008041, 005021, 007005, 202130, 006021, 202000, 008041, 201131, 202129, 002115, + 010004, 002115, 013003, 202000, 201000, 002115, 011001, 011002, 002115, 102002, + 012101, 004024, 002115, 012103, 012102, 101003, 020012, 020011, 020013, 101002, + 020003 ] +"302051" = [ 010004, 010051, 007004, 010003, 012004, 012051, 012016, 012017, 013004, 102004, + 008051, 008020 ] +"302052" = [ 007032, 007033, 012101, 002039, 012102, 012103, 013003 ] +"302053" = [ 007032, 007033, 020001 ] +"302054" = [ 302052, 302053, 007033, 302034, 007032, 302004, 101000, 031001, 302005 ] +"302055" = [ 020031, 020032, 020033, 020034, 020035, 020036, 020037, 020038 ] +"302056" = [ 002038, 007063, 022043, 007063 ] +"302057" = [ 302056, 302021, 302024 ] +"302058" = [ 007032, 007033, 004024, 004024, 012111, 004024, 004024, 012112 ] +"302059" = [ 007032, 007033, 002002, 008021, 004025, 011001, 011002, 008021, 103002, 004025, + 011043, 011041 ] +"302060" = [ 302038, 302040, 302058, 302059 ] +"302062" = [ 025188, 302001, 302093, 101000, 031000, 302053, 007032, 007033, 101000, 031000, + 302004, 101000, 031001, 302005, 008002, 101000, 031000, 302055, 101000, 031000, + 302056, 101000, 031000, 302021, 101000, 031000, 302024 ] +"302063" = [ 302038, 101000, 031000, 302040, 101000, 031000, 302034, 007032, 101000, 031000, + 302058, 101000, 031000, 302064 ] +"302064" = [ 007032, 007033, 002002, 008021, 004025, 011001, 011002, 008021, 103000, 031001, + 004025, 011043, 011041 ] +"302066" = [ 020023, 020024, 020027, 020054, 020023, 020027, 020054, 020025, 020026, 020027, + 020040, 020066, 020027, 020021, 020067, 020027 ] +"302067" = [ 001023, 004025, 002177, 101000, 031001, 020003, 103000, 031001, 005021, 020001, + 005021, 101000, 031000, 302056, 103000, 031000, 033041, 020058, 022061, 101000, + 031000, 302022, 101000, 031001, 302023, 104000, 031001, 020054, 020137, 020012, + 020090, 103000, 031001, 020054, 020137, 020136, 004025, 013012, 004025, 011042, + 104000, 031001, 008021, 004025, 011042, 008021, 115000, 031001, 008021, 004015, + 008021, 004025, 011001, 011002, 008021, 004015, 008021, 004025, 011001, 011002, + 008021, 004025, 004015, 103000, 031001, 004025, 004025, 020003, 110000, 031001, + 004025, 004025, 005021, 005021, 020054, 020024, 020025, 020026, 020027, 020063 + ] +"302069" = [ 007032, 007033, 033041, 020001 ] +"302070" = [ 007032, 007033, 011001, 011002, 011043, 011041, 011016, 011017 ] +"302071" = [ 007032, 007033, 008021, 004025, 011001, 011002, 008021, 103002, 004025, 011043, + 011041, 004025, 011016, 011017 ] +"302072" = [ 007032, 007033, 012101, 012103, 013003 ] +"302073" = [ 020010, 105004, 008002, 020011, 020012, 033041, 020013 ] +"302074" = [ 020003, 004025, 020004, 020005 ] +"302075" = [ 008021, 004025, 013055, 013058, 008021 ] +"302076" = [ 020021, 020022, 026020, 020023, 020024, 020025, 020026 ] +"302077" = [ 007032, 007033, 004025, 012111, 012112, 007032, 004025, 012112 ] +"302078" = [ 002176, 020062, 002177, 013013 ] +"302079" = [ 007032, 002175, 002178, 004025, 013011 ] +"302080" = [ 002185, 004025, 013033 ] +"302081" = [ 004025, 014031 ] +"302082" = [ 004025, 014002, 014004, 014016, 014028, 014029, 014030 ] +"302083" = [ 004025, 008023, 010004, 011001, 011002, 012101, 013003, 008023 ] +"302084" = [ 302031, 302072, 103000, 031000, 101005, 307063, 007061, 101000, 031000, 302069, + 007032, 007033, 105000, 031000, 020031, 020032, 002038, 022043, 302021, 101000, + 031000, 302078, 012113, 101000, 031000, 302004, 105000, 031001, 008002, 020011, + 020012, 033041, 020013, 302036, 101000, 031000, 302047, 008002, 101000, 031000, + 302048 ] +"302085" = [ 105000, 031000, 020003, 103002, 004024, 020004, 020005, 101000, 031000, 302175, + 102000, 031000, 004025, 302076, 102000, 031000, 004025, 013059, 007032, 007033, + 008021, 004025, 011001, 011002, 008021, 103003, 004025, 011043, 011041, 004025, + 011016, 011017, 302077, 007033, 302041, 106000, 031000, 007032, 002175, 002178, + 102005, 004024, 013011, 007032, 103000, 031000, 002185, 101002, 302044, 102000, + 031000, 101002, 302039, 102000, 031000, 101002, 302045, 101000, 031000, 302046, + 101000, 031000, 302083 ] +"302089" = [ 020101, 020102, 020103, 020104, 020105, 020106, 020107, 020108 ] +"302090" = [ 002038, 007063, 022045 ] +"302091" = [ 020001, 004024, 013011 ] +"302092" = [ 011104, 001012, 001013, 010038, 010039, 011007, 011008 ] +"302093" = [ 007032, 007033, 303099, 012101, 103000, 031000, 007032, 007033, 303099, 002039, + 002097, 003024, 003021, 012102, 012103, 013003, 007032, 007033, 303099, 002039, + 002097, 003021, 003024 ] +"302175" = [ 008021, 004025, 013155, 013058, 008021 ] +"303001" = [ 007003, 011001, 011002 ] +"303002" = [ 007004, 011001, 011002 ] +"303003" = [ 007004, 010003, 012001, 012003 ] +"303004" = [ 007004, 010003, 012001, 012003, 011001, 011002 ] +"303011" = [ 007003, 008001, 011001, 011002 ] +"303012" = [ 007004, 008001, 011001, 011002 ] +"303013" = [ 007004, 008001, 010003, 012001, 013003, 011001, 011002 ] +"303014" = [ 007004, 008001, 010003, 012001, 012003, 011001, 011002 ] +"303021" = [ 007004, 007004, 204007, 031021 ] +"303022" = [ 303021, 010003, 204000 ] +"303023" = [ 303021, 012001, 204000 ] +"303024" = [ 303021, 013016, 204000 ] +"303025" = [ 002025, 204007, 031021, 012063, 204000 ] +"303026" = [ 007004, 008003, 204007, 031021, 012001, 204000 ] +"303027" = [ 007004, 204007, 031021, 010003, 204000 ] +"303031" = [ 007004, 008003, 007021, 007022, 008012, 012061 ] +"303032" = [ 020011, 020016 ] +"303033" = [ 020010, 020016 ] +"303040" = [ 008041, 004025, 004026, 301021, 301122, 201131, 202129, 025069, 007004, 013003, + 202000, 201000, 002013, 012101, 010009, 102002, 008040, 035035 ] +"303041" = [ 002152, 002023, 007004, 011001, 011002, 002153, 002154, 012071 ] +"303050" = [ 004086, 008042, 007004, 005015, 006015, 011001, 011002 ] +"303051" = [ 004086, 008042, 007004, 005015, 006015, 011061, 011062 ] +"303052" = [ 004086, 008042, 007009, 005015, 006015, 011001, 011002 ] +"303053" = [ 004086, 008042, 007009, 005015, 006015, 011061, 011062 ] +"303054" = [ 004086, 008042, 007004, 010009, 005015, 006015, 012101, 012103, 011001, 011002 + ] +"303055" = [ 004086, 008042, 007009, 005015, 006015, 012101, 013009, 012103, 011001, 011002 + ] +"303056" = [ 004086, 008042, 207001, 007004, 010009, 207000, 005015, 006015, 012101, 012103, + 011001, 011002 ] +"303099" = [ 003005, 003006, 003007, 002096, 003022, 003003, 003020, 003004, 003023, 003008, + 003009 ] +"303100" = [ 013165, 013045, 013166, 013044, 013042, 013167, 013168, 013169, 013170, 013171 + ] +"304001" = [ 008003, 010004, 012001, 011001, 011002 ] +"304002" = [ 008003, 010004, 011001, 011002 ] +"304003" = [ 008003, 012001 ] +"304004" = [ 008003, 010004, 020010, 012001 ] +"304005" = [ 002024, 007004, 007004, 013003 ] +"304006" = [ 014001, 014001, 014003 ] +"304011" = [ 002163, 002164, 008012, 007024, 002057, 008021, 004001, 004002, 004003, 004004, + 008021, 004024, 110004, 008021, 004004, 004005, 004006, 008021, 004004, 004005, + 004006, 011001, 011002, 103010, 002163, 007004, 012001 ] +"304030" = [ 027031, 028031, 010031 ] +"304031" = [ 001041, 001042, 001043 ] +"304032" = [ 002153, 002154, 020081, 020082, 020012 ] +"304033" = [ 002152, 002166, 002167, 002153, 002154, 012075, 012076, 012063 ] +"304034" = [ 102004, 027001, 028001, 007022, 005043, 020010, 020016, 033003, 010040 ] +"304035" = [ 002153, 002154, 012063, 008001, 012063, 008001, 012063, 008001, 008003, 012063, + 008003, 012063, 008003, 012063, 008003 ] +"304036" = [ 020082, 008012, 020082, 008012, 020081, 008003, 020081, 008003, 020081, 008003, + 020081, 008003 ] +"304037" = [ 002153, 002154, 012063, 008011, 012063, 008011, 012063, 008011, 008003, 012063, + 008003, 012063, 008003, 012063 ] +"304039" = [ 201136, 005042, 201000, 014046 ] +"304040" = [ 025140, 025141, 040026, 040016, 025062, 101000, 031002, 040017 ] +"305001" = [ 011001, 011002, 013060, 013071 ] +"305002" = [ 301012, 012001, 013003, 014051, 013060, 013072, 013080, 013081, 013082, 013083, + 013084 ] +"305003" = [ 301012, 004065, 101000, 031001, 305001 ] +"305004" = [ 301030, 305002, 305003 ] +"305006" = [ 013072, 013082, 013019, 012001, 013073, 013060 ] +"305007" = [ 301029, 301012, 004065, 101000, 031001, 305006 ] +"305008" = [ 305006, 012030 ] +"305009" = [ 301029, 301012, 004065, 101000, 031001, 305008 ] +"305010" = [ 305008, 002091, 002091 ] +"305011" = [ 301029, 301012, 004065, 101000, 031001, 305010 ] +"305016" = [ 014021, 007004, 013003, 011002, 011001, 011041, 011043 ] +"305017" = [ 013080, 013081, 013083, 013085, 013084 ] +"305018" = [ 301029, 301012, 004065, 103000, 031001, 305008, 305016, 305017 ] +"306001" = [ 002032, 102000, 031001, 007062, 022042 ] +"306002" = [ 002031, 022004, 022031 ] +"306003" = [ 002002, 011011, 011012, 012004 ] +"306004" = [ 002032, 002033, 103000, 031001, 007062, 022043, 022062 ] +"306005" = [ 002031, 103000, 031001, 007062, 022004, 022031 ] +"306006" = [ 306003, 306002, 022063 ] +"306007" = [ 001012, 001014, 306008, 004024, 027003, 028003 ] +"306008" = [ 002034, 002035, 002036 ] +"306011" = [ 301021, 001075, 002147, 301011, 301013 ] +"306012" = [ 002007, 008015, 008032, 306029 ] +"306013" = [ 306012, 301011, 301013, 022120, 022121, 004015, 004065, 102000, 031001, 022038, + 022040 ] +"306014" = [ 306012, 301011, 301013, 022120, 022121, 004015, 004065, 101000, 031001, 022038 + ] +"306016" = [ 301011, 301013, 010004, 010051, 302032, 007032, 002002, 008021, 004025, 011001, + 011002, 004025, 011043, 011041, 025026, 012060 ] +"306017" = [ 002032, 008034, 106000, 031002, 007065, 008080, 033050, 022045, 008080, 033050, + 008034 ] +"306018" = [ 002032, 008034, 109000, 031002, 007065, 008080, 033050, 022045, 008080, 033050, + 022064, 008080, 033050, 008034 ] +"306019" = [ 001075, 301011, 301012, 022042, 022120, 022121, 004015, 004065 ] +"306020" = [ 001075, 301011, 301012, 022042, 022120, 022121, 004075, 004065 ] +"306021" = [ 001075, 301011, 301012, 022122, 022123, 012001, 303002 ] +"306022" = [ 001075, 301011, 301012, 022038, 022039 ] +"306023" = [ 001015, 301023, 301011, 301012, 022038, 022039, 022120, 022121 ] +"306024" = [ 306020, 102006, 022038, 022039 ] +"306025" = [ 306019, 102006, 022038, 022039 ] +"306027" = [ 001005, 001052, 002047, 301011, 301013 ] +"306028" = [ 306027, 301011, 301013, 301021 ] +"306029" = [ 025170, 025171, 025172 ] +"306030" = [ 306027, 306029, 111000, 031001, 033002, 301011, 301013, 025025, 025025, 025026, + 022185, 004015, 004065, 101004, 022182 ] +"306031" = [ 306027, 306029, 001053, 033002, 301011, 301013, 301011, 301013, 022185, 022182, + 004016, 004066, 101000, 031001, 022184 ] +"306033" = [ 002033, 007063, 022064 ] +"306034" = [ 002031, 003010, 002040, 022005, 022032 ] +"306035" = [ 112000, 031002, 007062, 008080, 033050, 007065, 008080, 033050, 022043, 008080, + 033050, 022064, 008080, 033050 ] +"306036" = [ 112000, 031002, 007062, 008080, 033050, 007065, 008080, 033050, 022031, 008080, + 033050, 022004, 008080, 033050 ] +"306037" = [ 109000, 031002, 007062, 008080, 033050, 007065, 008080, 033050, 022188, 008080, + 033050 ] +"306038" = [ 010004, 010051, 007033, 012101, 012103, 013003, 007033, 008021, 004025, 011001, + 011002, 008021, 004025, 011041, 004025, 007033, 002005, 007063, 022049 ] +"306039" = [ 022078, 022070, 022073, 022074, 022071, 022076, 022077 ] +"306040" = [ 022078, 022082, 106000, 031001, 022080, 022069, 022086, 022087, 022088, 022089 + ] +"306041" = [ 002032, 102000, 031001, 007062, 022043 ] +"306042" = [ 002169, 007033, 008021, 004025, 011001, 011002 ] +"306043" = [ 041001, 008043, 015028, 008043, 013080, 041005, 041003, 022188, 041002, 106000, + 031000, 004024, 014002, 014002, 014012, 014004, 004024 ] +"306044" = [ 203014, 022188, 203255, 108000, 031002, 007065, 008080, 033050, 201129, 022188, + 201000, 008080, 033050, 203000 ] +"306045" = [ 203011, 041004, 203255, 106000, 031002, 007065, 008080, 033050, 041004, 008080, + 033050, 203000 ] +"306046" = [ 203015, 041003, 203255, 106000, 031002, 007065, 008080, 033050, 041003, 008080, + 033050, 203000 ] +"306047" = [ 106000, 031002, 007065, 008080, 033050, 041006, 008080, 033050 ] +"306048" = [ 203009, 041007, 203255, 106000, 031002, 007065, 008080, 033050, 041007, 008080, + 033050, 203000 ] +"307001" = [ 301031, 302011 ] +"307002" = [ 301032, 302011 ] +"307003" = [ 307001, 101000, 031001, 302005 ] +"307004" = [ 307002, 101000, 031001, 302005 ] +"307005" = [ 307001, 101004, 302005 ] +"307006" = [ 307002, 101004, 302005 ] +"307007" = [ 301031, 302012 ] +"307008" = [ 301032, 302012 ] +"307009" = [ 301031, 302013 ] +"307011" = [ 001063, 002001, 301011, 301012, 301024, 007006, 011001, 011016, 011017, 011002, + 011041, 007006, 012001, 012003, 010052, 020009 ] +"307012" = [ 103000, 031001, 008023, 005021, 020001 ] +"307013" = [ 106000, 031001, 001064, 008014, 020061, 008014, 020061, 020018 ] +"307014" = [ 101000, 031001, 020019 ] +"307015" = [ 101000, 031001, 302005, 020002 ] +"307016" = [ 101000, 031001, 020020 ] +"307017" = [ 101000, 031001, 011070 ] +"307018" = [ 008016, 102000, 031001, 008017, 301012, 104000, 031001, 007006, 011001, 011002, + 011041, 020009, 101000, 031001, 020001, 307014 ] +"307020" = [ 307011, 307014, 307016 ] +"307021" = [ 307011, 307012, 307013, 307014, 307015, 307016, 307017, 307018, 307015 ] +"307022" = [ 001015, 301011, 301012, 301022, 008021, 004025, 010004, 012001, 013003, 033038, + 008022, 106025, 002020, 001050, 005021, 007021, 015031, 015032, 008060, 015033, + 015034, 008060, 015033, 015034, 015035, 201131, 202129, 013016, 202000, 201000, + 015011 ] +"307024" = [ 301150, 001015, 001040, 008021, 301011, 301013, 301022, 010036, 025061, 010004, + 012001, 013003, 120000, 031000, 025060, 008021, 004025, 115000, 031001, 015079, + 015080, 008022, 033093, 015089, 015035, 102002, 008060, 015083, 201131, 202129, + 013016, 202000, 201000, 015011, 131000, 031000, 025060, 008021, 004025, 033093, + 125000, 031001, 002020, 001050, 001150, 202127, 304030, 202000, 005021, 007021, + 015038, 015039, 015090, 015081, 015082, 015079, 015089, 015035, 102002, 008060, + 015083, 015084, 015085, 015086, 015087, 015088, 015011 ] +"307030" = [ 015001, 015002 ] +"307031" = [ 008022, 008023, 015001, 008023, 015001, 008023, 015002 ] +"307041" = [ 301001, 001015, 301024, 301011, 301012, 301070, 307030 ] +"307042" = [ 301001, 001015, 301024, 301011, 301012, 008021, 004025, 301070, 307031 ] +"307043" = [ 301001, 001015, 301024, 301011, 301012, 301074, 307030 ] +"307044" = [ 301001, 001015, 301024, 301011, 301012, 008021, 004025, 301074, 307031 ] +"307045" = [ 001063, 008079, 002001, 301011, 301012, 301023, 007030, 007031, 007032, 011001, + 011016, 011017, 008054, 011083, 011084, 011002, 008054, 011085, 011086, 011041, + 008054, 007032, 012023, 012024, 007032, 010052, 020009 ] +"307046" = [ 020060, 102000, 031001, 005021, 020059 ] +"307047" = [ 105000, 031001, 008002, 020011, 020012, 020013, 020092, 020002, 020091 ] +"307048" = [ 008016, 102000, 031001, 008017, 301012, 112000, 031000, 007032, 011001, 008054, + 011083, 011084, 011002, 008054, 011085, 011086, 011041, 008054, 007032, 020009, + 101000, 031000, 020060, 307014, 307047 ] +"307049" = [ 102000, 031000, 022043, 022021 ] +"307050" = [ 101000, 031000, 020085, 102000, 031001, 001064, 020085, 105000, 031001, 001064, + 020086, 020087, 020088, 020089 ] +"307051" = [ 307045, 307046, 307013, 307014, 307047, 307016, 307017, 307049, 307050, 101000, + 031001, 307048 ] +"307052" = [ 001063, 008039, 301011, 301012, 008079, 008039, 301011, 301012, 008039, 301011, + 301012, 301023, 007030, 007031 ] +"307053" = [ 007032, 011001, 008054, 011083, 011084, 011002, 008054, 011085, 011086, 011041, + 008054, 007032, 020009, 020060, 307014, 307047 ] +"307054" = [ 007032, 008039, 004003, 004004, 008023, 012023, 008039, 004003, 004004, 008023, + 012023, 008023, 007032 ] +"307055" = [ 033045, 008016, 008039, 004003, 301012, 008039, 004003, 301012, 307053 ] +"307056" = [ 307052, 307053, 307054, 101000, 031001, 307055 ] +"307060" = [ 007061, 012030 ] +"307061" = [ 301031, 101005, 307060 ] +"307062" = [ 301032, 101005, 307060 ] +"307063" = [ 007061, 012130 ] +"307064" = [ 004025, 106000, 031001, 007061, 201131, 202129, 012130, 201000, 202000 ] +"307071" = [ 301090, 004074, 004023, 008023, 010004, 010051, 007004, 010009, 007032, 012101, + 002051, 004051, 012118, 004052, 012119, 013004, 008023, 012151, 007032, 102005, + 008050, 008020, 014032, 014033, 008050, 008020, 102018, 008052, 008022, 007032, + 008053, 004003, 012152, 008053, 004003, 012153, 008053, 004003, 008023, 012101, + 008053, 004003, 008023, 012101, 008023, 007032, 002002, 008053, 004003, 011046, + 008053, 004003, 004004, 004023, 007032, 013060, 013051, 004053, 008050, 008020, + 102006, 008052, 008022, 008053, 004003, 013052, 007032 ] +"307072" = [ 004001, 004001, 004002, 004003, 004004, 004074, 004022, 008023, 010004, 010051, + 007004, 010009, 007032, 012101, 002051, 004051, 012118, 004052, 012119, 013004, + 012151, 007032, 014032, 008023, 004001, 004001, 004002, 004003, 004004, 004022, + 007032, 008023, 013060, 004053, 008023, 102008, 008050, 008020 ] +"307073" = [ 307071, 307072 ] +"307074" = [ 301001, 004001, 004002, 301021, 007030, 007032, 112000, 031001, 004003, 004004, + 004024, 102003, 008023, 012101, 008023, 004004, 004024, 013060, 013012, 013013 + ] +"307075" = [ 301150, 301001, 301021, 007030, 008095, 008096, 008094, 301011, 004023, 301013, + 204008, 031021, 013060, 204000, 004023, 301013, 204008, 031021, 013012, 204000, + 004023, 301013, 204008, 031021, 013013, 204000, 007032, 107003, 004023, 301013, + 008023, 204008, 031021, 012101, 204000, 008023 ] +"307076" = [ 301090, 004074, 004023, 008023, 010004, 010051, 007004, 010009, 007032, 012101, + 002051, 004051, 012118, 004052, 012119, 013004, 008023, 012151, 007032, 102005, + 008050, 008020, 014032, 014033, 008050, 008020, 102018, 008052, 008022, 007032, + 008053, 004003, 012152, 008053, 004003, 012153, 008053, 004003, 008023, 012101, + 008053, 004003, 008023, 012101, 008023, 007032, 002002, 008053, 004003, 011046, + 008053, 004003, 004004, 004074, 004023, 007032, 013060, 013051, 004053, 008050, + 008020, 102006, 008052, 008022, 008053, 004003, 013052, 007032 ] +"307077" = [ 004001, 004001, 004002, 004003, 004004, 004074, 004022, 008023, 010004, 010051, + 007004, 010009, 007032, 012101, 002051, 004051, 012118, 004052, 012119, 013004, + 012151, 007032, 014032, 008023, 004001, 004001, 004002, 004003, 004004, 004074, + 004022, 007032, 008023, 013060, 004053, 008023, 102008, 008050, 008020 ] +"307078" = [ 307076, 307077 ] +"307079" = [ 301090, 302031, 302035, 302036, 101000, 031000, 302047, 008002, 101000, 031000, + 302048, 302037, 102000, 031000, 022061, 020058, 101000, 031000, 302056, 101000, + 031000, 302055, 302043, 302044, 101000, 031001, 302045, 101000, 031000, 302046 + ] +"307080" = [ 301090, 302031, 302035, 302036, 302047, 008002, 302048, 302037, 302043, 302044, + 101002, 302045, 302046 ] +"307081" = [ 301090, 302031, 302035, 302036, 302047, 008002, 302048, 302037, 012122, 013056, + 013057, 020101, 020102, 020103, 020104, 020105, 020106, 020107, 020108, 302043, + 302044, 101002, 302045, 302046 ] +"307082" = [ 301090, 302031, 302035, 302036, 302047, 008002, 302048, 302037, 012121, 012122, + 302043, 302044, 101002, 302045, 302046 ] +"307083" = [ 301090, 302031, 302035, 302036, 302047, 008002, 302048, 302037, 012122, 302043, + 302044, 101002, 302045, 302046 ] +"307084" = [ 301090, 302031, 302035, 302036, 302047, 008002, 302048, 302037, 020055, 101000, + 031001, 205001, 302043, 302044, 101002, 302045, 302046 ] +"307086" = [ 301090, 302031, 302035, 302036, 008002, 302037, 302066, 302043, 302044, 101002, + 302045 ] +"307087" = [ 301001, 002001, 301011, 301012, 301023, 007030, 007031, 302001, 010062, 007004, + 010009, 007032, 012101, 012103, 013003, 007032, 020001, 302004, 101000, 031001, + 302005 ] +"307088" = [ 020003, 004024, 020004, 020005, 004024, 002004, 013033, 102002, 004024, 014031, + 102002, 004024, 013011, 007032, 004024, 012111, 004024, 012112, 007032, 002002, + 008021, 004025, 011001, 011002, 008021 ] +"307089" = [ 307087, 307088 ] +"307090" = [ 301092, 302031, 302035, 302036, 302047, 008002, 302048, 302037, 302043, 302044, + 101002, 302045, 302046 ] +"307091" = [ 301089, 301090, 008010, 301091, 302001, 007004, 010009, 302072, 103000, 031000, + 101005, 307063, 007061, 101000, 031000, 302069, 007032, 007033, 105000, 031000, + 020031, 020032, 002038, 022043, 302021, 101000, 031000, 302078, 101000, 031000, + 302073, 101000, 031000, 302074, 101000, 031000, 302175, 102000, 031000, 004025, + 302076, 302071, 302077, 007033, 101000, 031000, 302079, 007032, 101000, 031000, + 302080, 101000, 031000, 302081, 101000, 031000, 302082, 102000, 031000, 004025, + 013059, 101000, 031000, 302083, 033005, 033006 ] +"307092" = [ 301150, 301001, 208040, 001019, 208000, 301011, 301012, 301021, 007030, 001023, + 108000, 031000, 007031, 204018, 031021, 010004, 010051, 007004, 010009, 204000, + 115000, 031001, 007032, 008010, 204018, 031021, 012101, 012103, 202129, 201132, + 013003, 201000, 202000, 013009, 204000, 007032, 008010, 107000, 031001, 007061, + 204018, 031021, 012130, 013111, 204000, 007061, 105000, 031000, 033041, 204018, + 031021, 020001, 204000, 113000, 031000, 204018, 031021, 020010, 204000, 107000, + 031001, 008002, 204018, 031021, 020011, 020013, 204000, 008002, 105000, 031000, + 204018, 031021, 020062, 013013, 204000, 105000, 031000, 004025, 204018, 031021, + 020003, 204000, 105000, 031000, 004025, 204018, 031021, 013011, 204000, 115000, + 031001, 007032, 008021, 004025, 204018, 031021, 011001, 011002, 204000, 008021, + 204018, 031021, 011043, 011041, 204000, 007032, 105000, 031000, 004025, 204018, + 031021, 014031, 204000, 110000, 031000, 004025, 204018, 031021, 014002, 014002, + 014004, 014028, 014029, 014030, 204000, 113000, 031000, 004025, 002071, 002072, + 204018, 031021, 014072, 204000, 002071, 002072, 204018, 031021, 014072, 204000 + ] +"307096" = [ 301090, 301089, 008010, 301091, 302084, 302085, 033005, 033006 ] +"307101" = [ 301089, 001019, 002001, 301011, 301012, 301021, 007030, 007032, 012101, 007032, + 002177, 020062, 013013 ] +"307102" = [ 301089, 001018, 001015, 001104, 001105, 001106, 003017, 003018, 003019, 301011, + 301012, 301021, 007030, 007032, 012101, 012103, 013003, 007032, 020001, 109000, + 031001, 003016, 012128, 102000, 031001, 007061, 012129, 007061, 013116, 020138, + 004025, 020024, 013055, 020021, 013011, 007032, 008021, 004025, 011001, 011002, + 008021, 004025, 011043, 011041, 033005 ] +"307103" = [ 301150, 307101, 013117, 003028, 013163 ] +"307182" = [ 301090, 302031, 302035, 302036, 302047, 008002, 302048, 302037, 012120, 012122, + 302043, 302044, 101002, 302045, 302046 ] +"308001" = [ 301033, 302011, 022042 ] +"308002" = [ 301034, 302011, 022042 ] +"308003" = [ 301035, 302011, 022042 ] +"308004" = [ 301036, 302011, 022042 ] +"308005" = [ 308004, 302024 ] +"308006" = [ 010004, 010061, 010063, 011001, 011002, 012004, 013003, 022042 ] +"308007" = [ 301055, 302011, 007062, 022042 ] +"308009" = [ 301093, 302001, 302054, 008002, 302055, 302057, 302060 ] +"308010" = [ 001011, 113000, 031001, 301011, 301012, 301021, 004080, 022049, 004080, 022059, + 004080, 022005, 002042, 022032, 002042, 004080 ] +"308011" = [ 001011, 002001, 301011, 301012, 301023, 007030, 007031, 004074, 004023, 008023, + 010051, 007032, 007033, 012101, 013004, 007032, 007033, 302056, 008023, 004003, + 004004, 004023, 007032, 013060, 013051, 004053, 007032 ] +"308012" = [ 004001, 004001, 004002, 004003, 004004, 004074, 004022, 008023, 010051, 007032, + 007033, 012101, 013004, 007032, 007033, 302056, 008023, 004001, 004001, 004002, + 004003, 004004, 004022, 007032, 008023, 013060, 004053, 008023 ] +"308013" = [ 308011, 308012 ] +"308014" = [ 101000, 031000, 301018, 003001, 301093, 208032, 001079, 208000, 302062, 302063, + 101000, 031000, 302092, 101000, 031000, 306033, 101000, 031000, 306034, 101000, + 031000, 306043 ] +"308015" = [ 001003, 001020, 001005, 001011, 001007, 001001, 001002, 002044, 002045, 301011, + 301012, 301021, 022063, 022076, 022077, 022094, 025043, 022078, 105002, 002046, + 022070, 022071, 022073, 022074, 127000, 031001, 002046, 008090, 022102, 008090, + 022084, 120000, 031001, 022080, 022108, 022086, 022087, 022088, 022089, 105000, + 031001, 008090, 022104, 008090, 022186, 022187, 105000, 031001, 008090, 022106, + 008090, 022186, 022187 ] +"308016" = [ 001003, 001020, 001005, 001011, 001007, 001001, 001002, 002044, 002045, 301011, + 301012, 301021, 022063, 022076, 022077, 022094, 025044, 022079, 105002, 002046, + 022070, 022072, 022073, 022075, 127000, 031001, 002046, 008090, 022103, 008090, + 022084, 120000, 031001, 022081, 022108, 022086, 022087, 022088, 022089, 105000, + 031001, 008090, 022105, 008090, 022186, 022187, 105000, 031001, 008090, 022107, + 008090, 022186, 022187 ] +"308017" = [ 301056, 302001, 302052, 101000, 031000, 302056, 302064, 302053, 101000, 031000, + 302004, 101000, 031000, 302005, 101000, 031000, 302038, 101000, 031000, 306039 + ] +"308018" = [ 301150, 301093, 302001, 302072, 101000, 031000, 302056, 101000, 031000, 302064 + ] +"308021" = [ 001011, 002001, 301011, 301012, 301023, 007030, 007031, 004074, 004023, 008023, + 010051, 007032, 007033, 012101, 013004, 007032, 007033, 302056, 008023, 004003, + 004004, 004074, 004023, 007032, 013060, 013051, 004053, 007032 ] +"308022" = [ 004001, 004001, 004002, 004003, 004004, 004074, 004022, 008023, 010051, 007032, + 007033, 012101, 013004, 007032, 007033, 302056, 008023, 004001, 004001, 004002, + 004003, 004004, 004074, 004022, 007032, 008023, 013060, 004053, 008023 ] +"308023" = [ 308021, 308022 ] +"309001" = [ 301037, 101000, 031001, 303011 ] +"309002" = [ 301038, 101000, 031001, 303011 ] +"309003" = [ 301037, 101000, 031001, 303012 ] +"309004" = [ 301038, 101000, 031001, 303012 ] +"309005" = [ 301037, 302004, 101000, 031001, 303013 ] +"309006" = [ 301038, 302004, 101000, 031001, 303013 ] +"309007" = [ 301037, 302004, 101000, 031001, 303014 ] +"309008" = [ 301038, 302004, 101000, 031001, 303014 ] +"309011" = [ 301039, 101000, 031001, 303011 ] +"309012" = [ 301039, 101000, 031001, 303012 ] +"309013" = [ 301039, 302004, 101000, 031001, 303013 ] +"309014" = [ 301039, 302004, 101000, 031001, 303014 ] +"309015" = [ 301040, 101000, 031001, 303011 ] +"309016" = [ 301040, 101000, 031001, 303012 ] +"309017" = [ 301040, 302004, 101000, 031001, 303013 ] +"309018" = [ 301040, 302004, 101000, 031001, 303014 ] +"309019" = [ 301031, 002003, 101000, 031001, 303011 ] +"309020" = [ 301031, 002003, 104000, 031001, 007003, 011003, 011004, 011005 ] +"309021" = [ 301001, 005001, 006001, 007030, 301014, 002003, 002121, 112000, 031001, 007007, + 301021, 011003, 011110, 011004, 011111, 033002, 011006, 011112, 033002, 010071, + 027079 ] +"309022" = [ 301001, 005001, 006001, 007030, 301014, 002003, 002121, 110000, 031001, 007007, + 301021, 012007, 012008, 033002, 011006, 011112, 033002, 010071, 027079 ] +"309023" = [ 301001, 005001, 006001, 007030, 301014, 002003, 302004, 302005, 114000, 031001, + 007007, 301021, 101000, 031001, 002121, 015063, 015064, 015065, 015066, 015067, + 015068, 015069, 015070, 015071, 015072, 033002, 010071, 027079 ] +"309024" = [ 301132, 201151, 202130, 002121, 202000, 201000, 008021, 004025, 109000, 031002, + 007007, 301021, 011003, 011004, 033002, 011006, 033002, 010071, 027079 ] +"309025" = [ 301132, 201151, 202130, 002121, 202000, 201000, 008021, 004025, 106000, 031002, + 007007, 301021, 012007, 033002, 010071, 027079 ] +"309026" = [ 301132, 302004, 302005, 008092, 008093, 008021, 004025, 201138, 202126, 002121, + 202000, 201000, 115000, 031002, 007007, 301021, 015073, 015064, 015074, 015066, + 015075, 015068, 015076, 015077, 015078, 015072, 033002, 010071, 027079 ] +"309027" = [ 301132, 008043, 025061, 302004, 302005, 008092, 008093, 008021, 004025, 118000, + 031001, 002090, 115000, 031002, 007007, 301021, 015073, 015064, 015074, 015066, + 015075, 015068, 015076, 015077, 015078, 015072, 033002, 010071, 027079 ] +"309030" = [ 015004, 015005, 104000, 031001, 004015, 008006, 007004, 015003 ] +"309031" = [ 015004, 015005, 104000, 031001, 004025, 008006, 007004, 015003 ] +"309040" = [ 301075, 301076, 309030 ] +"309041" = [ 307041, 301075, 301076, 309030 ] +"309042" = [ 307042, 301075, 301076, 309030 ] +"309043" = [ 307043, 301075, 301076, 309030 ] +"309044" = [ 307044, 301075, 301076, 309030 ] +"309045" = [ 301075, 301076, 309031 ] +"309046" = [ 307041, 301075, 301076, 309031 ] +"309047" = [ 307042, 301075, 301076, 309031 ] +"309048" = [ 307043, 301075, 301076, 309031 ] +"309049" = [ 307044, 301075, 301076, 309031 ] +"309050" = [ 301110, 301113, 301114, 101000, 031002, 303050, 101000, 031001, 303051 ] +"309051" = [ 301110, 301113, 301114, 101000, 031002, 303052, 101000, 031001, 303053 ] +"309052" = [ 301111, 301113, 301114, 302049, 022043, 101000, 031002, 303054, 101000, 031001, + 303051 ] +"309053" = [ 301112, 301113, 301114, 101000, 031002, 303054, 101000, 031001, 303051 ] +"309054" = [ 301001, 001011, 301011, 301012, 301021, 007030, 007031, 007007, 004023, 004059, + 115000, 031001, 008001, 008023, 007004, 010009, 012101, 012103, 008023, 011001, + 011002, 008023, 011019, 008050, 008020, 008050, 008020 ] +"309055" = [ 301111, 025061, 001081, 001082, 002067, 002095, 002096, 002097, 002081, 002082, + 002084, 002191, 301113, 301114, 010004, 302032, 007032, 002002, 011001, 011002, + 007032, 020003, 302049, 022043, 101000, 031002, 303055 ] +"309056" = [ 301150, 301111, 301128, 301113, 008091, 301021, 007007, 008091, 101000, 031002, + 303056, 101000, 031001, 303051 ] +"309057" = [ 301150, 301111, 301128, 301113, 301114, 302049, 022043, 101000, 031002, 303056, + 101000, 031001, 303051 ] +"309060" = [ 301123, 301121, 302050, 303040 ] +"309061" = [ 301120, 008041, 301122, 201131, 202129, 025069, 007004, 202000, 201000, 033007, + 033035, 033015, 013009, 033007, 033035, 033015, 002013, 012101, 033007, 033035, + 033015 ] +"309062" = [ 301120, 008041, 301122, 005001, 033035, 033015, 006001, 033035, 033015, 007007, + 033035, 033015, 011003, 033035, 033015, 011004, 033035, 033015, 033007 ] +"309063" = [ 301120, 008041, 301122, 005001, 033035, 033015, 006001, 033035, 033015, 007007, + 033035, 033015, 011003, 033035, 033015, 011004, 033035, 033015, 033007 ] +"309064" = [ 301120, 008041, 301122, 201131, 202129, 104002, 025069, 007004, 033035, 033015, + 013003, 033035, 033015, 202000, 201000, 104002, 002013, 012101, 033035, 033015, + 012103, 033035, 033015, 010009, 033035, 033015 ] +"309065" = [ 301120, 008041, 301122, 005001, 033035, 033015, 006001, 033035, 033015, 007007, + 033035, 033015, 011003, 033035, 033015, 011004, 033035, 033015 ] +"309066" = [ 301120, 008041, 301122, 008040, 201131, 202129, 025069, 007004, 013003, 202000, + 201000, 002013, 012101, 012103, 010009, 010007, 011002, 011001 ] +"309070" = [ 001035, 001032, 001015, 001063, 301001, 301011, 301012, 301021, 207001, 010001, + 207000, 008086, 007030, 025031, 008021, 004014, 010004, 010051, 010009, 020010, + 013095, 128000, 031002, 113000, 031000, 008086, 007004, 011001, 011002, 012101, + 012102, 012103, 010009, 103000, 031000, 011021, 011022, 011005, 104000, 031000, + 008086, 007006, 011001, 011002, 105000, 031000, 008086, 007006, 012101, 012102, + 012103 ] +"309071" = [ 301001, 002014, 002003, 301113, 301114, 301023, 007030, 007007, 103000, 031001, + 007009, 011001, 011002 ] +"309072" = [ 301132, 107000, 031001, 003032, 003033, 002106, 102000, 031001, 003032, 012190, + 113000, 031001, 008021, 301011, 301013, 008021, 004026, 002134, 002135, 020143, + 103000, 031001, 003032, 033021, 012063, 114000, 031001, 008021, 301011, 301013, + 008021, 004026, 002134, 002135, 105000, 031001, 003034, 003031, 002106, 033021, + 012063 ] +"309073" = [ 301132, 008021, 004026, 013095, 013109, 020013, 008092, 008093, 013095, 013109, + 020013, 008092, 008093, 303100, 117000, 031002, 007007, 301021, 033021, 012001, + 033021, 013002, 033021, 013003, 008092, 008093, 012001, 013002, 013003, 008092, + 008093, 010071, 027079 ] +"310001" = [ 301042, 303031, 303032, 101026, 303025 ] +"310002" = [ 301042, 303031, 303032, 101009, 303023 ] +"310003" = [ 301042, 303031, 303032, 101006, 303023 ] +"310004" = [ 301042, 303031, 303032, 101003, 303024 ] +"310005" = [ 301042, 303031, 303033, 101000, 031001, 303025 ] +"310006" = [ 301042, 303031, 303033, 101000, 031001, 303023 ] +"310007" = [ 301042, 303031, 303033, 101000, 031001, 303024 ] +"310008" = [ 310011, 101019, 310012, 002150, 025079, 025080, 033032, 014045 ] +"310009" = [ 310011, 101015, 310012 ] +"310010" = [ 310011, 101005, 310012 ] +"310011" = [ 008070, 001033, 001034, 008070, 001033, 001034, 001007, 002048, 005040, 025075, + 201133, 005041, 201000, 005043, 025070, 033030, 033031, 004001, 004002, 004003, + 004004, 004005, 202131, 201138, 004006, 201000, 202000, 005001, 006001, 202126, + 007001, 202000, 007024, 005021, 007025, 005022, 033033, 002151, 012064, 002151, + 012064, 002151, 012064, 002151, 012064 ] +"310012" = [ 002150, 025076, 025077, 025078, 033032, 201132, 202129, 012063, 202000, 201000 + ] +"310013" = [ 001007, 005040, 004001, 004002, 004003, 004004, 004005, 004006, 005001, 006001, + 007025, 005043, 025085, 201131, 202129, 002150, 008023, 008072, 014027, 008072, + 014027, 002150, 008023, 008072, 014027, 008072, 014027, 002150, 008023, 008072, + 014027, 008072, 014027, 202000, 201000, 201132, 202129, 002150, 008023, 008072, + 012063, 008072, 012063, 002150, 008023, 008072, 012063, 008072, 012063, 008023, + 008072, 012063, 008072, 012063, 002150, 008023, 008072, 012063, 008072, 012063, + 202000, 201000 ] +"310014" = [ 301072, 303041, 304011 ] +"310015" = [ 301072, 007024, 010002, 303041, 101003, 304032, 002152, 002024, 007004, 007004, + 013003, 101003, 304033 ] +"310016" = [ 301072, 007024, 010002, 303041, 101012, 304032, 002152, 002024, 007004, 007004, + 013003, 101012, 304033 ] +"310018" = [ 001007, 005040, 004001, 004043, 004004, 004005, 004006, 207002, 026030, 207000, + 005002, 006002, 033072, 007025, 005022, 207002, 015001, 207000, 008003, 207001, + 010004, 207000, 008003, 008003, 033042, 207001, 007004, 207000, 207002, 015001, + 207000, 008003, 207002, 020081, 207000, 020065, 008029, 207004, 015030, 207000, + 008075 ] +"310019" = [ 001007, 002019, 301011, 301013, 301023, 007025, 008021, 007025, 008021, 007025, + 008021, 008029, 005040, 008075, 008003, 010004, 008003, 207002, 015001, 207000, + 033070, 015030, 207002, 020081, 207000, 008003, 033042, 007004, 207002, 015001, + 207000, 008003, 113021, 007004, 007004, 207002, 008021, 015005, 008021, 015005, + 033007, 207000, 008026, 101020, 025143, 008026, 008043, 109015, 007004, 008090, + 207006, 015008, 207000, 008090, 207002, 033007, 207000, 008043, 033071, 108008, + 202124, 201107, 002071, 201000, 202000, 207002, 020081, 207000 ] +"310020" = [ 310022, 301011, 301013, 301021, 304034, 310021 ] +"310021" = [ 108000, 031001, 201131, 202129, 007004, 007004, 202000, 201000, 015020, 010002 + ] +"310022" = [ 001007, 002019, 001033, 002172 ] +"310023" = [ 301072, 030021, 030022, 008012, 007024, 007025, 010002, 101012, 304032, 105002, + 002152, 002024, 007004, 007004, 013003, 101012, 304033 ] +"310024" = [ 301072, 030021, 030022, 008012, 007024, 007025, 010002, 101003, 304032, 105002, + 002152, 002024, 007004, 007004, 013003, 101003, 304033 ] +"310025" = [ 001007, 008021, 004001, 004002, 004003, 004004, 004005, 201138, 202131, 004006, + 202000, 201000, 201132, 005041, 201000, 201129, 005043, 201000, 005002, 006002, + 013040, 020029, 104024, 005042, 012163, 021083, 021084, 115003, 004001, 004002, + 004003, 201142, 202131, 004026, 202000, 201000, 005001, 006001, 201138, 202129, + 007001, 202000, 201000, 008021, 004001, 004002, 004003, 004004, 004005, 005040, + 101003, 012070, 025054, 101004, 025055, 008007, 104028, 005002, 006002, 002111, + 005021 ] +"310026" = [ 310022, 025060, 008021, 301011, 301012, 201138, 202131, 004006, 202000, 201000, + 033039, 033007, 304030, 304031, 002020, 001050, 202127, 304030, 202000, 304031, + 201133, 202131, 004016, 202000, 201000, 301021, 304030, 010035, 005021, 010036, + 113000, 031002, 301021, 005021, 108000, 031001, 002121, 007040, 015037, 008023, + 201125, 015037, 201000, 008023, 033007, 108000, 031002, 007007, 015036, 008023, + 201123, 015036, 201000, 008023, 033007, 116000, 031002, 007009, 010004, 012001, + 013001, 008023, 201120, 010004, 201000, 201122, 012001, 201000, 201123, 013001, + 201000, 008023, 033007, 008003, 007009, 010004, 008023, 201120, 010004, 201000, + 008023, 033007 ] +"310027" = [ 301071, 301011, 301013, 301021, 030021, 030022, 010002, 304036, 002152, 002167, + 101011, 304035 ] +"310028" = [ 301071, 301011, 301013, 301021, 030021, 030022, 010002, 304036, 002152, 002167, + 101011, 304037 ] +"310029" = [ 110000, 031001, 201138, 202130, 007004, 007004, 202000, 201000, 015020, 010002, + 012101, 013098 ] +"310030" = [ 310022, 301011, 301013, 301021, 304034, 310029 ] +"310050" = [ 310051, 310052, 101000, 031002, 310053, 101004, 310054, 020010, 310052, 101015, + 310053, 310052, 101005, 310053 ] +"310051" = [ 001007, 005040, 201133, 005041, 201000, 201132, 025070, 201000, 202126, 007001, + 202000, 007025, 005022, 102009, 002151, 012064 ] +"310052" = [ 002019, 301011, 301012, 202131, 201138, 004006, 201000, 202000, 301021, 007024, + 005021, 005043 ] +"310053" = [ 201134, 005042, 201000, 025076, 033032, 012163 ] +"310054" = [ 201134, 005042, 201000, 025076, 033032, 201131, 202129, 102002, 008023, 014027, + 008023, 202000, 201000 ] +"310055" = [ 310051, 310052, 102020, 025076, 025052, 101000, 031002, 025050 ] +"310060" = [ 001007, 001033, 002019, 002020, 301011, 301012, 207003, 004006, 207000, 304030, + 301021, 007024, 005021, 007025, 005022, 008075, 201133, 005041, 201000, 005045, + 005043, 005040, 010001, 201129, 007002, 201000, 202127, 201125, 021166, 201000, + 202000, 008012, 020010, 020014, 002165, 033075, 107003, 008076, 006029, 006029, + 025140, 025141, 033076, 033077, 008076, 033078, 033003, 104000, 031002, 201133, + 005042, 201000, 014044 ] +"310061" = [ 001007, 001033, 001034, 002019, 002020, 301011, 301012, 207003, 004006, 207000, + 005040, 005041, 005043, 033079, 033080, 033078, 301021, 201129, 007002, 201000, + 007024, 005021, 007025, 005022, 025075, 111000, 031002, 005042, 202131, 002153, + 002154, 202000, 002104, 012066, 012163, 012158, 012159, 033081 ] +"310062" = [ 001007, 001033, 001034, 002019, 002020, 301011, 301012, 207003, 004006, 207000, + 005040, 201133, 005041, 005043, 201000, 008076, 033082, 301021, 201129, 007002, + 201000, 007024, 005021, 007025, 005022, 008072, 008029, 105000, 031002, 005042, + 002155, 033083, 014043, 015042 ] +"310063" = [ 001007, 001033, 001034, 002019, 002020, 301011, 301012, 207003, 004006, 207000, + 005040, 201133, 005041, 005043, 201000, 033082, 301021, 201129, 007002, 201000, + 007024, 005021, 007025, 005022, 008075, 008013, 008072, 033084, 007062, 033086, + 022043, 007062, 007062, 033086, 022043 ] +"310064" = [ 001007, 001033, 001034, 002019, 002020, 301011, 301012, 207003, 004006, 207000, + 005040, 201133, 005041, 005043, 201000, 033082, 301021, 201129, 007002, 201000, + 007024, 005021, 007025, 005022, 008075, 008029, 008046, 033085, 033086, 015049, + 033086, 102011, 002155, 015062 ] +"310065" = [ 001007, 001033, 001034, 002019, 002020, 301011, 301012, 207003, 004006, 207000, + 005040, 033082, 301021, 201129, 007002, 201000, 007024, 005021, 007025, 005022, + 008075, 033071, 033070, 020021, 015045, 015046, 008065, 033087, 008003, 010004, + 008003, 207002, 015001, 207000, 105012, 010040, 010004, 207003, 015005, 207000, + 008046, 107019, 010040, 010004, 008090, 207006, 015008, 207000, 008090 ] +"310066" = [ 001007, 001033, 001034, 002019, 002020, 301011, 301012, 207003, 004006, 207000, + 005040, 033082, 301021, 201129, 007002, 201000, 007024, 005021, 007025, 005022, + 008075, 020081, 207004, 015030, 207000, 020065, 015041, 033086, 033087, 033088, + 008003, 207001, 007004, 207000, 008003, 207002, 015001, 207000, 008003, 033042, + 207001, 007004, 207000, 207002, 015001, 207000, 008003, 001032, 207002, 015001, + 207000 ] +"310067" = [ 001033, 001034, 025061, 025062, 001007, 002153, 001012, 201138, 002026, 002027, + 201000, 002028, 002029, 002161, 002164, 002023, 008012, 008013, 001124, 005001, + 006001, 004001, 004002, 004003, 004004, 004005, 004006, 004086, 011001, 011002, + 011003, 011004, 002162, 007004, 012001, 020014, 007024, 001023, 104000, 031001, + 002162, 007004, 012001, 020014, 113000, 031001, 004086, 002020, 001007, 002019, + 005042, 002153, 005040, 007024, 005021, 002162, 007004, 012001, 020014, 119000, + 031001, 004086, 004086, 005001, 006001, 011003, 011004, 011113, 025148, 103000, + 031001, 008023, 011003, 011004, 008023, 103000, 031001, 020111, 020112, 020114, + 001033, 008021, 011095, 011096, 007004, 008021, 011095, 011096, 007004, 008021, + 008086, 011095, 011096, 007004, 008086, 102004, 001032, 033007, 008092, 011003, + 011004, 007004, 008092, 033066, 020081, 020012, 020056, 117000, 031001, 008023, + 020016, 008092, 008003, 012001, 008003, 020016, 008092, 025149, 020016, 020014, + 013093, 013109, 040038, 008011, 014050, 008011, 008023 ] +"310068" = [ 008070, 001033, 001034, 001007, 002019, 012064, 005040, 201136, 005041, 201000, + 005043, 301011, 301012, 201138, 202131, 004006, 202000, 201000, 005001, 006001, + 202126, 007001, 202000, 010007, 007024, 005021, 007025, 005022, 013040, 012101, + 201131, 202129, 011011, 202000, 201000, 201130, 202129, 011012, 202000, 201000, + 020029, 020010, 020014, 013162, 014050 ] +"310069" = [ 005042, 201139, 002155, 201000, 025077, 025078, 033007, 201132, 202129, 012063, + 202000, 201000 ] +"310070" = [ 310068, 101013, 310069 ] +"310071" = [ 310068, 101015, 310069 ] +"310072" = [ 310068, 101026, 310069 ] +"310077" = [ 001033, 001034, 025061, 025062, 001007, 002153, 001012, 201138, 002026, 002027, + 201000, 002028, 002029, 002161, 002164, 002023, 008012, 008013, 001124, 005001, + 006001, 004001, 004002, 004003, 004004, 004005, 004006, 004086, 002162, 007004, + 011001, 011002, 011003, 011004, 012001, 020014, 007024, 001023, 104000, 031001, + 002162, 007004, 012001, 020014, 113000, 031001, 004086, 002020, 001007, 002019, + 005042, 002153, 005040, 007024, 005021, 002162, 007004, 012001, 020014, 119000, + 031001, 004086, 004086, 005001, 006001, 011003, 011004, 011113, 025148, 103000, + 031001, 008023, 011003, 011004, 008023, 103000, 031001, 020111, 020112, 020114, + 001033, 008021, 007004, 011095, 011096, 008021, 007004, 011095, 011096, 008021, + 008086, 007004, 011095, 011096, 008086, 102004, 001044, 033007, 008092, 007004, + 011003, 011004, 008092, 033066, 020081, 020012, 020056, 117000, 031001, 008023, + 020016, 008092, 008003, 012001, 008003, 020016, 008092, 025149, 020016, 020014, + 013093, 013109, 040038, 008011, 014050, 008011, 008023 ] +"310078" = [ 001007, 001016, 002019, 002020, 001033, 001034, 301011, 301013, 005040, 201132, + 005041, 201000, 005043, 033079, 033080, 033078, 007002, 102003, 008097, 012164, + 117000, 031001, 005001, 006001, 007024, 005021, 007025, 005022, 109000, 031001, + 005042, 002153, 002154, 002104, 012066, 012163, 012158, 012159, 033094 ] +"310080" = [ 001033, 001034, 001007, 002019, 005040, 025061, 201133, 005041, 201000, 301011, + 301012, 207003, 004006, 207000, 202126, 007001, 202000, 005063, 005064, 005066, + 005077, 006043, 006041, 006042, 008098, 012101, 008098, 012101, 008098, 012101, + 008098, 012101, 008098, 007074, 005076, 201124, 202127, 025084, 202000, 201000, + 033100, 033102, 033104, 033105, 113007, 005078, 005001, 006001, 007024, 005021, + 007025, 005022, 007073, 201132, 202129, 021166, 202000, 201000, 117003, 005042, + 202131, 002153, 002154, 202000, 025077, 025078, 033101, 033103, 002104, 201131, + 202136, 014045, 202000, 201000, 012158, 012159, 117002, 005042, 202131, 002153, + 002154, 202000, 025077, 025078, 033101, 033103, 002104, 201132, 202136, 014045, + 202000, 201000, 012158, 012159, 117003, 005042, 202131, 002153, 002154, 202000, + 025077, 025078, 033101, 033103, 002104, 201133, 202136, 014045, 202000, 201000, + 012158, 012159, 117003, 005042, 202131, 002153, 002154, 202000, 025077, 025078, + 033101, 033103, 002104, 201133, 202136, 014045, 202000, 201000, 012158, 012159, + 117002, 005042, 202131, 002153, 002154, 202000, 025077, 025078, 033101, 033103, + 002104, 201131, 202135, 014045, 202000, 201000, 012158, 012159 ] +"310081" = [ 001033, 001034, 001007, 002019, 005040, 025061, 201133, 005041, 201000, 301011, + 301012, 207003, 004006, 207000, 202126, 007001, 202000, 005063, 005064, 005066, + 005077, 006043, 006041, 006042, 008098, 012101, 008098, 012101, 008098, 012101, + 008098, 012101, 008098, 007074, 005076, 201124, 202127, 025084, 202000, 201000, + 033095, 033097, 033106, 033099, 113008, 005078, 005001, 006001, 007024, 005021, + 007025, 005022, 007073, 201132, 202129, 021166, 202000, 201000, 117002, 005042, + 202131, 002153, 002154, 202000, 025077, 025078, 033096, 033098, 002104, 201131, + 202138, 014045, 202000, 201000, 012158, 012159, 117002, 005042, 202131, 002153, + 002154, 202000, 025077, 025078, 033096, 033098, 002104, 201132, 202138, 014045, + 202000, 201000, 012158, 012159, 117002, 005042, 202131, 002153, 002154, 202000, + 025077, 025078, 033096, 033098, 002104, 201132, 202138, 014045, 202000, 201000, + 012158, 012159, 117008, 005042, 202131, 002153, 002154, 202000, 025077, 025078, + 033096, 033098, 002104, 201131, 202137, 014045, 202000, 201000, 012158, 012159, + 117002, 005042, 202131, 002153, 002154, 202000, 025077, 025078, 033096, 033098, + 002104, 201132, 202137, 014045, 202000, 201000, 012158, 012159, 117004, 005042, + 202131, 002153, 002154, 202000, 025077, 025078, 033096, 033098, 002104, 201133, + 202137, 014045, 202000, 201000, 012158, 012159, 117001, 005042, 202131, 002153, + 002154, 202000, 025077, 025078, 033096, 033098, 002104, 201131, 202136, 014045, + 202000, 201000, 012158, 012159, 117005, 005042, 202131, 002153, 002154, 202000, + 025077, 025078, 033096, 033098, 002104, 201131, 202136, 014045, 202000, 201000, + 012158, 012159 ] +"310082" = [ 008070, 001033, 001034, 001007, 002019, 005040, 025061, 201133, 005041, 201000, + 005043, 006042, 301011, 301012, 207003, 004006, 207000, 301021, 107002, 005080, + 201132, 202129, 021166, 202000, 201000, 007007, 202126, 007001, 202000, 007024, + 005021, 007025, 005022, 201124, 202127, 025084, 202000, 201000, 007073, 012070, + 012064, 008098, 012101, 008098, 033107, 033108, 033109, 118024, 005042, 104004, + 005079, 202130, 002154, 202000, 002104, 002153, 025077, 025078, 207002, 012063, + 207000, 207001, 033089, 033090, 207000, 033110 ] +"310083" = [ 001033, 001034, 025060, 001007, 002019, 127012, 005040, 201130, 006034, 201000, + 005034, 301021, 008012, 301011, 301012, 004007, 008085, 003030, 002104, 003030, + 002104, 003029, 008075, 202129, 201131, 002111, 201000, 202000, 005021, 021062, + 021026, 021027, 033111 ] +"310084" = [ 001033, 001034, 025060, 001007, 002019, 005040, 006034, 005034, 301021, 301011, + 301012, 004007, 014058, 033112, 117005, 008085, 008012, 003030, 002104, 003030, + 002104, 008075, 202129, 201131, 002111, 201000, 202000, 005021, 021062, 021026, + 021027, 025056 ] +"310085" = [ 001007, 301005, 002019, 002020, 004001, 004002, 004003, 004004, 004005, 202131, + 201138, 004006, 201000, 202000, 005001, 006001, 007024, 005021, 007025, 005022, + 005043, 005040, 201133, 005041, 201000, 202126, 007001, 202000, 033113, 105170, + 104100, 201137, 005042, 201000, 014046, 002019, 110007, 005060, 005061, 020083, + 106020, 005042, 008023, 014044, 008023, 014044, 008023, 008072, 020083, 008029, + 020083 ] +"310086" = [ 001007, 301005, 002019, 002020, 004001, 004002, 004003, 004004, 004005, 202131, + 201138, 004006, 201000, 202000, 005001, 006001, 007024, 005021, 007025, 005022, + 005043, 005040, 201133, 005041, 201000, 202126, 007001, 202000, 033113, 109004, + 025140, 201129, 025141, 201000, 040026, 040016, 101000, 031002, 040017, 002019, + 110007, 005060, 005061, 020083, 106020, 005042, 008023, 014044, 008023, 014044, + 008023, 008072, 020083, 008029, 020083 ] +"310087" = [ 001007, 001031, 002019, 002020, 004001, 004002, 004003, 004004, 004005, 202131, + 201138, 004006, 201000, 202000, 005001, 006001, 007024, 005021, 007025, 005022, + 005043, 005040, 201133, 005041, 201000, 202126, 007001, 202000, 040052, 040047, + 008065, 204004, 031021, 002019, 002019, 001030, 204000, 002019, 040046, 033116, + 033117, 040080, 040051, 008003, 021166, 022046, 010001, 008023, 010001, 008023, + 008003 ] +"310088" = [ 310087, 040053, 102003, 008071, 025149, 106000, 031000, 101000, 031002, 040076, + 101000, 031002, 040075, 040067, 040066, 202126, 013098, 202000, 107101, 202131, + 201138, 007004, 201000, 202000, 012101, 013001 ] +"310089" = [ 310087, 012083, 008043, 040044, 008043, 020056, 013109, 020056, 013109, 008003, + 109002, 020056, 020081, 202131, 201138, 020016, 201000, 202000, 012101, 020131 + ] +"310090" = [ 310087, 008003, 040067, 040066, 102012, 005042, 014050, 012001, 202131, 201138, + 010004, 201000, 202000, 008003, 012083, 011012, 008043, 040044, 008043 ] +"310091" = [ 310087, 104003, 008043, 102007, 007004, 015021 ] +"310092" = [ 001007, 025060, 001031, 002019, 002020, 004001, 004002, 004003, 004004, 004005, + 202131, 201138, 004006, 201000, 202000, 005001, 006001, 007024, 005021, 007025, + 005022, 005043, 005040, 201133, 005041, 201000, 202126, 010007, 202000 ] +"310093" = [ 310092, 008046, 015021, 040056, 040058, 040059, 040060, 040057, 103019, 040061, + 040062, 040063, 101190, 040065 ] +"310094" = [ 310092, 008046, 015021, 040056, 040058, 040059, 040060, 040057, 103041, 040061, + 040062, 040063, 102021, 101041, 040065 ] +"310095" = [ 310092, 008046, 040068, 010073, 015007, 012169, 102005, 007004, 015007 ] +"310096" = [ 301005, 001007, 002019, 002020, 025060, 301011, 301013, 005040, 005001, 006001, + 202126, 007001, 202000, 007024, 005021, 007025, 005022, 033028 ] +"310097" = [ 310096, 008011, 033007, 008011, 008072, 008029 ] +"310098" = [ 310096, 013094, 020016, 020014, 008093, 013094, 020016, 020014, 008093 ] +"310099" = [ 310096, 025144, 025145, 020139, 008029, 120002, 008002, 013094, 020016, 012001, + 202131, 201139, 020131, 201000, 202000, 020014, 008093, 013094, 020016, 202131, + 201139, 020131, 201000, 202000, 020014, 008093 ] +"310100" = [ 310096, 202129, 201132, 013060, 201000, 202000, 033118, 033119 ] +"310191" = [ 001007, 001033, 001034, 002019, 002020, 301011, 301012, 207003, 004006, 207000, + 007024, 005021, 007025, 005022, 102002, 008076, 301021, 201131, 005041, 201000, + 005045, 201133, 005043, 201000, 202126, 201132, 007001, 201000, 202000, 025182, + 002165, 108002, 008076, 006029, 006029, 025140, 025141, 033076, 033077, 025187, + 008076, 105000, 031002, 201133, 005042, 201000, 014044, 014049 ] +"311001" = [ 301051, 007002, 012001, 011001, 011002, 011031, 011032, 011033, 020041 ] +"311002" = [ 301065, 301066, 311003, 311004 ] +"311003" = [ 010070, 011001, 011002, 012001, 013002 ] +"311004" = [ 101000, 031000, 011034, 101000, 031000, 011035, 101000, 031000, 011075, 101000, + 031000, 011076, 101000, 031000, 033025, 101000, 031000, 033026 ] +"311005" = [ 001008, 001023, 301021, 301011, 301013, 007010, 008009, 011001, 011002, 011031, + 011036, 012101, 033025 ] +"311006" = [ 007010, 011001, 011002, 002064, 012101, 012103 ] +"311007" = [ 007010, 301021, 011001, 011002, 002064, 012101, 012103 ] +"311008" = [ 001008, 301011, 301013, 301021, 008004, 101000, 031001, 311006 ] +"311009" = [ 001008, 301011, 301013, 301021, 008004, 101000, 031001, 311007 ] +"311010" = [ 001008, 001023, 001006, 001110, 001111, 001112, 204002, 031021, 301011, 301013, + 301021, 007010, 010053, 008009, 011001, 011002, 002064, 011100, 011101, 011102, + 011103, 011104, 012101, 002170, 201144, 202133, 013002, 202000, 201000, 201135, + 202130, 013003, 202000, 201000, 101000, 031000, 012103, 033026, 101000, 031000, + 020042, 103000, 031000, 020043, 020044, 020045, 101000, 031000, 033025, 103000, + 031001, 011075, 011076, 011039, 102000, 031000, 011037, 011077, 103000, 031000, + 011034, 011035, 011036, 204000, 119000, 031001, 301011, 301013, 301021, 007007, + 011105, 204007, 031021, 011076, 011075, 204000, 011106, 011107, 011108, 011109, + 012101, 011001, 201130, 011084, 201000 ] +"311011" = [ 001023, 008004, 301011, 301013, 005002, 006002, 007004, 011001, 011002, 012101, + 106000, 031001, 008046, 201139, 202126, 015026, 202000, 201000, 106000, 031001, + 008046, 201138, 202130, 015026, 202000, 201000, 015052, 015053, 015054, 015055, + 007004, 007004, 013099, 013100, 013101 ] +"311012" = [ 301150, 001008, 001111, 001112, 301011, 301013, 301021, 008004, 110000, 031002, + 301011, 301013, 311007, 201144, 202133, 013002, 202000, 201000, 013003, 033026 + ] +"311013" = [ 301150, 001008, 001095, 301011, 301013, 301021, 001013, 008009, 007010, 033003, + 011001, 011002, 012101, 002170, 201144, 202133, 013002, 202000, 201000, 201135, + 202130, 013003, 202000, 201000, 011073, 011075 ] +"312001" = [ 301043, 304001 ] +"312002" = [ 301043, 304002 ] +"312003" = [ 301042, 304003 ] +"312004" = [ 301042, 304004 ] +"312005" = [ 301042, 020014 ] +"312006" = [ 301044, 304005 ] +"312007" = [ 301042, 304006 ] +"312010" = [ 001007, 005040, 002021, 005041, 004001, 004043 ] +"312011" = [ 202131, 201149, 004006, 201000, 202126, 010002, 202000, 005043, 005053 ] +"312012" = [ 202129, 201132, 101019, 012063, 201000, 202000 ] +"312013" = [ 005042, 202129, 201135, 012063, 201000, 202000 ] +"312014" = [ 312010, 312011, 105056, 301023, 005042, 005052, 312012, 312013 ] +"312015" = [ 109011, 301023, 005042, 005052, 202129, 201132, 101004, 012063, 202000, 201000 + ] +"312016" = [ 312010, 312011, 312015 ] +"312017" = [ 109008, 301023, 005042, 005052, 202129, 201132, 101003, 012063, 202000, 201000 + ] +"312018" = [ 312010, 312011, 312017 ] +"312019" = [ 301047, 301048, 015015, 029002, 021076, 106012, 201129, 006030, 201000, 102012, + 005030, 021075, 021066 ] +"312020" = [ 301047, 301048, 015015, 029002, 021076, 104012, 006030, 102012, 005030, 021075, + 021066 ] +"312021" = [ 301047, 101003, 301049, 011012, 011011, 021067 ] +"312022" = [ 301047, 008022, 011012, 011050, 022070, 022026, 312041, 010050, 021068, 021071, + 021072, 021073, 312042, 021062, 015011 ] +"312023" = [ 301047, 103003, 008022, 012061, 022050, 021069, 021085 ] +"312024" = [ 312020, 008060, 008022, 008060, 008022, 025014, 022101, 022097, 022098, 022099, + 022100 ] +"312025" = [ 312019, 008060, 008022, 008060, 008022, 025014, 022101, 022097, 022098, 022099, + 022100 ] +"312026" = [ 301046, 301011, 301013, 301023, 312031, 101004, 312030, 021110, 301023, 321027, + 021111, 301023, 321027, 021112, 301023, 321027, 021113, 301023, 321027 ] +"312027" = [ 301047, 105009, 301023, 007021, 012061, 007021, 012061, 021085, 021070 ] +"312028" = [ 301046, 301011, 301013, 301023, 008025, 201136, 004006, 201000, 312031, 312032, + 101004, 312030, 101002, 312033, 021110, 301023, 321028, 021111, 301023, 321028, + 021112, 301023, 321028, 021113, 301023, 321028 ] +"312029" = [ 301046, 301011, 301013, 301023, 008025, 201136, 004006, 201000, 005034, 201129, + 006034, 201000, 033055, 011081, 011082, 021101, 021102, 021103, 312032, 101004, + 312030, 101002, 312033, 021110, 301023, 321028, 021111, 301023, 321028, 021112, + 301023, 321028, 021113, 301023, 321028 ] +"312030" = [ 201130, 202129, 011012, 202000, 201000, 011052, 201135, 202130, 011011, 202000, + 201000, 011053, 021104 ] +"312031" = [ 005034, 006034, 021109, 011081, 011082, 021101, 021102, 021103 ] +"312032" = [ 021120, 021121, 013055, 021122 ] +"312033" = [ 002104, 008022, 012063, 012065 ] +"312034" = [ 301046, 301011, 301013, 301023, 008025, 201136, 004006, 201000, 312031, 312032, + 101004, 312030, 101002, 312033, 103018, 021110, 301023, 321028 ] +"312035" = [ 001007, 001031, 002048, 202124, 002026, 002027, 202000, 005040, 004001, 004002, + 004003, 004004, 004005, 004006, 005002, 006002, 005034, 006031, 201129, 006034, + 201000, 005021, 002111, 012063, 021095, 021096, 021097, 021030, 021105, 033056 + ] +"312041" = [ 201141, 202130, 007001, 201000, 202000 ] +"312042" = [ 021077, 021078, 021079, 021080, 021081, 021082 ] +"312045" = [ 001007, 002019, 001096, 025061, 005040, 301011, 301013, 301021, 007002, 012180, + 012181, 012182, 012183, 012184, 012185, 002174, 021086, 012186, 021087, 012187, + 033043 ] +"312050" = [ 001007, 002019, 001096, 025061, 005040, 301011, 301013, 301021, 007025, 005022, + 010080, 027080, 008003, 007004, 013093, 008003, 201131, 202129, 007004, 007004, + 202000, 201000, 013095 ] +"312051" = [ 001007, 002019, 001096, 025061, 005040, 008075, 301011, 301013, 301021, 001012, + 201131, 001013, 201000, 010032, 010033, 010034, 007002, 008012, 025110, 025111, + 025102, 002104, 025103, 025104, 025105, 025106, 025107, 025108, 002111, 002121, + 002026, 002027, 021130, 021131, 021132, 021133, 021064, 025014, 021134, 107018, + 005030, 105024, 201130, 006030, 201000, 021135, 021136, 033044 ] +"312052" = [ 001007, 002019, 001096, 025061, 005040, 025120, 025121, 025124, 025125, 025122, + 025123, 301011, 301013, 301021, 007002, 002119, 033047, 010081, 010082, 010083, + 010084, 002116, 002117, 002118, 002156, 002157, 014055, 022150, 022151, 022152, + 022153, 022154, 022155, 022156, 022157, 022158, 022159, 021137, 021138, 021139, + 021140, 021141, 021142, 010085, 010086, 010087, 010088, 010089, 010090, 010091, + 010092, 010093, 011002, 025126, 025127, 025128, 025129, 025130, 025131, 025132, + 025133, 025134, 025135, 025136, 025137, 013096, 013097, 011095, 011096, 012188, + 012189, 002158, 002159, 033052, 033053, 021143, 021144 ] +"312053" = [ 001007, 002019, 001096, 025061, 005040, 008075, 301011, 301013, 301021, 001012, + 201131, 001013, 201000, 010032, 010033, 010034, 007002, 008012, 025110, 025111, + 025102, 002104, 025103, 025104, 025105, 025106, 025107, 025108, 011001, 011002, + 022160, 025138, 201130, 202129, 022021, 202000, 201000, 033048, 033049, 002026, + 002027, 021130, 021131, 021132, 021133, 025014, 106036, 005030, 104024, 201130, + 006030, 201000, 022161, 033044 ] +"312055" = [ 005033, 005040, 006034, 010095, 021157 ] +"312056" = [ 025060, 001032, 011082, 011081, 020095, 020096, 021155, 201133, 021101, 021102, + 201000 ] +"312057" = [ 201130, 202129, 011012, 202000, 201000, 201131, 202129, 011011, 202000, 201000, + 021156, 021104 ] +"312058" = [ 301125, 301011, 301013, 301021, 312055, 021150, 101003, 321030 ] +"312059" = [ 312056, 101000, 031001, 312057 ] +"312060" = [ 025060, 025062, 040001, 040002, 021062, 021151, 021152, 021153, 021154, 021062, + 021088, 040003, 040004, 040005, 040006, 040007, 020065, 040008, 040009, 040010 + ] +"312061" = [ 312058, 312060, 312059 ] +"312062" = [ 001007, 002019, 301011, 301013, 301021, 020065, 008023, 020065, 008023 ] +"312070" = [ 001007, 002019, 001144, 001124, 030010, 301011, 301013, 301021, 007012, 015012, + 012165, 012166, 012167, 012168, 027010, 028010, 002099, 013048, 025081, 025082, + 025083, 025084, 012080, 012081, 012082, 025174, 033028 ] +"312071" = [ 001007, 002019, 002139, 001096, 001040, 025061, 005040, 005044, 008075, 008077, + 004001, 004002, 004003, 004004, 004005, 004006, 005001, 006001, 010081, 022156, + 022142, 101020, 022149, 022143, 022144, 021137, 101020, 021181, 021138, 021180, + 021177, 021178, 021179, 010079, 010085, 010086, 010087, 010089, 010090, 010091, + 010092, 010093, 011097, 021093, 101020, 021182, 033053, 022151, 022145, 022148, + 022146, 022147, 025126, 025128, 025127, 021176, 025132, 025133, 025182, 025183, + 025180, 025184, 025181, 033080 ] +"313009" = [ 021001, 101000, 031001, 021001 ] +"313010" = [ 021036, 101000, 031001, 021036 ] +"313031" = [ 006002, 006012, 101000, 031002, 030001 ] +"313032" = [ 005002, 005012, 101000, 031002, 313031 ] +"313041" = [ 006002, 110000, 031001, 104000, 031001, 006012, 101000, 031012, 030001, 006012, + 101000, 031001, 030001 ] +"313042" = [ 005002, 005012, 101000, 031002, 313041 ] +"313043" = [ 006002, 005002, 005012, 112000, 031001, 110000, 031001, 104000, 031001, 006012, + 101000, 031011, 030001, 006012, 101000, 031001, 030001 ] +"315001" = [ 001011, 301011, 301012, 301023, 306001 ] +"315002" = [ 001011, 301011, 301012, 301023, 306004 ] +"315003" = [ 001087, 001085, 001086, 002036, 002148, 002149, 022055, 022056, 022067, 301011, + 301012, 301021, 008080, 033050, 109000, 031002, 007065, 008080, 033050, 022045, + 008080, 033050, 022064, 008080, 033050 ] +"315004" = [ 001079, 001011, 001103, 001087, 001019, 001080, 005036, 001036, 001013, 001012, + 301011, 301012, 301021, 007032, 007033, 002002, 011002, 011001, 007032, 007033, + 012101, 012103, 007032, 007033, 302021, 002031, 002030, 022005, 022032, 022063, + 008080, 033050, 022178, 022177, 022067, 008041, 026021, 026022, 026023, 022068, + 025061, 008041, 008080, 002171, 302090, 002171, 002032, 315005 ] +"315005" = [ 106000, 031002, 007063, 008080, 033050, 022043, 008080, 033050 ] +"315006" = [ 001079, 001011, 001103, 001087, 001019, 001080, 005036, 001036, 001013, 001012, + 301011, 301012, 301021, 007032, 007033, 002002, 011002, 011001, 007032, 007033, + 012101, 012103, 007032, 007033, 302021, 002031, 002030, 022005, 022032, 022063, + 008080, 033050, 022178, 022177, 022067, 008041, 026021, 026022, 026023, 022068, + 025061, 008041, 008080, 002171, 302090, 002171, 002032, 109000, 031002, 007063, + 008080, 033050, 022043, 008080, 033050, 022064, 008080, 033050 ] +"315007" = [ 301003, 001019, 001103, 001087, 001036, 001115, 001080, 005036, 301011, 301012, + 301021, 001079, 001023, 022063, 101000, 031000, 302001, 101000, 031000, 302021, + 101000, 031000, 302052, 101000, 031000, 302059, 022067, 002171, 302090, 306033, + 306034, 002171, 022067, 002038, 022067, 022068, 002171, 002033, 002032, 022056, + 003011, 306035, 107000, 031000, 002032, 003010, 002031, 002040, 022056, 003011, + 306036, 104000, 031000, 002032, 003012, 003011, 306037 ] +"315008" = [ 301126, 306038, 101000, 031000, 302091, 101000, 031000, 302082, 101000, 031000, + 306039, 101000, 031000, 306040, 102000, 031000, 002005, 306041, 102000, 031000, + 002005, 306004, 101000, 031000, 306005 ] +"315009" = [ 001087, 001019, 002149, 008021, 301011, 301012, 301021, 208016, 001051, 208000, + 002148, 001012, 001014, 033022, 033023, 033027, 025026, 002034, 022060, 007070, + 002190, 008021, 301011, 301012, 002005, 022043, 002033, 022059, 008029, 013115, + 103000, 031000, 002005, 306004, 002005, 010004, 010051, 102000, 031000, 007033, + 012101, 101000, 031000, 306042, 101000, 031000, 306039 ] +"315010" = [ 112000, 031001, 201144, 202133, 022080, 022096, 022069, 202000, 201000, 042011, + 042012, 042013, 042014, 042015 ] +"315011" = [ 301150, 001087, 001036, 001085, 001086, 003001, 208032, 001079, 208000, 301011, + 301012, 301021, 001012, 001014, 011104, 103000, 031000, 007031, 306038, 012161, + 101000, 031000, 306034, 101000, 031000, 306039, 101000, 031000, 306033, 101000, + 031000, 306041, 101000, 031000, 306004, 101000, 031000, 306005, 105000, 031000, + 041001, 008043, 015028, 008043, 013080, 104000, 031000, 041005, 041003, 022188, + 041002, 101000, 031000, 306040, 104000, 031000, 008021, 004025, 014017, 014018 + ] +"315012" = [ 301150, 201129, 001087, 201000, 001019, 001036, 002148, 001085, 001086, 008021, + 301011, 301013, 301021, 011104, 002169, 011002, 011001, 002169, 022032, 022005, + 301011, 301013, 008021, 004025, 301021, 022031, 022004, 008021, 005068, 001079, + 126000, 031001, 022056, 123000, 031002, 301011, 301013, 301021, 008080, 033050, + 007062, 008080, 033050, 022065, 008080, 033050, 022045, 008080, 033050, 022066, + 008080, 033050, 022064, 008080, 033050, 042016, 008080, 033050 ] +"315013" = [ 301150, 001087, 208032, 001019, 208000, 003001, 022067, 001051, 002148, 112000, + 031001, 008021, 301011, 301012, 301021, 001012, 001014, 033022, 033023, 033027, + 007063, 022045, 008021, 107000, 031001, 301011, 301012, 301021, 001079, 001023, + 022056, 306035 ] +"315023" = [ 301150, 201129, 001087, 201000, 208032, 001019, 208000, 003001, 022067, 001051, + 002148, 112000, 031001, 008021, 301011, 301012, 301021, 001012, 001014, 033022, + 033023, 033027, 007063, 022045, 008021, 107000, 031001, 301011, 301012, 301021, + 001079, 001023, 022056, 306035 ] +"316001" = [ 301011, 004004, 301023, 001021, 002041, 019001, 010051, 019002, 019003, 019004 + ] +"316002" = [ 008021, 004001, 004002, 004003, 004004, 004005, 001033, 008021, 004001, 004002, + 004003, 004004, 004005, 007002, 007002 ] +"316003" = [ 110000, 031001, 008011, 008007, 104000, 031001, 005002, 006002, 010002, 011002, + 008007, 008011 ] +"316004" = [ 111000, 031001, 008011, 008007, 007002, 007002, 102000, 031001, 005002, 006002, + 011031, 008007, 008011 ] +"316005" = [ 108000, 031001, 008005, 008007, 005002, 006002, 001026, 019001, 008007, 008005 + ] +"316006" = [ 112000, 031001, 008011, 008007, 007002, 007002, 102000, 031001, 005002, 006002, + 020011, 020012, 008007, 008011 ] +"316007" = [ 110000, 031001, 008011, 008007, 104000, 031001, 005002, 006002, 019005, 019006, + 008007, 008011 ] +"316008" = [ 111000, 031001, 008001, 008007, 008023, 103000, 031001, 005002, 006002, 010002, + 008023, 008007, 008001 ] +"316009" = [ 111000, 031001, 008011, 008007, 007002, 007002, 102000, 031001, 005002, 006002, + 020041, 008007, 008011 ] +"316010" = [ 107000, 031001, 008011, 008007, 001022, 005002, 006002, 008007, 008011 ] +"316011" = [ 117000, 031001, 008011, 001022, 008007, 102000, 031001, 005002, 006002, 008021, + 004001, 004002, 004003, 004004, 004005, 020090, 008021, 008007, 008011 ] +"316020" = [ 001033, 001025, 001027, 301011, 301012 ] +"316021" = [ 301023, 002041, 019001, 019007, 019005, 019006, 019008, 008005, 010004, 008005, + 010004, 019007, 008005, 008021, 004075, 011040, 019007, 105004, 005021, 005021, + 102002, 019003, 019004 ] +"316022" = [ 001032, 002041, 019001, 019010, 118000, 031001, 008021, 004014, 008005, 301023, + 019005, 019006, 010004, 011041, 008021, 004075, 011040, 019008, 105004, 005021, + 005021, 102002, 019003, 019004 ] +"316026" = [ 316020, 316021 ] +"316027" = [ 316020, 316022 ] +"316030" = [ 301014, 001037, 010064, 008019, 001062, 008019, 001065, 008019, 001062, 008019 + ] +"316031" = [ 008021, 301011, 301012, 301027, 019005, 019006, 020028, 008021 ] +"316032" = [ 008021, 301011, 301012, 301027, 008021 ] +"316033" = [ 008021, 301011, 301012, 101000, 031001, 301027, 008021 ] +"316034" = [ 008079, 316030, 008011, 001022, 008007, 301023, 008007, 020090, 316031, 101000, + 031000, 316032, 101000, 031001, 316033, 008011, 008079 ] +"316035" = [ 008079, 316030, 008011, 020023, 020021, 020008, 316031, 008011, 008079 ] +"316036" = [ 008079, 316030, 008011, 001027, 316031, 101000, 031000, 316032, 101000, 031001, + 316033, 008011, 008079 ] +"316037" = [ 008079, 316030, 008011, 011031, 316031, 008011, 008079 ] +"316038" = [ 008079, 316030, 008011, 020041, 020021, 316031, 008011, 008079 ] +"316039" = [ 008079, 316030, 008011, 020024, 316031, 008011, 008079 ] +"316040" = [ 316030, 008079, 301014, 001037, 010064, 008079 ] +"316050" = [ 301001, 301011, 301012, 002160, 008005, 005002, 006002, 008005, 019100, 019005, + 019006, 019101, 019102, 019103, 019104, 019105 ] +"316052" = [ 301005, 301011, 301012, 001007, 025150, 122000, 031001, 001027, 019150, 019106, + 008005, 005002, 006002, 008005, 019107, 019005, 019006, 019108, 019109, 019110, + 019111, 019112, 019113, 019114, 019115, 019116, 019117, 019118, 019119 ] +"316060" = [ 301011, 301012, 005002, 006002, 019005, 019006, 005002, 006002, 005002, 006002, + 004074, 020048, 011041, 013055 ] +"316061" = [ 301011, 301012, 005002, 006002, 019005, 019006, 102000, 031001, 005002, 006002, + 102000, 031001, 005002, 006002, 004074, 020048, 011041, 013055 ] +"316071" = [ 301014, 101000, 031002, 316075, 101000, 031002, 316076 ] +"316072" = [ 301014, 101000, 031002, 316077, 101000, 031002, 316078, 101000, 031002, 316079 + ] +"316073" = [ 301014, 101000, 031002, 316080, 101000, 031002, 316081 ] +"316074" = [ 001039, 008021, 301014, 301027, 008021 ] +"316075" = [ 008079, 008041, 316074, 020006, 033042, 020013, 033042, 020001, 020025, 020026, + 008041, 008079 ] +"316076" = [ 008079, 008041, 316074, 020006, 020025, 020026, 008041, 008079 ] +"316077" = [ 008079, 008011, 316074, 011031, 008011, 008079 ] +"316078" = [ 008079, 008041, 316074, 033042, 011012, 008041, 008079 ] +"316079" = [ 008079, 008011, 316074, 020023, 020024, 008011, 008079 ] +"316080" = [ 008079, 008011, 316074, 020041, 008011, 008079 ] +"316081" = [ 008079, 008041, 316074, 008041, 008079 ] +"316082" = [ 001033, 001034, 001032, 001025, 001027, 001090, 001091, 001092, 301011, 301012, + 008005, 301023, 008005, 301023, 010051, 008005, 301023, 011012, 107003, 019003, + 105004, 005021, 005021, 201131, 019004, 201000, 116000, 031001, 008021, 004024, + 008005, 301023, 010051, 008005, 301023, 011012, 107003, 019003, 105004, 005021, + 005021, 201131, 019004, 201000 ] +"318001" = [ 301025, 024011 ] +"318003" = [ 301026, 024005, 024004, 024021 ] +"318004" = [ 301025, 004023, 013011, 024005, 024004, 024022 ] +"321001" = [ 002101, 002114, 002105, 002106, 002107, 002121 ] +"321003" = [ 021051, 021014, 021017, 021030 ] +"321004" = [ 301031, 002003, 101000, 031001, 321003 ] +"321005" = [ 025004, 002121, 002122, 002123, 002124, 002125, 002126, 002127, 002128, 002129, + 002130, 002131 ] +"321006" = [ 025001, 025002, 025003, 025005 ] +"321007" = [ 025009, 025010, 025011, 025012, 025013, 025015, 025016, 025017 ] +"321008" = [ 025006, 025007, 025008 ] +"321009" = [ 025018, 025019 ] +"321010" = [ 002101, 007002, 002102, 002103, 002104, 002105, 002106, 002107, 002108, 002109, + 002110, 002132, 002133 ] +"321011" = [ 030031, 030032, 029002 ] +"321012" = [ 101000, 031001, 002135 ] +"321021" = [ 002003, 002101, 201130, 002106, 201000, 201132, 202130, 002121, 202000, 201000, + 201133, 202129, 025001, 202000, 201000 ] +"321022" = [ 007007, 204001, 031021, 011001, 204000, 011002, 204001, 031021, 011006, 204000, + 021030 ] +"321023" = [ 007007, 021091, 021030, 202129, 021014, 201129, 021017, 202000, 201000 ] +"321024" = [ 007007, 204001, 031021, 012007, 011006, 204000, 021030 ] +"321025" = [ 007007, 021091, 021030, 202129, 021014, 201129, 021017, 202000, 201000, 021092, + 021030, 025092, 201129, 202129, 021017, 202000, 201000 ] +"321026" = [ 007007, 204001, 031021, 012007, 025091, 011071, 011072, 011073, 011074, 204000 + ] +"321027" = [ 021118, 202129, 201132, 002112, 201000, 201131, 002111, 201000, 202000, 002104, + 021105, 021106, 021107, 021114, 021115, 021116, 008018, 021117 ] +"321028" = [ 021118, 202129, 201132, 002112, 201000, 201131, 002111, 201000, 202000, 002104, + 021123, 021106, 021107, 021114, 021115, 021116, 008018, 021117 ] +"321030" = [ 008085, 202129, 201131, 002111, 201000, 202000, 002134, 021062, 021063, 021158, + 021159, 021160, 021161, 021162, 021163, 021164, 021165, 021166 ] +"321031" = [ 001007, 002019, 001033, 001034, 301011, 301013, 301021, 010033, 008043, 025139, + 002153, 106000, 031002, 007071, 021007, 021008, 021009, 021010, 033003 ] +"322001" = [ 310022, 301011, 301013, 301021, 005041, 005043, 027080, 005022, 013040, 020010, + 033085, 033115, 105002, 008099, 007024, 007025, 007075, 007076, 106000, 031001, + 002071, 008043, 015024, 008043, 015024, 015042, 224000, 236000, 101000, 031002, + 031031, 001033, 001032, 008023, 101000, 031002, 224255 ] +"322028" = [ 001007, 002019, 004001, 004002, 004003, 004004, 004005, 004006, 005001, 006001, + 027001, 028001, 027001, 028001, 027001, 028001, 027001, 028001, 010001, 014019, + 007025, 010080, 005023, 020010, 008003, 007004, 014026, 020014, 013093, 105000, + 031001, 007004, 007004, 008043, 008044, 015021 ] +"340001" = [ 001007, 001031, 002019, 002020, 004001, 004002, 004003, 004004, 004005, 202131, + 201138, 004006, 201000, 202000, 005001, 006001, 007024, 005021, 007025, 005022, + 005043, 005040, 201133, 005041, 201000, 201132, 025070, 201000, 202126, 007001, + 202000, 033060, 033061, 033062, 033063, 033064, 033065, 101010, 340002, 101087, + 340003, 002019, 025051, 101007, 340004 ] +"340002" = [ 025140, 025141, 025142 ] +"340003" = [ 104100, 201136, 005042, 201000, 014046 ] +"340004" = [ 005060, 005061, 025085, 105006, 005042, 025142, 014047, 025142, 014048 ] +"340005" = [ 001007, 002019, 001096, 025061, 005044, 005040, 001030, 004001, 004002, 004003, + 004004, 004005, 004007, 005001, 006001, 008029, 008074, 008077, 040011, 025097, + 025095, 025098, 025099, 021144, 025096, 040012, 040013, 021169, 022151, 022162, + 022163, 025160, 025133, 022156, 022164, 022165, 022166, 021137, 021138, 022167, + 021139, 021118, 021145, 021146, 021147, 022168, 022169, 022170, 025161, 025162, + 022171, 022172, 022173, 022174, 021170, 021171, 022175, 021172, 021118, 021173, + 021174, 021175, 002153, 012063, 002153, 012063, 002153, 012063, 013090, 013091, + 007002, 011097, 011098, 007002, 011095, 011096, 010096, 010081, 010082, 010083, + 010101, 025132, 025163, 025126, 025128, 025164, 010085, 010097, 010086, 010087, + 010092, 010088, 010089, 010098, 010099, 010090, 010100, 010093, 025127, 040014 + ] +"340007" = [ 001007, 001031, 002019, 002020, 004001, 004002, 004003, 004004, 004005, 202131, + 201138, 004006, 201000, 202000, 005001, 006001, 007024, 005021, 007025, 005022, + 005043, 005040, 201133, 005041, 201000, 201132, 025070, 201000, 202126, 007001, + 202000, 103003, 025140, 025141, 033060, 033061, 033062, 033063, 033064, 033065, + 040020, 101010, 340002, 101087, 340003, 002019, 025051, 101007, 340004, 020081, + 008029, 020083, 008029, 040018, 040019, 040021, 040022 ] +"340008" = [ 001007, 001031, 002019, 002020, 004001, 004002, 004003, 004004, 004005, 202131, + 201138, 004006, 201000, 202000, 005001, 006001, 007024, 005021, 007025, 005022, + 005043, 005040, 201133, 005041, 201000, 201132, 025070, 201000, 202126, 007001, + 202000, 103003, 025140, 025141, 033060, 033061, 033062, 033063, 033064, 033065, + 040020, 101010, 340002, 104000, 031002, 201136, 005042, 201000, 014046, 108003, + 025140, 025141, 040026, 040016, 025062, 101000, 031002, 040017, 002019, 025051, + 101007, 340004, 020081, 008029, 020083, 008029, 040018, 040019, 040021, 040022 + ] +"340009" = [ 001007, 001031, 002019, 002020, 301011, 301013, 005040, 201136, 005041, 201000, + 025071, 005001, 005001, 006001, 006001, 107064, 106032, 008012, 008013, 008065, + 008072, 013039, 040015 ] +"340010" = [ 001007, 002019, 001096, 025061, 005044, 005040, 001030, 004001, 004002, 004003, + 004004, 004005, 004007, 005001, 006001, 008029, 008074, 008077, 040011, 025097, + 025095, 025098, 025099, 021144, 025096, 040012, 040013, 021169, 040023, 040024, + 040025, 022151, 022162, 022163, 025160, 025133, 022156, 022164, 022165, 022166, + 021137, 021138, 022167, 021139, 021118, 021145, 021146, 021147, 022168, 022169, + 022170, 025161, 025162, 022171, 022172, 022173, 022174, 021170, 021171, 022175, + 021172, 021118, 021173, 021174, 021175, 002153, 012063, 002153, 012063, 002153, + 012063, 013090, 013091, 007002, 011097, 011098, 007002, 011095, 011096, 010096, + 010081, 010082, 010083, 010101, 025132, 025163, 025126, 025128, 025164, 010085, + 010097, 010086, 010087, 010092, 010088, 010089, 010098, 010099, 010090, 010100, + 010093, 025127, 040014, 010102 ] +"340011" = [ 001007, 002019, 001096, 025061, 005044, 005040, 001030, 004001, 004002, 004003, + 004004, 004005, 004007, 005001, 006001, 008029, 008077, 040011, 025097, 025112, + 025113, 021148, 021169, 040024, 040025, 002153, 022189, 022191, 022130, 025167, + 025166, 022190, 022131, 022132, 022133, 021183, 021184, 022134, 021185, 021118, + 021186, 021187, 021188, 002153, 012063, 002153, 012063, 013090, 013160, 007002, + 011097, 007002, 011095, 011096, 010096, 010081, 010082, 010083, 010101, 002153, + 025165, 025126, 025128, 025164, 010085, 010086, 010087, 010092, 010088, 010089, + 010098, 010099, 010090, 010100, 010093, 025127, 040014, 010102 ] +"340012" = [ 001007, 002019, 008091, 005001, 006001, 007002, 005063, 005064, 005066, 005041, + 005067, 301011, 301012, 004007, 008091, 005001, 006001, 107000, 031001, 005042, + 002153, 002104, 040028, 007024, 040027, 012063 ] +"340013" = [ 001007, 002019, 001033, 001034, 004001, 004002, 004003, 004004, 004005, 004007, + 005068, 005070, 005069, 040036, 008091, 005001, 006001, 004016, 008091, 005001, + 006001, 004016, 008091, 005001, 006001, 004016, 008091, 007071, 005021, 007021, + 040035, 008091, 007071, 005021, 007021, 040035, 008091, 007071, 005021, 007021, + 040035, 040029, 040030, 040031, 025187, 010004, 012001, 040037, 040032, 040033, + 040034 ] +"340015" = [ 001007, 002019, 301011, 301012, 004007, 201133, 005041, 201000, 201130, 005043, + 201000, 207001, 005002, 006002, 207000, 040027, 013040, 021120, 207003, 102003, + 002186, 013155, 207000, 033003 ] +"340016" = [ 301129, 301130, 301131, 202134, 007001, 202000, 101000, 031002, 340002, 101000, + 031002, 304039, 101000, 031002, 304040 ] +"340017" = [ 001007, 002019, 005044, 001096, 005040, 001040, 025061, 025182, 025183, 025181, + 025184, 301011, 301013, 004007, 301021, 005063, 005064, 005066, 010081, 010082, + 008075, 025090, 008029, 201137, 202129, 006021, 202000, 201000, 010087, 025096, + 040012, 008077, 104002, 002153, 012063, 012065, 040013, 007002, 011098, 013090, + 013091, 025164, 025095, 040023, 025113, 008074, 025190, 021144, 025191, 021143, + 013055, 021169, 010101, 015012, 007002, 011097, 040024, 007002, 025126, 025128, + 040011, 007002, 011095, 011096, 010088, 010089, 010090, 010092, 010093, 010098, + 010099, 010100, 025127, 040014, 010085, 010086, 010096, 010103, 010102, 022080, + 008076, 022189, 022191, 022130, 025165, 025166, 025167, 021183, 021184, 022134, + 021122, 022190, 022131, 022132, 022133, 021186, 021187, 021188, 021185, 025112, + 025113, 033092, 008076, 022189, 022191, 022130, 025165, 025166, 025167, 021183, + 021184, 022134, 021122, 022190, 022131, 022132, 022133, 021186, 021187, 021188, + 021185, 025112, 025113, 033092, 025190, 011097, 013090, 013091, 021143, 021184, + 025128, 025163, 025164, 010102, 022189, 022191, 022130, 025166, 021183, 021184, + 022134, 022190, 022131, 022132, 025112, 025113, 033092, 008049, 022080, 134021, + 301011, 301013, 004007, 301021, 010081, 010082, 008029, 201137, 202129, 006021, + 202000, 201000, 025191, 021071, 010085, 040011, 010102, 022189, 022146, 025165, + 025167, 021183, 022190, 022133, 021177, 021185, 013164, 202126, 022046, 202000, + 013117, 013013, 025112, 033092 ] +"340018" = [ 301129, 301130, 301131, 007072, 040074, 104000, 031002, 201136, 005042, 201000, + 014044 ] +"340019" = [ 340020, 340021, 340022, 340023 ] +"340020" = [ 001007, 002019, 005044, 001096, 005040, 001040, 025061, 025182, 025183, 025181, + 025184, 008075, 025090, 301011, 301013, 004007, 301021, 005063, 005064, 005066, + 010081, 010082 ] +"340021" = [ 040012, 008077, 104000, 031001, 002153, 012063, 012065, 040013, 007002, 011098 + ] +"340022" = [ 008029, 201137, 202129, 006021, 202000, 201000, 010087, 040024, 007002, 025126, + 025128, 040011, 007002, 011095, 011096, 010088, 010089, 010090, 010092, 010093, + 010098, 010099, 010100, 025127, 040014, 001030, 010085, 001030, 010085, 010086, + 010096, 010103, 021169, 013055, 025165 ] +"340023" = [ 025095, 040023, 008074, 340024, 340024, 340024, 340025 ] +"340024" = [ 022080, 008076, 025190, 010102, 022189, 022191, 022130, 025167, 025163, 015012, + 025164, 013090, 013091, 025166, 007002, 011097, 021183, 021184, 022134, 021122, + 021186, 021187, 021188, 201131, 021185, 201000, 022179, 022131, 022132, 022133, + 021144, 025191, 021143, 010101, 025112, 025113, 033092 ] +"340025" = [ 008049, 022080, 008076, 025190, 146021, 301011, 301013, 004007, 301021, 010081, + 010082, 008029, 201137, 202129, 006021, 202000, 201000, 025191, 021071, 001030, + 010085, 001030, 010085, 040011, 010088, 010089, 025164, 007002, 025126, 025128, + 010102, 022189, 025167, 025163, 021183, 201131, 021185, 201000, 022179, 022133, + 022146, 021189, 013163, 202126, 022046, 202000, 013117, 013013, 025112, 025113, + 033092 ] +"340026" = [ 001007, 002019, 001033, 001034, 301011, 301013, 301021, 010033, 008043, 025139, + 002155, 112000, 031002, 007071, 033003, 201136, 015074, 015066, 015075, 015068, + 201000, 015076, 015070, 015078, 015072, 107003, 005069, 104000, 031002, 201135, + 015073, 015064, 201000 ] +"340027" = [ 001007, 002019, 002020, 005077, 006043, 001033, 001034, 301011, 301012, 004007, + 301021, 033003, 008090, 020140, 008090, 020141 ] +"340028" = [ 008070, 001033, 001034, 001007, 002019, 005040, 025075, 005041, 005043, 301011, + 301013, 005001, 006001, 201133, 007071, 201000, 007024, 005021, 007025, 005022, + 110000, 031001, 005042, 033002, 025076, 025077, 025078, 201143, 012163, 201000, + 012158, 012159 ] From 5a932544af1d56e945d19c8de95c2ecc031546cb Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Tue, 2 Jul 2024 19:29:17 +0000 Subject: [PATCH 020/277] ECC-1855: Fix step initialisation --- src/accessor/grib_accessor_class_g2end_step.cc | 2 +- tests/grib_sub_hourly.sh | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/accessor/grib_accessor_class_g2end_step.cc b/src/accessor/grib_accessor_class_g2end_step.cc index 7d3c2c225..78fdfb129 100644 --- a/src/accessor/grib_accessor_class_g2end_step.cc +++ b/src/accessor/grib_accessor_class_g2end_step.cc @@ -309,7 +309,7 @@ static int unpack_multiple_time_ranges_double_(grib_accessor* a, double* val, si long the_coded_unit = arr_coded_unit[i]; long the_coded_time_range = arr_coded_time_range[i]; - eccodes::Step time_range{ the_coded_unit, the_coded_time_range }; + eccodes::Step time_range{the_coded_time_range, the_coded_unit}; *val = (start_step + time_range).value(eccodes::Unit(step_units)); return GRIB_SUCCESS; diff --git a/tests/grib_sub_hourly.sh b/tests/grib_sub_hourly.sh index a49a90a6a..0f543cb79 100755 --- a/tests/grib_sub_hourly.sh +++ b/tests/grib_sub_hourly.sh @@ -62,6 +62,11 @@ fi instantaneous_field=$data_dir/reduced_gaussian_surface.grib2 accumulated_field=$data_dir/reduced_gaussian_sub_area.grib2 +# ECC-18XX: Bad step initialisatino +${tools_dir}/grib_set -s productDefinitionTemplateNumber=11,forecastTime=2184,indicatorOfUnitForForecastTime=1,lengthOfTimeRange=720,indicatorOfUnitForTimeRange=1,typeOfTimeIncrement=2,numberOfTimeRange=2 $accumulated_field $temp +${tools_dir}/grib_ls $temp +grib_check_key_equals $temp "-p stepRange" "2184-2904" + # ECC-1228: Changing template with negative forecast time ${tools_dir}/grib_set -s stepRange=-48s--24s $accumulated_field $temp ${tools_dir}/grib_set -s productDefinitionTemplateNumber=8 $temp $temp2 From 72801210940201ee84097d64a5d5aaa9e70f9c21 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 4 Jul 2024 12:15:39 +0100 Subject: [PATCH 021/277] ECC-1859: Compile error: grib_accessor_class_data_g2bifourier_packing.cc --- src/accessor/grib_accessor_class_data_g2bifourier_packing.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/src/accessor/grib_accessor_class_data_g2bifourier_packing.cc b/src/accessor/grib_accessor_class_data_g2bifourier_packing.cc index a014ef3c2..0a6092424 100644 --- a/src/accessor/grib_accessor_class_data_g2bifourier_packing.cc +++ b/src/accessor/grib_accessor_class_data_g2bifourier_packing.cc @@ -11,6 +11,7 @@ #include "grib_accessor_class_data_g2bifourier_packing.h" #include "grib_scaling.h" +#include grib_accessor_class_data_g2bifourier_packing_t _grib_accessor_class_data_g2bifourier_packing{"data_g2bifourier_packing"}; grib_accessor_class* grib_accessor_class_data_g2bifourier_packing = &_grib_accessor_class_data_g2bifourier_packing; From 53e202a2ee2b9949feaf3adb0db69b6db89f6448 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 4 Jul 2024 15:54:59 +0100 Subject: [PATCH 022/277] ECC-1860: Definition language: Add 'isnot' operator for strings --- src/eccodes_prototypes.h | 2 +- src/grib_expression_class_string_compare.cc | 19 +- src/grib_lex.cc | 1563 ++++++------ src/grib_yacc.cc | 2461 ++++++++++--------- src/grib_yacc.h | 20 +- src/gribl.l | 33 +- src/griby.y | 4 +- src/makeyacc | 7 + tests/grib_filter.sh | 4 + 9 files changed, 2080 insertions(+), 2033 deletions(-) diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index ab2d4531e..9bceeb202 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -757,7 +757,7 @@ grib_expression* new_is_in_dict_expression(grib_context* c, const char* name, co grib_expression* new_true_expression(grib_context* c); /* grib_expression_class_string_compare.cc */ -grib_expression* new_string_compare_expression(grib_context* c, grib_expression* left, grib_expression* right); +grib_expression* new_string_compare_expression(grib_context* c, grib_expression* left, grib_expression* right, int eq); /* grib_expression_class_unop.cc */ grib_expression* new_unop_expression(grib_context* c, grib_unop_long_proc long_func, grib_unop_double_proc double_func, grib_expression* exp); diff --git a/src/grib_expression_class_string_compare.cc b/src/grib_expression_class_string_compare.cc index 421669aca..3003b5ef6 100644 --- a/src/grib_expression_class_string_compare.cc +++ b/src/grib_expression_class_string_compare.cc @@ -22,7 +22,8 @@ IMPLEMENTS = print IMPLEMENTS = add_dependency MEMBERS = grib_expression *left - MEMBERS = grib_expression *right + MEMBERS = grib_expression *right + MEMBERS = int eq END_CLASS_DEF */ @@ -50,6 +51,7 @@ typedef struct grib_expression_string_compare{ /* Members defined in string_compare */ grib_expression *left; grib_expression *right; + int eq; } grib_expression_string_compare; @@ -110,7 +112,11 @@ static int evaluate_long(grib_expression* g, grib_handle* h, long* lres) return ret; } - *lres = (grib_inline_strcmp(v1, v2) == 0); + if (e->eq) // IS operator + *lres = (grib_inline_strcmp(v1, v2) == 0); + else // ISNOT operator + *lres = (grib_inline_strcmp(v1, v2) != 0); + return GRIB_SUCCESS; } @@ -147,12 +153,13 @@ static void add_dependency(grib_expression* g, grib_accessor* observer) } grib_expression* new_string_compare_expression(grib_context* c, - grib_expression* left, grib_expression* right) + grib_expression* left, grib_expression* right, int eq) { grib_expression_string_compare* e = (grib_expression_string_compare*)grib_context_malloc_clear_persistent(c, sizeof(grib_expression_string_compare)); - e->base.cclass = grib_expression_class_string_compare; - e->left = left; - e->right = right; + e->base.cclass = grib_expression_class_string_compare; + e->left = left; + e->right = right; + e->eq = eq; return (grib_expression*)e; } diff --git a/src/grib_lex.cc b/src/grib_lex.cc index f4057b7a0..8efe0e58d 100644 --- a/src/grib_lex.cc +++ b/src/grib_lex.cc @@ -353,8 +353,8 @@ static void grib_yynoreturn grib_yy_fatal_error ( const char* msg ); (grib_yy_hold_char) = *grib_yy_cp; \ *grib_yy_cp = '\0'; \ (grib_yy_c_buf_p) = grib_yy_cp; -#define YY_NUM_RULES 138 -#define YY_END_OF_BUFFER 139 +#define YY_NUM_RULES 139 +#define YY_END_OF_BUFFER 140 /* This struct is not used in this scanner, but its presence is necessary. */ struct grib_yy_trans_info @@ -362,95 +362,95 @@ struct grib_yy_trans_info flex_int32_t grib_yy_verify; flex_int32_t grib_yy_nxt; }; -static const flex_int16_t grib_yy_accept[798] = +static const flex_int16_t grib_yy_accept[801] = { 0, - 135, 135, 139, 137, 135, 136, 12, 126, 134, 137, - 137, 137, 137, 129, 5, 137, 3, 128, 128, 128, - 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 137, 18, 135, 6, 0, 14, 130, 132, 0, - 0, 131, 129, 128, 128, 4, 7, 1, 2, 0, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 23, 128, 10, 128, 128, 128, 128, 128, 128, - - 128, 128, 128, 128, 128, 15, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 16, 0, 0, 0, 0, - 0, 0, 133, 131, 0, 128, 128, 0, 0, 128, - 0, 128, 24, 128, 13, 128, 128, 128, 8, 128, - 66, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 35, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 98, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 11, 128, 128, 52, 128, 128, 128, 128, - - 128, 128, 112, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 133, 0, 132, 0, 0, 0, 0, 0, 131, - 128, 128, 128, 128, 128, 128, 111, 28, 128, 115, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 89, - 128, 25, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 67, 128, 128, 30, 128, 128, 128, 128, 48, 128, - 128, 128, 128, 128, 128, 17, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 124, 128, 128, - - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 114, 128, 128, 128, 128, 0, 0, 0, 0, 0, - 0, 131, 128, 128, 128, 56, 128, 27, 128, 128, - 20, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 44, 128, 128, 128, 128, 46, 128, 128, - 128, 128, 128, 100, 104, 108, 128, 128, 128, 128, - 29, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 50, 128, 123, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 97, 128, 128, 31, 121, - - 0, 0, 0, 0, 128, 0, 0, 128, 122, 85, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 74, 128, 128, 128, 128, 40, 128, 91, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 21, 128, 45, 128, 128, 70, 128, 128, 128, 128, - 9, 128, 128, 128, 128, 128, 75, 76, 128, 128, - 128, 38, 128, 128, 19, 116, 128, 128, 128, 128, - 128, 99, 103, 107, 128, 128, 0, 0, 0, 0, - 0, 128, 128, 93, 128, 128, 128, 118, 128, 128, - 96, 117, 128, 128, 128, 68, 128, 128, 128, 128, - - 128, 128, 125, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 54, 65, 87, 90, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 34, 128, 128, 128, 57, 128, 0, - 0, 128, 128, 128, 128, 59, 128, 128, 128, 128, - 128, 128, 128, 128, 36, 128, 128, 128, 128, 128, - 128, 128, 128, 64, 128, 128, 128, 128, 128, 95, - 128, 128, 58, 128, 128, 128, 128, 128, 128, 32, - 128, 128, 128, 128, 128, 128, 26, 128, 39, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 37, - - 128, 128, 128, 128, 128, 128, 83, 128, 62, 22, - 128, 47, 49, 128, 86, 128, 128, 128, 128, 128, - 128, 128, 128, 80, 60, 128, 128, 128, 128, 128, - 128, 94, 128, 128, 128, 128, 128, 128, 120, 128, - 128, 128, 78, 77, 82, 128, 128, 128, 128, 128, - 113, 128, 128, 128, 128, 79, 128, 128, 128, 128, - 128, 128, 42, 63, 128, 128, 128, 128, 128, 128, - 128, 69, 128, 128, 128, 128, 128, 41, 61, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 55, 128, 128, 128, 128, 128, 128, - - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 51, 128, 128, 128, 128, 128, 128, 128, - 92, 128, 119, 128, 128, 128, 128, 128, 128, 128, - 84, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 53, 128, 33, 128, 128, - 128, 128, 88, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 43, 128, 72, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 73, 128, 128, 128, 128, - 128, 128, 128, 128, 102, 106, 110, 81, 128, 128, - 128, 128, 101, 105, 109, 71, 0 + 136, 136, 140, 138, 136, 137, 13, 127, 135, 138, + 138, 138, 138, 130, 5, 138, 3, 129, 129, 129, + 128, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 138, 19, 136, 6, 0, 15, 131, 133, 0, + 0, 132, 130, 129, 129, 4, 7, 1, 2, 0, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 24, 129, 10, 129, 129, 129, 129, 129, 129, + + 129, 129, 129, 129, 129, 16, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 17, 0, 0, 0, 0, + 0, 0, 134, 132, 0, 129, 129, 0, 0, 129, + 0, 129, 25, 129, 14, 129, 129, 129, 8, 129, + 67, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 36, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 99, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 12, 129, 129, 53, 129, 129, 129, + + 129, 129, 129, 113, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 134, 0, 133, 0, 0, 0, 0, 0, + 132, 129, 129, 129, 129, 129, 129, 112, 29, 129, + 116, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 90, 129, 26, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 68, 129, 129, 31, 129, 129, 129, 129, + 49, 129, 129, 129, 129, 129, 129, 18, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 125, + + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 115, 129, 129, 129, 129, 0, 0, 0, + 0, 0, 0, 132, 129, 129, 129, 57, 129, 28, + 129, 129, 21, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 45, 129, 129, 129, 129, 47, + 129, 129, 129, 129, 129, 101, 105, 109, 129, 129, + 11, 129, 129, 30, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 51, 129, 124, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 98, 129, + + 129, 32, 122, 0, 0, 0, 0, 129, 0, 0, + 129, 123, 86, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 75, 129, 129, 129, 129, 41, + 129, 92, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 22, 129, 46, 129, 129, 71, 129, + 129, 129, 129, 9, 129, 129, 129, 129, 129, 76, + 77, 129, 129, 129, 39, 129, 129, 20, 117, 129, + 129, 129, 129, 129, 100, 104, 108, 129, 129, 0, + 0, 0, 0, 0, 129, 129, 94, 129, 129, 129, + 119, 129, 129, 97, 118, 129, 129, 129, 69, 129, + + 129, 129, 129, 129, 129, 126, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 55, 66, 88, + 91, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 35, 129, 129, 129, + 58, 129, 0, 0, 129, 129, 129, 129, 60, 129, + 129, 129, 129, 129, 129, 129, 129, 37, 129, 129, + 129, 129, 129, 129, 129, 129, 65, 129, 129, 129, + 129, 129, 96, 129, 129, 59, 129, 129, 129, 129, + 129, 129, 33, 129, 129, 129, 129, 129, 129, 27, + 129, 40, 129, 129, 129, 129, 129, 129, 129, 129, + + 129, 129, 38, 129, 129, 129, 129, 129, 129, 84, + 129, 63, 23, 129, 48, 50, 129, 87, 129, 129, + 129, 129, 129, 129, 129, 129, 81, 61, 129, 129, + 129, 129, 129, 129, 95, 129, 129, 129, 129, 129, + 129, 121, 129, 129, 129, 79, 78, 83, 129, 129, + 129, 129, 129, 114, 129, 129, 129, 129, 80, 129, + 129, 129, 129, 129, 129, 43, 64, 129, 129, 129, + 129, 129, 129, 129, 70, 129, 129, 129, 129, 129, + 42, 62, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 56, 129, 129, 129, + + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 52, 129, 129, 129, 129, + 129, 129, 129, 93, 129, 120, 129, 129, 129, 129, + 129, 129, 129, 85, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 54, 129, + 34, 129, 129, 129, 129, 89, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 44, 129, 73, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 74, 129, + 129, 129, 129, 129, 129, 129, 129, 103, 107, 111, + 82, 129, 129, 129, 129, 102, 106, 110, 72, 0 } ; @@ -496,197 +496,197 @@ static const YY_CHAR grib_yy_meta[57] = 8, 8, 8, 8, 1, 1 } ; -static const flex_int16_t grib_yy_base[828] = +static const flex_int16_t grib_yy_base[831] = { 0, - 0, 0, 1944, 1945, 1941, 1945, 1921, 1945, 44, 1934, - 51, 58, 0, 69, 68, 1919, 1918, 81, 96, 76, - 1945, 75, 92, 94, 102, 109, 66, 119, 117, 128, + 0, 0, 1950, 1951, 1947, 1951, 1927, 1951, 44, 1940, + 51, 58, 0, 69, 68, 1925, 1924, 81, 96, 76, + 1951, 75, 92, 94, 102, 109, 66, 119, 117, 128, 55, 142, 105, 134, 78, 141, 104, 149, 155, 167, - 157, 1883, 1945, 1935, 1945, 199, 1945, 210, 135, 222, - 234, 170, 245, 257, 273, 1945, 1945, 1945, 1945, 1914, - 1925, 1908, 98, 132, 169, 196, 184, 231, 154, 240, + 157, 1889, 1951, 1941, 1951, 199, 1951, 210, 135, 222, + 234, 170, 245, 257, 273, 1951, 1951, 1951, 1951, 1920, + 1931, 1914, 98, 132, 169, 196, 184, 231, 154, 240, 242, 251, 254, 252, 268, 171, 122, 258, 267, 273, 270, 207, 275, 283, 294, 279, 280, 281, 291, 290, - 294, 1907, 293, 305, 296, 308, 310, 297, 311, 312, - - 313, 314, 319, 322, 321, 1906, 324, 320, 327, 328, - 341, 343, 206, 332, 344, 339, 348, 353, 352, 357, - 362, 354, 365, 363, 364, 1945, 0, 391, 396, 1910, - 398, 401, 414, 410, 401, 1920, 426, 438, 445, 455, - 0, 449, 1903, 450, 1902, 411, 386, 451, 1901, 453, - 1900, 454, 455, 457, 440, 458, 463, 465, 395, 466, - 469, 470, 471, 474, 475, 1899, 476, 478, 495, 484, - 480, 409, 489, 482, 486, 499, 513, 488, 500, 510, - 509, 511, 507, 514, 516, 522, 520, 527, 524, 525, - 528, 537, 540, 529, 534, 535, 543, 544, 550, 548, - - 554, 549, 552, 563, 553, 561, 564, 551, 566, 568, - 570, 573, 574, 577, 575, 578, 579, 582, 580, 576, - 617, 624, 631, 638, 645, 652, 663, 600, 663, 675, - 687, 1898, 659, 669, 658, 670, 1897, 1896, 682, 1895, - 683, 684, 586, 685, 686, 688, 690, 694, 696, 1894, - 697, 1893, 699, 701, 716, 718, 719, 706, 705, 713, - 716, 715, 710, 718, 735, 746, 748, 733, 734, 597, - 748, 737, 738, 1892, 740, 741, 743, 746, 1891, 745, - 747, 749, 754, 763, 759, 1890, 750, 755, 762, 766, - 772, 767, 770, 777, 775, 778, 784, 1889, 779, 780, - - 781, 788, 783, 782, 786, 795, 801, 815, 797, 806, - 1888, 810, 812, 1903, 837, 833, 845, 853, 0, 857, - 857, 865, 1900, 877, 814, 1881, 862, 1880, 859, 873, - 1875, 872, 874, 860, 875, 823, 876, 877, 879, 885, - 886, 887, 1872, 904, 906, 907, 893, 1871, 894, 895, - 897, 898, 902, 919, 921, 922, 908, 907, 910, 933, - 1867, 919, 921, 922, 927, 929, 930, 934, 937, 936, - 938, 939, 945, 951, 946, 1866, 947, 953, 955, 948, - 952, 964, 940, 969, 970, 972, 975, 977, 976, 979, - 978, 980, 997, 1002, 1003, 1877, 995, 984, 1859, 1858, - - 1013, 1020, 1028, 1032, 1032, 1044, 1053, 1028, 1855, 1854, - 1047, 1048, 1029, 1049, 1050, 1052, 1054, 1053, 1057, 1059, - 1060, 1848, 1061, 1078, 1080, 1081, 1847, 1066, 1843, 1071, - 998, 1070, 1089, 1090, 1091, 1079, 1081, 1083, 1082, 1101, - 1842, 1086, 1837, 1092, 1093, 1835, 1094, 1096, 1097, 1099, - 1834, 1100, 1108, 1110, 1111, 1118, 1830, 1828, 1120, 1112, - 1115, 1827, 1116, 1121, 1824, 1823, 1122, 1131, 1126, 1132, - 1127, 1145, 1151, 1159, 1144, 1146, 1180, 1188, 1167, 1195, - 1203, 0, 1210, 1818, 1147, 1204, 1153, 1154, 1205, 1207, - 1816, 1815, 1159, 1206, 1208, 1809, 1226, 1225, 1227, 1213, - - 1214, 1216, 1807, 1231, 1233, 1234, 1219, 1224, 1223, 1152, - 1225, 1242, 1232, 1227, 1236, 1806, 1803, 1802, 1242, 1243, - 1244, 1250, 1239, 1251, 1256, 1258, 1259, 1263, 1261, 1265, - 1268, 1270, 1271, 1798, 1288, 1290, 1292, 1789, 1277, 1303, - 1323, 1283, 1307, 1279, 1281, 1788, 1282, 1298, 1301, 1302, - 1319, 1321, 1301, 1321, 1784, 1318, 1338, 1339, 1341, 1328, - 1330, 1332, 1334, 1783, 1347, 1335, 1337, 1338, 1343, 1776, - 1339, 1340, 1774, 1348, 1350, 1344, 1351, 1353, 1354, 1365, - 1367, 1359, 1356, 1389, 1390, 1391, 1773, 1378, 1769, 1380, - 1383, 1384, 1381, 1386, 1388, 676, 1401, 1403, 1390, 1767, - - 1407, 1408, 1409, 1394, 1396, 1395, 1766, 1413, 1763, 1762, - 1401, 1755, 1754, 1398, 1750, 1414, 1409, 1410, 1422, 1413, - 1425, 1433, 1427, 1748, 1747, 1450, 1451, 1452, 1437, 1438, - 1439, 1743, 1440, 1442, 1444, 1457, 1459, 1465, 1741, 1462, - 1471, 1473, 1733, 1731, 1730, 1474, 1461, 1462, 1465, 1460, - 1729, 1468, 1466, 1467, 1471, 1728, 1480, 1486, 1488, 1479, - 1486, 1485, 1727, 1721, 1492, 1504, 1510, 1513, 1514, 1515, - 1517, 1736, 1502, 1504, 1506, 1507, 1519, 1718, 1717, 1510, - 1521, 1528, 1529, 1515, 1523, 1522, 1528, 1545, 1547, 1548, - 1550, 1551, 1554, 1716, 1540, 1539, 1547, 1557, 1553, 1559, - - 1564, 1567, 1556, 1565, 1560, 1552, 1583, 1586, 1588, 1589, - 1591, 1595, 1713, 1580, 1578, 1597, 1583, 1598, 1602, 1604, - 1712, 1585, 1711, 1589, 1600, 1603, 1606, 1610, 1611, 1616, - 1709, 1609, 1627, 1610, 1628, 1629, 1630, 1616, 1617, 1634, - 1636, 1638, 1639, 1643, 1646, 1708, 1647, 1707, 1649, 1652, - 1653, 1641, 1706, 1658, 1660, 1661, 1662, 1663, 1665, 1669, - 1672, 1673, 1674, 1654, 1676, 1294, 1678, 1679, 1682, 1688, - 1690, 1681, 1685, 1691, 1694, 1177, 1680, 1696, 1705, 1706, - 1709, 1713, 1718, 1719, 1176, 1001, 673, 497, 1708, 1716, - 1717, 1720, 372, 235, 153, 97, 1945, 1754, 1762, 1769, - - 1773, 1777, 1781, 1788, 1795, 1797, 1805, 1810, 1811, 1819, - 1824, 1828, 1830, 1837, 1845, 1849, 1856, 1861, 1866, 1868, - 1876, 1880, 1888, 1893, 1894, 1902, 1903 + 294, 1913, 293, 305, 296, 308, 310, 297, 311, 312, + + 313, 319, 314, 321, 324, 1912, 322, 334, 326, 327, + 345, 329, 206, 346, 347, 349, 350, 354, 342, 361, + 358, 355, 369, 366, 367, 1951, 0, 394, 399, 1916, + 401, 405, 418, 389, 405, 1926, 430, 442, 449, 459, + 0, 371, 1909, 453, 1908, 415, 390, 444, 1907, 455, + 1906, 456, 457, 458, 460, 463, 464, 467, 465, 470, + 469, 471, 474, 472, 477, 1905, 479, 412, 496, 481, + 483, 413, 488, 485, 490, 486, 511, 505, 506, 508, + 504, 510, 514, 515, 516, 517, 521, 522, 524, 527, + 533, 534, 535, 536, 537, 540, 546, 548, 547, 549, + + 551, 550, 552, 555, 557, 560, 564, 566, 567, 568, + 571, 572, 574, 573, 577, 576, 579, 583, 580, 585, + 582, 619, 626, 633, 640, 647, 654, 665, 669, 667, + 677, 689, 1904, 661, 586, 671, 672, 1903, 1902, 593, + 1901, 674, 686, 687, 688, 689, 690, 691, 692, 695, + 1900, 699, 1899, 697, 700, 717, 718, 720, 706, 705, + 710, 716, 717, 708, 720, 737, 743, 747, 734, 735, + 737, 736, 751, 740, 741, 1898, 743, 745, 746, 748, + 1897, 750, 753, 749, 765, 766, 762, 1896, 757, 755, + 758, 770, 773, 775, 779, 780, 783, 785, 782, 1893, + + 784, 786, 787, 790, 789, 788, 791, 795, 799, 828, + 808, 803, 1890, 802, 809, 1905, 842, 827, 851, 838, + 0, 862, 862, 869, 1900, 879, 873, 1881, 865, 1880, + 864, 876, 1876, 877, 878, 827, 879, 880, 881, 882, + 884, 889, 890, 891, 1875, 908, 909, 911, 896, 1870, + 901, 898, 903, 902, 906, 925, 926, 928, 923, 911, + 1868, 914, 933, 1867, 920, 925, 934, 936, 926, 935, + 939, 940, 941, 942, 945, 950, 949, 951, 1864, 952, + 947, 962, 956, 967, 969, 973, 970, 976, 977, 978, + 981, 980, 983, 985, 984, 1005, 1006, 1009, 1879, 996, + + 992, 1857, 1856, 1022, 1028, 1036, 1024, 1040, 1052, 1061, + 1024, 1852, 1851, 1055, 1056, 1009, 1035, 1057, 1060, 1061, + 1062, 1064, 1065, 1068, 1846, 1067, 1086, 1087, 1088, 1844, + 1073, 1843, 1077, 1079, 1078, 1096, 1097, 1098, 1084, 1089, + 1095, 1087, 1107, 1839, 1092, 1837, 1101, 1105, 1836, 1096, + 1103, 1108, 1110, 1833, 1116, 1104, 1001, 1117, 1121, 1832, + 1827, 1122, 1126, 1123, 1825, 1118, 1128, 1824, 1818, 1127, + 1133, 1135, 1138, 1142, 1160, 1162, 1163, 1151, 1152, 1166, + 1188, 1177, 1195, 1203, 0, 1210, 1816, 1204, 1206, 1165, + 1168, 1205, 1209, 1815, 1812, 1207, 1208, 1210, 1811, 1228, + + 1227, 1231, 1216, 1217, 1218, 1807, 1235, 1236, 1241, 1227, + 1229, 1226, 1234, 1230, 1251, 1236, 1239, 1242, 1798, 1797, + 1793, 1247, 1248, 1252, 1253, 1254, 1257, 1259, 1264, 1265, + 1268, 1266, 1267, 1275, 1276, 1278, 1792, 1296, 1297, 1298, + 1785, 1283, 1310, 1318, 1315, 1285, 1316, 1317, 1783, 1318, + 1319, 1293, 1320, 1338, 1339, 1306, 1326, 1782, 1327, 1307, + 1344, 1347, 1333, 1334, 1337, 1338, 1778, 1355, 1343, 1344, + 1349, 1346, 1776, 1348, 1355, 1775, 1358, 1361, 1360, 1362, + 1364, 1363, 1284, 1365, 1372, 1369, 1384, 1389, 1392, 1772, + 1382, 1771, 1383, 1388, 1385, 1387, 1389, 1390, 1409, 1410, + + 1412, 1397, 1764, 1415, 1416, 1417, 1405, 1411, 1412, 1763, + 1431, 1759, 1757, 1413, 1756, 1752, 1417, 1750, 1414, 1416, + 1419, 1421, 1426, 1423, 1418, 1429, 1743, 1742, 1460, 1461, + 1462, 1447, 1448, 1449, 1741, 1451, 1452, 1453, 1470, 1471, + 1474, 1738, 1472, 1475, 1482, 1737, 1736, 1735, 1483, 1461, + 1470, 1468, 1471, 1733, 1473, 1472, 1477, 1476, 1732, 1490, + 1494, 1495, 1492, 1497, 1494, 1726, 1725, 1501, 1512, 1515, + 1519, 1518, 1524, 1526, 1739, 1505, 1511, 1512, 1516, 1526, + 1721, 1720, 1519, 1530, 1536, 1537, 1529, 1532, 1535, 1537, + 1554, 1555, 1556, 1557, 1558, 1559, 1719, 1544, 1545, 1550, + + 1564, 1560, 1572, 1573, 1575, 1567, 1569, 1570, 1576, 1587, + 1590, 1593, 1594, 1596, 1597, 1717, 1584, 1591, 1604, 1596, + 1608, 1609, 1614, 1716, 1594, 1715, 1602, 1605, 1615, 1616, + 1621, 1627, 1631, 1714, 1617, 1635, 1620, 1637, 1638, 1641, + 1626, 1623, 1644, 1646, 1648, 1649, 1653, 1654, 1590, 1651, + 1286, 1656, 1657, 1660, 1646, 1171, 1666, 1668, 1670, 1671, + 1673, 1675, 1677, 1682, 1683, 1686, 1170, 1687, 1053, 1684, + 1680, 1693, 1695, 1696, 1689, 1698, 1699, 1688, 969, 1700, + 1704, 1706, 1712, 1721, 1723, 1724, 1725, 839, 678, 618, + 443, 1716, 1722, 1726, 1727, 395, 235, 153, 97, 1951, + + 1763, 1771, 1778, 1782, 1786, 1790, 1797, 1804, 1806, 1814, + 1819, 1820, 1828, 1833, 1837, 1839, 1846, 1854, 1858, 1865, + 1870, 1875, 1877, 1885, 1889, 1897, 1902, 1903, 1911, 1912 } ; -static const flex_int16_t grib_yy_def[828] = +static const flex_int16_t grib_yy_def[831] = { 0, - 797, 1, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 798, 799, 797, 797, 797, 800, 800, 19, - 797, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 800, 1, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 801, 802, 800, 800, 800, 803, 803, 19, + 800, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 797, 797, 797, 797, 797, 797, 797, 801, 802, - 797, 803, 799, 804, 804, 797, 797, 797, 797, 797, - 805, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 800, 800, 800, 800, 800, 800, 800, 804, 805, + 800, 806, 802, 807, 807, 800, 800, 800, 800, 800, + 808, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 19, 805, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 808, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 19, 19, 797, 806, 807, 808, 809, - 810, 802, 797, 803, 811, 812, 804, 797, 797, 812, - 813, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 800, 809, 810, 811, 812, + 813, 805, 800, 806, 814, 815, 807, 800, 800, 815, + 816, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 19, 19, 19, 19, 19, 805, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 808, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 814, 797, 797, 797, 797, 797, 810, 815, 797, 797, - 816, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 817, 800, 800, 800, 800, 800, 813, 818, 800, + 800, 819, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 19, 805, 805, 805, 19, 19, 19, - 19, 19, 19, 19, 805, 805, 805, 19, 19, 19, + 19, 19, 19, 19, 19, 808, 808, 808, 19, 19, + 19, 19, 19, 19, 19, 808, 808, 808, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 817, 814, 818, 797, 819, 820, 821, - 797, 797, 822, 816, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 820, 817, 821, 800, 822, + 823, 824, 800, 800, 825, 819, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 805, 805, 805, 19, 19, 19, 19, - 19, 19, 19, 805, 805, 805, 19, 19, 19, 805, + 19, 19, 19, 19, 19, 808, 808, 808, 19, 19, + 19, 19, 19, 19, 19, 808, 808, 808, 19, 19, + 19, 19, 808, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 805, 805, 805, 805, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 808, 808, 808, 808, 19, - 823, 797, 819, 824, 825, 797, 797, 19, 19, 19, - 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 805, 805, 805, 19, 19, 19, 19, - 19, 19, 805, 805, 805, 19, 19, 19, 19, 805, + 19, 19, 19, 826, 800, 822, 827, 828, 800, 800, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 808, 808, 808, 19, + 19, 19, 19, 19, 19, 808, 808, 808, 19, 19, + 19, 19, 808, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 805, 805, 805, 19, 19, 797, 797, 826, 797, - 797, 827, 825, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 19, 19, 19, 805, 805, 805, 19, + 19, 19, 19, 19, 808, 808, 808, 19, 19, 800, + 800, 829, 800, 800, 830, 828, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 19, 808, - 19, 19, 19, 805, 805, 805, 19, 19, 19, 19, - 19, 805, 19, 19, 19, 19, 19, 19, 19, 19, + 808, 808, 19, 19, 19, 19, 808, 808, 808, 19, + 19, 19, 19, 19, 808, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 19, 805, 805, 805, 19, 19, 797, - 797, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 805, 805, 805, 19, 19, 19, 805, 805, 805, 19, - 19, 19, 19, 19, 805, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 808, 808, 808, + 19, 19, 800, 800, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 808, 808, 808, 19, 19, 19, 808, + 808, 808, 19, 19, 19, 19, 19, 808, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 805, 805, 805, 19, 19, 19, 19, - 19, 19, 19, 19, 19, 805, 805, 805, 19, 19, - - 805, 805, 805, 19, 19, 19, 19, 805, 19, 19, - 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, - 19, 19, 19, 19, 19, 805, 805, 805, 19, 19, - 19, 19, 19, 19, 19, 805, 805, 805, 19, 805, - 805, 805, 19, 19, 19, 805, 19, 19, 19, 19, - 19, 19, 19, 19, 19, 19, 805, 805, 805, 19, - 19, 19, 19, 19, 19, 805, 805, 805, 805, 805, - 805, 805, 19, 19, 19, 19, 19, 19, 19, 19, - 805, 805, 805, 19, 19, 19, 19, 805, 805, 805, - 805, 805, 805, 19, 19, 19, 19, 805, 19, 805, - - 805, 805, 19, 19, 19, 19, 805, 805, 805, 805, - 805, 805, 19, 19, 19, 805, 19, 805, 805, 805, - 19, 19, 19, 19, 805, 805, 805, 805, 805, 805, - 19, 19, 805, 19, 805, 805, 805, 19, 19, 805, - 805, 805, 805, 805, 805, 19, 805, 19, 805, 805, - 805, 19, 19, 805, 805, 805, 805, 805, 805, 805, - 805, 805, 805, 19, 805, 805, 805, 805, 805, 805, - 805, 805, 805, 805, 805, 805, 805, 805, 805, 805, - 805, 805, 805, 805, 805, 805, 805, 805, 805, 805, - 805, 805, 805, 805, 805, 805, 0, 797, 797, 797, - - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797 + 19, 19, 19, 19, 19, 19, 808, 808, 808, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 808, 808, + + 808, 19, 19, 808, 808, 808, 19, 19, 19, 19, + 808, 19, 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 808, 808, + 808, 19, 19, 19, 19, 19, 19, 19, 808, 808, + 808, 19, 808, 808, 808, 19, 19, 19, 808, 19, + 19, 19, 19, 19, 19, 19, 19, 19, 19, 808, + 808, 808, 19, 19, 19, 19, 19, 19, 808, 808, + 808, 808, 808, 808, 808, 19, 19, 19, 19, 19, + 19, 19, 19, 808, 808, 808, 19, 19, 19, 19, + 808, 808, 808, 808, 808, 808, 19, 19, 19, 19, + + 808, 19, 808, 808, 808, 19, 19, 19, 19, 808, + 808, 808, 808, 808, 808, 19, 19, 19, 808, 19, + 808, 808, 808, 19, 19, 19, 19, 808, 808, 808, + 808, 808, 808, 19, 19, 808, 19, 808, 808, 808, + 19, 19, 808, 808, 808, 808, 808, 808, 19, 808, + 19, 808, 808, 808, 19, 19, 808, 808, 808, 808, + 808, 808, 808, 808, 808, 808, 19, 808, 808, 808, + 808, 808, 808, 808, 808, 808, 808, 808, 808, 808, + 808, 808, 808, 808, 808, 808, 808, 808, 808, 808, + 808, 808, 808, 808, 808, 808, 808, 808, 808, 0, + + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800 } ; -static const flex_int16_t grib_yy_nxt[2002] = +static const flex_int16_t grib_yy_nxt[2008] = { 0, 4, 5, 6, 7, 8, 9, 10, 8, 11, 11, 12, 13, 14, 14, 14, 14, 14, 14, 14, 15, @@ -714,7 +714,7 @@ static const flex_int16_t grib_yy_nxt[2002] = 123, 46, 46, 46, 46, 46, 46, 46, 51, 51, 52, 62, 48, 48, 48, 48, 48, 48, 48, 146, 145, 62, 62, 128, 130, 130, 130, 130, 130, 130, - 130, 166, 131, 205, 60, 128, 133, 133, 133, 133, + 130, 166, 131, 206, 60, 128, 133, 133, 133, 133, 133, 133, 133, 51, 51, 52, 62, 53, 53, 53, 53, 53, 53, 53, 147, 62, 60, 62, 55, 136, 136, 136, 136, 136, 136, 136, 62, 62, 148, 62, @@ -724,194 +724,194 @@ static const flex_int16_t grib_yy_nxt[2002] = 62, 154, 156, 60, 62, 62, 62, 162, 62, 163, 157, 158, 164, 159, 168, 62, 62, 165, 62, 62, 167, 62, 62, 169, 171, 173, 176, 170, 172, 175, - 62, 179, 174, 62, 178, 62, 62, 62, 62, 62, - 182, 177, 181, 180, 62, 62, 62, 62, 189, 62, - 190, 191, 62, 62, 196, 184, 185, 62, 183, 195, - 187, 188, 194, 186, 62, 192, 62, 198, 62, 62, - 193, 206, 199, 62, 197, 207, 202, 62, 62, 62, - 209, 60, 62, 200, 201, 208, 212, 62, 62, 62, - 62, 203, 210, 213, 211, 204, 216, 215, 218, 138, - - 138, 214, 219, 220, 223, 223, 225, 225, 226, 229, - 229, 62, 217, 130, 130, 130, 130, 130, 130, 130, - 62, 131, 51, 51, 52, 235, 133, 133, 133, 133, - 133, 133, 133, 228, 62, 60, 62, 128, 136, 136, - 136, 136, 136, 136, 136, 228, 234, 260, 246, 128, - 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, - 222, 222, 222, 222, 60, 62, 141, 140, 140, 140, - 140, 140, 140, 140, 62, 62, 62, 232, 62, 62, - 62, 233, 62, 62, 239, 237, 236, 241, 62, 238, - 62, 62, 240, 242, 62, 62, 62, 247, 244, 62, - - 62, 62, 249, 62, 60, 62, 60, 62, 243, 62, - 252, 62, 245, 62, 62, 254, 250, 248, 262, 258, - 253, 263, 251, 261, 62, 62, 265, 268, 266, 259, - 267, 269, 62, 255, 62, 62, 62, 256, 62, 62, - 264, 62, 257, 271, 272, 62, 270, 62, 273, 62, - 62, 275, 62, 62, 62, 274, 276, 277, 279, 62, - 62, 282, 62, 280, 283, 62, 284, 278, 62, 62, - 286, 281, 285, 62, 62, 62, 62, 62, 62, 62, - 287, 295, 289, 288, 291, 293, 62, 290, 62, 62, - 300, 62, 292, 62, 296, 62, 297, 294, 62, 62, - - 62, 62, 62, 62, 62, 62, 298, 62, 321, 321, - 299, 62, 304, 301, 307, 303, 302, 306, 310, 309, - 305, 312, 62, 308, 313, 311, 60, 333, 359, 314, - 314, 314, 314, 314, 314, 314, 222, 222, 222, 222, - 222, 222, 222, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 227, 227, 227, - 227, 227, 227, 227, 316, 316, 316, 316, 316, 316, - 316, 317, 317, 318, 319, 230, 230, 230, 230, 230, - 230, 230, 60, 62, 62, 60, 320, 230, 230, 230, - 230, 230, 230, 230, 62, 62, 60, 328, 320, 323, - - 323, 323, 323, 323, 323, 323, 326, 62, 62, 62, - 62, 62, 327, 62, 330, 62, 329, 336, 331, 62, - 334, 62, 62, 338, 62, 60, 62, 60, 60, 636, - 62, 62, 332, 342, 335, 62, 340, 339, 62, 337, - 62, 62, 349, 62, 60, 341, 352, 344, 343, 347, - 348, 350, 354, 345, 346, 60, 351, 60, 62, 62, - 355, 360, 62, 62, 356, 62, 62, 353, 62, 363, - 62, 62, 62, 62, 62, 62, 357, 366, 361, 62, - 62, 367, 368, 358, 62, 370, 362, 62, 62, 365, - 364, 62, 62, 369, 371, 62, 373, 62, 372, 374, - - 62, 377, 62, 62, 62, 62, 62, 62, 62, 62, - 375, 62, 379, 62, 376, 382, 380, 378, 381, 383, - 62, 387, 62, 385, 388, 389, 62, 384, 393, 386, - 394, 62, 395, 396, 390, 62, 397, 62, 392, 62, - 62, 408, 391, 398, 319, 399, 60, 400, 62, 314, - 314, 314, 314, 314, 314, 314, 401, 402, 402, 402, - 402, 402, 402, 402, 319, 406, 406, 417, 401, 322, - 322, 322, 322, 322, 322, 322, 404, 322, 322, 322, - 322, 322, 322, 322, 62, 62, 60, 62, 404, 323, - 323, 323, 323, 323, 323, 323, 409, 62, 62, 62, - - 62, 62, 62, 412, 62, 414, 415, 410, 411, 413, - 62, 62, 62, 60, 420, 60, 60, 418, 62, 62, - 62, 416, 62, 62, 419, 428, 423, 62, 60, 421, - 60, 60, 62, 62, 422, 62, 432, 436, 429, 431, - 426, 430, 60, 427, 62, 424, 62, 62, 433, 438, - 434, 435, 62, 425, 62, 62, 437, 441, 439, 62, - 444, 62, 62, 62, 62, 62, 445, 443, 440, 442, - 62, 62, 62, 62, 462, 449, 62, 62, 62, 450, - 62, 447, 448, 446, 452, 455, 453, 451, 457, 62, - 458, 456, 459, 454, 62, 62, 460, 62, 463, 461, - - 62, 62, 62, 62, 62, 62, 60, 464, 467, 62, - 60, 60, 60, 466, 472, 471, 473, 470, 465, 474, - 62, 477, 477, 62, 468, 469, 475, 476, 317, 317, - 318, 319, 402, 402, 402, 402, 402, 402, 402, 319, - 480, 480, 502, 320, 482, 482, 482, 482, 482, 482, - 482, 479, 484, 62, 62, 320, 407, 407, 407, 407, - 407, 407, 407, 479, 319, 407, 407, 407, 407, 407, - 407, 407, 62, 62, 62, 62, 485, 62, 62, 62, - 486, 487, 62, 490, 62, 62, 62, 60, 494, 60, - 60, 62, 493, 489, 491, 62, 62, 488, 60, 60, - - 60, 492, 501, 495, 62, 503, 62, 62, 62, 496, - 60, 62, 500, 507, 497, 510, 509, 62, 62, 62, - 508, 62, 62, 514, 62, 62, 511, 498, 515, 499, - 504, 505, 506, 62, 520, 62, 62, 62, 518, 513, - 62, 62, 516, 62, 519, 62, 62, 62, 526, 517, - 529, 62, 62, 512, 60, 523, 62, 62, 521, 522, - 60, 524, 527, 525, 528, 532, 531, 533, 60, 62, - 530, 62, 62, 534, 535, 540, 540, 62, 62, 62, - 536, 539, 544, 545, 62, 60, 60, 563, 537, 542, - 548, 538, 478, 478, 478, 478, 478, 478, 478, 319, - - 478, 478, 478, 478, 478, 478, 478, 481, 481, 481, - 481, 481, 481, 481, 319, 481, 481, 481, 481, 481, - 481, 481, 482, 482, 482, 482, 482, 482, 482, 62, - 62, 62, 62, 62, 60, 60, 60, 550, 62, 62, - 60, 62, 60, 60, 62, 543, 547, 556, 62, 62, - 62, 60, 62, 546, 549, 551, 552, 62, 560, 554, - 562, 62, 555, 561, 62, 568, 553, 62, 62, 62, - 557, 564, 558, 559, 567, 62, 62, 566, 570, 571, - 569, 62, 573, 62, 62, 575, 62, 565, 62, 576, - 62, 572, 574, 62, 578, 62, 62, 60, 577, 60, - - 580, 60, 62, 60, 62, 581, 62, 62, 62, 579, - 60, 587, 590, 582, 583, 541, 541, 541, 541, 541, - 541, 541, 588, 62, 591, 592, 62, 62, 60, 584, - 60, 585, 62, 586, 319, 541, 541, 541, 541, 541, - 541, 541, 589, 62, 593, 598, 62, 60, 60, 595, - 60, 596, 599, 62, 594, 62, 60, 62, 597, 62, - 62, 604, 62, 62, 62, 62, 600, 606, 62, 62, - 609, 611, 610, 62, 612, 62, 62, 605, 62, 62, - 607, 62, 613, 618, 62, 620, 601, 602, 614, 603, - 62, 616, 62, 619, 622, 617, 624, 608, 60, 60, - - 60, 615, 623, 62, 625, 62, 62, 621, 62, 62, - 60, 62, 60, 62, 633, 62, 60, 60, 60, 62, - 62, 62, 60, 62, 630, 629, 62, 631, 626, 627, - 628, 634, 632, 635, 62, 62, 637, 648, 62, 62, - 650, 645, 643, 639, 644, 647, 638, 62, 646, 649, - 62, 651, 62, 652, 653, 640, 641, 642, 62, 60, - 60, 60, 62, 62, 62, 62, 60, 62, 60, 62, - 654, 60, 661, 656, 60, 662, 655, 664, 663, 665, - 60, 668, 60, 60, 660, 62, 62, 62, 667, 60, - 62, 62, 62, 62, 676, 60, 62, 60, 657, 658, - - 659, 678, 679, 669, 62, 666, 673, 674, 675, 677, - 62, 62, 670, 60, 671, 680, 686, 62, 684, 60, - 672, 685, 60, 60, 60, 687, 60, 62, 681, 62, - 60, 62, 62, 698, 682, 62, 683, 60, 60, 688, - 62, 697, 690, 696, 62, 695, 699, 62, 62, 691, - 692, 689, 693, 62, 60, 694, 60, 60, 703, 60, - 60, 705, 700, 60, 62, 62, 60, 706, 60, 701, - 702, 704, 62, 60, 707, 713, 60, 62, 62, 710, - 711, 62, 708, 712, 717, 62, 715, 714, 724, 709, - 62, 716, 60, 721, 718, 60, 722, 60, 60, 719, - - 60, 723, 720, 62, 60, 62, 60, 60, 62, 60, - 62, 60, 60, 60, 62, 60, 725, 738, 731, 60, - 60, 732, 734, 727, 728, 60, 729, 735, 739, 726, - 730, 736, 733, 737, 62, 62, 60, 60, 60, 60, - 741, 62, 62, 60, 740, 60, 746, 60, 60, 742, - 753, 748, 60, 743, 744, 60, 60, 752, 60, 745, - 747, 60, 60, 749, 750, 751, 62, 60, 754, 60, - 60, 60, 60, 757, 60, 756, 764, 758, 60, 62, - 759, 60, 60, 60, 755, 60, 760, 60, 60, 60, - 60, 60, 761, 765, 60, 762, 763, 60, 766, 60, - - 60, 768, 769, 60, 770, 60, 772, 773, 774, 767, - 777, 771, 775, 778, 60, 60, 776, 60, 60, 779, - 781, 780, 60, 785, 782, 60, 60, 60, 60, 60, - 783, 62, 62, 62, 62, 784, 62, 62, 62, 786, - 789, 62, 62, 62, 790, 60, 62, 788, 787, 791, - 792, 793, 62, 62, 62, 62, 62, 796, 62, 794, - 795, 50, 50, 54, 54, 54, 62, 54, 62, 54, - 54, 62, 62, 62, 62, 62, 62, 62, 49, 62, - 62, 49, 132, 132, 132, 132, 134, 62, 62, 134, - 137, 62, 62, 137, 62, 137, 137, 61, 62, 62, - - 61, 62, 61, 61, 221, 221, 222, 222, 62, 62, - 222, 224, 224, 62, 62, 224, 130, 130, 130, 130, - 227, 227, 227, 62, 227, 230, 230, 62, 62, 230, - 136, 62, 62, 136, 62, 136, 136, 231, 231, 315, - 62, 62, 315, 62, 315, 315, 322, 322, 62, 62, - 322, 324, 62, 62, 324, 62, 324, 324, 314, 62, - 62, 314, 62, 314, 314, 316, 316, 62, 62, 316, - 403, 403, 62, 62, 403, 405, 405, 407, 407, 62, - 62, 407, 323, 62, 62, 323, 60, 323, 323, 478, - 478, 62, 62, 478, 481, 481, 62, 62, 481, 483, - - 62, 483, 483, 541, 541, 62, 62, 541, 482, 60, - 482, 482, 60, 62, 62, 62, 62, 62, 62, 62, - 62, 62, 62, 325, 62, 62, 62, 62, 62, 60, - 131, 62, 62, 62, 60, 141, 44, 126, 59, 58, - 47, 45, 44, 797, 3, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - - 797 + 62, 180, 174, 62, 178, 62, 62, 62, 62, 62, + 183, 177, 182, 181, 62, 191, 62, 62, 179, 62, + 192, 62, 62, 190, 62, 185, 186, 196, 184, 62, + 188, 189, 203, 187, 193, 195, 199, 62, 197, 194, + 62, 62, 62, 198, 62, 62, 200, 204, 208, 62, + 62, 205, 210, 62, 212, 207, 62, 201, 202, 214, + 213, 62, 62, 211, 62, 209, 62, 215, 216, 233, + + 217, 219, 138, 138, 60, 220, 221, 224, 224, 226, + 226, 227, 229, 230, 230, 62, 218, 130, 130, 130, + 130, 130, 130, 130, 229, 131, 51, 51, 52, 236, + 133, 133, 133, 133, 133, 133, 133, 62, 62, 60, + 62, 128, 136, 136, 136, 136, 136, 136, 136, 255, + 235, 261, 60, 128, 223, 223, 223, 223, 223, 223, + 223, 223, 223, 223, 223, 223, 223, 223, 60, 62, + 141, 140, 140, 140, 140, 140, 140, 140, 62, 237, + 62, 62, 62, 62, 234, 62, 240, 238, 62, 62, + 62, 239, 62, 241, 62, 62, 62, 62, 243, 62, + + 245, 248, 62, 250, 62, 60, 62, 242, 62, 244, + 62, 62, 253, 62, 246, 62, 259, 249, 247, 251, + 252, 263, 262, 254, 266, 264, 267, 265, 268, 62, + 62, 62, 260, 62, 256, 62, 62, 273, 257, 62, + 62, 62, 62, 258, 269, 274, 62, 62, 270, 62, + 271, 275, 62, 277, 272, 281, 279, 278, 62, 62, + 62, 62, 62, 276, 286, 62, 282, 284, 287, 280, + 285, 62, 62, 62, 62, 62, 62, 62, 288, 283, + 62, 295, 62, 293, 297, 62, 289, 291, 298, 62, + 292, 62, 62, 62, 290, 294, 62, 62, 62, 62, + + 296, 62, 62, 299, 62, 62, 302, 62, 62, 300, + 62, 62, 301, 306, 309, 303, 308, 305, 62, 304, + 311, 307, 312, 313, 310, 332, 314, 60, 60, 329, + 315, 316, 316, 316, 316, 316, 316, 316, 223, 223, + 223, 223, 223, 223, 223, 225, 225, 225, 225, 225, + 225, 225, 225, 225, 225, 225, 225, 225, 225, 228, + 228, 228, 228, 228, 228, 228, 318, 318, 318, 318, + 318, 318, 318, 319, 319, 320, 321, 323, 323, 231, + 231, 231, 231, 231, 231, 231, 62, 60, 322, 231, + 231, 231, 231, 231, 231, 231, 62, 62, 60, 62, + + 322, 325, 325, 325, 325, 325, 325, 325, 328, 333, + 330, 62, 62, 62, 62, 62, 62, 62, 331, 338, + 62, 340, 62, 336, 62, 62, 60, 60, 335, 60, + 62, 62, 344, 62, 334, 62, 341, 337, 342, 351, + 339, 62, 62, 343, 354, 62, 60, 345, 346, 349, + 350, 352, 60, 347, 356, 348, 60, 357, 353, 62, + 62, 62, 62, 358, 363, 62, 62, 362, 62, 355, + 62, 62, 366, 62, 62, 62, 62, 359, 62, 369, + 62, 364, 62, 62, 360, 361, 370, 62, 371, 365, + 62, 62, 368, 372, 367, 62, 373, 374, 62, 377, + + 62, 375, 380, 376, 62, 62, 378, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 386, 379, 383, + 62, 382, 385, 390, 62, 381, 384, 62, 62, 388, + 391, 392, 387, 62, 62, 389, 395, 402, 321, 393, + 401, 396, 394, 397, 403, 398, 399, 400, 60, 321, + 404, 60, 62, 62, 316, 316, 316, 316, 316, 316, + 316, 407, 404, 405, 405, 405, 405, 405, 405, 405, + 409, 409, 417, 407, 324, 324, 324, 324, 324, 324, + 324, 324, 324, 324, 324, 324, 324, 324, 60, 62, + 62, 325, 325, 325, 325, 325, 325, 325, 62, 412, + + 411, 62, 62, 62, 62, 62, 62, 62, 415, 62, + 418, 414, 413, 416, 62, 62, 62, 60, 60, 423, + 60, 62, 421, 62, 420, 419, 62, 62, 62, 422, + 426, 62, 431, 424, 60, 60, 62, 60, 425, 62, + 435, 432, 60, 434, 429, 62, 430, 433, 62, 427, + 62, 62, 439, 441, 436, 437, 428, 438, 444, 62, + 62, 62, 442, 448, 62, 62, 62, 62, 443, 447, + 62, 440, 62, 445, 62, 62, 62, 62, 60, 446, + 452, 62, 460, 453, 456, 451, 450, 62, 449, 455, + 458, 457, 62, 454, 62, 62, 459, 461, 62, 466, + + 462, 62, 62, 62, 464, 62, 62, 465, 62, 62, + 62, 463, 470, 467, 60, 60, 469, 62, 60, 474, + 476, 62, 475, 468, 473, 477, 62, 478, 471, 472, + 480, 480, 483, 483, 62, 479, 319, 319, 320, 321, + 405, 405, 405, 405, 405, 405, 405, 321, 487, 62, + 525, 322, 485, 485, 485, 485, 485, 485, 485, 482, + 62, 490, 60, 322, 410, 410, 410, 410, 410, 410, + 410, 482, 321, 410, 410, 410, 410, 410, 410, 410, + 62, 62, 62, 491, 488, 62, 62, 62, 489, 62, + 62, 493, 62, 62, 497, 60, 60, 60, 62, 496, + + 492, 494, 62, 62, 62, 60, 60, 60, 504, 62, + 495, 498, 62, 506, 62, 499, 60, 62, 510, 503, + 62, 62, 500, 505, 512, 511, 62, 513, 62, 62, + 62, 514, 517, 62, 501, 62, 502, 507, 508, 509, + 518, 62, 62, 62, 519, 516, 62, 62, 62, 521, + 523, 62, 62, 62, 524, 522, 520, 532, 62, 515, + 62, 526, 529, 62, 527, 528, 531, 62, 534, 60, + 530, 60, 60, 536, 535, 533, 62, 62, 481, 481, + 481, 481, 481, 481, 481, 543, 543, 542, 537, 538, + 62, 539, 540, 62, 547, 62, 62, 548, 541, 321, + + 481, 481, 481, 481, 481, 481, 481, 484, 484, 484, + 484, 484, 484, 484, 321, 484, 484, 484, 484, 484, + 484, 484, 485, 485, 485, 485, 485, 485, 485, 62, + 62, 62, 62, 62, 62, 62, 60, 60, 551, 553, + 60, 62, 62, 62, 60, 60, 545, 546, 550, 559, + 60, 62, 62, 549, 62, 62, 552, 554, 555, 62, + 60, 62, 557, 565, 62, 558, 563, 62, 564, 566, + 556, 571, 62, 62, 560, 561, 567, 62, 62, 62, + 562, 569, 62, 573, 62, 572, 570, 574, 578, 62, + 62, 62, 62, 62, 575, 579, 568, 576, 577, 581, + + 62, 62, 583, 62, 580, 60, 60, 60, 62, 62, + 62, 62, 584, 625, 582, 60, 60, 590, 62, 585, + 592, 586, 544, 544, 544, 544, 544, 544, 544, 321, + 544, 544, 544, 544, 544, 544, 544, 587, 588, 589, + 62, 62, 62, 62, 62, 62, 597, 60, 60, 593, + 601, 62, 62, 60, 591, 604, 60, 602, 62, 62, + 594, 595, 62, 62, 60, 596, 607, 598, 62, 62, + 599, 62, 609, 62, 62, 603, 600, 615, 612, 613, + 62, 608, 614, 62, 610, 62, 62, 62, 62, 62, + 62, 616, 605, 60, 62, 606, 623, 62, 60, 621, + + 626, 60, 619, 617, 622, 611, 620, 62, 62, 627, + 62, 618, 62, 62, 62, 62, 624, 628, 60, 60, + 636, 60, 62, 629, 60, 60, 60, 633, 630, 632, + 62, 631, 634, 635, 637, 638, 62, 62, 62, 62, + 60, 62, 62, 62, 62, 640, 62, 653, 62, 652, + 642, 62, 655, 646, 62, 641, 651, 650, 648, 647, + 654, 658, 639, 643, 644, 645, 649, 656, 657, 60, + 60, 60, 62, 62, 62, 659, 62, 62, 62, 60, + 60, 60, 664, 60, 60, 665, 62, 667, 668, 666, + 671, 60, 60, 62, 663, 62, 62, 62, 62, 60, + + 670, 62, 62, 60, 60, 679, 676, 681, 660, 661, + 662, 678, 682, 672, 680, 677, 673, 62, 669, 62, + 683, 60, 62, 674, 60, 689, 62, 60, 60, 675, + 62, 687, 688, 60, 690, 60, 62, 62, 684, 60, + 701, 62, 685, 686, 62, 60, 60, 691, 693, 699, + 700, 62, 698, 694, 62, 702, 692, 62, 697, 695, + 62, 696, 62, 60, 60, 60, 60, 60, 60, 62, + 62, 703, 706, 60, 708, 62, 709, 704, 705, 716, + 707, 60, 60, 710, 60, 62, 713, 714, 715, 718, + 711, 720, 62, 717, 62, 62, 60, 712, 719, 60, + + 725, 62, 60, 60, 724, 60, 60, 721, 722, 62, + 723, 726, 727, 60, 60, 62, 62, 60, 60, 62, + 728, 62, 734, 60, 60, 60, 741, 62, 730, 731, + 60, 732, 733, 729, 735, 737, 60, 738, 739, 736, + 60, 742, 62, 740, 60, 62, 60, 60, 62, 743, + 60, 62, 744, 60, 749, 60, 756, 60, 60, 745, + 60, 751, 60, 60, 746, 60, 60, 755, 750, 60, + 747, 62, 752, 753, 748, 60, 754, 60, 757, 60, + 60, 767, 60, 760, 60, 759, 60, 761, 762, 60, + 763, 60, 60, 60, 758, 60, 60, 60, 60, 764, + + 765, 768, 60, 766, 60, 60, 769, 60, 60, 60, + 771, 780, 772, 60, 773, 60, 775, 776, 770, 774, + 777, 60, 779, 778, 781, 60, 782, 783, 784, 787, + 60, 60, 60, 60, 60, 60, 60, 785, 786, 62, + 62, 62, 62, 788, 62, 62, 62, 789, 60, 790, + 62, 62, 792, 791, 793, 794, 795, 62, 62, 796, + 62, 62, 62, 62, 799, 797, 62, 62, 62, 798, + 50, 50, 54, 54, 54, 62, 54, 62, 54, 54, + 62, 62, 62, 62, 62, 62, 62, 49, 62, 62, + 49, 132, 132, 132, 132, 134, 62, 62, 134, 137, + + 62, 62, 137, 62, 137, 137, 61, 62, 62, 61, + 62, 61, 61, 222, 222, 223, 223, 62, 62, 223, + 225, 225, 62, 62, 225, 130, 130, 130, 130, 228, + 228, 228, 62, 228, 231, 231, 62, 62, 231, 136, + 62, 62, 136, 62, 136, 136, 232, 232, 317, 62, + 62, 317, 62, 317, 317, 324, 324, 62, 62, 324, + 326, 62, 62, 326, 62, 326, 326, 316, 62, 62, + 316, 62, 316, 316, 318, 318, 62, 62, 318, 406, + 406, 62, 62, 406, 408, 408, 410, 410, 60, 62, + 410, 325, 62, 62, 325, 62, 325, 325, 481, 481, + + 62, 62, 481, 484, 484, 62, 62, 484, 486, 60, + 486, 486, 544, 544, 60, 62, 544, 485, 62, 485, + 485, 62, 62, 62, 62, 62, 62, 62, 62, 327, + 62, 62, 62, 62, 62, 60, 131, 62, 62, 62, + 60, 141, 44, 126, 59, 58, 47, 45, 44, 800, + 3, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + + 800, 800, 800, 800, 800, 800, 800 } ; -static const flex_int16_t grib_yy_chk[2002] = +static const flex_int16_t grib_yy_chk[2008] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -924,13 +924,13 @@ static const flex_int16_t grib_yy_chk[2002] = 31, 14, 14, 14, 14, 14, 14, 14, 15, 15, 18, 27, 14, 18, 18, 18, 18, 18, 18, 18, - 22, 20, 31, 35, 14, 19, 796, 27, 19, 19, + 22, 20, 31, 35, 14, 19, 799, 27, 19, 19, 19, 19, 19, 19, 19, 20, 22, 23, 22, 24, 22, 19, 22, 63, 35, 24, 63, 25, 35, 37, 33, 23, 28, 23, 26, 24, 23, 25, 24, 37, 33, 25, 29, 26, 28, 23, 25, 77, 29, 33, 26, 25, 26, 30, 28, 77, 29, 64, 49, 34, - 30, 26, 795, 30, 30, 28, 36, 32, 64, 34, + 30, 26, 798, 30, 30, 28, 36, 32, 64, 34, 49, 30, 36, 32, 38, 30, 30, 32, 34, 69, 39, 32, 41, 34, 38, 36, 32, 36, 38, 38, 39, 38, 40, 52, 65, 41, 76, 38, 38, 39, @@ -939,7 +939,7 @@ static const flex_int16_t grib_yy_chk[2002] = 40, 46, 46, 46, 46, 46, 46, 46, 48, 48, 48, 66, 48, 48, 48, 48, 48, 48, 48, 67, 66, 113, 82, 48, 50, 50, 50, 50, 50, 50, - 50, 82, 50, 113, 794, 48, 51, 51, 51, 51, + 50, 82, 50, 113, 797, 48, 51, 51, 51, 51, 51, 51, 51, 53, 53, 53, 68, 53, 53, 53, 53, 53, 53, 53, 68, 70, 54, 71, 53, 54, 54, 54, 54, 54, 54, 54, 72, 74, 68, 73, @@ -949,191 +949,191 @@ static const flex_int16_t grib_yy_chk[2002] = 83, 73, 75, 85, 86, 87, 88, 78, 84, 79, 75, 75, 80, 75, 84, 90, 89, 81, 93, 91, 83, 95, 98, 85, 87, 89, 93, 86, 88, 91, - 94, 95, 90, 96, 94, 97, 99, 100, 101, 102, - 98, 93, 97, 96, 103, 108, 105, 104, 102, 107, - 103, 104, 109, 110, 108, 100, 100, 114, 99, 107, - 101, 101, 105, 100, 116, 104, 111, 110, 112, 115, - 104, 114, 111, 117, 109, 115, 112, 119, 118, 122, - 117, 793, 120, 111, 111, 116, 120, 121, 124, 125, - 123, 112, 118, 121, 119, 112, 123, 122, 124, 128, - - 128, 121, 124, 125, 129, 129, 131, 131, 131, 135, - 135, 147, 123, 132, 132, 132, 132, 132, 132, 132, - 159, 132, 133, 133, 133, 147, 133, 133, 133, 133, - 133, 133, 133, 134, 172, 137, 146, 133, 137, 137, - 137, 137, 137, 137, 137, 134, 146, 172, 159, 133, - 138, 138, 138, 138, 138, 138, 138, 139, 139, 139, - 139, 139, 139, 139, 140, 155, 139, 140, 140, 140, - 140, 140, 140, 140, 142, 144, 148, 142, 150, 152, - 153, 144, 154, 156, 153, 150, 148, 155, 157, 152, - 158, 160, 154, 156, 161, 162, 163, 160, 158, 164, - - 165, 167, 162, 168, 169, 171, 788, 174, 157, 170, - 165, 175, 158, 178, 173, 168, 163, 161, 174, 170, - 167, 175, 164, 173, 176, 179, 177, 178, 177, 171, - 177, 178, 183, 169, 181, 180, 182, 169, 177, 184, - 176, 185, 169, 180, 181, 187, 179, 186, 182, 189, - 190, 184, 188, 191, 194, 183, 185, 186, 188, 195, - 196, 191, 192, 189, 191, 193, 192, 187, 197, 198, - 194, 190, 193, 200, 202, 199, 208, 203, 205, 201, - 195, 203, 197, 196, 199, 201, 206, 198, 204, 207, - 208, 209, 200, 210, 204, 211, 205, 202, 212, 213, - - 215, 220, 214, 216, 217, 219, 206, 218, 228, 228, - 207, 243, 212, 209, 214, 211, 210, 213, 217, 216, - 212, 219, 270, 215, 220, 218, 221, 243, 270, 221, - 221, 221, 221, 221, 221, 221, 222, 222, 222, 222, - 222, 222, 222, 223, 223, 223, 223, 223, 223, 223, - 224, 224, 224, 224, 224, 224, 224, 225, 225, 225, - 225, 225, 225, 225, 226, 226, 226, 226, 226, 226, - 226, 227, 227, 227, 227, 229, 229, 229, 229, 229, - 229, 229, 787, 235, 233, 596, 227, 230, 230, 230, - 230, 230, 230, 230, 234, 236, 231, 235, 227, 231, - - 231, 231, 231, 231, 231, 231, 233, 239, 241, 242, - 244, 245, 234, 246, 239, 247, 236, 246, 241, 248, - 244, 249, 251, 248, 253, 255, 254, 256, 257, 596, - 259, 258, 242, 254, 245, 263, 251, 249, 260, 247, - 262, 261, 260, 264, 265, 253, 263, 255, 254, 258, - 259, 261, 265, 256, 257, 266, 262, 267, 268, 269, - 266, 271, 272, 273, 267, 275, 276, 264, 277, 275, - 280, 278, 281, 271, 282, 287, 268, 278, 272, 283, - 288, 280, 281, 269, 285, 283, 273, 289, 284, 277, - 276, 290, 292, 282, 284, 293, 287, 291, 285, 288, - - 295, 291, 294, 296, 299, 300, 301, 304, 303, 297, - 289, 305, 293, 302, 290, 296, 294, 292, 295, 297, - 306, 302, 309, 300, 303, 304, 307, 299, 308, 301, - 308, 310, 308, 308, 305, 312, 309, 313, 307, 325, - 308, 325, 306, 310, 316, 312, 315, 313, 336, 315, - 315, 315, 315, 315, 315, 315, 316, 317, 317, 317, - 317, 317, 317, 317, 318, 320, 320, 336, 316, 321, - 321, 321, 321, 321, 321, 321, 318, 322, 322, 322, - 322, 322, 322, 322, 329, 334, 324, 327, 318, 324, - 324, 324, 324, 324, 324, 324, 327, 332, 330, 333, - - 335, 337, 338, 332, 339, 334, 335, 329, 330, 333, - 340, 341, 342, 344, 339, 345, 346, 337, 347, 349, - 350, 335, 351, 352, 338, 349, 342, 353, 354, 340, - 355, 356, 358, 357, 341, 359, 353, 357, 350, 352, - 346, 351, 360, 347, 362, 344, 363, 364, 354, 358, - 355, 356, 365, 345, 366, 367, 357, 362, 359, 368, - 365, 370, 369, 371, 372, 383, 366, 364, 360, 363, - 373, 375, 377, 380, 383, 370, 374, 381, 378, 371, - 379, 368, 369, 367, 373, 375, 374, 372, 378, 382, - 379, 377, 380, 374, 384, 385, 381, 386, 384, 382, - - 387, 389, 388, 391, 390, 392, 393, 385, 388, 398, - 786, 394, 395, 387, 393, 392, 394, 391, 386, 395, - 397, 401, 401, 431, 389, 390, 397, 398, 402, 402, - 402, 402, 402, 402, 402, 402, 402, 402, 402, 403, - 404, 404, 431, 402, 405, 405, 405, 405, 405, 405, - 405, 403, 408, 408, 413, 402, 406, 406, 406, 406, - 406, 406, 406, 403, 407, 407, 407, 407, 407, 407, - 407, 407, 411, 412, 414, 415, 411, 416, 418, 417, - 412, 413, 419, 416, 420, 421, 423, 424, 420, 425, - 426, 428, 419, 415, 417, 432, 430, 414, 433, 434, - - 435, 418, 430, 421, 436, 432, 437, 439, 438, 423, - 440, 442, 428, 436, 424, 438, 437, 444, 445, 447, - 436, 448, 449, 444, 450, 452, 439, 425, 445, 426, - 433, 434, 435, 453, 452, 454, 455, 460, 449, 442, - 461, 463, 447, 456, 450, 459, 464, 467, 460, 448, - 464, 469, 471, 440, 472, 455, 468, 470, 453, 454, - 473, 456, 461, 459, 463, 469, 468, 470, 474, 475, - 467, 476, 485, 471, 472, 479, 479, 510, 487, 488, - 473, 476, 487, 488, 493, 785, 776, 510, 474, 485, - 493, 475, 477, 477, 477, 477, 477, 477, 477, 478, - - 478, 478, 478, 478, 478, 478, 478, 480, 480, 480, - 480, 480, 480, 480, 481, 481, 481, 481, 481, 481, - 481, 481, 483, 483, 483, 483, 483, 483, 483, 486, - 489, 494, 490, 495, 498, 497, 499, 495, 500, 501, - 504, 502, 505, 506, 507, 486, 490, 502, 509, 508, - 511, 512, 514, 489, 494, 497, 498, 513, 507, 500, - 509, 515, 501, 508, 523, 515, 499, 519, 520, 521, - 504, 511, 505, 506, 514, 522, 524, 513, 520, 521, - 519, 525, 523, 526, 527, 525, 529, 512, 528, 526, - 530, 522, 524, 531, 528, 532, 533, 535, 527, 536, - - 530, 537, 539, 766, 544, 531, 545, 547, 542, 529, - 553, 539, 544, 532, 533, 540, 540, 540, 540, 540, - 540, 540, 542, 548, 545, 547, 549, 550, 551, 535, - 552, 536, 543, 537, 541, 541, 541, 541, 541, 541, - 541, 541, 543, 556, 548, 553, 554, 557, 558, 550, - 559, 551, 554, 560, 549, 561, 565, 562, 552, 563, - 566, 560, 567, 568, 571, 572, 556, 562, 569, 576, - 566, 568, 567, 574, 569, 575, 577, 561, 578, 579, - 563, 583, 571, 576, 582, 578, 557, 558, 572, 559, - 580, 575, 581, 577, 580, 575, 582, 565, 584, 585, - - 586, 574, 581, 588, 583, 590, 593, 579, 591, 592, - 597, 594, 598, 595, 593, 599, 601, 602, 603, 604, - 606, 605, 608, 614, 590, 588, 611, 591, 584, 585, - 586, 594, 592, 595, 617, 618, 597, 614, 620, 616, - 617, 606, 604, 599, 605, 611, 598, 619, 608, 616, - 621, 618, 623, 619, 620, 601, 602, 603, 622, 626, - 627, 628, 629, 630, 631, 633, 636, 634, 637, 635, - 621, 640, 630, 623, 638, 631, 622, 634, 633, 635, - 641, 638, 642, 646, 629, 650, 647, 648, 637, 657, - 649, 653, 654, 652, 650, 658, 655, 659, 626, 627, - - 628, 653, 654, 640, 660, 636, 647, 648, 649, 652, - 662, 661, 641, 666, 642, 655, 662, 665, 660, 667, - 646, 661, 668, 669, 670, 665, 671, 673, 657, 674, - 681, 675, 676, 677, 658, 680, 659, 682, 683, 666, - 684, 676, 668, 675, 677, 674, 680, 686, 685, 669, - 670, 667, 671, 687, 688, 673, 689, 690, 684, 691, - 692, 686, 681, 693, 696, 695, 698, 687, 700, 682, - 683, 685, 697, 701, 688, 695, 702, 706, 699, 691, - 692, 703, 689, 693, 699, 705, 697, 696, 706, 690, - 704, 698, 707, 703, 700, 708, 704, 709, 710, 701, - - 711, 705, 702, 715, 712, 714, 716, 718, 717, 725, - 722, 719, 726, 720, 724, 727, 707, 722, 714, 728, - 729, 715, 717, 709, 710, 730, 711, 718, 724, 708, - 712, 719, 716, 720, 732, 734, 733, 735, 736, 737, - 726, 738, 739, 740, 725, 741, 732, 742, 743, 727, - 739, 734, 744, 728, 729, 745, 747, 738, 749, 730, - 733, 750, 751, 735, 736, 737, 752, 754, 740, 755, - 756, 757, 758, 743, 759, 742, 752, 744, 760, 764, - 745, 761, 762, 763, 741, 765, 747, 767, 768, 777, - 772, 769, 749, 754, 773, 750, 751, 770, 755, 771, - - 774, 757, 758, 775, 759, 778, 761, 762, 763, 756, - 768, 760, 765, 769, 779, 780, 767, 789, 781, 770, - 772, 771, 782, 777, 773, 790, 791, 783, 784, 792, - 774, 753, 748, 746, 731, 775, 723, 721, 713, 778, - 781, 694, 679, 678, 782, 672, 664, 780, 779, 783, - 784, 789, 663, 656, 651, 645, 644, 792, 643, 790, - 791, 798, 798, 799, 799, 799, 639, 799, 632, 799, - 799, 800, 625, 624, 800, 615, 800, 800, 801, 613, - 612, 801, 802, 802, 802, 802, 803, 610, 609, 803, - 804, 607, 600, 804, 589, 804, 804, 805, 587, 573, - - 805, 570, 805, 805, 806, 806, 807, 807, 564, 555, - 807, 808, 808, 546, 538, 808, 809, 809, 809, 809, - 810, 810, 810, 534, 810, 811, 811, 518, 517, 811, - 812, 516, 503, 812, 496, 812, 812, 813, 813, 814, - 492, 491, 814, 484, 814, 814, 815, 815, 466, 465, - 815, 816, 462, 458, 816, 457, 816, 816, 817, 451, - 446, 817, 443, 817, 817, 818, 818, 441, 429, 818, - 819, 819, 427, 422, 819, 820, 820, 821, 821, 410, - 409, 821, 822, 400, 399, 822, 396, 822, 822, 823, - 823, 376, 361, 823, 824, 824, 348, 343, 824, 825, - - 331, 825, 825, 826, 826, 328, 326, 826, 827, 323, - 827, 827, 314, 311, 298, 286, 279, 274, 252, 250, - 240, 238, 237, 232, 166, 151, 149, 145, 143, 136, - 130, 106, 92, 62, 61, 60, 44, 42, 17, 16, - 10, 7, 5, 3, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 797, 797, 797, 797, 797, - - 797 + 94, 95, 90, 96, 94, 97, 99, 100, 101, 103, + 98, 93, 97, 96, 102, 103, 104, 107, 94, 105, + 104, 109, 110, 102, 112, 100, 100, 107, 99, 108, + 101, 101, 112, 100, 104, 105, 110, 119, 108, 104, + 111, 114, 115, 109, 116, 117, 111, 112, 115, 118, + 122, 112, 117, 121, 119, 114, 120, 111, 111, 121, + 120, 124, 125, 118, 123, 116, 142, 121, 122, 142, + + 123, 124, 128, 128, 796, 124, 125, 129, 129, 131, + 131, 131, 134, 135, 135, 147, 123, 132, 132, 132, + 132, 132, 132, 132, 134, 132, 133, 133, 133, 147, + 133, 133, 133, 133, 133, 133, 133, 168, 172, 137, + 146, 133, 137, 137, 137, 137, 137, 137, 137, 168, + 146, 172, 791, 133, 138, 138, 138, 138, 138, 138, + 138, 139, 139, 139, 139, 139, 139, 139, 140, 148, + 139, 140, 140, 140, 140, 140, 140, 140, 144, 148, + 150, 152, 153, 154, 144, 155, 153, 150, 156, 157, + 159, 152, 158, 154, 161, 160, 162, 164, 156, 163, + + 158, 160, 165, 162, 167, 169, 170, 155, 171, 157, + 174, 176, 165, 173, 158, 175, 170, 161, 159, 163, + 164, 174, 173, 167, 177, 175, 177, 176, 177, 181, + 178, 179, 171, 180, 169, 182, 177, 181, 169, 183, + 184, 185, 186, 169, 178, 182, 187, 188, 178, 189, + 179, 183, 190, 185, 180, 189, 187, 186, 191, 192, + 193, 194, 195, 184, 193, 196, 190, 192, 194, 188, + 192, 197, 199, 198, 200, 202, 201, 203, 195, 191, + 204, 202, 205, 200, 204, 206, 196, 198, 205, 207, + 199, 208, 209, 210, 197, 201, 211, 212, 214, 213, + + 203, 216, 215, 206, 217, 219, 209, 221, 218, 207, + 220, 235, 208, 213, 215, 210, 214, 212, 240, 211, + 217, 213, 218, 219, 216, 240, 220, 790, 222, 235, + 221, 222, 222, 222, 222, 222, 222, 222, 223, 223, + 223, 223, 223, 223, 223, 224, 224, 224, 224, 224, + 224, 224, 225, 225, 225, 225, 225, 225, 225, 226, + 226, 226, 226, 226, 226, 226, 227, 227, 227, 227, + 227, 227, 227, 228, 228, 228, 228, 229, 229, 230, + 230, 230, 230, 230, 230, 230, 234, 789, 228, 231, + 231, 231, 231, 231, 231, 231, 236, 237, 232, 242, + + 228, 232, 232, 232, 232, 232, 232, 232, 234, 242, + 236, 243, 244, 245, 246, 247, 248, 249, 237, 247, + 250, 249, 254, 245, 252, 255, 256, 257, 244, 258, + 260, 259, 255, 264, 243, 261, 250, 246, 252, 261, + 248, 262, 263, 254, 264, 265, 266, 255, 256, 259, + 260, 262, 267, 257, 266, 258, 268, 267, 263, 269, + 270, 272, 271, 268, 273, 274, 275, 272, 277, 265, + 278, 279, 277, 280, 284, 282, 273, 269, 283, 280, + 290, 274, 289, 291, 270, 271, 282, 287, 283, 275, + 285, 286, 279, 284, 278, 292, 285, 286, 293, 290, + + 294, 287, 293, 289, 295, 296, 291, 299, 297, 301, + 298, 302, 303, 306, 305, 304, 307, 299, 292, 296, + 308, 295, 298, 304, 309, 294, 297, 314, 312, 302, + 305, 306, 301, 311, 315, 303, 309, 314, 318, 307, + 312, 310, 308, 310, 315, 310, 310, 311, 788, 320, + 318, 317, 336, 310, 317, 317, 317, 317, 317, 317, + 317, 320, 318, 319, 319, 319, 319, 319, 319, 319, + 322, 322, 336, 320, 323, 323, 323, 323, 323, 323, + 323, 324, 324, 324, 324, 324, 324, 324, 326, 331, + 329, 326, 326, 326, 326, 326, 326, 326, 327, 329, + + 327, 332, 334, 335, 337, 338, 339, 340, 334, 341, + 337, 332, 331, 335, 342, 343, 344, 346, 347, 341, + 348, 349, 339, 352, 338, 337, 351, 354, 353, 340, + 344, 355, 351, 342, 356, 357, 360, 358, 343, 362, + 355, 352, 363, 354, 348, 365, 349, 353, 359, 346, + 366, 369, 359, 360, 356, 357, 347, 358, 365, 367, + 370, 368, 362, 369, 371, 372, 373, 374, 363, 368, + 375, 359, 381, 366, 377, 376, 378, 380, 779, 367, + 373, 383, 381, 374, 377, 372, 371, 382, 370, 376, + 378, 377, 384, 375, 385, 387, 380, 382, 386, 387, + + 383, 388, 389, 390, 385, 392, 391, 386, 393, 395, + 394, 384, 391, 388, 396, 397, 390, 401, 398, 395, + 397, 400, 396, 389, 394, 398, 457, 400, 392, 393, + 404, 404, 407, 407, 416, 401, 405, 405, 405, 405, + 405, 405, 405, 405, 405, 405, 405, 406, 411, 411, + 457, 405, 408, 408, 408, 408, 408, 408, 408, 406, + 417, 416, 769, 405, 409, 409, 409, 409, 409, 409, + 409, 406, 410, 410, 410, 410, 410, 410, 410, 410, + 414, 415, 418, 417, 414, 419, 420, 421, 415, 422, + 423, 419, 426, 424, 423, 427, 428, 429, 431, 422, + + 418, 420, 433, 435, 434, 436, 437, 438, 433, 439, + 421, 424, 442, 435, 440, 426, 443, 445, 439, 431, + 441, 450, 427, 434, 440, 439, 447, 441, 451, 456, + 448, 442, 447, 452, 428, 453, 429, 436, 437, 438, + 448, 455, 458, 466, 450, 445, 459, 462, 464, 452, + 455, 463, 470, 467, 456, 453, 451, 467, 471, 443, + 472, 458, 463, 473, 459, 462, 466, 474, 471, 475, + 464, 476, 477, 473, 472, 470, 478, 479, 480, 480, + 480, 480, 480, 480, 480, 482, 482, 479, 474, 475, + 490, 476, 477, 491, 490, 767, 756, 491, 478, 481, + + 481, 481, 481, 481, 481, 481, 481, 483, 483, 483, + 483, 483, 483, 483, 484, 484, 484, 484, 484, 484, + 484, 484, 486, 486, 486, 486, 486, 486, 486, 488, + 492, 489, 496, 497, 493, 498, 501, 500, 496, 498, + 502, 503, 504, 505, 507, 508, 488, 489, 493, 505, + 509, 512, 510, 492, 511, 514, 497, 500, 501, 513, + 515, 516, 503, 512, 517, 504, 510, 518, 511, 513, + 502, 518, 522, 523, 507, 508, 514, 524, 525, 526, + 509, 516, 527, 523, 528, 522, 517, 524, 528, 529, + 530, 532, 533, 531, 525, 529, 515, 526, 527, 531, + + 534, 535, 533, 536, 530, 538, 539, 540, 542, 583, + 546, 751, 534, 583, 532, 556, 560, 542, 552, 535, + 546, 536, 543, 543, 543, 543, 543, 543, 543, 544, + 544, 544, 544, 544, 544, 544, 544, 538, 539, 540, + 545, 547, 548, 550, 551, 553, 552, 554, 555, 547, + 556, 557, 559, 561, 545, 560, 562, 557, 563, 564, + 548, 550, 565, 566, 568, 551, 563, 553, 569, 570, + 554, 572, 565, 574, 571, 559, 555, 572, 569, 570, + 575, 564, 571, 577, 566, 579, 578, 580, 582, 581, + 584, 574, 561, 587, 586, 562, 581, 585, 588, 579, + + 584, 589, 578, 575, 580, 568, 578, 591, 593, 585, + 595, 577, 596, 594, 597, 598, 582, 586, 599, 600, + 596, 601, 602, 587, 604, 605, 606, 593, 588, 591, + 607, 589, 594, 595, 597, 598, 608, 609, 614, 619, + 611, 620, 617, 625, 621, 600, 622, 620, 624, 619, + 602, 623, 622, 607, 626, 601, 617, 614, 609, 608, + 621, 625, 599, 604, 605, 606, 611, 623, 624, 629, + 630, 631, 632, 633, 634, 626, 636, 637, 638, 639, + 640, 643, 633, 641, 644, 634, 650, 637, 638, 636, + 641, 645, 649, 652, 632, 651, 653, 656, 655, 660, + + 640, 658, 657, 661, 662, 653, 650, 656, 629, 630, + 631, 652, 657, 643, 655, 651, 644, 663, 639, 665, + 658, 669, 664, 645, 670, 665, 668, 672, 671, 649, + 676, 663, 664, 673, 668, 674, 677, 678, 660, 684, + 680, 679, 661, 662, 683, 685, 686, 669, 671, 678, + 679, 680, 677, 672, 687, 683, 670, 688, 676, 673, + 689, 674, 690, 691, 692, 693, 694, 695, 696, 698, + 699, 684, 687, 701, 689, 700, 690, 685, 686, 698, + 688, 703, 704, 691, 705, 702, 694, 695, 696, 700, + 692, 702, 706, 699, 707, 708, 710, 693, 701, 711, + + 707, 709, 712, 713, 706, 714, 715, 703, 704, 717, + 705, 708, 709, 719, 728, 749, 718, 721, 722, 725, + 710, 720, 717, 723, 729, 730, 725, 727, 712, 713, + 731, 714, 715, 711, 718, 720, 732, 721, 722, 719, + 733, 727, 735, 723, 736, 737, 738, 739, 742, 728, + 740, 741, 729, 743, 735, 744, 742, 745, 746, 730, + 750, 737, 747, 748, 731, 752, 753, 741, 736, 754, + 732, 755, 738, 739, 733, 757, 740, 758, 743, 759, + 760, 755, 761, 746, 762, 745, 763, 747, 748, 771, + 750, 764, 765, 770, 744, 766, 768, 778, 775, 752, + + 753, 757, 772, 754, 773, 774, 758, 776, 777, 780, + 760, 771, 761, 781, 762, 782, 764, 765, 759, 763, + 766, 783, 770, 768, 772, 792, 773, 774, 775, 778, + 784, 793, 785, 786, 787, 794, 795, 776, 777, 734, + 726, 724, 716, 780, 697, 682, 681, 781, 675, 782, + 667, 666, 784, 783, 785, 786, 787, 659, 654, 792, + 648, 647, 646, 642, 795, 793, 635, 628, 627, 794, + 801, 801, 802, 802, 802, 618, 802, 616, 802, 802, + 803, 615, 613, 803, 612, 803, 803, 804, 610, 603, + 804, 805, 805, 805, 805, 806, 592, 590, 806, 807, + + 576, 573, 807, 567, 807, 807, 808, 558, 549, 808, + 541, 808, 808, 809, 809, 810, 810, 537, 521, 810, + 811, 811, 520, 519, 811, 812, 812, 812, 812, 813, + 813, 813, 506, 813, 814, 814, 499, 495, 814, 815, + 494, 487, 815, 469, 815, 815, 816, 816, 817, 468, + 465, 817, 461, 817, 817, 818, 818, 460, 454, 818, + 819, 449, 446, 819, 444, 819, 819, 820, 432, 430, + 820, 425, 820, 820, 821, 821, 413, 412, 821, 822, + 822, 403, 402, 822, 823, 823, 824, 824, 399, 379, + 824, 825, 364, 361, 825, 350, 825, 825, 826, 826, + + 345, 333, 826, 827, 827, 330, 328, 827, 828, 325, + 828, 828, 829, 829, 316, 313, 829, 830, 300, 830, + 830, 288, 281, 276, 253, 251, 241, 239, 238, 233, + 166, 151, 149, 145, 143, 136, 130, 106, 92, 62, + 61, 60, 44, 42, 17, 16, 10, 7, 5, 3, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + + 800, 800, 800, 800, 800, 800, 800 } ; static grib_yy_state_type grib_yy_last_accepting_state; @@ -1448,13 +1448,13 @@ YY_DECL while ( grib_yy_chk[grib_yy_base[grib_yy_current_state] + grib_yy_c] != grib_yy_current_state ) { grib_yy_current_state = (int) grib_yy_def[grib_yy_current_state]; - if ( grib_yy_current_state >= 798 ) + if ( grib_yy_current_state >= 801 ) grib_yy_c = grib_yy_meta[grib_yy_c]; } grib_yy_current_state = grib_yy_nxt[grib_yy_base[grib_yy_current_state] + grib_yy_c]; ++grib_yy_cp; } - while ( grib_yy_base[grib_yy_current_state] != 1945 ); + while ( grib_yy_base[grib_yy_current_state] != 1951 ); grib_yy_find_action: grib_yy_act = grib_yy_accept[grib_yy_current_state]; @@ -1481,47 +1481,47 @@ YY_DECL case 1: YY_RULE_SETUP #line 74 "gribl.l" -return EQ ; +return EQ ; YY_BREAK case 2: YY_RULE_SETUP #line 75 "gribl.l" -return GE ; +return GE ; YY_BREAK case 3: YY_RULE_SETUP #line 76 "gribl.l" -return GT ; +return GT ; YY_BREAK case 4: YY_RULE_SETUP #line 77 "gribl.l" -return LE ; +return LE ; YY_BREAK case 5: YY_RULE_SETUP #line 78 "gribl.l" -return LT ; +return LT ; YY_BREAK case 6: YY_RULE_SETUP #line 79 "gribl.l" -return NE ; +return NE ; YY_BREAK case 7: YY_RULE_SETUP #line 80 "gribl.l" -return NE ; +return NE ; YY_BREAK case 8: YY_RULE_SETUP #line 81 "gribl.l" -return BIT ; +return BIT ; YY_BREAK case 9: YY_RULE_SETUP #line 82 "gribl.l" -return BITOFF ; +return BITOFF ; YY_BREAK case 10: YY_RULE_SETUP @@ -1531,7 +1531,7 @@ return IS ; case 11: YY_RULE_SETUP #line 85 "gribl.l" -return NOT ; +return ISNOT ; YY_BREAK case 12: YY_RULE_SETUP @@ -1541,7 +1541,7 @@ return NOT ; case 13: YY_RULE_SETUP #line 87 "gribl.l" -return AND ; +return NOT ; YY_BREAK case 14: YY_RULE_SETUP @@ -1551,7 +1551,7 @@ return AND ; case 15: YY_RULE_SETUP #line 89 "gribl.l" -return OR ; +return AND ; YY_BREAK case 16: YY_RULE_SETUP @@ -1560,333 +1560,333 @@ return OR ; YY_BREAK case 17: YY_RULE_SETUP -#line 92 "gribl.l" -return NIL ; +#line 91 "gribl.l" +return OR ; YY_BREAK case 18: YY_RULE_SETUP #line 93 "gribl.l" -return DUMMY ; +return NIL ; YY_BREAK case 19: YY_RULE_SETUP -#line 95 "gribl.l" -return SUBSTR ; +#line 94 "gribl.l" +return DUMMY ; YY_BREAK case 20: YY_RULE_SETUP #line 96 "gribl.l" -return CLOSE ; +return SUBSTR ; YY_BREAK case 21: YY_RULE_SETUP #line 97 "gribl.l" -return LENGTH ; +return CLOSE ; YY_BREAK case 22: YY_RULE_SETUP #line 98 "gribl.l" -return LOWERCASE; +return LENGTH ; YY_BREAK case 23: YY_RULE_SETUP #line 99 "gribl.l" -return IF ; +return LOWERCASE; YY_BREAK case 24: YY_RULE_SETUP #line 100 "gribl.l" -return IF_TRANSIENT ; +return IF ; YY_BREAK case 25: YY_RULE_SETUP #line 101 "gribl.l" -return ELSE ; +return IF_TRANSIENT ; YY_BREAK case 26: YY_RULE_SETUP #line 102 "gribl.l" -return UNSIGNED ; +return ELSE ; YY_BREAK case 27: YY_RULE_SETUP #line 103 "gribl.l" -return ASCII ; +return UNSIGNED ; YY_BREAK case 28: YY_RULE_SETUP #line 104 "gribl.l" -return BYTE ; +return ASCII ; YY_BREAK case 29: YY_RULE_SETUP #line 105 "gribl.l" -return LABEL ; +return BYTE ; YY_BREAK case 30: YY_RULE_SETUP #line 106 "gribl.l" -return LIST ; +return LABEL ; YY_BREAK case 31: YY_RULE_SETUP #line 107 "gribl.l" -return WHILE ; +return LIST ; YY_BREAK case 32: YY_RULE_SETUP #line 108 "gribl.l" -return TEMPLATE ; +return WHILE ; YY_BREAK case 33: YY_RULE_SETUP #line 109 "gribl.l" -return TEMPLATE_NOFAIL ; +return TEMPLATE ; YY_BREAK case 34: YY_RULE_SETUP #line 110 "gribl.l" -return TRIGGER ; +return TEMPLATE_NOFAIL ; YY_BREAK case 35: YY_RULE_SETUP #line 111 "gribl.l" -return END ; +return TRIGGER ; YY_BREAK case 36: YY_RULE_SETUP #line 112 "gribl.l" -return IBMFLOAT ; +return END ; YY_BREAK case 37: YY_RULE_SETUP #line 113 "gribl.l" -return FLOAT ; +return IBMFLOAT ; YY_BREAK case 38: YY_RULE_SETUP #line 114 "gribl.l" -return SIGNED ; +return FLOAT ; YY_BREAK case 39: YY_RULE_SETUP #line 115 "gribl.l" -return CODETABLE; +return SIGNED ; YY_BREAK case 40: YY_RULE_SETUP #line 116 "gribl.l" -return GETENV; +return CODETABLE; YY_BREAK case 41: YY_RULE_SETUP #line 117 "gribl.l" -return SMART_TABLE; +return GETENV; YY_BREAK case 42: YY_RULE_SETUP #line 118 "gribl.l" -return DICTIONARY; +return SMART_TABLE; YY_BREAK case 43: YY_RULE_SETUP #line 119 "gribl.l" -return CODETABLE; +return DICTIONARY; YY_BREAK case 44: YY_RULE_SETUP #line 120 "gribl.l" -return FLAG ; +return CODETABLE; YY_BREAK case 45: YY_RULE_SETUP #line 121 "gribl.l" -return LOOKUP ; +return FLAG ; YY_BREAK case 46: YY_RULE_SETUP #line 122 "gribl.l" -return GROUP ; +return LOOKUP ; YY_BREAK case 47: YY_RULE_SETUP #line 123 "gribl.l" -return NON_ALPHA ; +return GROUP ; YY_BREAK case 48: YY_RULE_SETUP #line 124 "gribl.l" -return META ; +return NON_ALPHA ; YY_BREAK case 49: YY_RULE_SETUP #line 125 "gribl.l" -return PADTOEVEN ; +return META ; YY_BREAK case 50: YY_RULE_SETUP #line 126 "gribl.l" -return PADTO ; +return PADTOEVEN ; YY_BREAK case 51: YY_RULE_SETUP #line 127 "gribl.l" -return PADTOMULTIPLE ; +return PADTO ; YY_BREAK case 52: YY_RULE_SETUP #line 128 "gribl.l" -return PAD ; +return PADTOMULTIPLE ; YY_BREAK case 53: YY_RULE_SETUP #line 129 "gribl.l" -return SECTION_PADDING ; +return PAD ; YY_BREAK case 54: YY_RULE_SETUP #line 130 "gribl.l" -return MESSAGE ; +return SECTION_PADDING ; YY_BREAK case 55: YY_RULE_SETUP #line 131 "gribl.l" -return MESSAGE_COPY ; +return MESSAGE ; YY_BREAK case 56: YY_RULE_SETUP #line 132 "gribl.l" -return ALIAS ; +return MESSAGE_COPY ; YY_BREAK case 57: YY_RULE_SETUP #line 133 "gribl.l" -return UNALIAS ; +return ALIAS ; YY_BREAK case 58: YY_RULE_SETUP #line 134 "gribl.l" -return POS ; +return UNALIAS ; YY_BREAK case 59: YY_RULE_SETUP #line 135 "gribl.l" -return INTCONST ; +return POS ; YY_BREAK case 60: YY_RULE_SETUP #line 136 "gribl.l" -return TRANS ; +return INTCONST ; YY_BREAK case 61: YY_RULE_SETUP #line 137 "gribl.l" -return STRING_TYPE ; +return TRANS ; YY_BREAK case 62: YY_RULE_SETUP #line 138 "gribl.l" -return LONG_TYPE ; +return STRING_TYPE ; YY_BREAK case 63: YY_RULE_SETUP #line 139 "gribl.l" -return DOUBLE_TYPE ; +return LONG_TYPE ; YY_BREAK case 64: YY_RULE_SETUP #line 140 "gribl.l" -return ITERATOR ; +return DOUBLE_TYPE ; YY_BREAK case 65: YY_RULE_SETUP #line 141 "gribl.l" -return NEAREST ; +return ITERATOR ; YY_BREAK case 66: YY_RULE_SETUP #line 142 "gribl.l" -return BOX ; +return NEAREST ; YY_BREAK case 67: YY_RULE_SETUP #line 143 "gribl.l" -return KSEC ; +return BOX ; YY_BREAK case 68: YY_RULE_SETUP #line 144 "gribl.l" -return FLAGBIT ; +return KSEC ; YY_BREAK case 69: YY_RULE_SETUP #line 145 "gribl.l" -return KSEC1EXPVER ; +return FLAGBIT ; YY_BREAK case 70: YY_RULE_SETUP #line 146 "gribl.l" -return MODIFY ; +return KSEC1EXPVER ; YY_BREAK case 71: YY_RULE_SETUP -#line 148 "gribl.l" -return G1_HALF_BYTE ; +#line 147 "gribl.l" +return MODIFY ; YY_BREAK case 72: YY_RULE_SETUP #line 149 "gribl.l" -return G1_MESSAGE_LENGTH ; +return G1_HALF_BYTE ; YY_BREAK case 73: YY_RULE_SETUP #line 150 "gribl.l" -return G1_SECTION4_LENGTH ; +return G1_MESSAGE_LENGTH ; YY_BREAK case 74: YY_RULE_SETUP -#line 152 "gribl.l" -return EXPORT; +#line 151 "gribl.l" +return G1_SECTION4_LENGTH ; YY_BREAK case 75: YY_RULE_SETUP #line 153 "gribl.l" -return REMOVE; +return EXPORT; YY_BREAK case 76: YY_RULE_SETUP #line 154 "gribl.l" -return RENAME; +return REMOVE; YY_BREAK case 77: YY_RULE_SETUP #line 155 "gribl.l" -return IS_IN_LIST; +return RENAME; YY_BREAK case 78: YY_RULE_SETUP #line 156 "gribl.l" -return IS_IN_DICT; +return IS_IN_LIST; YY_BREAK case 79: YY_RULE_SETUP #line 157 "gribl.l" -return TO_INTEGER; +return IS_IN_DICT; YY_BREAK case 80: YY_RULE_SETUP #line 158 "gribl.l" -return TO_STRING; +return TO_INTEGER; YY_BREAK case 81: YY_RULE_SETUP #line 159 "gribl.l" -return SEX2DEC; +return TO_STRING; YY_BREAK case 82: YY_RULE_SETUP #line 160 "gribl.l" -return IS_INTEGER; +return SEX2DEC; YY_BREAK case 83: YY_RULE_SETUP @@ -1895,212 +1895,217 @@ return IS_INTEGER; YY_BREAK case 84: YY_RULE_SETUP -#line 163 "gribl.l" -return SECTION_LENGTH ; +#line 162 "gribl.l" +return IS_INTEGER; YY_BREAK case 85: YY_RULE_SETUP -#line 165 "gribl.l" -return ASSERT ; +#line 164 "gribl.l" +return SECTION_LENGTH ; YY_BREAK case 86: YY_RULE_SETUP -#line 167 "gribl.l" -return READ_ONLY; +#line 166 "gribl.l" +return ASSERT ; YY_BREAK case 87: YY_RULE_SETUP #line 168 "gribl.l" -return NO_COPY; +return READ_ONLY; YY_BREAK case 88: YY_RULE_SETUP #line 169 "gribl.l" -return EDITION_SPECIFIC; +return NO_COPY; YY_BREAK case 89: YY_RULE_SETUP #line 170 "gribl.l" -return DUMP; +return EDITION_SPECIFIC; YY_BREAK case 90: YY_RULE_SETUP #line 171 "gribl.l" -return NO_FAIL; +return DUMP; YY_BREAK case 91: YY_RULE_SETUP #line 172 "gribl.l" -return HIDDEN; +return NO_FAIL; YY_BREAK case 92: YY_RULE_SETUP #line 173 "gribl.l" -return CAN_BE_MISSING; +return HIDDEN; YY_BREAK case 93: YY_RULE_SETUP #line 174 "gribl.l" -return MISSING; +return CAN_BE_MISSING; YY_BREAK case 94: YY_RULE_SETUP #line 175 "gribl.l" -return CONSTRAINT; +return MISSING; YY_BREAK case 95: YY_RULE_SETUP #line 176 "gribl.l" -return OVERRIDE; +return CONSTRAINT; YY_BREAK case 96: YY_RULE_SETUP #line 177 "gribl.l" -return COPY_OK; +return OVERRIDE; YY_BREAK case 97: YY_RULE_SETUP -#line 179 "gribl.l" -return UINT8; +#line 178 "gribl.l" +return COPY_OK; YY_BREAK case 98: YY_RULE_SETUP #line 180 "gribl.l" -return INT8; +return UINT8; YY_BREAK case 99: YY_RULE_SETUP -#line 182 "gribl.l" -return UINT16; +#line 181 "gribl.l" +return INT8; YY_BREAK case 100: YY_RULE_SETUP #line 183 "gribl.l" -return INT16; +return UINT16; YY_BREAK case 101: YY_RULE_SETUP #line 184 "gribl.l" -return UINT16_LITTLE_ENDIAN; +return INT16; YY_BREAK case 102: YY_RULE_SETUP #line 185 "gribl.l" -return INT16_LITTLE_ENDIAN; +return UINT16_LITTLE_ENDIAN; YY_BREAK case 103: YY_RULE_SETUP -#line 187 "gribl.l" -return UINT32; +#line 186 "gribl.l" +return INT16_LITTLE_ENDIAN; YY_BREAK case 104: YY_RULE_SETUP #line 188 "gribl.l" -return INT32; +return UINT32; YY_BREAK case 105: YY_RULE_SETUP #line 189 "gribl.l" -return UINT32_LITTLE_ENDIAN; +return INT32; YY_BREAK case 106: YY_RULE_SETUP #line 190 "gribl.l" -return INT32_LITTLE_ENDIAN; +return UINT32_LITTLE_ENDIAN; YY_BREAK case 107: YY_RULE_SETUP -#line 192 "gribl.l" -return UINT64; +#line 191 "gribl.l" +return INT32_LITTLE_ENDIAN; YY_BREAK case 108: YY_RULE_SETUP #line 193 "gribl.l" -return INT64; +return UINT64; YY_BREAK case 109: YY_RULE_SETUP #line 194 "gribl.l" -return UINT64_LITTLE_ENDIAN; +return INT64; YY_BREAK case 110: YY_RULE_SETUP #line 195 "gribl.l" -return INT64_LITTLE_ENDIAN; +return UINT64_LITTLE_ENDIAN; YY_BREAK case 111: YY_RULE_SETUP -#line 197 "gribl.l" -return BLOB; +#line 196 "gribl.l" +return INT64_LITTLE_ENDIAN; YY_BREAK case 112: YY_RULE_SETUP -#line 199 "gribl.l" -return SET; +#line 198 "gribl.l" +return BLOB; YY_BREAK case 113: YY_RULE_SETUP #line 200 "gribl.l" -return SET_NOFAIL; +return SET; YY_BREAK case 114: YY_RULE_SETUP #line 201 "gribl.l" -return WHEN; +return SET_NOFAIL; YY_BREAK case 115: YY_RULE_SETUP #line 202 "gribl.l" -return CASE; +return WHEN; YY_BREAK case 116: YY_RULE_SETUP #line 203 "gribl.l" -return SWITCH; +return CASE; YY_BREAK case 117: YY_RULE_SETUP #line 204 "gribl.l" -return DEFAULT; +return SWITCH; YY_BREAK case 118: YY_RULE_SETUP #line 205 "gribl.l" -return CONCEPT; +return DEFAULT; YY_BREAK case 119: YY_RULE_SETUP #line 206 "gribl.l" -return CONCEPT_NOFAIL; +return CONCEPT; YY_BREAK case 120: YY_RULE_SETUP #line 207 "gribl.l" -return HASH_ARRAY; +return CONCEPT_NOFAIL; YY_BREAK case 121: YY_RULE_SETUP #line 208 "gribl.l" -return WRITE; +return HASH_ARRAY; YY_BREAK case 122: YY_RULE_SETUP #line 209 "gribl.l" -return APPEND; +return WRITE; YY_BREAK case 123: YY_RULE_SETUP #line 210 "gribl.l" -return PRINT; +return APPEND; YY_BREAK case 124: YY_RULE_SETUP #line 211 "gribl.l" -return SKIP; +return PRINT; YY_BREAK case 125: YY_RULE_SETUP -#line 213 "gribl.l" +#line 212 "gribl.l" +return SKIP; + YY_BREAK +case 126: +YY_RULE_SETUP +#line 214 "gribl.l" { int c,q; while((c = GET_INPUT()) && isspace(c) && c != '\n') ; @@ -2118,9 +2123,9 @@ YY_RULE_SETUP grib_parser_include(grib_yytext); } YY_BREAK -case 126: +case 127: YY_RULE_SETUP -#line 230 "gribl.l" +#line 231 "gribl.l" { int c,q = grib_yytext[0]; @@ -2140,9 +2145,9 @@ YY_RULE_SETUP return STRING; } YY_BREAK -case 127: +case 128: YY_RULE_SETUP -#line 249 "gribl.l" +#line 250 "gribl.l" { int c; unsigned long val = 0; @@ -2156,15 +2161,10 @@ YY_RULE_SETUP return INTEGER; } YY_BREAK -case 128: -YY_RULE_SETUP -#line 263 "gribl.l" -{ grib_yylval.str = strdup(grib_yytext); return IDENT; } - YY_BREAK case 129: YY_RULE_SETUP #line 264 "gribl.l" -{ grib_yylval.lval = atol((const char *)grib_yytext); return INTEGER; } +{ grib_yylval.str = strdup(grib_yytext); return IDENT; } YY_BREAK case 130: YY_RULE_SETUP @@ -2174,7 +2174,7 @@ YY_RULE_SETUP case 131: YY_RULE_SETUP #line 266 "gribl.l" -{ grib_yylval.dval = atof((const char *)grib_yytext); return FLOAT; } +{ grib_yylval.lval = atol((const char *)grib_yytext); return INTEGER; } YY_BREAK case 132: YY_RULE_SETUP @@ -2188,7 +2188,12 @@ YY_RULE_SETUP YY_BREAK case 134: YY_RULE_SETUP -#line 271 "gribl.l" +#line 269 "gribl.l" +{ grib_yylval.dval = atof((const char *)grib_yytext); return FLOAT; } + YY_BREAK +case 135: +YY_RULE_SETUP +#line 272 "gribl.l" { int c; while((c = GET_INPUT()) && (c != '\n')){} @@ -2196,28 +2201,28 @@ YY_RULE_SETUP grib_yylineno++; } YY_BREAK -case 135: +case 136: YY_RULE_SETUP -#line 277 "gribl.l" +#line 278 "gribl.l" ; YY_BREAK -case 136: -/* rule 136 can match eol */ +case 137: +/* rule 137 can match eol */ YY_RULE_SETUP -#line 278 "gribl.l" +#line 279 "gribl.l" grib_yylineno++; YY_BREAK -case 137: +case 138: YY_RULE_SETUP -#line 282 "gribl.l" +#line 283 "gribl.l" return *grib_yytext; YY_BREAK -case 138: +case 139: YY_RULE_SETUP -#line 284 "gribl.l" +#line 285 "gribl.l" ECHO; YY_BREAK -#line 2220 "gribl.cc" +#line 2225 "gribl.cc" case YY_STATE_EOF(INITIAL): grib_yyterminate(); @@ -2514,7 +2519,7 @@ static int grib_yy_get_next_buffer (void) while ( grib_yy_chk[grib_yy_base[grib_yy_current_state] + grib_yy_c] != grib_yy_current_state ) { grib_yy_current_state = (int) grib_yy_def[grib_yy_current_state]; - if ( grib_yy_current_state >= 798 ) + if ( grib_yy_current_state >= 801 ) grib_yy_c = grib_yy_meta[grib_yy_c]; } grib_yy_current_state = grib_yy_nxt[grib_yy_base[grib_yy_current_state] + grib_yy_c]; @@ -2542,11 +2547,11 @@ static int grib_yy_get_next_buffer (void) while ( grib_yy_chk[grib_yy_base[grib_yy_current_state] + grib_yy_c] != grib_yy_current_state ) { grib_yy_current_state = (int) grib_yy_def[grib_yy_current_state]; - if ( grib_yy_current_state >= 798 ) + if ( grib_yy_current_state >= 801 ) grib_yy_c = grib_yy_meta[grib_yy_c]; } grib_yy_current_state = grib_yy_nxt[grib_yy_base[grib_yy_current_state] + grib_yy_c]; - grib_yy_is_jam = (grib_yy_current_state == 797); + grib_yy_is_jam = (grib_yy_current_state == 800); return grib_yy_is_jam ? 0 : grib_yy_current_state; } @@ -3222,7 +3227,7 @@ void grib_yyfree (void * ptr ) #define YYTABLES_NAME "grib_yytables" -#line 284 "gribl.l" +#line 285 "gribl.l" diff --git a/src/grib_yacc.cc b/src/grib_yacc.cc index b8d94ab2c..e374bc009 100644 --- a/src/grib_yacc.cc +++ b/src/grib_yacc.cc @@ -258,10 +258,11 @@ extern int grib_yydebug; OR = 375, /* OR */ NOT = 376, /* NOT */ IS = 377, /* IS */ - IDENT = 378, /* IDENT */ - STRING = 379, /* STRING */ - INTEGER = 380, /* INTEGER */ - FLOAT = 381 /* FLOAT */ + ISNOT = 378, /* ISNOT */ + IDENT = 379, /* IDENT */ + STRING = 380, /* STRING */ + INTEGER = 381, /* INTEGER */ + FLOAT = 382 /* FLOAT */ }; typedef enum grib_yytokentype grib_yytoken_kind_t; #endif @@ -390,10 +391,11 @@ extern int grib_yydebug; #define OR 375 #define NOT 376 #define IS 377 -#define IDENT 378 -#define STRING 379 -#define INTEGER 380 -#define FLOAT 381 +#define ISNOT 378 +#define IDENT 379 +#define STRING 380 +#define INTEGER 381 +#define FLOAT 382 /* Value type. */ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED @@ -417,7 +419,7 @@ union YYSTYPE grib_rule *rules; grib_rule_entry *rule_entry; -#line 421 "y.tab.c" +#line 423 "y.tab.c" }; typedef union YYSTYPE YYSTYPE; @@ -560,77 +562,78 @@ enum grib_yysymbol_kind_t YYSYMBOL_OR = 120, /* OR */ YYSYMBOL_NOT = 121, /* NOT */ YYSYMBOL_IS = 122, /* IS */ - YYSYMBOL_IDENT = 123, /* IDENT */ - YYSYMBOL_STRING = 124, /* STRING */ - YYSYMBOL_INTEGER = 125, /* INTEGER */ - YYSYMBOL_FLOAT = 126, /* FLOAT */ - YYSYMBOL_127_ = 127, /* ',' */ - YYSYMBOL_128_ = 128, /* ';' */ - YYSYMBOL_129_ = 129, /* '[' */ - YYSYMBOL_130_ = 130, /* ']' */ - YYSYMBOL_131_ = 131, /* '(' */ - YYSYMBOL_132_ = 132, /* ')' */ - YYSYMBOL_133_ = 133, /* '=' */ - YYSYMBOL_134_ = 134, /* '.' */ - YYSYMBOL_135_ = 135, /* '{' */ - YYSYMBOL_136_ = 136, /* '}' */ - YYSYMBOL_137_ = 137, /* ':' */ - YYSYMBOL_138_ = 138, /* '-' */ - YYSYMBOL_139_ = 139, /* '^' */ - YYSYMBOL_140_ = 140, /* '*' */ - YYSYMBOL_141_ = 141, /* '/' */ - YYSYMBOL_142_ = 142, /* '%' */ - YYSYMBOL_143_ = 143, /* '+' */ - YYSYMBOL_YYACCEPT = 144, /* $accept */ - YYSYMBOL_all = 145, /* all */ - YYSYMBOL_empty = 146, /* empty */ - YYSYMBOL_dvalues = 147, /* dvalues */ - YYSYMBOL_svalues = 148, /* svalues */ - YYSYMBOL_integer_array = 149, /* integer_array */ - YYSYMBOL_instructions = 150, /* instructions */ - YYSYMBOL_instruction = 151, /* instruction */ - YYSYMBOL_semi = 152, /* semi */ - YYSYMBOL_argument_list = 153, /* argument_list */ - YYSYMBOL_arguments = 154, /* arguments */ - YYSYMBOL_argument = 155, /* argument */ - YYSYMBOL_simple = 156, /* simple */ - YYSYMBOL_if_block = 157, /* if_block */ - YYSYMBOL_when_block = 158, /* when_block */ - YYSYMBOL_set = 159, /* set */ - YYSYMBOL_set_list = 160, /* set_list */ - YYSYMBOL_default = 161, /* default */ - YYSYMBOL_flags = 162, /* flags */ - YYSYMBOL_flag_list = 163, /* flag_list */ - YYSYMBOL_flag = 164, /* flag */ - YYSYMBOL_list_block = 165, /* list_block */ - YYSYMBOL_while_block = 166, /* while_block */ - YYSYMBOL_trigger_block = 167, /* trigger_block */ - YYSYMBOL_concept_block = 168, /* concept_block */ - YYSYMBOL_concept_list = 169, /* concept_list */ - YYSYMBOL_hash_array_list = 170, /* hash_array_list */ - YYSYMBOL_hash_array_block = 171, /* hash_array_block */ - YYSYMBOL_case_list = 172, /* case_list */ - YYSYMBOL_case_value = 173, /* case_value */ - YYSYMBOL_switch_block = 174, /* switch_block */ - YYSYMBOL_concept_value = 175, /* concept_value */ - YYSYMBOL_concept_conditions = 176, /* concept_conditions */ - YYSYMBOL_concept_condition = 177, /* concept_condition */ - YYSYMBOL_hash_array_value = 178, /* hash_array_value */ - YYSYMBOL_string_or_ident = 179, /* string_or_ident */ - YYSYMBOL_atom = 180, /* atom */ - YYSYMBOL_power = 181, /* power */ - YYSYMBOL_factor = 182, /* factor */ - YYSYMBOL_term = 183, /* term */ - YYSYMBOL_condition = 184, /* condition */ - YYSYMBOL_conjunction = 185, /* conjunction */ - YYSYMBOL_disjunction = 186, /* disjunction */ - YYSYMBOL_expression = 187, /* expression */ - YYSYMBOL_rule = 188, /* rule */ - YYSYMBOL_rule_entry = 189, /* rule_entry */ - YYSYMBOL_rule_entries = 190, /* rule_entries */ - YYSYMBOL_fact = 191, /* fact */ - YYSYMBOL_conditional_rule = 192, /* conditional_rule */ - YYSYMBOL_rules = 193 /* rules */ + YYSYMBOL_ISNOT = 123, /* ISNOT */ + YYSYMBOL_IDENT = 124, /* IDENT */ + YYSYMBOL_STRING = 125, /* STRING */ + YYSYMBOL_INTEGER = 126, /* INTEGER */ + YYSYMBOL_FLOAT = 127, /* FLOAT */ + YYSYMBOL_128_ = 128, /* ',' */ + YYSYMBOL_129_ = 129, /* ';' */ + YYSYMBOL_130_ = 130, /* '[' */ + YYSYMBOL_131_ = 131, /* ']' */ + YYSYMBOL_132_ = 132, /* '(' */ + YYSYMBOL_133_ = 133, /* ')' */ + YYSYMBOL_134_ = 134, /* '=' */ + YYSYMBOL_135_ = 135, /* '.' */ + YYSYMBOL_136_ = 136, /* '{' */ + YYSYMBOL_137_ = 137, /* '}' */ + YYSYMBOL_138_ = 138, /* ':' */ + YYSYMBOL_139_ = 139, /* '-' */ + YYSYMBOL_140_ = 140, /* '^' */ + YYSYMBOL_141_ = 141, /* '*' */ + YYSYMBOL_142_ = 142, /* '/' */ + YYSYMBOL_143_ = 143, /* '%' */ + YYSYMBOL_144_ = 144, /* '+' */ + YYSYMBOL_YYACCEPT = 145, /* $accept */ + YYSYMBOL_all = 146, /* all */ + YYSYMBOL_empty = 147, /* empty */ + YYSYMBOL_dvalues = 148, /* dvalues */ + YYSYMBOL_svalues = 149, /* svalues */ + YYSYMBOL_integer_array = 150, /* integer_array */ + YYSYMBOL_instructions = 151, /* instructions */ + YYSYMBOL_instruction = 152, /* instruction */ + YYSYMBOL_semi = 153, /* semi */ + YYSYMBOL_argument_list = 154, /* argument_list */ + YYSYMBOL_arguments = 155, /* arguments */ + YYSYMBOL_argument = 156, /* argument */ + YYSYMBOL_simple = 157, /* simple */ + YYSYMBOL_if_block = 158, /* if_block */ + YYSYMBOL_when_block = 159, /* when_block */ + YYSYMBOL_set = 160, /* set */ + YYSYMBOL_set_list = 161, /* set_list */ + YYSYMBOL_default = 162, /* default */ + YYSYMBOL_flags = 163, /* flags */ + YYSYMBOL_flag_list = 164, /* flag_list */ + YYSYMBOL_flag = 165, /* flag */ + YYSYMBOL_list_block = 166, /* list_block */ + YYSYMBOL_while_block = 167, /* while_block */ + YYSYMBOL_trigger_block = 168, /* trigger_block */ + YYSYMBOL_concept_block = 169, /* concept_block */ + YYSYMBOL_concept_list = 170, /* concept_list */ + YYSYMBOL_hash_array_list = 171, /* hash_array_list */ + YYSYMBOL_hash_array_block = 172, /* hash_array_block */ + YYSYMBOL_case_list = 173, /* case_list */ + YYSYMBOL_case_value = 174, /* case_value */ + YYSYMBOL_switch_block = 175, /* switch_block */ + YYSYMBOL_concept_value = 176, /* concept_value */ + YYSYMBOL_concept_conditions = 177, /* concept_conditions */ + YYSYMBOL_concept_condition = 178, /* concept_condition */ + YYSYMBOL_hash_array_value = 179, /* hash_array_value */ + YYSYMBOL_string_or_ident = 180, /* string_or_ident */ + YYSYMBOL_atom = 181, /* atom */ + YYSYMBOL_power = 182, /* power */ + YYSYMBOL_factor = 183, /* factor */ + YYSYMBOL_term = 184, /* term */ + YYSYMBOL_condition = 185, /* condition */ + YYSYMBOL_conjunction = 186, /* conjunction */ + YYSYMBOL_disjunction = 187, /* disjunction */ + YYSYMBOL_expression = 188, /* expression */ + YYSYMBOL_rule = 189, /* rule */ + YYSYMBOL_rule_entry = 190, /* rule_entry */ + YYSYMBOL_rule_entries = 191, /* rule_entries */ + YYSYMBOL_fact = 192, /* fact */ + YYSYMBOL_conditional_rule = 193, /* conditional_rule */ + YYSYMBOL_rules = 194 /* rules */ }; typedef enum grib_yysymbol_kind_t grib_yysymbol_kind_t; @@ -958,19 +961,19 @@ union grib_yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 214 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1892 +#define YYLAST 1946 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 144 +#define YYNTOKENS 145 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 50 /* YYNRULES -- Number of rules. */ -#define YYNRULES 267 +#define YYNRULES 268 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 903 +#define YYNSTATES 905 /* YYMAXUTOK -- Last valid token kind. */ -#define YYMAXUTOK 381 +#define YYMAXUTOK 382 /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM @@ -987,16 +990,16 @@ static const grib_yytype_uint8 grib_yytranslate[] = 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 142, 2, 2, - 131, 132, 140, 143, 127, 138, 134, 141, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 137, 128, - 2, 133, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 143, 2, 2, + 132, 133, 141, 144, 128, 139, 135, 142, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 138, 129, + 2, 134, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 129, 2, 130, 139, 2, 2, 2, 2, 2, + 2, 130, 2, 131, 140, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 135, 2, 136, 2, 2, 2, 2, + 2, 2, 2, 136, 2, 137, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -1022,40 +1025,40 @@ static const grib_yytype_uint8 grib_yytranslate[] = 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126 + 125, 126, 127 }; #if YYDEBUG /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const grib_yytype_int16 grib_yyrline[] = { - 0, 262, 262, 264, 265, 266, 267, 269, 273, 276, - 277, 278, 279, 282, 283, 287, 288, 291, 292, 293, - 294, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 309, 310, 313, 314, 317, 318, 321, 325, 328, 331, - 334, 337, 340, 343, 346, 349, 352, 355, 359, 362, - 365, 368, 371, 374, 377, 380, 383, 386, 397, 401, - 404, 407, 410, 413, 416, 419, 422, 425, 428, 431, - 434, 438, 441, 444, 447, 450, 453, 456, 459, 462, - 465, 468, 471, 474, 477, 480, 484, 487, 490, 493, - 496, 498, 501, 504, 507, 510, 513, 516, 519, 522, - 525, 528, 531, 534, 537, 540, 543, 545, 547, 550, - 553, 556, 560, 564, 567, 570, 582, 594, 606, 609, - 612, 614, 617, 620, 621, 622, 623, 625, 628, 629, - 630, 631, 632, 633, 634, 635, 637, 638, 639, 640, - 641, 645, 646, 647, 648, 652, 653, 654, 657, 658, - 661, 662, 666, 667, 670, 671, 674, 675, 678, 679, - 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, - 690, 691, 694, 697, 700, 703, 704, 705, 706, 707, - 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, - 718, 719, 723, 724, 727, 728, 731, 732, 735, 736, - 739, 743, 744, 745, 748, 750, 752, 754, 758, 759, - 762, 763, 767, 769, 773, 774, 775, 776, 779, 780, - 781, 783, 784, 785, 786, 787, 788, 792, 793, 796, - 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, - 807, 810, 811, 812, 815, 817, 818, 819, 820, 821, - 822, 827, 828, 831, 832, 835, 836, 839, 845, 846, - 849, 850, 853, 854, 857, 861, 864, 865 + 0, 263, 263, 265, 266, 267, 268, 270, 274, 277, + 278, 279, 280, 283, 284, 288, 289, 292, 293, 294, + 295, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 310, 311, 314, 315, 318, 319, 322, 326, 329, 332, + 335, 338, 341, 344, 347, 350, 353, 356, 360, 363, + 366, 369, 372, 375, 378, 381, 384, 387, 398, 402, + 405, 408, 411, 414, 417, 420, 423, 426, 429, 432, + 435, 439, 442, 445, 448, 451, 454, 457, 460, 463, + 466, 469, 472, 475, 478, 481, 485, 488, 491, 494, + 497, 499, 502, 505, 508, 511, 514, 517, 520, 523, + 526, 529, 532, 535, 538, 541, 544, 546, 548, 551, + 554, 557, 561, 565, 568, 571, 583, 595, 607, 610, + 613, 615, 618, 621, 622, 623, 624, 626, 629, 630, + 631, 632, 633, 634, 635, 636, 638, 639, 640, 641, + 642, 646, 647, 648, 649, 653, 654, 655, 658, 659, + 662, 663, 667, 668, 671, 672, 675, 676, 679, 680, + 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, + 691, 692, 695, 698, 701, 704, 705, 706, 707, 708, + 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, + 719, 720, 724, 725, 728, 729, 732, 733, 736, 737, + 740, 744, 745, 746, 749, 751, 753, 755, 759, 760, + 763, 764, 768, 770, 774, 775, 776, 777, 780, 781, + 782, 784, 785, 786, 787, 788, 789, 793, 794, 797, + 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, + 808, 811, 812, 813, 816, 818, 819, 820, 821, 822, + 823, 824, 829, 830, 833, 834, 837, 838, 841, 847, + 848, 851, 852, 855, 856, 859, 863, 866, 867 }; #endif @@ -1091,10 +1094,10 @@ static const char *const grib_yytname[] = "G1_HALF_BYTE", "G1_MESSAGE_LENGTH", "G1_SECTION4_LENGTH", "SECTION_LENGTH", "LENGTH", "FLAG", "ITERATOR", "NEAREST", "BOX", "KSEC", "ASSERT", "SUBSTR", "CASE", "SWITCH", "DEFAULT", "EQ", "NE", "GE", "LE", - "LT", "GT", "BIT", "BITOFF", "AND", "OR", "NOT", "IS", "IDENT", "STRING", - "INTEGER", "FLOAT", "','", "';'", "'['", "']'", "'('", "')'", "'='", - "'.'", "'{'", "'}'", "':'", "'-'", "'^'", "'*'", "'/'", "'%'", "'+'", - "$accept", "all", "empty", "dvalues", "svalues", "integer_array", + "LT", "GT", "BIT", "BITOFF", "AND", "OR", "NOT", "IS", "ISNOT", "IDENT", + "STRING", "INTEGER", "FLOAT", "','", "';'", "'['", "']'", "'('", "')'", + "'='", "'.'", "'{'", "'}'", "':'", "'-'", "'^'", "'*'", "'/'", "'%'", + "'+'", "$accept", "all", "empty", "dvalues", "svalues", "integer_array", "instructions", "instruction", "semi", "argument_list", "arguments", "argument", "simple", "if_block", "when_block", "set", "set_list", "default", "flags", "flag_list", "flag", "list_block", "while_block", @@ -1113,7 +1116,7 @@ grib_yysymbol_name (grib_yysymbol_kind_t grib_yysymbol) } #endif -#define YYPACT_NINF (-654) +#define YYPACT_NINF (-658) #define grib_yypact_value_is_default(Yyn) \ ((Yyn) == YYPACT_NINF) @@ -1127,97 +1130,97 @@ grib_yysymbol_name (grib_yysymbol_kind_t grib_yysymbol) STATE-NUM. */ static const grib_yytype_int16 grib_yypact[] = { - 1435, -654, -24, -10, 8, 65, -67, 115, 162, 147, - 186, 202, 204, 64, 200, 213, 82, 245, 249, 253, - 264, 277, 281, 282, 284, 285, 287, 288, 289, 290, - 291, 292, 293, 295, 294, 300, 303, 296, 297, 298, - 308, 311, 312, 315, 316, 318, 319, 320, 258, 321, - 322, -16, -12, 61, 323, 847, 305, 324, 325, 327, - 326, 328, 333, 334, 335, 337, 332, 347, 348, 349, - 356, 357, 358, 361, 354, 355, 7, 283, 314, -79, - 487, -654, -654, 1538, 360, -654, -654, -654, -654, -654, - -654, 256, 128, -654, -654, -654, -654, 18, -654, -654, - -654, -654, 847, 847, 366, 365, 367, 369, 370, 847, - 371, 157, 362, 372, -654, -654, 847, 38, 373, 374, - 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, - 362, 362, 362, 362, 380, 375, 187, 379, 376, 386, - 221, 381, -47, -654, 383, 387, 382, 193, -94, 195, - 377, 847, 390, 398, -654, 394, -654, 413, -654, 251, - 411, 414, 418, 419, -654, -654, 420, 422, 847, 423, - -654, -654, -654, 847, 109, -654, -654, -654, 364, 433, - 405, -654, -75, -20, 149, 437, 441, -654, 434, -654, - 431, 377, 438, 377, 435, 436, 442, -654, 439, 443, - 444, 449, 447, 448, 450, 847, 847, 847, 454, 235, - -76, 445, 66, 451, -654, 459, 9, 468, 1766, -654, - -654, 460, 462, 463, -654, 464, 469, -654, 461, 470, - -654, 473, 474, 481, 471, 485, -654, -654, 491, 500, - 847, 847, -654, 377, 377, 501, 502, 847, 509, 377, - 503, 505, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 847, 510, 512, 527, - 847, 528, 529, 538, 543, 546, 504, 548, 847, 539, - 847, 549, 550, 256, 553, 128, 555, 556, 256, 544, - -654, -654, 535, 302, 847, 551, 552, 558, 563, 847, - 557, 559, 575, 578, 260, 149, 568, 570, -654, -654, - 847, -84, 109, 109, 109, 109, 109, 109, 84, 84, - 84, 84, 84, 84, 84, 84, 847, 847, 554, 847, - -654, 574, -654, 847, 847, 847, 577, 579, 580, 595, - 847, 847, 847, -654, 573, 594, 847, 596, 597, 598, - 599, 600, 607, 610, 606, 607, 610, 610, 847, 612, - 377, 610, 847, 11, -654, 601, 602, 615, 616, 847, - 847, 611, 614, -654, 624, 627, 617, 262, 619, -654, - -654, -654, 630, 620, 626, 362, -654, 634, 635, -654, - -654, -654, -654, -654, -654, -654, -654, -654, -654, -654, - -654, -654, -654, 629, 637, 638, 640, 633, 643, 644, - 377, 639, -654, 847, 645, 377, 266, 377, 641, 41, - -11, -78, 647, -54, 87, 55, -74, -654, -654, -654, - -654, -654, -654, -654, -654, -654, -654, -654, -654, -654, - -654, 648, -654, -49, -654, -36, -654, -654, 646, 652, - 653, 654, 649, 655, 656, 94, 658, 657, 665, -654, - 663, -654, -654, -654, -654, -654, -654, -654, -654, -654, - -654, -75, -75, -20, -20, -20, -20, -20, -20, 149, - 437, 673, 667, 674, 668, 669, 670, 681, 682, 683, - 687, 679, 680, 685, -654, 636, 686, 847, 847, 847, - 847, 847, -654, -56, 690, 677, 610, -654, 93, 678, - 688, 650, 362, -654, 689, 694, 695, 1663, 1766, 108, - 215, 1766, 362, 362, 362, 362, 1766, 362, 377, 224, - 236, 362, 238, 847, 946, 362, 1036, 697, -654, 696, - 699, 698, -654, -654, -654, -52, -654, 362, 709, 703, - 717, 256, 377, 719, 377, 722, 706, 727, 256, 377, - 544, 729, 730, 313, 651, -654, -35, -34, -654, -654, - -654, -654, -654, 732, 733, 737, -654, -654, 739, 740, - -654, 726, -654, 377, -654, -654, -654, 723, 738, 362, - 847, -654, -654, -654, 762, 736, 742, 744, 745, 747, - 748, 757, -654, 788, -654, -654, -654, -654, -654, 362, - 377, -654, 750, 752, 10, 754, -62, 755, 756, 847, - 377, 847, 377, 758, 377, 377, 377, 377, 760, 377, - -654, 847, 377, 847, 377, 377, 847, 377, 362, 847, - 362, 377, 847, 362, 847, 377, 362, 847, 271, 377, - 377, 766, 256, 97, -45, -654, 770, -654, 774, 256, - 104, -27, -654, -654, 769, 771, 651, -63, -654, 775, - -654, 759, -654, 773, 778, 117, 789, 791, -654, -654, - 847, 847, -654, 362, 847, -72, -654, 1766, 377, 377, - 377, 362, 362, -654, 607, 787, 377, -654, 1766, -62, - 182, 866, -654, -654, 914, 794, -654, 795, -654, -654, - -654, -654, -654, -654, -654, -654, 797, -654, 798, -654, - -654, 799, -654, 377, 800, 570, -65, -654, 802, 377, - 803, -654, 377, 805, -654, -654, -654, -654, 807, 39, - 814, 786, 377, 808, 817, 53, 819, 806, 377, 847, - 847, 775, 938, 651, -654, -654, -654, -654, 820, -654, - 821, 823, 818, 824, 377, 812, 816, -654, -654, 815, - -654, -654, -654, 377, 377, 100, -654, -654, 822, 825, - 362, 362, 362, 362, 362, -654, 362, 828, -654, 362, - -654, 377, -654, 362, 121, 377, 834, 256, -654, 835, - 145, 377, 836, 256, -654, -654, -654, 829, 775, 837, - 843, 845, -654, -654, -654, 1766, 1306, -654, -654, -654, - 827, 1766, 1766, 377, 377, 377, 377, 377, 377, 856, - 377, -654, 377, 857, 377, -654, 858, 57, 859, 863, - 377, -654, 864, 144, 313, -654, -654, -654, -654, -654, - 852, -654, 853, 854, -654, -654, -654, -654, -654, -654, - 860, -654, -654, 151, -654, 152, 377, 861, 862, -654, - 159, 377, -51, -654, -654, -654, 377, 868, 377, 872, - 377, -654, 377, 377, 873, 377, -654, -654, -654, 865, - -654, 867, -654, -654, -654, 870, -654, 377, 377, 377, - -654, -654, -654 + 1507, -658, -37, -14, 51, 142, -53, -40, 58, 32, + 72, 98, 85, 25, 99, 139, 177, 162, 168, 176, + 197, 205, 208, 212, 228, 270, 272, 277, 310, 313, + 314, 315, 126, 311, 316, 317, 318, 319, 320, 321, + 322, 325, 328, 329, 330, 331, 333, 334, 291, 356, + 357, -12, 14, 15, 364, 755, 360, 366, 365, 374, + 369, 376, 378, 379, 385, 386, 381, 383, 384, 387, + 394, 397, 398, 400, 393, 401, -11, 407, 409, -81, + 535, -658, -658, 1610, 415, -658, -658, -658, -658, -658, + -658, 201, 82, -658, -658, -658, -658, 18, -658, -658, + -658, -658, 755, 755, 421, 422, 423, 425, 426, 755, + 427, 183, 418, 430, -658, -658, 755, -38, 431, 432, + 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, + 418, 418, 418, 418, 429, 434, 235, 433, 435, 437, + 233, 436, -78, -658, 438, 439, 443, 89, -94, 132, + 428, 755, 444, 450, -658, 451, -658, 459, -658, 256, + 456, 457, 458, 460, -658, -658, 461, 463, 755, 465, + -658, -658, -658, 755, -45, -658, -658, -658, 441, 264, + 424, -658, -52, -71, 259, 472, 478, -658, 446, -658, + 467, 428, 474, 428, 469, 470, 471, -658, 479, 480, + 481, 482, 477, 483, 485, 755, 755, 755, 487, 230, + -80, 468, 22, 475, -658, 488, 7, 486, 1819, -658, + -658, 490, 493, 495, -658, 496, 497, -658, 489, 498, + -658, 500, 501, 502, 491, 503, -658, -658, 504, 508, + 755, 755, -658, 428, 428, 510, 509, 755, 524, 428, + 525, 522, 428, 428, 428, 428, 428, 428, 428, 428, + 428, 428, 428, 428, 428, 428, 755, 526, 528, 529, + 755, 530, 531, 539, 540, 541, 534, 543, 755, 134, + 755, 544, 545, 201, 546, 82, 547, 548, 201, 419, + -658, -658, 542, 84, 755, 549, 550, 551, 552, 755, + 553, 554, 555, 556, 268, 259, 303, 558, -658, -658, + 755, -76, -76, -45, -45, -45, -45, -45, -45, 258, + 258, 258, 258, 258, 258, 258, 258, 755, 755, 484, + 755, -658, 561, -658, 755, 755, 755, 564, 565, 566, + 569, 755, 755, 755, -658, 570, 571, 755, 573, 575, + 576, 591, 592, 560, 557, 596, 560, 557, 557, 755, + 578, 428, 557, 755, 17, -658, 537, 538, 597, 598, + 755, 755, 590, 593, -658, 606, 607, 599, 293, 600, + -658, -658, -658, 608, 602, 603, 418, -658, 612, 615, + -658, -658, -658, -658, -658, -658, -658, -658, -658, -658, + -658, -658, -658, -658, 609, 617, 618, 619, 611, 621, + 622, 428, 613, -658, 755, 624, 428, 262, 428, 616, + -9, 57, -90, 623, -73, 30, 133, -25, -658, -658, + -658, -658, -658, -658, -658, -658, -658, -658, -658, -658, + -658, -658, 625, -658, -48, -658, 251, -658, -658, 627, + 629, 630, 632, 626, 634, 639, 64, 636, 642, 643, + -658, 640, -658, -658, -658, -658, -658, -658, -658, -658, + -658, -658, -658, -52, -52, -71, -71, -71, -71, -71, + -71, 259, 472, 648, 644, 654, 646, 647, 649, 657, + 659, 660, 661, 653, 664, 665, -658, 658, 666, 755, + 755, 755, 755, 755, -658, 33, 668, 476, 557, -658, + 203, 667, 670, 672, 418, -658, 671, 676, 677, 1716, + 1819, 154, 169, 1819, 418, 418, 418, 418, 1819, 418, + 428, 172, 180, 418, 186, 755, 869, 418, 1035, 628, + -658, 687, 679, 681, -658, -658, -658, -67, -658, 418, + 633, 678, 696, 201, 428, 697, 428, 700, 685, 702, + 201, 428, 419, 703, 704, 340, 701, -658, -61, -59, + -658, -658, -658, -658, -658, 707, 712, 713, -658, -658, + 714, 716, -658, 715, -658, 428, -658, -658, -658, 717, + 719, 418, 755, -658, -658, -658, 506, 711, 720, 723, + 724, 727, 728, 737, -658, 745, -658, -658, -658, -658, + -658, 418, 428, -658, 729, 731, 9, 736, -65, 741, + 746, 755, 428, 755, 428, 748, 428, 428, 428, 428, + 749, 428, -658, 755, 428, 755, 428, 428, 755, 428, + 418, 755, 418, 428, 755, 418, 755, 428, 418, 755, + 299, 428, 428, 740, 201, 71, -16, -658, 763, -658, + 764, 201, 86, 61, -658, -658, 730, 761, 701, -62, + -658, 767, -658, 775, -658, 768, 769, 104, 776, 778, + -658, -658, 755, 755, -658, 418, 755, -82, -658, 1819, + 428, 428, 428, 418, 418, -658, 560, 774, 428, -658, + 1819, -65, 455, 868, -658, -658, 901, 777, -658, 779, + -658, -658, -658, -658, -658, -658, -658, -658, 780, -658, + 781, -658, -658, 782, -658, 428, 783, 558, -66, -658, + 784, 428, 785, -658, 428, 786, -658, -658, -658, -658, + 790, 76, 795, 773, 428, 791, 797, 103, 798, 788, + 428, 755, 755, 767, 916, 701, -658, -658, -658, -658, + 799, -658, 802, 805, 800, 801, 428, 804, 806, -658, + -658, 803, -658, -658, -658, 428, 428, 222, -658, -658, + 807, 809, 418, 418, 418, 418, 418, -658, 418, 814, + -658, 418, -658, 428, -658, 418, 105, 428, 808, 201, + -658, 811, 111, 428, 819, 201, -658, -658, -658, 812, + 767, 816, 817, 820, -658, -658, -658, 1819, 1377, -658, + -658, -658, 825, 1819, 1819, 428, 428, 428, 428, 428, + 428, 813, 428, -658, 428, 831, 428, -658, 834, 156, + 835, 836, 428, -658, 837, 171, 340, -658, -658, -658, + -658, -658, 826, -658, 827, 828, -658, -658, -658, -658, + -658, -658, 829, -658, -658, 114, -658, 115, 428, 838, + 839, -658, 129, 428, -60, -658, -658, -658, 428, 843, + 428, 844, 428, -658, 428, 428, 846, 428, -658, -658, + -658, 841, -658, 845, -658, -658, -658, 847, -658, 428, + 428, 428, -658, -658, -658 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -1234,8 +1237,8 @@ static const grib_yytype_int16 grib_yydefact[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5, 17, 0, 22, 28, 23, 24, 25, - 26, 3, 4, 27, 29, 192, 194, 266, 264, 258, - 259, 6, 0, 0, 0, 0, 0, 0, 0, 8, + 26, 3, 4, 27, 29, 192, 194, 267, 265, 259, + 260, 6, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 8, 0, 68, 69, 0, 8, 0, 0, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 0, 0, 0, 0, 0, 0, @@ -1243,99 +1246,99 @@ static const grib_yytype_int16 grib_yydefact[] = 8, 0, 0, 0, 128, 0, 132, 0, 137, 0, 0, 0, 0, 0, 221, 222, 0, 0, 0, 215, 217, 219, 220, 0, 0, 32, 119, 33, 34, 218, - 228, 234, 243, 252, 254, 256, 257, 36, 0, 261, + 228, 234, 243, 253, 255, 257, 258, 36, 0, 262, 0, 8, 0, 8, 0, 0, 0, 95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 8, 0, 1, 0, 0, 0, 20, 18, 21, 0, 0, 0, 193, 0, 0, 195, 0, 0, - 267, 0, 0, 0, 0, 0, 107, 108, 0, 0, + 268, 0, 0, 0, 0, 0, 107, 108, 0, 0, 8, 8, 152, 8, 8, 0, 0, 0, 0, 8, 0, 0, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 154, 122, 0, 0, 0, 0, 0, 0, 0, 8, - 0, 0, 0, 0, 0, 251, 0, 0, 218, 224, + 0, 0, 0, 0, 0, 252, 0, 0, 218, 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, - 106, 0, 105, 8, 8, 8, 0, 0, 0, 0, - 8, 8, 8, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 8, 0, 0, 0, 19, 0, 0, 0, 0, 0, - 0, 0, 0, 136, 0, 0, 0, 0, 0, 153, - 42, 47, 0, 0, 0, 8, 70, 0, 0, 72, - 71, 74, 73, 76, 75, 78, 77, 80, 79, 82, - 81, 84, 83, 0, 0, 0, 0, 0, 0, 0, - 8, 0, 112, 8, 0, 8, 0, 8, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 159, 168, 158, - 169, 170, 171, 161, 160, 162, 164, 163, 165, 166, - 167, 155, 156, 0, 123, 0, 124, 127, 131, 135, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, - 0, 223, 35, 215, 250, 227, 232, 233, 229, 230, - 231, 242, 241, 245, 249, 247, 248, 246, 244, 253, - 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 121, 0, 0, 8, 8, 8, - 8, 8, 15, 0, 0, 0, 208, 260, 0, 0, - 0, 0, 8, 92, 0, 0, 0, 0, 0, 8, - 8, 0, 8, 8, 8, 8, 0, 8, 8, 8, - 8, 8, 8, 0, 0, 8, 0, 0, 109, 0, - 0, 0, 89, 11, 9, 0, 90, 8, 0, 0, - 0, 0, 8, 0, 8, 0, 0, 0, 0, 8, - 0, 0, 0, 0, 0, 13, 0, 0, 130, 134, - 139, 138, 118, 0, 0, 0, 240, 235, 0, 0, - 226, 0, 100, 8, 101, 102, 103, 0, 0, 8, - 0, 115, 116, 117, 0, 0, 0, 0, 0, 0, - 0, 0, 213, 0, 205, 209, 212, 204, 206, 8, - 8, 207, 0, 0, 0, 0, 262, 0, 0, 8, - 8, 8, 8, 0, 8, 8, 8, 8, 0, 8, - 86, 8, 8, 8, 8, 8, 8, 8, 8, 8, - 8, 8, 8, 8, 8, 8, 8, 8, 0, 8, - 8, 0, 0, 0, 0, 175, 0, 196, 0, 0, - 0, 0, 184, 157, 0, 0, 0, 0, 30, 145, - 125, 0, 126, 0, 0, 0, 0, 0, 120, 104, - 8, 8, 96, 8, 0, 0, 198, 0, 8, 8, - 8, 8, 8, 16, 0, 0, 8, 93, 0, 0, - 0, 141, 263, 265, 143, 0, 37, 0, 39, 174, - 41, 48, 43, 51, 173, 87, 0, 52, 0, 54, - 85, 0, 49, 8, 0, 36, 8, 60, 0, 8, - 0, 111, 8, 0, 12, 10, 91, 67, 0, 0, - 0, 0, 8, 0, 0, 0, 0, 0, 8, 0, - 0, 150, 146, 0, 31, 14, 236, 237, 0, 238, - 0, 0, 0, 0, 8, 0, 0, 203, 199, 0, - 44, 46, 45, 8, 8, 0, 210, 94, 0, 0, - 8, 8, 8, 8, 8, 57, 8, 0, 56, 8, - 63, 8, 113, 8, 0, 8, 0, 0, 182, 0, - 0, 8, 0, 0, 190, 148, 149, 0, 151, 0, - 0, 0, 97, 98, 65, 0, 0, 172, 61, 62, - 0, 0, 0, 8, 8, 8, 8, 8, 8, 0, - 8, 66, 8, 0, 8, 176, 0, 0, 0, 0, - 8, 185, 0, 0, 0, 239, 214, 216, 200, 202, - 0, 211, 0, 0, 38, 40, 53, 55, 50, 59, - 0, 64, 114, 0, 179, 0, 8, 0, 0, 187, - 0, 8, 0, 201, 142, 144, 8, 0, 8, 0, - 8, 183, 8, 8, 0, 8, 191, 147, 58, 0, - 177, 0, 181, 197, 186, 0, 189, 8, 8, 8, - 178, 180, 188 + 8, 106, 0, 105, 8, 8, 8, 0, 0, 0, + 0, 8, 8, 8, 99, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 8, 0, 0, 0, 19, 0, 0, 0, 0, + 0, 0, 0, 0, 136, 0, 0, 0, 0, 0, + 153, 42, 47, 0, 0, 0, 8, 70, 0, 0, + 72, 71, 74, 73, 76, 75, 78, 77, 80, 79, + 82, 81, 84, 83, 0, 0, 0, 0, 0, 0, + 0, 8, 0, 112, 8, 0, 8, 0, 8, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 159, 168, + 158, 169, 170, 171, 161, 160, 162, 164, 163, 165, + 166, 167, 155, 156, 0, 123, 0, 124, 127, 131, + 135, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 225, 0, 223, 35, 215, 250, 251, 227, 232, 233, + 229, 230, 231, 242, 241, 245, 249, 247, 248, 246, + 244, 254, 256, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 121, 0, 0, 8, + 8, 8, 8, 8, 15, 0, 0, 0, 208, 261, + 0, 0, 0, 0, 8, 92, 0, 0, 0, 0, + 0, 8, 8, 0, 8, 8, 8, 8, 0, 8, + 8, 8, 8, 8, 8, 0, 0, 8, 0, 0, + 109, 0, 0, 0, 89, 11, 9, 0, 90, 8, + 0, 0, 0, 0, 8, 0, 8, 0, 0, 0, + 0, 8, 0, 0, 0, 0, 0, 13, 0, 0, + 130, 134, 139, 138, 118, 0, 0, 0, 240, 235, + 0, 0, 226, 0, 100, 8, 101, 102, 103, 0, + 0, 8, 0, 115, 116, 117, 0, 0, 0, 0, + 0, 0, 0, 0, 213, 0, 205, 209, 212, 204, + 206, 8, 8, 207, 0, 0, 0, 0, 263, 0, + 0, 8, 8, 8, 8, 0, 8, 8, 8, 8, + 0, 8, 86, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 0, 8, 8, 0, 0, 0, 0, 175, 0, 196, + 0, 0, 0, 0, 184, 157, 0, 0, 0, 0, + 30, 145, 125, 0, 126, 0, 0, 0, 0, 0, + 120, 104, 8, 8, 96, 8, 0, 0, 198, 0, + 8, 8, 8, 8, 8, 16, 0, 0, 8, 93, + 0, 0, 0, 141, 264, 266, 143, 0, 37, 0, + 39, 174, 41, 48, 43, 51, 173, 87, 0, 52, + 0, 54, 85, 0, 49, 8, 0, 36, 8, 60, + 0, 8, 0, 111, 8, 0, 12, 10, 91, 67, + 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, + 8, 0, 0, 150, 146, 0, 31, 14, 236, 237, + 0, 238, 0, 0, 0, 0, 8, 0, 0, 203, + 199, 0, 44, 46, 45, 8, 8, 0, 210, 94, + 0, 0, 8, 8, 8, 8, 8, 57, 8, 0, + 56, 8, 63, 8, 113, 8, 0, 8, 0, 0, + 182, 0, 0, 8, 0, 0, 190, 148, 149, 0, + 151, 0, 0, 0, 97, 98, 65, 0, 0, 172, + 61, 62, 0, 0, 0, 8, 8, 8, 8, 8, + 8, 0, 8, 66, 8, 0, 8, 176, 0, 0, + 0, 0, 8, 185, 0, 0, 0, 239, 214, 216, + 200, 202, 0, 211, 0, 0, 38, 40, 53, 55, + 50, 59, 0, 64, 114, 0, 179, 0, 8, 0, + 0, 187, 0, 8, 0, 201, 142, 144, 8, 0, + 8, 0, 8, 183, 8, 8, 0, 8, 191, 147, + 58, 0, 177, 0, 181, 197, 186, 0, 189, 8, + 8, 8, 178, 180, 188 }; /* YYPGOTO[NTERM-NUM]. */ static const grib_yytype_int16 grib_yypgoto[] = { - -654, -654, 5, 564, -654, -351, 0, -654, -653, 242, - -307, -184, -654, -654, -654, -442, 154, 591, 210, -654, - 440, -654, -654, -654, -654, -264, 718, -654, -654, 329, - -654, -89, -345, -654, -82, -165, 830, -15, 80, -6, - -160, 691, -654, -96, -654, 14, 392, -654, -654, 913 + -658, -658, 5, 533, -658, -352, 0, -658, -657, 686, + -307, -193, -658, -658, -658, -443, -170, 589, 207, -658, + 440, -658, -658, -658, -658, -259, 692, -658, -658, 294, + -658, -89, -349, -658, -75, -144, 810, 91, 113, 90, + -162, 663, -658, -58, -658, 10, 368, -658, -658, 890 }; /* YYDEFGOTO[NTERM-NUM]. */ static const grib_yytype_int16 grib_yydefgoto[] = { - 0, 80, 290, 545, 567, 503, 615, 83, 669, 176, - 177, 178, 84, 85, 86, 666, 667, 243, 291, 441, - 442, 87, 88, 89, 90, 91, 92, 93, 685, 686, - 94, 95, 505, 506, 96, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 97, 616, 617, 99, 100, 101 + 0, 80, 290, 547, 569, 505, 617, 83, 671, 176, + 177, 178, 84, 85, 86, 668, 669, 243, 291, 442, + 443, 87, 88, 89, 90, 91, 92, 93, 687, 688, + 94, 95, 507, 508, 96, 179, 180, 181, 182, 183, + 184, 185, 186, 187, 97, 618, 619, 99, 100, 101 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1343,390 +1346,400 @@ static const grib_yytype_int16 grib_yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const grib_yytype_int16 grib_yytable[] = { - 82, 564, 224, 462, 508, 81, 231, 232, 305, 308, - 227, 509, 510, 751, 98, 787, 514, 561, 562, 421, - 246, 343, 228, 167, 426, 208, 57, 208, 208, 561, - 562, 561, 562, 347, 348, 349, 684, 284, 766, 463, - 170, 285, 313, 314, 212, 221, 222, 78, 223, 221, - 222, 78, 223, 355, 213, 292, 107, 350, 552, 356, - 175, 229, 559, 384, 767, 315, 316, 317, 351, 225, - 226, 601, 289, 752, 602, 648, 276, 307, 221, 222, - 78, 223, 554, 219, 649, 887, 563, 277, 565, 543, - 544, 742, 648, 671, 415, 417, 221, 222, 78, 223, - 808, 670, 672, 161, 162, 163, 57, 102, 154, 748, - 344, 98, 156, 354, 175, 155, 242, 242, 318, 157, - 550, 103, 242, 319, 551, 242, 242, 242, 242, 242, - 242, 242, 242, 242, 242, 242, 242, 242, 242, 104, - 209, 229, 363, 700, 164, 165, 464, 308, 308, 308, + 82, 566, 224, 463, 510, 81, 305, 208, 511, 512, + 98, 753, 344, 516, 789, 164, 165, 227, 563, 564, + 563, 564, 228, 57, 422, 208, 686, 208, 768, 427, + 308, 167, 563, 564, 221, 222, 78, 223, 284, 348, + 349, 350, 285, 212, 231, 232, 276, 554, 464, 170, + 356, 225, 226, 213, 385, 769, 357, 277, 246, 229, + 175, 650, 167, 351, 556, 314, 315, 650, 319, 673, + 651, 107, 289, 320, 352, 754, 672, 889, 674, 169, + 170, 171, 172, 219, 108, 416, 418, 173, 565, 316, + 317, 318, 247, 292, 174, 102, 241, 248, 810, 221, + 222, 78, 223, 161, 162, 163, 57, 98, 221, 222, + 78, 223, 561, 154, 175, 307, 242, 242, 103, 550, + 155, 744, 242, 209, 551, 242, 242, 242, 242, 242, + 242, 242, 242, 242, 242, 242, 242, 242, 242, 156, + 158, 364, 229, 702, 164, 165, 157, 159, 345, 114, + 115, 355, 359, 161, 162, 163, 241, 360, 557, 607, + 445, 603, 110, 558, 604, 481, 513, 465, 466, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, - 308, 605, 221, 222, 78, 223, 479, 247, 548, 164, - 165, 241, 248, 549, 511, 795, 221, 222, 78, 223, - 221, 222, 78, 223, 166, 158, 557, 114, 115, 801, - 558, 167, 159, 866, 105, 358, 106, 446, 447, 241, - 359, 161, 162, 163, 347, 348, 349, 169, 170, 171, - 172, 118, 175, 119, 555, 173, 167, 242, 364, 556, - 601, 575, 174, 606, 740, 753, 576, 601, 350, 741, - 820, 746, 169, 170, 171, 172, 747, 619, 108, 351, - 173, 241, 164, 165, 758, 175, 175, 174, 833, 759, - 496, 225, 226, 834, 161, 162, 163, 347, 348, 349, - 320, 321, 322, 323, 324, 325, 515, 221, 222, 78, - 223, 175, 839, 516, 354, 175, 110, 840, 877, 879, - 871, 350, 166, 878, 880, 175, 884, 654, 240, 167, - 241, 885, 351, 109, 661, 164, 165, 465, 466, 467, - 468, 469, 470, 168, 175, 169, 170, 171, 172, 111, - 268, 175, 269, 173, 473, 474, 475, 476, 477, 478, - 174, 161, 162, 163, 281, 112, 286, 282, 283, 287, - 288, 116, 224, 113, 175, 166, 117, 224, 175, 175, - 175, 227, 167, 775, 621, 175, 175, 175, 241, 638, - 640, 238, 643, 631, 273, 274, 168, 241, 169, 170, - 171, 172, 164, 165, 352, 633, 173, 636, 120, 241, - 353, 241, 121, 174, 297, 298, 122, 765, 444, 221, - 222, 78, 223, 457, 458, 522, 523, 123, 739, 151, - 242, 543, 544, 561, 562, 745, 734, 735, 471, 472, - 124, 330, 166, 332, 125, 126, 683, 127, 128, 167, - 129, 130, 131, 132, 133, 134, 210, 137, 175, 140, - 141, 142, 135, 168, 136, 169, 170, 171, 172, 138, - 753, 143, 139, 173, 144, 145, 188, 445, 146, 147, - 174, 148, 149, 150, 152, 153, 160, 211, 190, 345, - 191, 193, 189, 380, 381, 192, 194, 195, 196, 386, - 197, 198, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, 199, 200, 201, 202, - 203, 204, 378, 379, 205, 206, 207, 214, 220, 233, - 234, 310, 235, 236, 237, 241, 239, 245, 250, 251, - 267, 271, 175, 175, 175, 175, 175, 695, 403, 266, - 270, 272, 407, 280, 289, 275, 278, 242, 618, 295, - 279, 623, 418, 293, 242, 242, 628, 242, 242, 242, - 242, 294, 242, 837, 242, 242, 242, 242, 296, 843, - 242, 452, 299, 725, 312, 300, 725, 427, 460, 301, - 302, 303, 242, 304, 306, 311, 326, 328, 161, 162, - 163, 327, 329, 331, 336, 224, 333, 334, 337, 338, - 513, 482, 224, 335, 339, 484, 485, 486, 340, 341, - 357, 342, 491, 492, 493, 346, 361, 161, 162, 163, - 362, 212, 369, 365, 242, 366, 213, 367, 428, 164, - 165, 374, 368, 370, 354, 371, 372, 429, 430, 431, - 432, 433, 434, 373, 242, 435, 436, 375, 437, 438, - 538, 439, 440, 376, 175, 542, 175, 546, 164, 165, - 377, 382, 385, 387, 383, 413, 175, 388, 175, 166, - 404, 175, 405, 242, 175, 242, 167, 175, 242, 175, - 224, 242, 175, 805, 806, 540, 224, 406, 408, 409, - 168, 410, 169, 170, 171, 172, 411, 443, 166, 412, - 173, 414, 419, 420, 416, 167, 422, 174, 424, 425, - 453, 481, 454, 448, 449, 175, 175, 769, 242, 168, - 450, 169, 170, 171, 172, 451, 242, 242, 455, 173, - 459, 456, 461, 244, 483, 494, 174, 487, 249, 488, - 489, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 490, 495, 497, 498, 499, - 500, 501, 502, 504, 507, 512, 353, 356, 630, 596, - 597, 598, 599, 600, 352, 355, 517, 519, 224, 518, - 520, 524, 521, 525, 224, 526, 527, 529, 530, 531, - 532, 533, 655, 534, 657, 535, 536, 537, 541, 662, - 568, 594, 539, 547, 553, 560, 569, 570, 571, 668, - 609, 572, 573, 574, 578, 242, 242, 242, 242, 242, - 577, 242, 579, 679, 242, 580, 581, 583, 242, 582, - 584, 585, 586, 360, 587, 588, 589, 161, 162, 163, - 590, 591, 592, 604, 607, 848, 850, 593, 595, 645, - 697, 852, 853, 603, 608, 611, 612, 613, 644, 647, - 706, 646, 708, 651, 710, 711, 712, 713, 652, 715, - 653, 659, 717, 656, 719, 720, 658, 722, 164, 165, - 660, 727, 664, 665, 680, 731, 673, 674, 678, 736, - 737, 705, 675, 707, 676, 677, 161, 162, 163, 681, - 684, 687, 778, 716, 688, 718, 689, 690, 721, 691, - 692, 724, 693, 755, 728, 698, 730, 699, 166, 733, - 701, 703, 704, 738, 709, 167, 714, 743, 770, 771, - 772, 744, 749, 754, 750, 756, 777, 164, 165, 168, - 757, 169, 170, 171, 172, 776, 760, 694, 761, 173, - 779, 797, 762, 763, 780, 781, 174, 782, 783, 784, - 794, 799, 786, 785, 789, 791, 788, 793, 796, 790, - 800, 803, 792, 802, 807, 809, 810, 166, 811, 815, - 812, 817, 798, 816, 167, 851, 813, 821, 804, 829, - 822, 836, 838, 842, 844, 161, 162, 163, 168, 845, - 169, 170, 171, 172, 814, 846, 528, 847, 173, 860, - 863, 865, 867, 818, 819, 174, 868, 870, 873, 874, - 875, 889, 876, 882, 883, 891, 895, 897, 872, 898, - 663, 831, 899, 423, 309, 835, 164, 165, 702, 566, - 230, 841, 0, 0, 768, 0, 0, 0, 480, 0, + 308, 308, 308, 104, 166, 221, 222, 78, 223, 552, + 109, 167, 577, 553, 164, 165, 111, 578, 750, 742, + 221, 222, 78, 223, 743, 168, 225, 226, 169, 170, + 171, 172, 175, 797, 748, 113, 173, 242, 365, 749, + 446, 281, 112, 174, 282, 283, 755, 221, 222, 78, + 223, 116, 760, 835, 166, 447, 448, 761, 836, 841, + 803, 167, 879, 881, 842, 175, 175, 880, 882, 161, + 162, 163, 348, 349, 350, 168, 135, 886, 169, 170, + 171, 172, 887, 117, 286, 559, 173, 287, 288, 560, + 417, 175, 105, 174, 106, 175, 351, 161, 162, 163, + 221, 222, 78, 223, 621, 175, 120, 352, 241, 498, + 164, 165, 121, 868, 656, 221, 222, 78, 223, 623, + 122, 663, 633, 241, 175, 517, 241, 118, 873, 119, + 635, 175, 518, 355, 241, 240, 638, 241, 164, 165, + 241, 123, 161, 162, 163, 221, 222, 78, 223, 124, + 166, 603, 125, 224, 608, 175, 126, 167, 224, 175, + 175, 175, 640, 642, 777, 645, 175, 175, 175, 227, + 603, 168, 127, 822, 169, 170, 171, 172, 166, 268, + 353, 269, 173, 164, 165, 167, 354, 273, 274, 174, + 321, 322, 323, 324, 325, 326, 567, 545, 546, 767, + 297, 298, 169, 170, 171, 172, 311, 312, 545, 546, + 173, 242, 458, 459, 128, 741, 129, 174, 331, 685, + 333, 130, 747, 166, 467, 468, 469, 470, 471, 472, + 167, 475, 476, 477, 478, 479, 480, 524, 525, 175, + 563, 564, 428, 151, 168, 736, 737, 169, 170, 171, + 172, 755, 473, 474, 131, 173, 460, 132, 133, 134, + 137, 136, 174, 140, 141, 142, 143, 138, 139, 144, + 381, 382, 145, 146, 147, 148, 387, 149, 150, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 403, 429, 161, 162, 163, 348, 349, 350, + 152, 153, 430, 431, 432, 433, 434, 435, 160, 190, + 436, 437, 188, 438, 439, 189, 440, 441, 191, 192, + 193, 351, 194, 195, 175, 175, 175, 175, 175, 196, + 197, 198, 352, 199, 200, 164, 165, 201, 202, 242, + 620, 203, 204, 625, 205, 206, 242, 242, 630, 242, + 242, 242, 242, 207, 242, 214, 242, 242, 242, 242, + 839, 210, 242, 211, 220, 233, 845, 697, 234, 235, + 236, 237, 241, 239, 242, 166, 245, 250, 251, 266, + 267, 271, 167, 272, 313, 270, 289, 224, 515, 310, + 329, 275, 278, 279, 224, 280, 168, 295, 293, 169, + 170, 171, 172, 727, 294, 296, 727, 173, 299, 300, + 301, 327, 302, 303, 174, 304, 242, 306, 328, 330, + 332, 334, 335, 336, 358, 337, 338, 339, 340, 341, + 212, 362, 483, 606, 686, 342, 242, 343, 540, 347, + 363, 370, 375, 544, 366, 548, 175, 367, 175, 213, + 368, 369, 371, 372, 373, 374, 376, 377, 175, 378, + 175, 383, 384, 175, 355, 242, 175, 242, 386, 175, + 242, 175, 224, 242, 175, 389, 388, 405, 224, 406, + 407, 409, 410, 411, 412, 413, 414, 415, 420, 421, + 423, 425, 426, 354, 357, 444, 874, 454, 455, 456, + 457, 506, 449, 450, 451, 452, 504, 175, 175, 771, + 242, 462, 485, 807, 808, 489, 490, 491, 242, 242, + 492, 244, 514, 496, 497, 499, 249, 500, 501, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 502, 503, 509, 519, 353, 356, 520, + 521, 522, 527, 526, 529, 523, 531, 632, 528, 532, + 533, 534, 535, 536, 537, 538, 539, 541, 543, 549, + 224, 555, 570, 562, 571, 572, 224, 573, 653, 574, + 646, 657, 575, 659, 161, 162, 163, 576, 664, 579, + 580, 581, 583, 582, 161, 162, 163, 584, 585, 586, + 587, 589, 588, 590, 591, 592, 593, 242, 242, 242, + 242, 242, 681, 242, 596, 238, 242, 594, 595, 597, + 242, 361, 605, 611, 609, 164, 165, 610, 613, 614, + 615, 647, 648, 649, 654, 164, 165, 850, 852, 699, + 655, 661, 658, 854, 855, 660, 662, 666, 667, 708, + 670, 710, 675, 712, 713, 714, 715, 676, 717, 677, + 678, 719, 679, 721, 722, 166, 724, 689, 680, 682, + 729, 683, 167, 690, 733, 166, 691, 692, 738, 739, + 693, 694, 167, 695, 751, 700, 168, 701, 740, 169, + 170, 171, 172, 703, 780, 696, 168, 173, 705, 169, + 170, 171, 172, 706, 174, 711, 716, 173, 161, 162, + 163, 745, 746, 346, 174, 752, 756, 772, 773, 774, + 757, 758, 759, 778, 762, 779, 763, 781, 782, 799, + 783, 784, 785, 786, 796, 801, 788, 791, 793, 795, + 798, 802, 809, 804, 805, 811, 379, 380, 812, 164, + 165, 813, 787, 814, 815, 790, 838, 862, 792, 840, + 819, 794, 817, 823, 818, 824, 831, 844, 846, 847, + 848, 800, 404, 849, 853, 865, 408, 806, 867, 869, + 870, 872, 878, 875, 876, 877, 419, 891, 893, 166, + 897, 884, 885, 816, 899, 530, 167, 424, 900, 568, + 901, 770, 820, 821, 309, 453, 704, 230, 0, 0, + 168, 482, 461, 169, 170, 171, 172, 0, 0, 0, + 833, 641, 665, 0, 837, 0, 0, 0, 174, 0, + 843, 0, 0, 0, 0, 0, 484, 0, 0, 0, + 486, 487, 488, 0, 0, 0, 0, 493, 494, 495, + 0, 0, 856, 857, 858, 859, 860, 861, 0, 863, + 0, 864, 0, 866, 0, 0, 0, 0, 0, 871, + 0, 0, 0, 0, 161, 162, 163, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 854, 855, 856, 857, 858, 859, 0, - 861, 0, 862, 0, 864, 0, 166, 0, 0, 0, - 869, 0, 0, 167, 0, 161, 162, 163, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 168, 0, 169, - 170, 171, 172, 0, 0, 0, 881, 639, 0, 0, - 0, 886, 0, 0, 174, 0, 888, 0, 890, 0, - 892, 0, 893, 894, 0, 896, 164, 165, 0, 0, - 0, 0, 0, 610, 0, 0, 0, 900, 901, 902, - 620, 622, 0, 624, 625, 626, 627, 0, 629, 0, - 632, 634, 635, 637, 0, 0, 641, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 166, 0, 650, 0, - 0, 0, 0, 167, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 168, 0, 169, - 170, 171, 172, 0, 0, 0, 0, 642, 0, 0, + 0, 0, 0, 0, 0, 883, 0, 0, 0, 0, + 888, 0, 0, 0, 0, 890, 0, 892, 0, 894, + 0, 895, 896, 0, 898, 164, 165, 0, 0, 0, + 542, 0, 0, 612, 0, 0, 902, 903, 904, 0, + 622, 624, 0, 626, 627, 628, 629, 0, 631, 0, + 634, 636, 637, 639, 0, 0, 643, 0, 0, 0, + 0, 0, 0, 0, 0, 166, 0, 0, 652, 0, + 0, 0, 167, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 168, 0, 0, 169, + 170, 171, 172, 0, 0, 0, 0, 644, 0, 0, 0, 0, 0, 0, 174, 0, 0, 0, 0, 0, - 682, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 684, 0, 0, 0, 0, 598, 599, 600, 601, 602, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 696, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 698, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 723, - 0, 726, 0, 0, 729, 0, 0, 732, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 725, + 0, 728, 0, 0, 731, 0, 0, 734, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 764, 0, 0, 0, 0, 0, - 0, 0, 773, 774, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 766, 0, 0, 0, 0, 0, + 0, 0, 775, 776, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 707, 0, 709, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 718, + 0, 720, 0, 0, 723, 0, 0, 726, 0, 0, + 730, 0, 732, 0, 0, 735, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 215, 3, 0, 0, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 0, 0, 0, 0, 0, 0, - 0, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 0, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 0, 45, 46, 0, 0, 47, 0, - 0, 823, 824, 825, 826, 827, 0, 828, 0, 0, - 830, 0, 0, 0, 832, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 0, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 0, 69, 70, 71, - 72, 73, 74, 0, 0, 75, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 216, - 0, 0, 217, 0, 0, -8, 1, 0, 0, 2, - 3, 0, 849, 4, 5, 6, 7, 8, 9, 10, - 11, 12, 13, 0, 0, 0, 0, 0, 0, 0, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 0, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 0, 45, 46, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 0, 69, 70, 71, 72, - 73, 74, 215, 3, 75, 0, 4, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 0, 0, 76, 77, - 78, 79, 0, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 0, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 0, 45, 46, 0, 0, - 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 0, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 0, 69, - 70, 71, 72, 73, 74, 0, 0, 75, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 764, 765, + 0, 825, 826, 827, 828, 829, 0, 830, 0, 0, + 832, 215, 3, 0, 834, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 0, 0, 0, 0, 0, + 0, 0, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 0, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 0, 45, 46, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 216, 0, 0, 217, 0, 218, 215, 3, 0, - 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, - 13, 0, 0, 0, 0, 0, 0, 0, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 0, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 0, 45, 46, 0, 0, 47, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 0, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 0, 69, 70, + 71, 72, 73, 74, 0, 0, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 0, 69, 70, 71, 72, 73, 74, - 215, 3, 75, 0, 4, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 0, 0, 614, 0, 0, 217, + 0, 216, 0, 0, 217, 0, 0, -8, 1, 0, + 0, 2, 3, 0, 851, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 0, 0, 0, 0, 0, + 0, 0, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 0, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 0, 45, 46, 0, 0, 47, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 0, 69, 70, + 71, 72, 73, 74, 215, 3, 75, 0, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 0, 0, + 0, 76, 77, 78, 79, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 0, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 0, 45, 46, + 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 0, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 0, 69, 70, 71, 72, 73, 74, 0, 0, 75, + 215, 3, 0, 0, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 216, 0, 0, 217, 0, 218, 0, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 0, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 0, 45, 46, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 0, 58, 59, 60, 61, 62, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 0, 69, 70, 71, - 72, 73, 74, 0, 0, 75, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 216, - 0, 0, 217 + 72, 73, 74, 215, 3, 75, 0, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, 0, 0, 0, + 616, 0, 0, 217, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 0, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 0, 45, 46, 0, + 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 0, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 0, + 69, 70, 71, 72, 73, 74, 0, 0, 75, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 216, 0, 0, 217 }; static const grib_yytype_int16 grib_yycheck[] = { - 0, 443, 91, 310, 355, 0, 102, 103, 168, 174, - 92, 356, 357, 666, 0, 80, 361, 80, 81, 283, - 116, 205, 4, 107, 288, 18, 88, 18, 18, 80, - 81, 80, 81, 22, 23, 24, 108, 131, 110, 123, - 124, 135, 117, 118, 123, 123, 124, 125, 126, 123, - 124, 125, 126, 129, 133, 151, 123, 46, 136, 135, - 55, 123, 136, 247, 136, 140, 141, 142, 57, 123, - 124, 127, 137, 136, 130, 127, 123, 173, 123, 124, - 125, 126, 136, 83, 136, 136, 135, 134, 124, 125, - 126, 136, 127, 127, 278, 279, 123, 124, 125, 126, - 753, 136, 136, 19, 20, 21, 88, 131, 124, 136, - 206, 97, 124, 209, 109, 131, 111, 112, 138, 131, - 131, 131, 117, 143, 135, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 131, - 133, 123, 133, 133, 60, 61, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 506, 123, 124, 125, 126, 326, 129, 127, 60, - 61, 133, 134, 132, 358, 136, 123, 124, 125, 126, - 123, 124, 125, 126, 100, 124, 131, 123, 124, 136, - 135, 107, 131, 136, 129, 129, 131, 293, 294, 133, - 134, 19, 20, 21, 22, 23, 24, 123, 124, 125, - 126, 129, 207, 131, 127, 131, 107, 212, 218, 132, - 127, 127, 138, 130, 127, 667, 132, 127, 46, 132, - 130, 127, 123, 124, 125, 126, 132, 129, 123, 57, - 131, 133, 60, 61, 127, 240, 241, 138, 127, 132, - 346, 123, 124, 132, 19, 20, 21, 22, 23, 24, - 111, 112, 113, 114, 115, 116, 362, 123, 124, 125, - 126, 266, 127, 369, 370, 270, 129, 132, 127, 127, - 136, 46, 100, 132, 132, 280, 127, 551, 131, 107, - 133, 132, 57, 131, 558, 60, 61, 312, 313, 314, - 315, 316, 317, 121, 299, 123, 124, 125, 126, 123, - 123, 306, 125, 131, 320, 321, 322, 323, 324, 325, - 138, 19, 20, 21, 131, 123, 131, 134, 135, 134, - 135, 131, 421, 129, 329, 100, 123, 426, 333, 334, - 335, 423, 107, 694, 129, 340, 341, 342, 133, 533, - 534, 109, 536, 129, 133, 134, 121, 133, 123, 124, - 125, 126, 60, 61, 129, 129, 131, 129, 123, 133, - 135, 133, 123, 138, 123, 124, 123, 684, 76, 123, - 124, 125, 126, 123, 124, 123, 124, 123, 652, 131, - 385, 125, 126, 80, 81, 659, 125, 126, 318, 319, - 123, 191, 100, 193, 123, 123, 590, 123, 123, 107, - 123, 123, 123, 123, 123, 123, 133, 123, 413, 123, - 123, 123, 129, 121, 129, 123, 124, 125, 126, 129, - 872, 123, 129, 131, 123, 123, 131, 135, 123, 123, - 138, 123, 123, 123, 123, 123, 123, 133, 123, 207, - 123, 123, 128, 243, 244, 129, 123, 123, 123, 249, - 123, 129, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 129, 129, 129, 123, - 123, 123, 240, 241, 123, 131, 131, 0, 128, 123, - 125, 127, 125, 124, 124, 133, 125, 125, 125, 125, - 125, 125, 497, 498, 499, 500, 501, 603, 266, 129, - 131, 125, 270, 131, 137, 134, 133, 512, 518, 125, - 133, 521, 280, 133, 519, 520, 526, 522, 523, 524, - 525, 133, 527, 797, 529, 530, 531, 532, 125, 803, - 535, 299, 131, 639, 139, 131, 642, 3, 306, 131, - 131, 131, 547, 131, 131, 122, 119, 123, 19, 20, - 21, 120, 131, 125, 125, 654, 131, 131, 125, 125, - 360, 329, 661, 131, 125, 333, 334, 335, 131, 131, - 135, 131, 340, 341, 342, 131, 135, 19, 20, 21, - 131, 123, 131, 133, 589, 133, 133, 133, 54, 60, - 61, 130, 133, 133, 700, 132, 132, 63, 64, 65, - 66, 67, 68, 132, 609, 71, 72, 132, 74, 75, - 410, 77, 78, 132, 619, 415, 621, 417, 60, 61, - 130, 130, 123, 130, 132, 131, 631, 132, 633, 100, - 130, 636, 130, 638, 639, 640, 107, 642, 643, 644, - 739, 646, 647, 749, 750, 413, 745, 130, 130, 130, - 121, 123, 123, 124, 125, 126, 123, 132, 100, 123, - 131, 123, 123, 123, 135, 107, 123, 138, 123, 123, - 123, 127, 123, 132, 132, 680, 681, 687, 683, 121, - 132, 123, 124, 125, 126, 132, 691, 692, 123, 131, - 132, 123, 132, 112, 130, 132, 138, 130, 117, 130, - 130, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 130, 132, 131, 131, 131, - 131, 131, 125, 123, 128, 123, 135, 135, 528, 497, - 498, 499, 500, 501, 129, 129, 135, 123, 837, 135, - 123, 132, 135, 123, 843, 135, 130, 123, 123, 130, - 123, 123, 552, 123, 554, 132, 123, 123, 123, 559, - 124, 135, 133, 132, 127, 127, 124, 124, 124, 128, - 130, 132, 127, 127, 127, 780, 781, 782, 783, 784, - 132, 786, 127, 583, 789, 132, 123, 123, 793, 132, - 132, 132, 132, 212, 123, 123, 123, 19, 20, 21, - 123, 132, 132, 136, 136, 815, 816, 132, 132, 123, - 610, 821, 822, 133, 136, 136, 132, 132, 131, 131, - 620, 132, 622, 124, 624, 625, 626, 627, 135, 629, - 123, 135, 632, 124, 634, 635, 124, 637, 60, 61, - 123, 641, 123, 123, 131, 645, 124, 124, 132, 649, - 650, 619, 125, 621, 125, 125, 19, 20, 21, 131, - 108, 135, 6, 631, 132, 633, 132, 132, 636, 132, - 132, 639, 125, 124, 642, 135, 644, 135, 100, 647, - 136, 136, 136, 127, 136, 107, 136, 127, 688, 689, - 690, 127, 133, 128, 133, 132, 696, 60, 61, 121, - 132, 123, 124, 125, 126, 128, 127, 129, 127, 131, - 6, 135, 680, 681, 130, 130, 138, 130, 130, 130, - 123, 123, 132, 723, 132, 132, 726, 132, 124, 729, - 123, 135, 732, 124, 6, 125, 125, 100, 125, 137, - 132, 136, 742, 137, 107, 128, 132, 135, 748, 131, - 135, 127, 127, 127, 135, 19, 20, 21, 121, 132, - 123, 124, 125, 126, 764, 132, 385, 132, 131, 123, - 123, 123, 123, 773, 774, 138, 123, 123, 136, 136, - 136, 123, 132, 132, 132, 123, 123, 132, 844, 132, - 560, 791, 132, 285, 174, 795, 60, 61, 616, 445, - 97, 801, -1, -1, 685, -1, -1, -1, 327, -1, + 0, 444, 91, 310, 356, 0, 168, 18, 357, 358, + 0, 668, 205, 362, 80, 60, 61, 92, 80, 81, + 80, 81, 4, 88, 283, 18, 108, 18, 110, 288, + 174, 107, 80, 81, 124, 125, 126, 127, 132, 22, + 23, 24, 136, 124, 102, 103, 124, 137, 124, 125, + 130, 124, 125, 134, 247, 137, 136, 135, 116, 124, + 55, 128, 107, 46, 137, 117, 118, 128, 139, 128, + 137, 124, 138, 144, 57, 137, 137, 137, 137, 124, + 125, 126, 127, 83, 124, 278, 279, 132, 136, 141, + 142, 143, 130, 151, 139, 132, 134, 135, 755, 124, + 125, 126, 127, 19, 20, 21, 88, 97, 124, 125, + 126, 127, 137, 125, 109, 173, 111, 112, 132, 128, + 132, 137, 117, 134, 133, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 125, + 125, 134, 124, 134, 60, 61, 132, 132, 206, 124, + 125, 209, 130, 19, 20, 21, 134, 135, 128, 508, + 76, 128, 130, 133, 131, 327, 359, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, + 324, 325, 326, 132, 100, 124, 125, 126, 127, 132, + 132, 107, 128, 136, 60, 61, 124, 133, 137, 128, + 124, 125, 126, 127, 133, 121, 124, 125, 124, 125, + 126, 127, 207, 137, 128, 130, 132, 212, 218, 133, + 136, 132, 124, 139, 135, 136, 669, 124, 125, 126, + 127, 132, 128, 128, 100, 293, 294, 133, 133, 128, + 137, 107, 128, 128, 133, 240, 241, 133, 133, 19, + 20, 21, 22, 23, 24, 121, 130, 128, 124, 125, + 126, 127, 133, 124, 132, 132, 132, 135, 136, 136, + 136, 266, 130, 139, 132, 270, 46, 19, 20, 21, + 124, 125, 126, 127, 130, 280, 124, 57, 134, 347, + 60, 61, 124, 137, 553, 124, 125, 126, 127, 130, + 124, 560, 130, 134, 299, 363, 134, 130, 137, 132, + 130, 306, 370, 371, 134, 132, 130, 134, 60, 61, + 134, 124, 19, 20, 21, 124, 125, 126, 127, 124, + 100, 128, 124, 422, 131, 330, 124, 107, 427, 334, + 335, 336, 535, 536, 696, 538, 341, 342, 343, 424, + 128, 121, 124, 131, 124, 125, 126, 127, 100, 124, + 130, 126, 132, 60, 61, 107, 136, 134, 135, 139, + 111, 112, 113, 114, 115, 116, 125, 126, 127, 686, + 124, 125, 124, 125, 126, 127, 122, 123, 126, 127, + 132, 386, 124, 125, 124, 654, 124, 139, 191, 592, + 193, 124, 661, 100, 313, 314, 315, 316, 317, 318, + 107, 321, 322, 323, 324, 325, 326, 124, 125, 414, + 80, 81, 3, 132, 121, 126, 127, 124, 125, 126, + 127, 874, 319, 320, 124, 132, 133, 124, 124, 124, + 124, 130, 139, 124, 124, 124, 124, 130, 130, 124, + 243, 244, 124, 124, 124, 124, 249, 124, 124, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 54, 19, 20, 21, 22, 23, 24, + 124, 124, 63, 64, 65, 66, 67, 68, 124, 124, + 71, 72, 132, 74, 75, 129, 77, 78, 124, 130, + 124, 46, 124, 124, 499, 500, 501, 502, 503, 124, + 124, 130, 57, 130, 130, 60, 61, 130, 124, 514, + 520, 124, 124, 523, 124, 132, 521, 522, 528, 524, + 525, 526, 527, 132, 529, 0, 531, 532, 533, 534, + 799, 134, 537, 134, 129, 124, 805, 605, 126, 126, + 125, 125, 134, 126, 549, 100, 126, 126, 126, 130, + 126, 126, 107, 126, 140, 132, 138, 656, 361, 128, + 124, 135, 134, 134, 663, 132, 121, 126, 134, 124, + 125, 126, 127, 641, 134, 126, 644, 132, 132, 132, + 132, 119, 132, 132, 139, 132, 591, 132, 120, 132, + 126, 132, 132, 132, 136, 126, 126, 126, 126, 132, + 124, 136, 128, 137, 108, 132, 611, 132, 411, 132, + 132, 132, 131, 416, 134, 418, 621, 134, 623, 134, + 134, 134, 134, 133, 133, 133, 133, 133, 633, 131, + 635, 131, 133, 638, 702, 640, 641, 642, 124, 644, + 645, 646, 741, 648, 649, 133, 131, 131, 747, 131, + 131, 131, 131, 124, 124, 124, 132, 124, 124, 124, + 124, 124, 124, 136, 136, 133, 846, 124, 124, 124, + 124, 124, 133, 133, 133, 133, 126, 682, 683, 689, + 685, 133, 131, 751, 752, 131, 131, 131, 693, 694, + 131, 112, 124, 133, 133, 132, 117, 132, 132, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 132, 132, 129, 136, 130, 130, 136, + 124, 124, 124, 133, 131, 136, 124, 530, 136, 124, + 131, 124, 124, 124, 133, 124, 124, 134, 124, 133, + 839, 128, 125, 128, 125, 125, 845, 125, 125, 133, + 132, 554, 128, 556, 19, 20, 21, 128, 561, 133, + 128, 128, 124, 133, 19, 20, 21, 133, 124, 133, + 133, 124, 133, 124, 124, 124, 133, 782, 783, 784, + 785, 786, 585, 788, 136, 109, 791, 133, 133, 133, + 795, 212, 134, 131, 137, 60, 61, 137, 137, 133, + 133, 124, 133, 132, 136, 60, 61, 817, 818, 612, + 124, 136, 125, 823, 824, 125, 124, 124, 124, 622, + 129, 624, 125, 626, 627, 628, 629, 125, 631, 126, + 126, 634, 126, 636, 637, 100, 639, 136, 133, 132, + 643, 132, 107, 133, 647, 100, 133, 133, 651, 652, + 133, 133, 107, 126, 134, 136, 121, 136, 128, 124, + 125, 126, 127, 137, 6, 130, 121, 132, 137, 124, + 125, 126, 127, 137, 139, 137, 137, 132, 19, 20, + 21, 128, 128, 207, 139, 134, 129, 690, 691, 692, + 125, 133, 133, 129, 128, 698, 128, 6, 131, 136, + 131, 131, 131, 131, 124, 124, 133, 133, 133, 133, + 125, 124, 6, 125, 136, 126, 240, 241, 126, 60, + 61, 126, 725, 133, 133, 728, 128, 124, 731, 128, + 137, 734, 138, 136, 138, 136, 132, 128, 136, 133, + 133, 744, 266, 133, 129, 124, 270, 750, 124, 124, + 124, 124, 133, 137, 137, 137, 280, 124, 124, 100, + 124, 133, 133, 766, 133, 386, 107, 285, 133, 446, + 133, 687, 775, 776, 174, 299, 618, 97, -1, -1, + 121, 328, 306, 124, 125, 126, 127, -1, -1, -1, + 793, 132, 562, -1, 797, -1, -1, -1, 139, -1, + 803, -1, -1, -1, -1, -1, 330, -1, -1, -1, + 334, 335, 336, -1, -1, -1, -1, 341, 342, 343, + -1, -1, 825, 826, 827, 828, 829, 830, -1, 832, + -1, 834, -1, 836, -1, -1, -1, -1, -1, 842, + -1, -1, -1, -1, 19, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 823, 824, 825, 826, 827, 828, -1, - 830, -1, 832, -1, 834, -1, 100, -1, -1, -1, - 840, -1, -1, 107, -1, 19, 20, 21, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 121, -1, 123, - 124, 125, 126, -1, -1, -1, 866, 131, -1, -1, - -1, 871, -1, -1, 138, -1, 876, -1, 878, -1, - 880, -1, 882, 883, -1, 885, 60, 61, -1, -1, - -1, -1, -1, 512, -1, -1, -1, 897, 898, 899, - 519, 520, -1, 522, 523, 524, 525, -1, 527, -1, - 529, 530, 531, 532, -1, -1, 535, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 100, -1, 547, -1, - -1, -1, -1, 107, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 121, -1, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, 138, -1, -1, -1, -1, -1, - 589, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 868, -1, -1, -1, -1, + 873, -1, -1, -1, -1, 878, -1, 880, -1, 882, + -1, 884, 885, -1, 887, 60, 61, -1, -1, -1, + 414, -1, -1, 514, -1, -1, 899, 900, 901, -1, + 521, 522, -1, 524, 525, 526, 527, -1, 529, -1, + 531, 532, 533, 534, -1, -1, 537, -1, -1, -1, + -1, -1, -1, -1, -1, 100, -1, -1, 549, -1, + -1, -1, 107, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 121, -1, -1, 124, + 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, + -1, -1, -1, -1, 139, -1, -1, -1, -1, -1, + 591, -1, -1, -1, -1, 499, 500, 501, 502, 503, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 609, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 611, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 638, - -1, 640, -1, -1, 643, -1, -1, 646, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 640, + -1, 642, -1, -1, 645, -1, -1, 648, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 683, -1, -1, -1, -1, -1, - -1, -1, 691, 692, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 685, -1, -1, -1, -1, -1, + -1, -1, 693, 694, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 621, -1, 623, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 633, + -1, 635, -1, -1, 638, -1, -1, 641, -1, -1, + 644, -1, 646, -1, -1, 649, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 4, 5, -1, -1, 8, 9, 10, 11, 12, 13, - 14, 15, 16, 17, -1, -1, -1, -1, -1, -1, - -1, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, -1, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, -1, 58, 59, -1, -1, 62, -1, - -1, 780, 781, 782, 783, 784, -1, 786, -1, -1, - 789, -1, -1, -1, 793, 79, 80, 81, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, -1, -1, 109, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 123, - -1, -1, 126, -1, -1, 0, 1, -1, -1, 4, - 5, -1, 136, 8, 9, 10, 11, 12, 13, 14, - 15, 16, 17, -1, -1, -1, -1, -1, -1, -1, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, -1, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, -1, 58, 59, -1, -1, 62, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, - 105, 106, 4, 5, 109, -1, 8, 9, 10, 11, - 12, 13, 14, 15, 16, 17, -1, -1, 123, 124, - 125, 126, -1, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, -1, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, -1, 58, 59, -1, -1, - 62, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 79, 80, 81, - 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, -1, 101, - 102, 103, 104, 105, 106, -1, -1, 109, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 682, 683, + -1, 782, 783, 784, 785, 786, -1, 788, -1, -1, + 791, 4, 5, -1, 795, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, -1, -1, -1, -1, -1, + -1, -1, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, -1, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, -1, 58, 59, -1, -1, 62, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 123, -1, -1, 126, -1, 128, 4, 5, -1, - -1, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, -1, -1, -1, -1, -1, -1, -1, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, -1, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - -1, 58, 59, -1, -1, 62, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 79, 80, 81, 82, + 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, 99, -1, 101, 102, + 103, 104, 105, 106, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, - 4, 5, 109, -1, 8, 9, 10, 11, 12, 13, - 14, 15, 16, 17, -1, -1, 123, -1, -1, 126, + -1, 124, -1, -1, 127, -1, -1, 0, 1, -1, + -1, 4, 5, -1, 137, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, -1, -1, -1, -1, -1, + -1, -1, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, -1, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, -1, 58, 59, -1, -1, 62, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, 99, -1, 101, 102, + 103, 104, 105, 106, 4, 5, 109, -1, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, -1, -1, + -1, 124, 125, 126, 127, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, -1, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, -1, 58, 59, + -1, -1, 62, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 79, + 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, 105, 106, -1, -1, 109, + 4, 5, -1, -1, 8, 9, 10, 11, 12, 13, + 14, 15, 16, 17, 124, -1, -1, 127, -1, 129, -1, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, -1, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, -1, 58, 59, -1, -1, 62, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 79, 80, 81, 82, 83, - 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, -1, -1, 109, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 123, - -1, -1, 126 + 104, 105, 106, 4, 5, 109, -1, 8, 9, 10, + 11, 12, 13, 14, 15, 16, 17, -1, -1, -1, + 124, -1, -1, 127, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, -1, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, -1, 58, 59, -1, + -1, 62, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 79, 80, + 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, -1, + 101, 102, 103, 104, 105, 106, -1, -1, 109, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 124, -1, -1, 127 }; /* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of @@ -1740,122 +1753,122 @@ static const grib_yytype_uint8 grib_yystos[] = 52, 53, 54, 55, 56, 58, 59, 62, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 101, - 102, 103, 104, 105, 106, 109, 123, 124, 125, 126, - 145, 146, 150, 151, 156, 157, 158, 165, 166, 167, - 168, 169, 170, 171, 174, 175, 178, 188, 189, 191, - 192, 193, 131, 131, 131, 129, 131, 123, 123, 131, - 129, 123, 123, 129, 123, 124, 131, 123, 129, 131, - 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, - 123, 123, 123, 123, 123, 129, 129, 123, 129, 129, - 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, - 123, 131, 123, 123, 124, 131, 124, 131, 124, 131, - 123, 19, 20, 21, 60, 61, 100, 107, 121, 123, - 124, 125, 126, 131, 138, 146, 153, 154, 155, 179, - 180, 181, 182, 183, 184, 185, 186, 187, 131, 128, - 123, 123, 129, 123, 123, 123, 123, 123, 129, 129, - 129, 129, 123, 123, 123, 123, 131, 131, 18, 133, - 133, 133, 123, 133, 0, 4, 123, 126, 128, 150, - 128, 123, 124, 126, 175, 123, 124, 178, 4, 123, - 193, 187, 187, 123, 125, 125, 124, 124, 153, 125, - 131, 133, 146, 161, 161, 125, 187, 129, 134, 161, - 125, 125, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 129, 125, 123, 125, - 131, 125, 125, 133, 134, 134, 123, 134, 133, 133, - 131, 131, 134, 135, 131, 135, 131, 134, 135, 137, - 146, 162, 187, 133, 133, 125, 125, 123, 124, 131, - 131, 131, 131, 131, 131, 184, 131, 187, 179, 180, - 127, 122, 139, 117, 118, 140, 141, 142, 138, 143, - 111, 112, 113, 114, 115, 116, 119, 120, 123, 131, - 162, 125, 162, 131, 131, 131, 125, 125, 125, 125, - 131, 131, 131, 155, 187, 153, 131, 22, 23, 24, - 46, 57, 129, 135, 187, 129, 135, 135, 129, 134, - 161, 135, 131, 133, 150, 133, 133, 133, 133, 131, - 133, 132, 132, 132, 130, 132, 132, 130, 153, 153, - 162, 162, 130, 132, 155, 123, 162, 130, 132, 162, - 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 153, 130, 130, 130, 153, 130, 130, - 123, 123, 123, 131, 123, 155, 135, 155, 153, 123, - 123, 169, 123, 170, 123, 123, 169, 3, 54, 63, - 64, 65, 66, 67, 68, 71, 72, 74, 75, 77, - 78, 163, 164, 132, 76, 135, 187, 187, 132, 132, - 132, 132, 153, 123, 123, 123, 123, 123, 124, 132, - 153, 132, 154, 123, 179, 181, 181, 181, 181, 181, - 181, 182, 182, 183, 183, 183, 183, 183, 183, 184, - 185, 127, 153, 130, 153, 153, 153, 130, 130, 130, - 130, 153, 153, 153, 132, 132, 187, 131, 131, 131, - 131, 131, 125, 149, 123, 176, 177, 128, 149, 176, - 176, 155, 123, 162, 176, 187, 187, 135, 135, 123, - 123, 135, 123, 124, 132, 123, 135, 130, 161, 123, - 123, 130, 123, 123, 123, 132, 123, 123, 162, 133, - 153, 123, 162, 125, 126, 147, 162, 132, 127, 132, - 131, 135, 136, 127, 136, 127, 132, 131, 135, 136, - 127, 80, 81, 135, 159, 124, 147, 148, 124, 124, - 124, 124, 132, 127, 127, 127, 132, 132, 127, 127, - 132, 123, 132, 123, 132, 132, 132, 123, 123, 123, - 123, 132, 132, 132, 135, 132, 153, 153, 153, 153, - 153, 127, 130, 133, 136, 176, 130, 136, 136, 130, - 161, 136, 132, 132, 123, 150, 189, 190, 150, 129, - 161, 129, 161, 150, 161, 161, 161, 161, 150, 161, - 162, 129, 161, 129, 161, 161, 129, 161, 155, 131, - 155, 161, 131, 155, 131, 123, 132, 131, 127, 136, - 161, 124, 135, 123, 169, 162, 124, 162, 124, 135, - 123, 169, 162, 164, 123, 123, 159, 160, 128, 152, - 136, 127, 136, 124, 124, 125, 125, 125, 132, 162, - 131, 131, 161, 155, 108, 172, 173, 135, 132, 132, - 132, 132, 132, 125, 129, 187, 161, 162, 135, 135, - 133, 136, 190, 136, 136, 153, 162, 153, 162, 136, - 162, 162, 162, 162, 136, 162, 153, 162, 153, 162, - 162, 153, 162, 161, 153, 187, 161, 162, 153, 161, - 153, 162, 161, 153, 125, 126, 162, 162, 127, 169, - 127, 132, 136, 127, 127, 169, 127, 132, 136, 133, - 133, 152, 136, 159, 128, 124, 132, 132, 127, 132, - 127, 127, 153, 153, 161, 154, 110, 136, 173, 150, - 162, 162, 162, 161, 161, 149, 128, 162, 6, 6, - 130, 130, 130, 130, 130, 162, 132, 80, 162, 132, - 162, 132, 162, 132, 123, 136, 124, 135, 162, 123, - 123, 136, 124, 135, 162, 187, 187, 6, 152, 125, - 125, 125, 132, 132, 162, 137, 137, 136, 162, 162, - 130, 135, 135, 161, 161, 161, 161, 161, 161, 131, - 161, 162, 161, 127, 132, 162, 127, 169, 127, 127, - 132, 162, 127, 169, 135, 132, 132, 132, 150, 136, - 150, 128, 150, 150, 162, 162, 162, 162, 162, 162, - 123, 162, 162, 123, 162, 123, 136, 123, 123, 162, - 123, 136, 160, 136, 136, 136, 132, 127, 132, 127, - 132, 162, 132, 132, 127, 132, 162, 136, 162, 123, - 162, 123, 162, 162, 162, 123, 162, 132, 132, 132, - 162, 162, 162 + 102, 103, 104, 105, 106, 109, 124, 125, 126, 127, + 146, 147, 151, 152, 157, 158, 159, 166, 167, 168, + 169, 170, 171, 172, 175, 176, 179, 189, 190, 192, + 193, 194, 132, 132, 132, 130, 132, 124, 124, 132, + 130, 124, 124, 130, 124, 125, 132, 124, 130, 132, + 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, + 124, 124, 124, 124, 124, 130, 130, 124, 130, 130, + 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, + 124, 132, 124, 124, 125, 132, 125, 132, 125, 132, + 124, 19, 20, 21, 60, 61, 100, 107, 121, 124, + 125, 126, 127, 132, 139, 147, 154, 155, 156, 180, + 181, 182, 183, 184, 185, 186, 187, 188, 132, 129, + 124, 124, 130, 124, 124, 124, 124, 124, 130, 130, + 130, 130, 124, 124, 124, 124, 132, 132, 18, 134, + 134, 134, 124, 134, 0, 4, 124, 127, 129, 151, + 129, 124, 125, 127, 176, 124, 125, 179, 4, 124, + 194, 188, 188, 124, 126, 126, 125, 125, 154, 126, + 132, 134, 147, 162, 162, 126, 188, 130, 135, 162, + 126, 126, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 130, 126, 124, 126, + 132, 126, 126, 134, 135, 135, 124, 135, 134, 134, + 132, 132, 135, 136, 132, 136, 132, 135, 136, 138, + 147, 163, 188, 134, 134, 126, 126, 124, 125, 132, + 132, 132, 132, 132, 132, 185, 132, 188, 180, 181, + 128, 122, 123, 140, 117, 118, 141, 142, 143, 139, + 144, 111, 112, 113, 114, 115, 116, 119, 120, 124, + 132, 163, 126, 163, 132, 132, 132, 126, 126, 126, + 126, 132, 132, 132, 156, 188, 154, 132, 22, 23, + 24, 46, 57, 130, 136, 188, 130, 136, 136, 130, + 135, 162, 136, 132, 134, 151, 134, 134, 134, 134, + 132, 134, 133, 133, 133, 131, 133, 133, 131, 154, + 154, 163, 163, 131, 133, 156, 124, 163, 131, 133, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 154, 131, 131, 131, 154, 131, + 131, 124, 124, 124, 132, 124, 156, 136, 156, 154, + 124, 124, 170, 124, 171, 124, 124, 170, 3, 54, + 63, 64, 65, 66, 67, 68, 71, 72, 74, 75, + 77, 78, 164, 165, 133, 76, 136, 188, 188, 133, + 133, 133, 133, 154, 124, 124, 124, 124, 124, 125, + 133, 154, 133, 155, 124, 180, 180, 182, 182, 182, + 182, 182, 182, 183, 183, 184, 184, 184, 184, 184, + 184, 185, 186, 128, 154, 131, 154, 154, 154, 131, + 131, 131, 131, 154, 154, 154, 133, 133, 188, 132, + 132, 132, 132, 132, 126, 150, 124, 177, 178, 129, + 150, 177, 177, 156, 124, 163, 177, 188, 188, 136, + 136, 124, 124, 136, 124, 125, 133, 124, 136, 131, + 162, 124, 124, 131, 124, 124, 124, 133, 124, 124, + 163, 134, 154, 124, 163, 126, 127, 148, 163, 133, + 128, 133, 132, 136, 137, 128, 137, 128, 133, 132, + 136, 137, 128, 80, 81, 136, 160, 125, 148, 149, + 125, 125, 125, 125, 133, 128, 128, 128, 133, 133, + 128, 128, 133, 124, 133, 124, 133, 133, 133, 124, + 124, 124, 124, 133, 133, 133, 136, 133, 154, 154, + 154, 154, 154, 128, 131, 134, 137, 177, 131, 137, + 137, 131, 162, 137, 133, 133, 124, 151, 190, 191, + 151, 130, 162, 130, 162, 151, 162, 162, 162, 162, + 151, 162, 163, 130, 162, 130, 162, 162, 130, 162, + 156, 132, 156, 162, 132, 156, 132, 124, 133, 132, + 128, 137, 162, 125, 136, 124, 170, 163, 125, 163, + 125, 136, 124, 170, 163, 165, 124, 124, 160, 161, + 129, 153, 137, 128, 137, 125, 125, 126, 126, 126, + 133, 163, 132, 132, 162, 156, 108, 173, 174, 136, + 133, 133, 133, 133, 133, 126, 130, 188, 162, 163, + 136, 136, 134, 137, 191, 137, 137, 154, 163, 154, + 163, 137, 163, 163, 163, 163, 137, 163, 154, 163, + 154, 163, 163, 154, 163, 162, 154, 188, 162, 163, + 154, 162, 154, 163, 162, 154, 126, 127, 163, 163, + 128, 170, 128, 133, 137, 128, 128, 170, 128, 133, + 137, 134, 134, 153, 137, 160, 129, 125, 133, 133, + 128, 133, 128, 128, 154, 154, 162, 155, 110, 137, + 174, 151, 163, 163, 163, 162, 162, 150, 129, 163, + 6, 6, 131, 131, 131, 131, 131, 163, 133, 80, + 163, 133, 163, 133, 163, 133, 124, 137, 125, 136, + 163, 124, 124, 137, 125, 136, 163, 188, 188, 6, + 153, 126, 126, 126, 133, 133, 163, 138, 138, 137, + 163, 163, 131, 136, 136, 162, 162, 162, 162, 162, + 162, 132, 162, 163, 162, 128, 133, 163, 128, 170, + 128, 128, 133, 163, 128, 170, 136, 133, 133, 133, + 151, 137, 151, 129, 151, 151, 163, 163, 163, 163, + 163, 163, 124, 163, 163, 124, 163, 124, 137, 124, + 124, 163, 124, 137, 161, 137, 137, 137, 133, 128, + 133, 128, 133, 163, 133, 133, 128, 133, 163, 137, + 163, 124, 163, 124, 163, 163, 163, 124, 163, 133, + 133, 133, 163, 163, 163 }; /* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */ static const grib_yytype_uint8 grib_yyr1[] = { - 0, 144, 145, 145, 145, 145, 145, 145, 146, 147, - 147, 147, 147, 148, 148, 149, 149, 150, 150, 150, - 150, 151, 151, 151, 151, 151, 151, 151, 151, 151, - 152, 152, 153, 153, 154, 154, 155, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 157, 157, 157, 157, 158, 158, 158, 159, 159, - 160, 160, 161, 161, 162, 162, 163, 163, 164, 164, - 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, - 164, 164, 165, 166, 167, 168, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, - 168, 168, 169, 169, 170, 170, 171, 171, 172, 172, - 173, 174, 174, 174, 175, 175, 175, 175, 176, 176, - 177, 177, 178, 178, 179, 179, 179, 179, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 181, 181, 182, - 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, - 182, 183, 183, 183, 184, 184, 184, 184, 184, 184, - 184, 184, 184, 185, 185, 186, 186, 187, 188, 188, - 189, 189, 190, 190, 191, 192, 193, 193 + 0, 145, 146, 146, 146, 146, 146, 146, 147, 148, + 148, 148, 148, 149, 149, 150, 150, 151, 151, 151, + 151, 152, 152, 152, 152, 152, 152, 152, 152, 152, + 153, 153, 154, 154, 155, 155, 156, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, + 157, 158, 158, 158, 158, 159, 159, 159, 160, 160, + 161, 161, 162, 162, 163, 163, 164, 164, 165, 165, + 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, + 165, 165, 166, 167, 168, 169, 169, 169, 169, 169, + 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, + 169, 169, 170, 170, 171, 171, 172, 172, 173, 173, + 174, 175, 175, 175, 176, 176, 176, 176, 177, 177, + 178, 178, 179, 179, 180, 180, 180, 180, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 182, 182, 183, + 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, + 183, 184, 184, 184, 185, 185, 185, 185, 185, 185, + 185, 185, 185, 185, 186, 186, 187, 187, 188, 189, + 189, 190, 190, 191, 191, 192, 193, 194, 194 }; /* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */ @@ -1886,8 +1899,8 @@ static const grib_yytype_int8 grib_yyr2[] = 1, 1, 1, 3, 2, 3, 4, 3, 1, 3, 3, 3, 3, 3, 1, 4, 6, 6, 6, 8, 4, 3, 3, 1, 3, 3, 3, 3, 3, 3, - 3, 2, 1, 3, 1, 3, 1, 1, 1, 1, - 4, 2, 1, 2, 1, 7, 1, 2 + 3, 3, 2, 1, 3, 1, 3, 1, 1, 1, + 1, 4, 2, 1, 2, 1, 7, 1, 2 }; @@ -2351,249 +2364,249 @@ grib_yyparse (void) switch (grib_yyn) { case 2: /* all: empty */ -#line 262 "griby.y" +#line 263 "griby.y" { grib_parser_all_actions = 0;grib_parser_concept=0; grib_parser_hash_array=0;grib_parser_rules=0; } -#line 2358 "y.tab.c" +#line 2371 "y.tab.c" break; case 3: /* all: concept_list */ -#line 264 "griby.y" +#line 265 "griby.y" { grib_parser_concept = reverse_concept((grib_yyvsp[0].concept_value)); } -#line 2364 "y.tab.c" +#line 2377 "y.tab.c" break; case 4: /* all: hash_array_list */ -#line 265 "griby.y" +#line 266 "griby.y" { grib_parser_hash_array = reverse_hash_array((grib_yyvsp[0].hash_array_value)); } -#line 2370 "y.tab.c" +#line 2383 "y.tab.c" break; case 5: /* all: instructions */ -#line 266 "griby.y" +#line 267 "griby.y" { grib_parser_all_actions = (grib_yyvsp[0].act); } -#line 2376 "y.tab.c" +#line 2389 "y.tab.c" break; case 6: /* all: rules */ -#line 267 "griby.y" +#line 268 "griby.y" { grib_parser_rules = (grib_yyvsp[0].rules); } -#line 2382 "y.tab.c" +#line 2395 "y.tab.c" break; case 7: /* all: error */ -#line 269 "griby.y" +#line 270 "griby.y" { grib_parser_all_actions = 0; grib_parser_concept=0; grib_parser_hash_array=0; grib_parser_rules=0; } -#line 2389 "y.tab.c" +#line 2402 "y.tab.c" break; case 9: /* dvalues: FLOAT */ -#line 276 "griby.y" +#line 277 "griby.y" { (grib_yyval.dvalue)=grib_darray_push(grib_parser_context,0,(grib_yyvsp[0].dval));} -#line 2395 "y.tab.c" +#line 2408 "y.tab.c" break; case 10: /* dvalues: dvalues ',' FLOAT */ -#line 277 "griby.y" +#line 278 "griby.y" { (grib_yyval.dvalue)=grib_darray_push(grib_parser_context,(grib_yyvsp[-2].dvalue),(grib_yyvsp[0].dval));} -#line 2401 "y.tab.c" +#line 2414 "y.tab.c" break; case 11: /* dvalues: INTEGER */ -#line 278 "griby.y" +#line 279 "griby.y" { (grib_yyval.dvalue)=grib_darray_push(grib_parser_context,0,(grib_yyvsp[0].lval));} -#line 2407 "y.tab.c" +#line 2420 "y.tab.c" break; case 12: /* dvalues: dvalues ',' INTEGER */ -#line 279 "griby.y" +#line 280 "griby.y" { (grib_yyval.dvalue)=grib_darray_push(grib_parser_context,(grib_yyvsp[-2].dvalue),(grib_yyvsp[0].lval));} -#line 2413 "y.tab.c" +#line 2426 "y.tab.c" break; case 13: /* svalues: STRING */ -#line 282 "griby.y" +#line 283 "griby.y" { (grib_yyval.svalue)=grib_sarray_push(grib_parser_context,0,(grib_yyvsp[0].str));} -#line 2419 "y.tab.c" +#line 2432 "y.tab.c" break; case 14: /* svalues: svalues ',' STRING */ -#line 283 "griby.y" +#line 284 "griby.y" { (grib_yyval.svalue)=grib_sarray_push(grib_parser_context,(grib_yyvsp[-2].svalue),(grib_yyvsp[0].str));} -#line 2425 "y.tab.c" +#line 2438 "y.tab.c" break; case 15: /* integer_array: INTEGER */ -#line 287 "griby.y" +#line 288 "griby.y" { (grib_yyval.ivalue)=grib_iarray_push(0,(grib_yyvsp[0].lval));} -#line 2431 "y.tab.c" +#line 2444 "y.tab.c" break; case 16: /* integer_array: integer_array ',' INTEGER */ -#line 288 "griby.y" +#line 289 "griby.y" { (grib_yyval.ivalue)=grib_iarray_push((grib_yyvsp[-2].ivalue),(grib_yyvsp[0].lval));} -#line 2437 "y.tab.c" +#line 2450 "y.tab.c" break; case 18: /* instructions: instruction instructions */ -#line 292 "griby.y" +#line 293 "griby.y" { (grib_yyvsp[-1].act)->next = (grib_yyvsp[0].act); (grib_yyval.act) = (grib_yyvsp[-1].act); } -#line 2443 "y.tab.c" +#line 2456 "y.tab.c" break; case 19: /* instructions: instruction ';' instructions */ -#line 293 "griby.y" +#line 294 "griby.y" { (grib_yyvsp[-2].act)->next = (grib_yyvsp[0].act); (grib_yyval.act) = (grib_yyvsp[-2].act); } -#line 2449 "y.tab.c" +#line 2462 "y.tab.c" break; case 20: /* instructions: instruction ';' */ -#line 294 "griby.y" +#line 295 "griby.y" { (grib_yyval.act) = (grib_yyvsp[-1].act);} -#line 2455 "y.tab.c" +#line 2468 "y.tab.c" break; case 32: /* argument_list: empty */ -#line 313 "griby.y" +#line 314 "griby.y" { (grib_yyval.explist) = 0; } -#line 2461 "y.tab.c" +#line 2474 "y.tab.c" break; case 35: /* arguments: argument ',' arguments */ -#line 318 "griby.y" +#line 319 "griby.y" { (grib_yyvsp[-2].explist)->next = (grib_yyvsp[0].explist); (grib_yyval.explist) = (grib_yyvsp[-2].explist); } -#line 2467 "y.tab.c" +#line 2480 "y.tab.c" break; case 36: /* argument: expression */ -#line 321 "griby.y" +#line 322 "griby.y" { (grib_yyval.explist) = grib_arguments_new(grib_parser_context,(grib_yyvsp[0].exp),NULL); } -#line 2473 "y.tab.c" +#line 2486 "y.tab.c" break; case 37: /* simple: UNSIGNED '[' INTEGER ']' IDENT default flags */ -#line 326 "griby.y" +#line 327 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"unsigned",(grib_yyvsp[-4].lval),NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2479 "y.tab.c" +#line 2492 "y.tab.c" break; case 38: /* simple: UNSIGNED '[' INTEGER ']' IDENT '[' argument_list ']' default flags */ -#line 329 "griby.y" +#line 330 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"unsigned",(grib_yyvsp[-7].lval),(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2485 "y.tab.c" +#line 2498 "y.tab.c" break; case 39: /* simple: UNSIGNED '(' INTEGER ')' IDENT default flags */ -#line 332 "griby.y" +#line 333 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"unsigned_bits",(grib_yyvsp[-4].lval),NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2491 "y.tab.c" +#line 2504 "y.tab.c" break; case 40: /* simple: UNSIGNED '(' INTEGER ')' IDENT '[' argument_list ']' default flags */ -#line 335 "griby.y" +#line 336 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"unsigned_bits",(grib_yyvsp[-7].lval),(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2497 "y.tab.c" +#line 2510 "y.tab.c" break; case 41: /* simple: ASCII '[' INTEGER ']' IDENT default flags */ -#line 338 "griby.y" +#line 339 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"ascii",(grib_yyvsp[-4].lval),NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2503 "y.tab.c" +#line 2516 "y.tab.c" break; case 42: /* simple: GROUP IDENT default flags */ -#line 341 "griby.y" +#line 342 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"group",0,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2509 "y.tab.c" +#line 2522 "y.tab.c" break; case 43: /* simple: GROUP IDENT '(' argument_list ')' default flags */ -#line 344 "griby.y" +#line 345 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"group",0,(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2515 "y.tab.c" +#line 2528 "y.tab.c" break; case 44: /* simple: IDENT '=' TO_INTEGER '(' argument_list ')' flags */ -#line 347 "griby.y" +#line 348 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-6].str),"to_integer",0,(grib_yyvsp[-2].explist),0,(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-6].str)); } -#line 2521 "y.tab.c" +#line 2534 "y.tab.c" break; case 45: /* simple: IDENT '=' SEX2DEC '(' argument_list ')' flags */ -#line 350 "griby.y" +#line 351 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-6].str),"sexagesimal2decimal",0,(grib_yyvsp[-2].explist),0,(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-6].str)); } -#line 2527 "y.tab.c" +#line 2540 "y.tab.c" break; case 46: /* simple: IDENT '=' TO_STRING '(' argument_list ')' flags */ -#line 353 "griby.y" +#line 354 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-6].str),"to_string",0,(grib_yyvsp[-2].explist),0,(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-6].str)); } -#line 2533 "y.tab.c" +#line 2546 "y.tab.c" break; case 47: /* simple: NON_ALPHA IDENT default flags */ -#line 356 "griby.y" +#line 357 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"non_alpha",0,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2539 "y.tab.c" +#line 2552 "y.tab.c" break; case 48: /* simple: ASCII '[' INTEGER ']' STRING default flags */ -#line 360 "griby.y" +#line 361 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"ascii",(grib_yyvsp[-4].lval),NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2545 "y.tab.c" +#line 2558 "y.tab.c" break; case 49: /* simple: BYTE '[' INTEGER ']' IDENT default flags */ -#line 363 "griby.y" +#line 364 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"bytes",(grib_yyvsp[-4].lval),NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2551 "y.tab.c" +#line 2564 "y.tab.c" break; case 50: /* simple: BYTE '[' INTEGER ']' IDENT '[' argument_list ']' default flags */ -#line 366 "griby.y" +#line 367 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"bytes",(grib_yyvsp[-7].lval),(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2557 "y.tab.c" +#line 2570 "y.tab.c" break; case 51: /* simple: KSEC1EXPVER '[' INTEGER ']' IDENT default flags */ -#line 369 "griby.y" +#line 370 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"ksec1expver",(grib_yyvsp[-4].lval),NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2563 "y.tab.c" +#line 2576 "y.tab.c" break; case 52: /* simple: SIGNED '[' INTEGER ']' IDENT default flags */ -#line 372 "griby.y" +#line 373 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"signed",(grib_yyvsp[-4].lval),NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2569 "y.tab.c" +#line 2582 "y.tab.c" break; case 53: /* simple: SIGNED '[' INTEGER ']' IDENT '[' argument_list ']' default flags */ -#line 375 "griby.y" +#line 376 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"signed",(grib_yyvsp[-7].lval),(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2575 "y.tab.c" +#line 2588 "y.tab.c" break; case 54: /* simple: SIGNED '(' INTEGER ')' IDENT default flags */ -#line 378 "griby.y" +#line 379 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"signed_bits",(grib_yyvsp[-4].lval),NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2581 "y.tab.c" +#line 2594 "y.tab.c" break; case 55: /* simple: SIGNED '(' INTEGER ')' IDENT '[' argument_list ']' default flags */ -#line 381 "griby.y" +#line 382 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"signed_bits",(grib_yyvsp[-7].lval),(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2587 "y.tab.c" +#line 2600 "y.tab.c" break; case 56: /* simple: CODETABLE '[' INTEGER ']' IDENT argument default flags */ -#line 384 "griby.y" +#line 385 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-3].str),"codetable",(grib_yyvsp[-5].lval), (grib_yyvsp[-2].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-3].str)); } -#line 2593 "y.tab.c" +#line 2606 "y.tab.c" break; case 57: /* simple: CODETABLE '[' IDENT ']' IDENT argument default flags */ -#line 387 "griby.y" +#line 388 "griby.y" { /* ECC-485: Set length to 0 and prepend the new argument */ grib_arguments* a = grib_arguments_new(grib_parser_context, new_accessor_expression(grib_parser_context,(grib_yyvsp[-5].str),0,0),NULL); @@ -2603,358 +2616,358 @@ grib_yyparse (void) (grib_yyvsp[-1].explist), (grib_yyvsp[0].lval), NULL, NULL); free((grib_yyvsp[-3].str)); } -#line 2607 "y.tab.c" +#line 2620 "y.tab.c" break; case 58: /* simple: CODETABLE '[' INTEGER ']' IDENT argument default SET '(' IDENT ')' flags */ -#line 398 "griby.y" +#line 399 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-7].str),"codetable",(grib_yyvsp[-9].lval), (grib_yyvsp[-6].explist),(grib_yyvsp[-5].explist),(grib_yyvsp[0].lval),NULL,(grib_yyvsp[-2].str)); free((grib_yyvsp[-7].str));free((grib_yyvsp[-2].str)); } -#line 2614 "y.tab.c" +#line 2627 "y.tab.c" break; case 59: /* simple: CODETABLE '[' INTEGER ']' IDENT '(' argument_list ')' default flags */ -#line 402 "griby.y" +#line 403 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"codetable",(grib_yyvsp[-7].lval), (grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2620 "y.tab.c" +#line 2633 "y.tab.c" break; case 60: /* simple: SMART_TABLE IDENT '(' argument_list ')' default flags */ -#line 405 "griby.y" +#line 406 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"smart_table",0,(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2626 "y.tab.c" +#line 2639 "y.tab.c" break; case 61: /* simple: IDENT '=' DICTIONARY '(' argument_list ')' default flags */ -#line 408 "griby.y" +#line 409 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-7].str),"dictionary",0,(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-7].str)); } -#line 2632 "y.tab.c" +#line 2645 "y.tab.c" break; case 62: /* simple: IDENT '=' GETENV '(' argument_list ')' default flags */ -#line 411 "griby.y" +#line 412 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-7].str),"getenv",0,(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-7].str)); } -#line 2638 "y.tab.c" +#line 2651 "y.tab.c" break; case 63: /* simple: COMPLEX_CODETABLE '[' INTEGER ']' IDENT argument default flags */ -#line 414 "griby.y" +#line 415 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-3].str),"complex_codetable",(grib_yyvsp[-5].lval), (grib_yyvsp[-2].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-3].str)); } -#line 2644 "y.tab.c" +#line 2657 "y.tab.c" break; case 64: /* simple: COMPLEX_CODETABLE '[' INTEGER ']' IDENT '(' argument_list ')' default flags */ -#line 417 "griby.y" +#line 418 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"complex_codetable",(grib_yyvsp[-7].lval), (grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2650 "y.tab.c" +#line 2663 "y.tab.c" break; case 65: /* simple: FLAG '[' INTEGER ']' IDENT argument default flags */ -#line 420 "griby.y" +#line 421 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-3].str),"codeflag",(grib_yyvsp[-5].lval), (grib_yyvsp[-2].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-3].str)); } -#line 2656 "y.tab.c" +#line 2669 "y.tab.c" break; case 66: /* simple: LOOKUP '[' INTEGER ']' IDENT '(' argument_list ')' flags */ -#line 423 "griby.y" +#line 424 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-4].str),"lookup",(grib_yyvsp[-6].lval),(grib_yyvsp[-2].explist),NULL,(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-4].str)); } -#line 2662 "y.tab.c" +#line 2675 "y.tab.c" break; case 67: /* simple: FLAGBIT IDENT '(' argument_list ')' default flags */ -#line 426 "griby.y" +#line 427 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"bit",0,(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2668 "y.tab.c" +#line 2681 "y.tab.c" break; case 68: /* simple: LABEL IDENT */ -#line 429 "griby.y" +#line 430 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[0].str),"label",0,NULL,NULL,0,NULL,NULL); free((grib_yyvsp[0].str)); } -#line 2674 "y.tab.c" +#line 2687 "y.tab.c" break; case 69: /* simple: LABEL STRING */ -#line 432 "griby.y" +#line 433 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[0].str),"label",0,NULL,NULL,0,NULL,NULL); free((grib_yyvsp[0].str)); } -#line 2680 "y.tab.c" +#line 2693 "y.tab.c" break; case 70: /* simple: IBMFLOAT IDENT default flags */ -#line 435 "griby.y" +#line 436 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"ibmfloat",4,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2686 "y.tab.c" +#line 2699 "y.tab.c" break; case 71: /* simple: INT8 IDENT default flags */ -#line 439 "griby.y" +#line 440 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"int8",1,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2692 "y.tab.c" +#line 2705 "y.tab.c" break; case 72: /* simple: UINT8 IDENT default flags */ -#line 442 "griby.y" +#line 443 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"uint8",1,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2698 "y.tab.c" +#line 2711 "y.tab.c" break; case 73: /* simple: INT16 IDENT default flags */ -#line 445 "griby.y" +#line 446 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"int16",2,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2704 "y.tab.c" +#line 2717 "y.tab.c" break; case 74: /* simple: UINT16 IDENT default flags */ -#line 448 "griby.y" +#line 449 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"uint16",2,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2710 "y.tab.c" +#line 2723 "y.tab.c" break; case 75: /* simple: INT16_LITTLE_ENDIAN IDENT default flags */ -#line 451 "griby.y" +#line 452 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"int16_little_endian",2,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2716 "y.tab.c" +#line 2729 "y.tab.c" break; case 76: /* simple: UINT16_LITTLE_ENDIAN IDENT default flags */ -#line 454 "griby.y" +#line 455 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"uint16_little_endian",2,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2722 "y.tab.c" +#line 2735 "y.tab.c" break; case 77: /* simple: INT32 IDENT default flags */ -#line 457 "griby.y" +#line 458 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"int32",4,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2728 "y.tab.c" +#line 2741 "y.tab.c" break; case 78: /* simple: UINT32 IDENT default flags */ -#line 460 "griby.y" +#line 461 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"uint32",4,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2734 "y.tab.c" +#line 2747 "y.tab.c" break; case 79: /* simple: INT32_LITTLE_ENDIAN IDENT default flags */ -#line 463 "griby.y" +#line 464 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"int32_little_endian",4,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2740 "y.tab.c" +#line 2753 "y.tab.c" break; case 80: /* simple: UINT32_LITTLE_ENDIAN IDENT default flags */ -#line 466 "griby.y" +#line 467 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"uint32_little_endian",4,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2746 "y.tab.c" +#line 2759 "y.tab.c" break; case 81: /* simple: INT64 IDENT default flags */ -#line 469 "griby.y" +#line 470 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"int64",8,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2752 "y.tab.c" +#line 2765 "y.tab.c" break; case 82: /* simple: UINT64 IDENT default flags */ -#line 472 "griby.y" +#line 473 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"uint64",8,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2758 "y.tab.c" +#line 2771 "y.tab.c" break; case 83: /* simple: INT64_LITTLE_ENDIAN IDENT default flags */ -#line 475 "griby.y" +#line 476 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"int64_little_endian",8,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2764 "y.tab.c" +#line 2777 "y.tab.c" break; case 84: /* simple: UINT64_LITTLE_ENDIAN IDENT default flags */ -#line 478 "griby.y" +#line 479 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"uint64_little_endian",8,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-2].str)); } -#line 2770 "y.tab.c" +#line 2783 "y.tab.c" break; case 85: /* simple: BLOB IDENT '[' argument_list ']' default flags */ -#line 481 "griby.y" +#line 482 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"blob",0,(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-5].str)); } -#line 2776 "y.tab.c" +#line 2789 "y.tab.c" break; case 86: /* simple: IBMFLOAT IDENT '.' IDENT default flags */ -#line 485 "griby.y" +#line 486 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"ibmfloat",4,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),(grib_yyvsp[-4].str),NULL);free((grib_yyvsp[-2].str)); free((grib_yyvsp[-4].str)); } -#line 2782 "y.tab.c" +#line 2795 "y.tab.c" break; case 87: /* simple: IBMFLOAT IDENT '[' argument ']' default flags */ -#line 488 "griby.y" +#line 489 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"ibmfloat",4,(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-5].str)); } -#line 2788 "y.tab.c" +#line 2801 "y.tab.c" break; case 88: /* simple: POS IDENT */ -#line 491 "griby.y" +#line 492 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[0].str),"position",0,NULL,NULL,0,NULL,NULL); free((grib_yyvsp[0].str)); } -#line 2794 "y.tab.c" +#line 2807 "y.tab.c" break; case 89: /* simple: INTCONST IDENT '=' argument flags */ -#line 494 "griby.y" +#line 495 "griby.y" { (grib_yyval.act) = grib_action_create_variable(grib_parser_context,(grib_yyvsp[-3].str),"constant",0,(grib_yyvsp[-1].explist),NULL,(grib_yyvsp[0].lval),NULL);free((grib_yyvsp[-3].str)); } -#line 2800 "y.tab.c" +#line 2813 "y.tab.c" break; case 90: /* simple: TRANS IDENT '=' argument flags */ -#line 497 "griby.y" +#line 498 "griby.y" { (grib_yyval.act) = grib_action_create_variable(grib_parser_context,(grib_yyvsp[-3].str),"transient",0,(grib_yyvsp[-1].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL); free((grib_yyvsp[-3].str)); } -#line 2806 "y.tab.c" +#line 2819 "y.tab.c" break; case 91: /* simple: TRANS IDENT '=' '{' dvalues '}' flags */ -#line 499 "griby.y" +#line 500 "griby.y" { (grib_yyval.act) = grib_action_create_transient_darray(grib_parser_context,(grib_yyvsp[-5].str),(grib_yyvsp[-2].dvalue),(grib_yyvsp[0].lval)); free((grib_yyvsp[-5].str)); } -#line 2812 "y.tab.c" +#line 2825 "y.tab.c" break; case 92: /* simple: FLOAT IDENT default flags */ -#line 502 "griby.y" +#line 503 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"ieeefloat",4,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-2].str)); } -#line 2818 "y.tab.c" +#line 2831 "y.tab.c" break; case 93: /* simple: FLOAT IDENT '.' IDENT default flags */ -#line 505 "griby.y" +#line 506 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-2].str),"ieeefloat",4,NULL,(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),(grib_yyvsp[-4].str),NULL); free((grib_yyvsp[-2].str));free((grib_yyvsp[-4].str));} -#line 2824 "y.tab.c" +#line 2837 "y.tab.c" break; case 94: /* simple: FLOAT IDENT '[' argument ']' default flags */ -#line 508 "griby.y" +#line 509 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-5].str),"ieeefloat",4,(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL,NULL);free((grib_yyvsp[-5].str)); } -#line 2830 "y.tab.c" +#line 2843 "y.tab.c" break; case 95: /* simple: G1_HALF_BYTE IDENT */ -#line 511 "griby.y" +#line 512 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[0].str),"g1_half_byte_codeflag",0,NULL,NULL,0,NULL,NULL);free((grib_yyvsp[0].str)); } -#line 2836 "y.tab.c" +#line 2849 "y.tab.c" break; case 96: /* simple: SECTION_LENGTH '[' INTEGER ']' IDENT default */ -#line 514 "griby.y" +#line 515 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-1].str),"section_length",(grib_yyvsp[-3].lval),NULL,(grib_yyvsp[0].explist),0,NULL,NULL);free((grib_yyvsp[-1].str)); } -#line 2842 "y.tab.c" +#line 2855 "y.tab.c" break; case 97: /* simple: G1_MESSAGE_LENGTH '[' INTEGER ']' IDENT '(' argument_list ')' */ -#line 517 "griby.y" +#line 518 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-3].str),"g1_message_length",(grib_yyvsp[-5].lval),(grib_yyvsp[-1].explist),NULL,0,NULL,NULL);free((grib_yyvsp[-3].str)); } -#line 2848 "y.tab.c" +#line 2861 "y.tab.c" break; case 98: /* simple: G1_SECTION4_LENGTH '[' INTEGER ']' IDENT '(' argument_list ')' */ -#line 520 "griby.y" +#line 521 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-3].str),"g1_section4_length",(grib_yyvsp[-5].lval),(grib_yyvsp[-1].explist),NULL,0,NULL,NULL);free((grib_yyvsp[-3].str)); } -#line 2854 "y.tab.c" +#line 2867 "y.tab.c" break; case 99: /* simple: KSEC IDENT argument */ -#line 523 "griby.y" +#line 524 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-1].str),"ksec",0,(grib_yyvsp[0].explist),NULL,0,NULL,NULL);free((grib_yyvsp[-1].str)); } -#line 2860 "y.tab.c" +#line 2873 "y.tab.c" break; case 100: /* simple: PAD IDENT '(' argument_list ')' */ -#line 526 "griby.y" +#line 527 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-3].str),"pad",0,(grib_yyvsp[-1].explist),0,0,NULL,NULL); free((grib_yyvsp[-3].str)); } -#line 2866 "y.tab.c" +#line 2879 "y.tab.c" break; case 101: /* simple: PADTO IDENT '(' argument_list ')' */ -#line 529 "griby.y" +#line 530 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-3].str),"padto",0,(grib_yyvsp[-1].explist),0,0,NULL,NULL); free((grib_yyvsp[-3].str)); } -#line 2872 "y.tab.c" +#line 2885 "y.tab.c" break; case 102: /* simple: PADTOEVEN IDENT '(' argument_list ')' */ -#line 532 "griby.y" +#line 533 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-3].str),"padtoeven",0,(grib_yyvsp[-1].explist),0,0,NULL,NULL); free((grib_yyvsp[-3].str)); } -#line 2878 "y.tab.c" +#line 2891 "y.tab.c" break; case 103: /* simple: PADTOMULTIPLE IDENT '(' argument_list ')' */ -#line 535 "griby.y" +#line 536 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-3].str),"padtomultiple",0,(grib_yyvsp[-1].explist),0,0,NULL,NULL); free((grib_yyvsp[-3].str)); } -#line 2884 "y.tab.c" +#line 2897 "y.tab.c" break; case 104: /* simple: MESSAGE '[' INTEGER ']' IDENT flags */ -#line 538 "griby.y" +#line 539 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-1].str),"message",(grib_yyvsp[-3].lval),0,0,(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-1].str)); } -#line 2890 "y.tab.c" +#line 2903 "y.tab.c" break; case 105: /* simple: MESSAGE_COPY IDENT flags */ -#line 541 "griby.y" +#line 542 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-1].str),"message_copy",0,0,0,(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-1].str)); } -#line 2896 "y.tab.c" +#line 2909 "y.tab.c" break; case 106: /* simple: SECTION_PADDING IDENT flags */ -#line 544 "griby.y" +#line 545 "griby.y" { (grib_yyval.act) = grib_action_create_gen(grib_parser_context,(grib_yyvsp[-1].str),"section_padding",0,0,0,(grib_yyvsp[0].lval),NULL,NULL); free((grib_yyvsp[-1].str)); } -#line 2902 "y.tab.c" +#line 2915 "y.tab.c" break; case 107: /* simple: TEMPLATE IDENT STRING */ -#line 546 "griby.y" +#line 547 "griby.y" { (grib_yyval.act) = grib_action_create_template(grib_parser_context,0,(grib_yyvsp[-1].str),(grib_yyvsp[0].str)); free((grib_yyvsp[-1].str)); free((grib_yyvsp[0].str));} -#line 2908 "y.tab.c" +#line 2921 "y.tab.c" break; case 108: /* simple: TEMPLATE_NOFAIL IDENT STRING */ -#line 548 "griby.y" +#line 549 "griby.y" { (grib_yyval.act) = grib_action_create_template(grib_parser_context,1,(grib_yyvsp[-1].str),(grib_yyvsp[0].str)); free((grib_yyvsp[-1].str)); free((grib_yyvsp[0].str));} -#line 2914 "y.tab.c" +#line 2927 "y.tab.c" break; case 109: /* simple: ALIAS IDENT '=' IDENT flags */ -#line 551 "griby.y" +#line 552 "griby.y" { (grib_yyval.act) = grib_action_create_alias(grib_parser_context,(grib_yyvsp[-3].str),(grib_yyvsp[-1].str),NULL,(grib_yyvsp[0].lval)); free((grib_yyvsp[-3].str)); free((grib_yyvsp[-1].str)); } -#line 2920 "y.tab.c" +#line 2933 "y.tab.c" break; case 110: /* simple: UNALIAS IDENT */ -#line 554 "griby.y" +#line 555 "griby.y" { (grib_yyval.act) = grib_action_create_alias(grib_parser_context,(grib_yyvsp[0].str),NULL,NULL,0); free((grib_yyvsp[0].str)); } -#line 2926 "y.tab.c" +#line 2939 "y.tab.c" break; case 111: /* simple: ALIAS IDENT '.' IDENT '=' IDENT flags */ -#line 557 "griby.y" +#line 558 "griby.y" { (grib_yyval.act) = grib_action_create_alias(grib_parser_context,(grib_yyvsp[-3].str),(grib_yyvsp[-1].str),(grib_yyvsp[-5].str),(grib_yyvsp[0].lval)); free((grib_yyvsp[-5].str)); free((grib_yyvsp[-3].str)); free((grib_yyvsp[-1].str)); } -#line 2934 "y.tab.c" +#line 2947 "y.tab.c" break; case 112: /* simple: UNALIAS IDENT '.' IDENT */ -#line 561 "griby.y" +#line 562 "griby.y" { (grib_yyval.act) = grib_action_create_alias(grib_parser_context,(grib_yyvsp[0].str),NULL,(grib_yyvsp[-2].str),0); free((grib_yyvsp[-2].str)); free((grib_yyvsp[0].str)); } -#line 2942 "y.tab.c" +#line 2955 "y.tab.c" break; case 113: /* simple: META IDENT IDENT '(' argument_list ')' default flags */ -#line 565 "griby.y" +#line 566 "griby.y" { (grib_yyval.act) = grib_action_create_meta(grib_parser_context,(grib_yyvsp[-6].str),(grib_yyvsp[-5].str),(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),NULL); free((grib_yyvsp[-6].str));free((grib_yyvsp[-5].str));} -#line 2948 "y.tab.c" +#line 2961 "y.tab.c" break; case 114: /* simple: META IDENT '.' IDENT IDENT '(' argument_list ')' default flags */ -#line 568 "griby.y" +#line 569 "griby.y" { (grib_yyval.act) = grib_action_create_meta(grib_parser_context,(grib_yyvsp[-6].str),(grib_yyvsp[-5].str),(grib_yyvsp[-3].explist),(grib_yyvsp[-1].explist),(grib_yyvsp[0].lval),(grib_yyvsp[-8].str)); free((grib_yyvsp[-6].str));free((grib_yyvsp[-5].str));free((grib_yyvsp[-8].str));} -#line 2954 "y.tab.c" +#line 2967 "y.tab.c" break; case 115: /* simple: ITERATOR IDENT '(' argument_list ')' */ -#line 571 "griby.y" +#line 572 "griby.y" { grib_arguments* a = grib_arguments_new( grib_parser_context, @@ -2966,11 +2979,11 @@ grib_yyparse (void) "ITERATOR","iterator",a,NULL, GRIB_ACCESSOR_FLAG_HIDDEN|GRIB_ACCESSOR_FLAG_READ_ONLY,NULL); free((grib_yyvsp[-3].str)); } -#line 2970 "y.tab.c" +#line 2983 "y.tab.c" break; case 116: /* simple: NEAREST IDENT '(' argument_list ')' */ -#line 583 "griby.y" +#line 584 "griby.y" { grib_arguments* a = grib_arguments_new( grib_parser_context, @@ -2982,11 +2995,11 @@ grib_yyparse (void) "NEAREST","nearest",a,NULL, GRIB_ACCESSOR_FLAG_HIDDEN|GRIB_ACCESSOR_FLAG_READ_ONLY,NULL); free((grib_yyvsp[-3].str)); } -#line 2986 "y.tab.c" +#line 2999 "y.tab.c" break; case 117: /* simple: BOX IDENT '(' argument_list ')' */ -#line 595 "griby.y" +#line 596 "griby.y" { grib_arguments* a = grib_arguments_new( grib_parser_context, @@ -2998,809 +3011,815 @@ grib_yyparse (void) "BOX","box",a,NULL, GRIB_ACCESSOR_FLAG_HIDDEN|GRIB_ACCESSOR_FLAG_READ_ONLY,NULL); free((grib_yyvsp[-3].str)); } -#line 3002 "y.tab.c" +#line 3015 "y.tab.c" break; case 118: /* simple: EXPORT IDENT '(' argument_list ')' */ -#line 607 "griby.y" +#line 608 "griby.y" { (grib_yyval.act) = grib_action_create_put(grib_parser_context,(grib_yyvsp[-3].str),(grib_yyvsp[-1].explist));free((grib_yyvsp[-3].str));} -#line 3008 "y.tab.c" +#line 3021 "y.tab.c" break; case 119: /* simple: REMOVE argument_list */ -#line 610 "griby.y" +#line 611 "griby.y" { (grib_yyval.act) = grib_action_create_remove(grib_parser_context,(grib_yyvsp[0].explist));} -#line 3014 "y.tab.c" +#line 3027 "y.tab.c" break; case 120: /* simple: RENAME '(' IDENT ',' IDENT ')' */ -#line 612 "griby.y" +#line 613 "griby.y" { (grib_yyval.act) = grib_action_create_rename(grib_parser_context,(grib_yyvsp[-3].str),(grib_yyvsp[-1].str));free((grib_yyvsp[-3].str));free((grib_yyvsp[-1].str));} -#line 3020 "y.tab.c" +#line 3033 "y.tab.c" break; case 121: /* simple: ASSERT '(' expression ')' */ -#line 615 "griby.y" +#line 616 "griby.y" { (grib_yyval.act) = grib_action_create_assert(grib_parser_context,(grib_yyvsp[-1].exp));} -#line 3026 "y.tab.c" +#line 3039 "y.tab.c" break; case 122: /* simple: MODIFY IDENT flags */ -#line 618 "griby.y" +#line 619 "griby.y" { (grib_yyval.act) = grib_action_create_modify(grib_parser_context,(grib_yyvsp[-1].str),(grib_yyvsp[0].lval)); free((grib_yyvsp[-1].str));} -#line 3032 "y.tab.c" +#line 3045 "y.tab.c" break; case 123: /* simple: SET IDENT '=' MISSING */ -#line 620 "griby.y" +#line 621 "griby.y" { (grib_yyval.act) = grib_action_create_set_missing(grib_parser_context,(grib_yyvsp[-2].str)); free((grib_yyvsp[-2].str)); } -#line 3038 "y.tab.c" +#line 3051 "y.tab.c" break; case 124: /* simple: SET IDENT '=' expression */ -#line 621 "griby.y" +#line 622 "griby.y" { (grib_yyval.act) = grib_action_create_set(grib_parser_context,(grib_yyvsp[-2].str),(grib_yyvsp[0].exp),0); free((grib_yyvsp[-2].str)); } -#line 3044 "y.tab.c" +#line 3057 "y.tab.c" break; case 125: /* simple: SET IDENT '=' '{' dvalues '}' */ -#line 622 "griby.y" +#line 623 "griby.y" { (grib_yyval.act) = grib_action_create_set_darray(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-1].dvalue)); free((grib_yyvsp[-4].str)); } -#line 3050 "y.tab.c" +#line 3063 "y.tab.c" break; case 126: /* simple: SET IDENT '=' '{' svalues '}' */ -#line 623 "griby.y" +#line 624 "griby.y" { (grib_yyval.act) = grib_action_create_set_sarray(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-1].svalue)); free((grib_yyvsp[-4].str)); } -#line 3056 "y.tab.c" +#line 3069 "y.tab.c" break; case 127: /* simple: SET_NOFAIL IDENT '=' expression */ -#line 625 "griby.y" +#line 626 "griby.y" { (grib_yyval.act) = grib_action_create_set(grib_parser_context,(grib_yyvsp[-2].str),(grib_yyvsp[0].exp),1); free((grib_yyvsp[-2].str)); } -#line 3062 "y.tab.c" +#line 3075 "y.tab.c" break; case 128: /* simple: WRITE STRING */ -#line 628 "griby.y" +#line 629 "griby.y" { (grib_yyval.act) = grib_action_create_write(grib_parser_context,(grib_yyvsp[0].str),0,0); free((grib_yyvsp[0].str));} -#line 3068 "y.tab.c" +#line 3081 "y.tab.c" break; case 129: /* simple: WRITE */ -#line 629 "griby.y" +#line 630 "griby.y" { (grib_yyval.act) = grib_action_create_write(grib_parser_context,"",0,0); } -#line 3074 "y.tab.c" +#line 3087 "y.tab.c" break; case 130: /* simple: WRITE '(' INTEGER ')' STRING */ -#line 630 "griby.y" +#line 631 "griby.y" { (grib_yyval.act) = grib_action_create_write(grib_parser_context,(grib_yyvsp[0].str),0,(grib_yyvsp[-2].lval)); free((grib_yyvsp[0].str));} -#line 3080 "y.tab.c" +#line 3093 "y.tab.c" break; case 131: /* simple: WRITE '(' INTEGER ')' */ -#line 631 "griby.y" +#line 632 "griby.y" { (grib_yyval.act) = grib_action_create_write(grib_parser_context,"",0,(grib_yyvsp[-1].lval)); } -#line 3086 "y.tab.c" +#line 3099 "y.tab.c" break; case 132: /* simple: APPEND STRING */ -#line 632 "griby.y" +#line 633 "griby.y" { (grib_yyval.act) = grib_action_create_write(grib_parser_context,(grib_yyvsp[0].str),1,0); free((grib_yyvsp[0].str));} -#line 3092 "y.tab.c" +#line 3105 "y.tab.c" break; case 133: /* simple: APPEND */ -#line 633 "griby.y" +#line 634 "griby.y" { (grib_yyval.act) = grib_action_create_write(grib_parser_context,"",1,0); } -#line 3098 "y.tab.c" +#line 3111 "y.tab.c" break; case 134: /* simple: APPEND '(' INTEGER ')' STRING */ -#line 634 "griby.y" +#line 635 "griby.y" { (grib_yyval.act) = grib_action_create_write(grib_parser_context,(grib_yyvsp[0].str),1,(grib_yyvsp[-2].lval)); free((grib_yyvsp[0].str));} -#line 3104 "y.tab.c" +#line 3117 "y.tab.c" break; case 135: /* simple: APPEND '(' INTEGER ')' */ -#line 635 "griby.y" +#line 636 "griby.y" { (grib_yyval.act) = grib_action_create_write(grib_parser_context,"",1,(grib_yyvsp[-1].lval)); } -#line 3110 "y.tab.c" +#line 3123 "y.tab.c" break; case 136: /* simple: CLOSE '(' IDENT ')' */ -#line 637 "griby.y" +#line 638 "griby.y" { (grib_yyval.act) = grib_action_create_close(grib_parser_context,(grib_yyvsp[-1].str)); free((grib_yyvsp[-1].str));} -#line 3116 "y.tab.c" +#line 3129 "y.tab.c" break; case 137: /* simple: PRINT STRING */ -#line 638 "griby.y" +#line 639 "griby.y" { (grib_yyval.act) = grib_action_create_print(grib_parser_context,(grib_yyvsp[0].str),0); free((grib_yyvsp[0].str)); } -#line 3122 "y.tab.c" +#line 3135 "y.tab.c" break; case 138: /* simple: PRINT '(' STRING ')' STRING */ -#line 639 "griby.y" +#line 640 "griby.y" { (grib_yyval.act) = grib_action_create_print(grib_parser_context,(grib_yyvsp[0].str),(grib_yyvsp[-2].str)); free((grib_yyvsp[0].str)); free((grib_yyvsp[-2].str));} -#line 3128 "y.tab.c" +#line 3141 "y.tab.c" break; case 139: /* simple: PRINT '(' IDENT ')' STRING */ -#line 640 "griby.y" +#line 641 "griby.y" { (grib_yyval.act) = grib_action_create_print(grib_parser_context,(grib_yyvsp[0].str),(grib_yyvsp[-2].str)); free((grib_yyvsp[0].str)); free((grib_yyvsp[-2].str));} -#line 3134 "y.tab.c" +#line 3147 "y.tab.c" break; case 140: /* simple: PRINT */ -#line 641 "griby.y" +#line 642 "griby.y" { (grib_yyval.act) = grib_action_create_print(grib_parser_context,"",0); } -#line 3140 "y.tab.c" +#line 3153 "y.tab.c" break; case 141: /* if_block: IF '(' expression ')' '{' instructions '}' */ -#line 645 "griby.y" +#line 646 "griby.y" { (grib_yyval.act) = grib_action_create_if(grib_parser_context,(grib_yyvsp[-4].exp),(grib_yyvsp[-1].act),0,0,grib_yylineno,file_being_parsed()); } -#line 3146 "y.tab.c" +#line 3159 "y.tab.c" break; case 142: /* if_block: IF '(' expression ')' '{' instructions '}' ELSE '{' instructions '}' */ -#line 646 "griby.y" +#line 647 "griby.y" { (grib_yyval.act) = grib_action_create_if(grib_parser_context,(grib_yyvsp[-8].exp),(grib_yyvsp[-5].act),(grib_yyvsp[-1].act),0,grib_yylineno,file_being_parsed()); } -#line 3152 "y.tab.c" +#line 3165 "y.tab.c" break; case 143: /* if_block: IF_TRANSIENT '(' expression ')' '{' instructions '}' */ -#line 647 "griby.y" +#line 648 "griby.y" { (grib_yyval.act) = grib_action_create_if(grib_parser_context,(grib_yyvsp[-4].exp),(grib_yyvsp[-1].act),0,1,grib_yylineno,file_being_parsed()); } -#line 3158 "y.tab.c" +#line 3171 "y.tab.c" break; case 144: /* if_block: IF_TRANSIENT '(' expression ')' '{' instructions '}' ELSE '{' instructions '}' */ -#line 648 "griby.y" +#line 649 "griby.y" { (grib_yyval.act) = grib_action_create_if(grib_parser_context,(grib_yyvsp[-8].exp),(grib_yyvsp[-5].act),(grib_yyvsp[-1].act),1,grib_yylineno,file_being_parsed()); } -#line 3164 "y.tab.c" +#line 3177 "y.tab.c" break; case 145: /* when_block: WHEN '(' expression ')' set semi */ -#line 652 "griby.y" +#line 653 "griby.y" { (grib_yyval.act) = grib_action_create_when(grib_parser_context,(grib_yyvsp[-3].exp),(grib_yyvsp[-1].act),NULL); } -#line 3170 "y.tab.c" +#line 3183 "y.tab.c" break; case 146: /* when_block: WHEN '(' expression ')' '{' set_list '}' */ -#line 653 "griby.y" +#line 654 "griby.y" { (grib_yyval.act) = grib_action_create_when(grib_parser_context,(grib_yyvsp[-4].exp),(grib_yyvsp[-1].act),NULL); } -#line 3176 "y.tab.c" +#line 3189 "y.tab.c" break; case 147: /* when_block: WHEN '(' expression ')' '{' set_list '}' ELSE '{' set_list '}' */ -#line 654 "griby.y" +#line 655 "griby.y" { (grib_yyval.act) = grib_action_create_when(grib_parser_context,(grib_yyvsp[-8].exp),(grib_yyvsp[-5].act),(grib_yyvsp[-1].act)); } -#line 3182 "y.tab.c" +#line 3195 "y.tab.c" break; case 148: /* set: SET IDENT '=' expression */ -#line 657 "griby.y" +#line 658 "griby.y" { (grib_yyval.act) = grib_action_create_set(grib_parser_context,(grib_yyvsp[-2].str),(grib_yyvsp[0].exp),0); free((grib_yyvsp[-2].str)); } -#line 3188 "y.tab.c" +#line 3201 "y.tab.c" break; case 149: /* set: SET_NOFAIL IDENT '=' expression */ -#line 658 "griby.y" +#line 659 "griby.y" { (grib_yyval.act) = grib_action_create_set(grib_parser_context,(grib_yyvsp[-2].str),(grib_yyvsp[0].exp),1); free((grib_yyvsp[-2].str)); } -#line 3194 "y.tab.c" +#line 3207 "y.tab.c" break; case 151: /* set_list: set_list set semi */ -#line 662 "griby.y" +#line 663 "griby.y" { (grib_yyvsp[-2].act)->next = (grib_yyvsp[-1].act); (grib_yyval.act) = (grib_yyvsp[-2].act); } -#line 3200 "y.tab.c" +#line 3213 "y.tab.c" break; case 152: /* default: empty */ -#line 666 "griby.y" +#line 667 "griby.y" { (grib_yyval.explist) = NULL ;} -#line 3206 "y.tab.c" +#line 3219 "y.tab.c" break; case 153: /* default: '=' argument_list */ -#line 667 "griby.y" +#line 668 "griby.y" { (grib_yyval.explist) = (grib_yyvsp[0].explist) ;} -#line 3212 "y.tab.c" +#line 3225 "y.tab.c" break; case 154: /* flags: empty */ -#line 670 "griby.y" +#line 671 "griby.y" { (grib_yyval.lval) = 0 ; } -#line 3218 "y.tab.c" +#line 3231 "y.tab.c" break; case 155: /* flags: ':' flag_list */ -#line 671 "griby.y" +#line 672 "griby.y" { (grib_yyval.lval) = (grib_yyvsp[0].lval); } -#line 3224 "y.tab.c" +#line 3237 "y.tab.c" break; case 157: /* flag_list: flag_list ',' flag */ -#line 675 "griby.y" +#line 676 "griby.y" { (grib_yyval.lval) = (grib_yyvsp[-2].lval) | (grib_yyvsp[0].lval); } -#line 3230 "y.tab.c" +#line 3243 "y.tab.c" break; case 158: /* flag: READ_ONLY */ -#line 678 "griby.y" +#line 679 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_READ_ONLY; } -#line 3236 "y.tab.c" +#line 3249 "y.tab.c" break; case 159: /* flag: LOWERCASE */ -#line 679 "griby.y" +#line 680 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_LOWERCASE; } -#line 3242 "y.tab.c" +#line 3255 "y.tab.c" break; case 160: /* flag: DUMP */ -#line 680 "griby.y" +#line 681 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_DUMP; } -#line 3248 "y.tab.c" +#line 3261 "y.tab.c" break; case 161: /* flag: NO_COPY */ -#line 681 "griby.y" +#line 682 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_NO_COPY; } -#line 3254 "y.tab.c" +#line 3267 "y.tab.c" break; case 162: /* flag: NO_FAIL */ -#line 682 "griby.y" +#line 683 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_NO_FAIL; } -#line 3260 "y.tab.c" +#line 3273 "y.tab.c" break; case 163: /* flag: HIDDEN */ -#line 683 "griby.y" +#line 684 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_HIDDEN; } -#line 3266 "y.tab.c" +#line 3279 "y.tab.c" break; case 164: /* flag: EDITION_SPECIFIC */ -#line 684 "griby.y" +#line 685 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_EDITION_SPECIFIC; } -#line 3272 "y.tab.c" +#line 3285 "y.tab.c" break; case 165: /* flag: CAN_BE_MISSING */ -#line 685 "griby.y" +#line 686 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_CAN_BE_MISSING; } -#line 3278 "y.tab.c" +#line 3291 "y.tab.c" break; case 166: /* flag: CONSTRAINT */ -#line 686 "griby.y" +#line 687 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_CONSTRAINT; } -#line 3284 "y.tab.c" +#line 3297 "y.tab.c" break; case 167: /* flag: COPY_OK */ -#line 687 "griby.y" +#line 688 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_COPY_OK; } -#line 3290 "y.tab.c" +#line 3303 "y.tab.c" break; case 168: /* flag: TRANS */ -#line 688 "griby.y" +#line 689 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_TRANSIENT; } -#line 3296 "y.tab.c" +#line 3309 "y.tab.c" break; case 169: /* flag: STRING_TYPE */ -#line 689 "griby.y" +#line 690 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_STRING_TYPE; } -#line 3302 "y.tab.c" +#line 3315 "y.tab.c" break; case 170: /* flag: LONG_TYPE */ -#line 690 "griby.y" +#line 691 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_LONG_TYPE; } -#line 3308 "y.tab.c" +#line 3321 "y.tab.c" break; case 171: /* flag: DOUBLE_TYPE */ -#line 691 "griby.y" +#line 692 "griby.y" { (grib_yyval.lval) = GRIB_ACCESSOR_FLAG_DOUBLE_TYPE; } -#line 3314 "y.tab.c" +#line 3327 "y.tab.c" break; case 172: /* list_block: IDENT LIST '(' expression ')' '{' instructions '}' */ -#line 694 "griby.y" +#line 695 "griby.y" { (grib_yyval.act) = grib_action_create_list(grib_parser_context,(grib_yyvsp[-7].str),(grib_yyvsp[-4].exp),(grib_yyvsp[-1].act)); free((grib_yyvsp[-7].str)); } -#line 3320 "y.tab.c" +#line 3333 "y.tab.c" break; case 173: /* while_block: WHILE '(' expression ')' '{' instructions '}' */ -#line 697 "griby.y" +#line 698 "griby.y" { (grib_yyval.act) = grib_action_create_while(grib_parser_context,(grib_yyvsp[-4].exp),(grib_yyvsp[-1].act)); } -#line 3326 "y.tab.c" +#line 3339 "y.tab.c" break; case 174: /* trigger_block: TRIGGER '(' argument_list ')' '{' instructions '}' */ -#line 700 "griby.y" +#line 701 "griby.y" { (grib_yyval.act) = grib_action_create_trigger(grib_parser_context,(grib_yyvsp[-4].explist),(grib_yyvsp[-1].act)); } -#line 3332 "y.tab.c" +#line 3345 "y.tab.c" break; case 175: /* concept_block: CONCEPT IDENT '{' concept_list '}' flags */ -#line 703 "griby.y" +#line 704 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-2].concept_value),0,0,0,0,0,0,(grib_yyvsp[0].lval),0); free((grib_yyvsp[-4].str)); } -#line 3338 "y.tab.c" +#line 3351 "y.tab.c" break; case 176: /* concept_block: CONCEPT IDENT '(' IDENT ')' '{' concept_list '}' flags */ -#line 704 "griby.y" +#line 705 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-7].str),(grib_yyvsp[-2].concept_value),0,0,(grib_yyvsp[-5].str),0,0,0,(grib_yyvsp[0].lval),0); free((grib_yyvsp[-7].str));free((grib_yyvsp[-5].str)); } -#line 3344 "y.tab.c" +#line 3357 "y.tab.c" break; case 177: /* concept_block: CONCEPT IDENT '(' IDENT ',' STRING ',' IDENT ',' IDENT ')' flags */ -#line 705 "griby.y" +#line 706 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-10].str),0,(grib_yyvsp[-6].str),0,(grib_yyvsp[-8].str),(grib_yyvsp[-4].str),(grib_yyvsp[-2].str),0,(grib_yyvsp[0].lval),0); free((grib_yyvsp[-10].str));free((grib_yyvsp[-6].str));free((grib_yyvsp[-8].str));free((grib_yyvsp[-4].str));free((grib_yyvsp[-2].str)); } -#line 3350 "y.tab.c" +#line 3363 "y.tab.c" break; case 178: /* concept_block: CONCEPT IDENT '(' IDENT ',' STRING ',' IDENT ',' IDENT ',' IDENT ')' flags */ -#line 706 "griby.y" +#line 707 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-12].str),0,(grib_yyvsp[-8].str),0,(grib_yyvsp[-10].str),(grib_yyvsp[-6].str),(grib_yyvsp[-4].str),(grib_yyvsp[-2].str),(grib_yyvsp[0].lval),0); free((grib_yyvsp[-12].str));free((grib_yyvsp[-8].str));free((grib_yyvsp[-10].str));free((grib_yyvsp[-6].str));free((grib_yyvsp[-4].str));free((grib_yyvsp[-2].str)); } -#line 3356 "y.tab.c" +#line 3369 "y.tab.c" break; case 179: /* concept_block: CONCEPT IDENT '(' IDENT ',' STRING ',' IDENT ')' flags */ -#line 707 "griby.y" +#line 708 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-8].str),0,(grib_yyvsp[-4].str),0,(grib_yyvsp[-6].str),(grib_yyvsp[-2].str),0,0,(grib_yyvsp[0].lval),0); free((grib_yyvsp[-8].str));free((grib_yyvsp[-4].str));free((grib_yyvsp[-6].str));free((grib_yyvsp[-2].str)); } -#line 3362 "y.tab.c" +#line 3375 "y.tab.c" break; case 180: /* concept_block: CONCEPT IDENT '.' IDENT '(' IDENT ',' STRING ',' IDENT ',' IDENT ')' flags */ -#line 708 "griby.y" +#line 709 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-10].str),0,(grib_yyvsp[-6].str),(grib_yyvsp[-12].str),(grib_yyvsp[-8].str),(grib_yyvsp[-4].str),(grib_yyvsp[-2].str),0,(grib_yyvsp[0].lval),0); free((grib_yyvsp[-10].str));free((grib_yyvsp[-6].str));free((grib_yyvsp[-8].str));free((grib_yyvsp[-4].str)); free((grib_yyvsp[-2].str)); free((grib_yyvsp[-12].str));} -#line 3368 "y.tab.c" +#line 3381 "y.tab.c" break; case 181: /* concept_block: CONCEPT IDENT '.' IDENT '(' IDENT ',' STRING ',' IDENT ')' flags */ -#line 709 "griby.y" +#line 710 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-8].str),0,(grib_yyvsp[-4].str),(grib_yyvsp[-10].str),(grib_yyvsp[-6].str),(grib_yyvsp[-2].str),0,0,(grib_yyvsp[0].lval),0); free((grib_yyvsp[-8].str));free((grib_yyvsp[-4].str));free((grib_yyvsp[-6].str));free((grib_yyvsp[-2].str)); free((grib_yyvsp[-10].str));} -#line 3374 "y.tab.c" +#line 3387 "y.tab.c" break; case 182: /* concept_block: CONCEPT IDENT '.' IDENT '{' concept_list '}' flags */ -#line 710 "griby.y" +#line 711 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-2].concept_value),0,(grib_yyvsp[-6].str),0,0,0,0,(grib_yyvsp[0].lval),0); free((grib_yyvsp[-6].str));free((grib_yyvsp[-4].str)); } -#line 3380 "y.tab.c" +#line 3393 "y.tab.c" break; case 183: /* concept_block: CONCEPT IDENT '.' IDENT '(' IDENT ')' '{' concept_list '}' flags */ -#line 711 "griby.y" +#line 712 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-7].str),(grib_yyvsp[-2].concept_value),0,(grib_yyvsp[-9].str),(grib_yyvsp[-5].str),0,0,0,(grib_yyvsp[0].lval),0); free((grib_yyvsp[-9].str));free((grib_yyvsp[-7].str));free((grib_yyvsp[-5].str)); } -#line 3386 "y.tab.c" +#line 3399 "y.tab.c" break; case 184: /* concept_block: CONCEPT_NOFAIL IDENT '{' concept_list '}' flags */ -#line 712 "griby.y" +#line 713 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-2].concept_value),0,0,0,0,0,0,(grib_yyvsp[0].lval),1); free((grib_yyvsp[-4].str)); } -#line 3392 "y.tab.c" +#line 3405 "y.tab.c" break; case 185: /* concept_block: CONCEPT_NOFAIL IDENT '(' IDENT ')' '{' concept_list '}' flags */ -#line 713 "griby.y" +#line 714 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-7].str),(grib_yyvsp[-2].concept_value),0,0,(grib_yyvsp[-5].str),0,0,0,(grib_yyvsp[0].lval),1); free((grib_yyvsp[-7].str));free((grib_yyvsp[-5].str)); } -#line 3398 "y.tab.c" +#line 3411 "y.tab.c" break; case 186: /* concept_block: CONCEPT_NOFAIL IDENT '(' IDENT ',' STRING ',' IDENT ',' IDENT ')' flags */ -#line 714 "griby.y" +#line 715 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-10].str),0,(grib_yyvsp[-6].str),0,(grib_yyvsp[-8].str),(grib_yyvsp[-4].str),(grib_yyvsp[-2].str),0,(grib_yyvsp[0].lval),1); free((grib_yyvsp[-10].str));free((grib_yyvsp[-6].str));free((grib_yyvsp[-8].str));free((grib_yyvsp[-4].str));free((grib_yyvsp[-2].str)); } -#line 3404 "y.tab.c" +#line 3417 "y.tab.c" break; case 187: /* concept_block: CONCEPT_NOFAIL IDENT '(' IDENT ',' STRING ',' IDENT ')' flags */ -#line 715 "griby.y" +#line 716 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-8].str),0,(grib_yyvsp[-4].str),0,(grib_yyvsp[-6].str),(grib_yyvsp[-2].str),0,0,(grib_yyvsp[0].lval),1); free((grib_yyvsp[-8].str));free((grib_yyvsp[-4].str));free((grib_yyvsp[-6].str));free((grib_yyvsp[-2].str)); } -#line 3410 "y.tab.c" +#line 3423 "y.tab.c" break; case 188: /* concept_block: CONCEPT_NOFAIL IDENT '.' IDENT '(' IDENT ',' STRING ',' IDENT ',' IDENT ')' flags */ -#line 716 "griby.y" +#line 717 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-10].str),0,(grib_yyvsp[-6].str),(grib_yyvsp[-12].str),(grib_yyvsp[-8].str),(grib_yyvsp[-4].str),(grib_yyvsp[-2].str),0,(grib_yyvsp[0].lval),1); free((grib_yyvsp[-10].str));free((grib_yyvsp[-6].str));free((grib_yyvsp[-8].str));free((grib_yyvsp[-4].str));free((grib_yyvsp[-2].str)); free((grib_yyvsp[-12].str));} -#line 3416 "y.tab.c" +#line 3429 "y.tab.c" break; case 189: /* concept_block: CONCEPT_NOFAIL IDENT '.' IDENT '(' IDENT ',' STRING ',' IDENT ')' flags */ -#line 717 "griby.y" +#line 718 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-8].str),0,(grib_yyvsp[-4].str),(grib_yyvsp[-10].str),(grib_yyvsp[-6].str),(grib_yyvsp[-2].str),0,0,(grib_yyvsp[0].lval),1); free((grib_yyvsp[-8].str));free((grib_yyvsp[-4].str));free((grib_yyvsp[-6].str));free((grib_yyvsp[-2].str)); free((grib_yyvsp[-10].str));} -#line 3422 "y.tab.c" +#line 3435 "y.tab.c" break; case 190: /* concept_block: CONCEPT_NOFAIL IDENT '.' IDENT '{' concept_list '}' flags */ -#line 718 "griby.y" +#line 719 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-2].concept_value),0,(grib_yyvsp[-6].str),0,0,0,0,(grib_yyvsp[0].lval),1); free((grib_yyvsp[-6].str));free((grib_yyvsp[-4].str)); } -#line 3428 "y.tab.c" +#line 3441 "y.tab.c" break; case 191: /* concept_block: CONCEPT_NOFAIL IDENT '.' IDENT '(' IDENT ')' '{' concept_list '}' flags */ -#line 719 "griby.y" +#line 720 "griby.y" { (grib_yyval.act) = grib_action_create_concept(grib_parser_context,(grib_yyvsp[-7].str),(grib_yyvsp[-2].concept_value),0,(grib_yyvsp[-9].str),(grib_yyvsp[-5].str),0,0,0,(grib_yyvsp[0].lval),1); free((grib_yyvsp[-9].str));free((grib_yyvsp[-7].str));free((grib_yyvsp[-5].str)); } -#line 3434 "y.tab.c" +#line 3447 "y.tab.c" break; case 193: /* concept_list: concept_list concept_value */ -#line 724 "griby.y" +#line 725 "griby.y" { (grib_yyval.concept_value) = (grib_yyvsp[0].concept_value); (grib_yyvsp[0].concept_value)->next = (grib_yyvsp[-1].concept_value); } -#line 3440 "y.tab.c" +#line 3453 "y.tab.c" break; case 195: /* hash_array_list: hash_array_list hash_array_value */ -#line 728 "griby.y" +#line 729 "griby.y" { (grib_yyval.hash_array_value) = (grib_yyvsp[0].hash_array_value); (grib_yyvsp[0].hash_array_value)->next = (grib_yyvsp[-1].hash_array_value); } -#line 3446 "y.tab.c" +#line 3459 "y.tab.c" break; case 196: /* hash_array_block: HASH_ARRAY IDENT '{' hash_array_list '}' flags */ -#line 731 "griby.y" +#line 732 "griby.y" { (grib_yyval.act) = grib_action_create_hash_array(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-2].hash_array_value),0,0,0,0,0,0,(grib_yyvsp[0].lval),0); free((grib_yyvsp[-4].str)); } -#line 3452 "y.tab.c" +#line 3465 "y.tab.c" break; case 197: /* hash_array_block: HASH_ARRAY IDENT '(' IDENT ',' STRING ',' IDENT ',' IDENT ')' flags */ -#line 732 "griby.y" +#line 733 "griby.y" { (grib_yyval.act) = grib_action_create_hash_array(grib_parser_context,(grib_yyvsp[-10].str),0,(grib_yyvsp[-6].str),0,(grib_yyvsp[-8].str),(grib_yyvsp[-4].str),(grib_yyvsp[-2].str),0,(grib_yyvsp[0].lval),0); free((grib_yyvsp[-10].str));free((grib_yyvsp[-6].str));free((grib_yyvsp[-8].str));free((grib_yyvsp[-4].str));free((grib_yyvsp[-2].str)); } -#line 3458 "y.tab.c" +#line 3471 "y.tab.c" break; case 199: /* case_list: case_list case_value */ -#line 736 "griby.y" +#line 737 "griby.y" { (grib_yyval.case_value) = (grib_yyvsp[0].case_value); (grib_yyvsp[0].case_value)->next = (grib_yyvsp[-1].case_value); } -#line 3464 "y.tab.c" +#line 3477 "y.tab.c" break; case 200: /* case_value: CASE arguments ':' instructions */ -#line 739 "griby.y" +#line 740 "griby.y" { (grib_yyval.case_value) = grib_case_new(grib_parser_context,(grib_yyvsp[-2].explist),(grib_yyvsp[0].act)); } -#line 3470 "y.tab.c" +#line 3483 "y.tab.c" break; case 201: /* switch_block: SWITCH '(' argument_list ')' '{' case_list DEFAULT ':' instructions '}' */ -#line 743 "griby.y" +#line 744 "griby.y" { (grib_yyval.act) = grib_action_create_switch(grib_parser_context,(grib_yyvsp[-7].explist),(grib_yyvsp[-4].case_value),(grib_yyvsp[-1].act)); } -#line 3476 "y.tab.c" +#line 3489 "y.tab.c" break; case 202: /* switch_block: SWITCH '(' argument_list ')' '{' case_list DEFAULT ':' '}' */ -#line 744 "griby.y" +#line 745 "griby.y" { (grib_yyval.act) = grib_action_create_switch(grib_parser_context,(grib_yyvsp[-6].explist),(grib_yyvsp[-3].case_value),grib_action_create_noop(grib_parser_context,"continue")); } -#line 3482 "y.tab.c" +#line 3495 "y.tab.c" break; case 203: /* switch_block: SWITCH '(' argument_list ')' '{' case_list '}' */ -#line 745 "griby.y" +#line 746 "griby.y" { (grib_yyval.act) = grib_action_create_switch(grib_parser_context,(grib_yyvsp[-4].explist),(grib_yyvsp[-1].case_value),0); } -#line 3488 "y.tab.c" +#line 3501 "y.tab.c" break; case 204: /* concept_value: STRING '=' '{' concept_conditions '}' */ -#line 748 "griby.y" +#line 749 "griby.y" { (grib_yyval.concept_value) = grib_concept_value_new(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-1].concept_condition)); free((grib_yyvsp[-4].str));} -#line 3495 "y.tab.c" +#line 3508 "y.tab.c" break; case 205: /* concept_value: IDENT '=' '{' concept_conditions '}' */ -#line 750 "griby.y" +#line 751 "griby.y" { (grib_yyval.concept_value) = grib_concept_value_new(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-1].concept_condition)); free((grib_yyvsp[-4].str));} -#line 3502 "y.tab.c" +#line 3515 "y.tab.c" break; case 206: /* concept_value: INTEGER '=' '{' concept_conditions '}' */ -#line 752 "griby.y" +#line 753 "griby.y" { char buf[80]; snprintf(buf, sizeof(buf), "%ld",(long)(grib_yyvsp[-4].lval)); (grib_yyval.concept_value) = grib_concept_value_new(grib_parser_context,buf,(grib_yyvsp[-1].concept_condition));} -#line 3509 "y.tab.c" +#line 3522 "y.tab.c" break; case 207: /* concept_value: FLOAT '=' '{' concept_conditions '}' */ -#line 754 "griby.y" +#line 755 "griby.y" { char buf[80]; snprintf(buf, sizeof(buf), "%g", (double)(grib_yyvsp[-4].dval)); (grib_yyval.concept_value) = grib_concept_value_new(grib_parser_context,buf,(grib_yyvsp[-1].concept_condition));} -#line 3516 "y.tab.c" +#line 3529 "y.tab.c" break; case 209: /* concept_conditions: concept_condition concept_conditions */ -#line 759 "griby.y" +#line 760 "griby.y" { (grib_yyvsp[-1].concept_condition)->next = (grib_yyvsp[0].concept_condition); (grib_yyval.concept_condition) = (grib_yyvsp[-1].concept_condition); } -#line 3522 "y.tab.c" +#line 3535 "y.tab.c" break; case 210: /* concept_condition: IDENT '=' expression ';' */ -#line 762 "griby.y" +#line 763 "griby.y" { (grib_yyval.concept_condition) = grib_concept_condition_new(grib_parser_context,(grib_yyvsp[-3].str),(grib_yyvsp[-1].exp),0); free((grib_yyvsp[-3].str)); } -#line 3528 "y.tab.c" +#line 3541 "y.tab.c" break; case 211: /* concept_condition: IDENT '=' '[' integer_array ']' ';' */ -#line 763 "griby.y" +#line 764 "griby.y" { (grib_yyval.concept_condition) = grib_concept_condition_new(grib_parser_context,(grib_yyvsp[-5].str),0,(grib_yyvsp[-2].ivalue)); free((grib_yyvsp[-5].str)); } -#line 3534 "y.tab.c" +#line 3547 "y.tab.c" break; case 212: /* hash_array_value: STRING '=' '[' integer_array ']' */ -#line 767 "griby.y" +#line 768 "griby.y" { (grib_yyval.hash_array_value) = grib_integer_hash_array_value_new(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-1].ivalue)); free((grib_yyvsp[-4].str));} -#line 3541 "y.tab.c" +#line 3554 "y.tab.c" break; case 213: /* hash_array_value: IDENT '=' '[' integer_array ']' */ -#line 769 "griby.y" +#line 770 "griby.y" { (grib_yyval.hash_array_value) = grib_integer_hash_array_value_new(grib_parser_context,(grib_yyvsp[-4].str),(grib_yyvsp[-1].ivalue)); free((grib_yyvsp[-4].str));} -#line 3548 "y.tab.c" +#line 3561 "y.tab.c" break; case 214: /* string_or_ident: SUBSTR '(' IDENT ',' INTEGER ',' INTEGER ')' */ -#line 773 "griby.y" +#line 774 "griby.y" { (grib_yyval.exp) = new_accessor_expression(grib_parser_context,(grib_yyvsp[-5].str),(grib_yyvsp[-3].lval),(grib_yyvsp[-1].lval)); free((grib_yyvsp[-5].str)); } -#line 3554 "y.tab.c" +#line 3567 "y.tab.c" break; case 215: /* string_or_ident: IDENT */ -#line 774 "griby.y" +#line 775 "griby.y" { (grib_yyval.exp) = new_accessor_expression(grib_parser_context,(grib_yyvsp[0].str),0,0); free((grib_yyvsp[0].str)); } -#line 3560 "y.tab.c" +#line 3573 "y.tab.c" break; case 216: /* string_or_ident: SUBSTR '(' STRING ',' INTEGER ',' INTEGER ')' */ -#line 775 "griby.y" +#line 776 "griby.y" { (grib_yyval.exp) = new_sub_string_expression(grib_parser_context,(grib_yyvsp[-5].str),(grib_yyvsp[-3].lval),(grib_yyvsp[-1].lval)); free((grib_yyvsp[-5].str)); } -#line 3566 "y.tab.c" +#line 3579 "y.tab.c" break; case 217: /* string_or_ident: STRING */ -#line 776 "griby.y" +#line 777 "griby.y" { (grib_yyval.exp) = new_string_expression(grib_parser_context,(grib_yyvsp[0].str)); free((grib_yyvsp[0].str)); } -#line 3572 "y.tab.c" +#line 3585 "y.tab.c" break; case 219: /* atom: INTEGER */ -#line 780 "griby.y" +#line 781 "griby.y" { (grib_yyval.exp) = new_long_expression(grib_parser_context,(grib_yyvsp[0].lval)); } -#line 3578 "y.tab.c" +#line 3591 "y.tab.c" break; case 220: /* atom: FLOAT */ -#line 781 "griby.y" +#line 782 "griby.y" { (grib_yyval.exp) = new_double_expression(grib_parser_context,(grib_yyvsp[0].dval)); /* TODO: change to new_float_expression*/} -#line 3584 "y.tab.c" +#line 3597 "y.tab.c" break; case 221: /* atom: NIL */ -#line 783 "griby.y" +#line 784 "griby.y" { (grib_yyval.exp) = NULL; } -#line 3590 "y.tab.c" +#line 3603 "y.tab.c" break; case 222: /* atom: DUMMY */ -#line 784 "griby.y" +#line 785 "griby.y" { (grib_yyval.exp) = new_true_expression(grib_parser_context); } -#line 3596 "y.tab.c" +#line 3609 "y.tab.c" break; case 223: /* atom: '(' expression ')' */ -#line 785 "griby.y" +#line 786 "griby.y" { (grib_yyval.exp) = (grib_yyvsp[-1].exp); } -#line 3602 "y.tab.c" +#line 3615 "y.tab.c" break; case 224: /* atom: '-' atom */ -#line 786 "griby.y" +#line 787 "griby.y" { (grib_yyval.exp) = new_unop_expression(grib_parser_context,&grib_op_neg,&grib_op_neg_d,(grib_yyvsp[0].exp)); } -#line 3608 "y.tab.c" +#line 3621 "y.tab.c" break; case 225: /* atom: IDENT '(' ')' */ -#line 787 "griby.y" +#line 788 "griby.y" { (grib_yyval.exp) = new_func_expression(grib_parser_context,(grib_yyvsp[-2].str),NULL); free((grib_yyvsp[-2].str));} -#line 3614 "y.tab.c" +#line 3627 "y.tab.c" break; case 226: /* atom: IDENT '(' argument_list ')' */ -#line 788 "griby.y" +#line 789 "griby.y" { (grib_yyval.exp) = new_func_expression(grib_parser_context,(grib_yyvsp[-3].str),(grib_yyvsp[-1].explist)); free((grib_yyvsp[-3].str));} -#line 3620 "y.tab.c" +#line 3633 "y.tab.c" break; case 227: /* power: atom '^' power */ -#line 792 "griby.y" +#line 793 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_pow,NULL,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3626 "y.tab.c" +#line 3639 "y.tab.c" break; case 229: /* factor: factor '*' power */ -#line 796 "griby.y" +#line 797 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_mul,&grib_op_mul_d,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3632 "y.tab.c" +#line 3645 "y.tab.c" break; case 230: /* factor: factor '/' power */ -#line 797 "griby.y" +#line 798 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_div,&grib_op_div_d,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3638 "y.tab.c" +#line 3651 "y.tab.c" break; case 231: /* factor: factor '%' power */ -#line 798 "griby.y" +#line 799 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_modulo,NULL,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3644 "y.tab.c" +#line 3657 "y.tab.c" break; case 232: /* factor: factor BIT power */ -#line 799 "griby.y" +#line 800 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_bit,NULL,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3650 "y.tab.c" +#line 3663 "y.tab.c" break; case 233: /* factor: factor BITOFF power */ -#line 800 "griby.y" +#line 801 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_bitoff,NULL,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3656 "y.tab.c" +#line 3669 "y.tab.c" break; case 235: /* factor: LENGTH '(' IDENT ')' */ -#line 802 "griby.y" +#line 803 "griby.y" { (grib_yyval.exp) = new_length_expression(grib_parser_context,(grib_yyvsp[-1].str)); free((grib_yyvsp[-1].str));} -#line 3662 "y.tab.c" +#line 3675 "y.tab.c" break; case 236: /* factor: IS_IN_LIST '(' IDENT ',' STRING ')' */ -#line 803 "griby.y" +#line 804 "griby.y" { (grib_yyval.exp) = new_is_in_list_expression(grib_parser_context,(grib_yyvsp[-3].str),(grib_yyvsp[-1].str)); free((grib_yyvsp[-3].str));free((grib_yyvsp[-1].str));} -#line 3668 "y.tab.c" +#line 3681 "y.tab.c" break; case 237: /* factor: IS_IN_DICT '(' IDENT ',' STRING ')' */ -#line 804 "griby.y" +#line 805 "griby.y" { (grib_yyval.exp) = new_is_in_dict_expression(grib_parser_context,(grib_yyvsp[-3].str),(grib_yyvsp[-1].str)); free((grib_yyvsp[-3].str));free((grib_yyvsp[-1].str));} -#line 3674 "y.tab.c" +#line 3687 "y.tab.c" break; case 238: /* factor: IS_INTEGER '(' IDENT ',' INTEGER ')' */ -#line 805 "griby.y" +#line 806 "griby.y" { (grib_yyval.exp) = new_is_integer_expression(grib_parser_context,(grib_yyvsp[-3].str),(grib_yyvsp[-1].lval),0); free((grib_yyvsp[-3].str));} -#line 3680 "y.tab.c" +#line 3693 "y.tab.c" break; case 239: /* factor: IS_INTEGER '(' IDENT ',' INTEGER ',' INTEGER ')' */ -#line 806 "griby.y" +#line 807 "griby.y" { (grib_yyval.exp) = new_is_integer_expression(grib_parser_context,(grib_yyvsp[-5].str),(grib_yyvsp[-3].lval),(grib_yyvsp[-1].lval)); free((grib_yyvsp[-5].str));} -#line 3686 "y.tab.c" +#line 3699 "y.tab.c" break; case 240: /* factor: IS_INTEGER '(' IDENT ')' */ -#line 807 "griby.y" +#line 808 "griby.y" { (grib_yyval.exp) = new_is_integer_expression(grib_parser_context,(grib_yyvsp[-1].str),0,0); free((grib_yyvsp[-1].str));} -#line 3692 "y.tab.c" +#line 3705 "y.tab.c" break; case 241: /* term: term '+' factor */ -#line 810 "griby.y" +#line 811 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_add,&grib_op_add_d,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3698 "y.tab.c" +#line 3711 "y.tab.c" break; case 242: /* term: term '-' factor */ -#line 811 "griby.y" +#line 812 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_sub,&grib_op_sub_d,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3704 "y.tab.c" +#line 3717 "y.tab.c" break; case 244: /* condition: condition GT term */ -#line 815 "griby.y" +#line 816 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_gt,&grib_op_gt_d,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3710 "y.tab.c" +#line 3723 "y.tab.c" break; case 245: /* condition: condition EQ term */ -#line 817 "griby.y" +#line 818 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_eq,&grib_op_eq_d,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3716 "y.tab.c" +#line 3729 "y.tab.c" break; case 246: /* condition: condition LT term */ -#line 818 "griby.y" +#line 819 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_lt,&grib_op_lt_d,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3722 "y.tab.c" +#line 3735 "y.tab.c" break; case 247: /* condition: condition GE term */ -#line 819 "griby.y" +#line 820 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_ge,&grib_op_ge_d,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3728 "y.tab.c" +#line 3741 "y.tab.c" break; case 248: /* condition: condition LE term */ -#line 820 "griby.y" +#line 821 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_le,&grib_op_le_d,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3734 "y.tab.c" +#line 3747 "y.tab.c" break; case 249: /* condition: condition NE term */ -#line 821 "griby.y" +#line 822 "griby.y" { (grib_yyval.exp) = new_binop_expression(grib_parser_context,&grib_op_ne,&grib_op_ne_d,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3740 "y.tab.c" +#line 3753 "y.tab.c" break; case 250: /* condition: string_or_ident IS string_or_ident */ -#line 822 "griby.y" - { (grib_yyval.exp) = new_string_compare_expression(grib_parser_context,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3746 "y.tab.c" +#line 823 "griby.y" + { (grib_yyval.exp) = new_string_compare_expression(grib_parser_context,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp),1); } +#line 3759 "y.tab.c" + break; + + case 251: /* condition: string_or_ident ISNOT string_or_ident */ +#line 824 "griby.y" + { (grib_yyval.exp) = new_string_compare_expression(grib_parser_context,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp),0); } +#line 3765 "y.tab.c" break; - case 251: /* condition: NOT condition */ -#line 827 "griby.y" + case 252: /* condition: NOT condition */ +#line 829 "griby.y" { (grib_yyval.exp) = new_unop_expression(grib_parser_context,&grib_op_not,NULL,(grib_yyvsp[0].exp)); } -#line 3752 "y.tab.c" +#line 3771 "y.tab.c" break; - case 253: /* conjunction: conjunction AND condition */ -#line 831 "griby.y" + case 254: /* conjunction: conjunction AND condition */ +#line 833 "griby.y" { (grib_yyval.exp) = new_logical_and_expression(grib_parser_context,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp)); } -#line 3758 "y.tab.c" +#line 3777 "y.tab.c" break; - case 255: /* disjunction: disjunction OR conjunction */ -#line 835 "griby.y" + case 256: /* disjunction: disjunction OR conjunction */ +#line 837 "griby.y" { (grib_yyval.exp) = new_logical_or_expression(grib_parser_context,(grib_yyvsp[-2].exp),(grib_yyvsp[0].exp));} -#line 3764 "y.tab.c" +#line 3783 "y.tab.c" break; - case 260: /* rule_entry: IDENT '=' expression ';' */ -#line 849 "griby.y" + case 261: /* rule_entry: IDENT '=' expression ';' */ +#line 851 "griby.y" { (grib_yyval.rule_entry) = grib_new_rule_entry(grib_parser_context,(grib_yyvsp[-3].str),(grib_yyvsp[-1].exp)); free((grib_yyvsp[-3].str)); } -#line 3770 "y.tab.c" +#line 3789 "y.tab.c" break; - case 261: /* rule_entry: SKIP ';' */ -#line 850 "griby.y" + case 262: /* rule_entry: SKIP ';' */ +#line 852 "griby.y" { (grib_yyval.rule_entry) = grib_new_rule_entry(grib_parser_context,"skip",0);} -#line 3776 "y.tab.c" +#line 3795 "y.tab.c" break; - case 263: /* rule_entries: rule_entry rule_entries */ -#line 854 "griby.y" + case 264: /* rule_entries: rule_entry rule_entries */ +#line 856 "griby.y" { (grib_yyvsp[-1].rule_entry)->next = (grib_yyvsp[0].rule_entry); (grib_yyval.rule_entry) = (grib_yyvsp[-1].rule_entry); } -#line 3782 "y.tab.c" +#line 3801 "y.tab.c" break; - case 264: /* fact: rule_entry */ -#line 857 "griby.y" + case 265: /* fact: rule_entry */ +#line 859 "griby.y" { (grib_yyval.rules) = grib_new_rule(grib_parser_context,NULL,(grib_yyvsp[0].rule_entry)); } -#line 3788 "y.tab.c" +#line 3807 "y.tab.c" break; - case 265: /* conditional_rule: IF '(' expression ')' '{' rule_entries '}' */ -#line 861 "griby.y" + case 266: /* conditional_rule: IF '(' expression ')' '{' rule_entries '}' */ +#line 863 "griby.y" { (grib_yyval.rules) = grib_new_rule(grib_parser_context,(grib_yyvsp[-4].exp),(grib_yyvsp[-1].rule_entry)); } -#line 3794 "y.tab.c" +#line 3813 "y.tab.c" break; - case 267: /* rules: rule rules */ -#line 865 "griby.y" + case 268: /* rules: rule rules */ +#line 867 "griby.y" { (grib_yyvsp[-1].rules)->next = (grib_yyvsp[0].rules); (grib_yyval.rules) = (grib_yyvsp[-1].rules); } -#line 3800 "y.tab.c" +#line 3819 "y.tab.c" break; -#line 3804 "y.tab.c" +#line 3823 "y.tab.c" default: break; } @@ -3993,7 +4012,7 @@ grib_yyparse (void) return grib_yyresult; } -#line 869 "griby.y" +#line 871 "griby.y" static grib_concept_value *_reverse_concept(grib_concept_value *r,grib_concept_value *s) diff --git a/src/grib_yacc.h b/src/grib_yacc.h index e99fb7050..d4cadf2f3 100644 --- a/src/grib_yacc.h +++ b/src/grib_yacc.h @@ -174,10 +174,11 @@ extern int grib_yydebug; OR = 375, /* OR */ NOT = 376, /* NOT */ IS = 377, /* IS */ - IDENT = 378, /* IDENT */ - STRING = 379, /* STRING */ - INTEGER = 380, /* INTEGER */ - FLOAT = 381 /* FLOAT */ + ISNOT = 378, /* ISNOT */ + IDENT = 379, /* IDENT */ + STRING = 380, /* STRING */ + INTEGER = 381, /* INTEGER */ + FLOAT = 382 /* FLOAT */ }; typedef enum grib_yytokentype grib_yytoken_kind_t; #endif @@ -306,10 +307,11 @@ extern int grib_yydebug; #define OR 375 #define NOT 376 #define IS 377 -#define IDENT 378 -#define STRING 379 -#define INTEGER 380 -#define FLOAT 381 +#define ISNOT 378 +#define IDENT 379 +#define STRING 380 +#define INTEGER 381 +#define FLOAT 382 /* Value type. */ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED @@ -333,7 +335,7 @@ union YYSTYPE grib_rule *rules; grib_rule_entry *rule_entry; -#line 337 "y.tab.h" +#line 339 "y.tab.h" }; typedef union YYSTYPE YYSTYPE; diff --git a/src/gribl.l b/src/gribl.l index 7f95db31e..d2cf07fde 100644 --- a/src/gribl.l +++ b/src/gribl.l @@ -71,23 +71,24 @@ IDENT {IDENT1}|{IDENT2}|{IDENT3}|{IDENT4}|{IDENT5} %% -"==" return EQ ; -">=" return GE ; -">" return GT ; -"<=" return LE ; -"<" return LT ; -"!=" return NE ; -"<>" return NE ; -"bit" return BIT ; -"notbit" return BITOFF ; +"==" return EQ ; +">=" return GE ; +">" return GT ; +"<=" return LE ; +"<" return LT ; +"!=" return NE ; +"<>" return NE ; +"bit" return BIT ; +"notbit" return BITOFF ; "is" return IS ; -"not" return NOT ; -"!" return NOT ; -"and" return AND ; -"&&" return AND ; -"or" return OR ; -"||" return OR ; +"isnot" return ISNOT ; +"not" return NOT ; +"!" return NOT ; +"and" return AND ; +"&&" return AND ; +"or" return OR ; +"||" return OR ; "null" return NIL ; "~" return DUMMY ; @@ -97,7 +98,7 @@ IDENT {IDENT1}|{IDENT2}|{IDENT3}|{IDENT4}|{IDENT5} "length" return LENGTH ; "lowercase" return LOWERCASE; "if" return IF ; -"_if" return IF_TRANSIENT ; +"_if" return IF_TRANSIENT ; "else" return ELSE ; "unsigned" return UNSIGNED ; "ascii" return ASCII ; diff --git a/src/griby.y b/src/griby.y index 4d1b13911..213843240 100644 --- a/src/griby.y +++ b/src/griby.y @@ -191,6 +191,7 @@ static grib_hash_array_value *_reverse_hash_array(grib_hash_array_value *r,grib_ %token NOT %token IS +%token ISNOT %token IDENT %token STRING @@ -819,7 +820,8 @@ condition: condition GT term { $$ = new_binop_expression(grib_parser_context, | condition GE term { $$ = new_binop_expression(grib_parser_context,&grib_op_ge,&grib_op_ge_d,$1,$3); } | condition LE term { $$ = new_binop_expression(grib_parser_context,&grib_op_le,&grib_op_le_d,$1,$3); } | condition NE term { $$ = new_binop_expression(grib_parser_context,&grib_op_ne,&grib_op_ne_d,$1,$3); } - | string_or_ident IS string_or_ident { $$ = new_string_compare_expression(grib_parser_context,$1,$3); } + | string_or_ident IS string_or_ident { $$ = new_string_compare_expression(grib_parser_context,$1,$3,1); } + | string_or_ident ISNOT string_or_ident { $$ = new_string_compare_expression(grib_parser_context,$1,$3,0); } /* | condition IN term { $$ = new_binop_expression(grib_parser_context,grib_op_pow,$1,$3); } | condition MATCH term { $$ = new_binop_expression(grib_parser_context,grib_op_pow,$1,$3); } diff --git a/src/makeyacc b/src/makeyacc index b53ebe172..840fa41a8 100755 --- a/src/makeyacc +++ b/src/makeyacc @@ -2,6 +2,8 @@ set -xe export LEX=flex export LEX_OUT=gribl.cc + + $LEX -o gribl.cc gribl.l sed 's/yy/grib_yy/g' < $LEX_OUT | sed 's/static void grib_yyunput/void grib_yyunput/' > grib_lex1.cc sed 's/fgetc/getc/g' < grib_lex1.cc > grib_lex.cc @@ -18,11 +20,16 @@ sed 's/yy/grib_yy/g' < y.tab.h > grib_yacc.h rm -f y.tab.c y.tab.h set +x + +$LEX --version +yacc --version + echo "---------------------------------------------" # We use flex and bison echo "Did you use the latest YACC and FLEX modules?" echo " module avail bison" echo " module avail flex" + echo echo ALL OK diff --git a/tests/grib_filter.sh b/tests/grib_filter.sh index 2799c45de..5ca6cce8f 100755 --- a/tests/grib_filter.sh +++ b/tests/grib_filter.sh @@ -385,7 +385,11 @@ grep "MISSING" $tempOut cat >$tempFilt < $tempOut 2>&1 cat $tempOut grep "rubbish must fail" $tempOut From 8b4b26074be25b8be5d54ff3d56f6c0a0b715229 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 5 Jul 2024 11:11:54 +0100 Subject: [PATCH 023/277] AppVeyor: Disable netcdf --- .appveyor.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.appveyor.yml b/.appveyor.yml index 096e0e4c8..f3d062de1 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -51,8 +51,8 @@ install: m2-perl ^ m2w64-ntldd-git - # get deps - - cmd: conda install -c conda-forge cmake libnetcdf + # get deps. Drop libnetcdf + - cmd: conda install -c conda-forge cmake #---------------------------------# # build configuration # @@ -71,7 +71,7 @@ build_script: -D CMAKE_INSTALL_PREFIX=%INSTALL_DIR% ^ -D CMAKE_BUILD_TYPE=Release ^ -D ENABLE_FORTRAN=0 ^ - -D ENABLE_NETCDF=1 ^ + -D ENABLE_NETCDF=0 ^ -D ENABLE_JPG=1 ^ -D ENABLE_AEC=0 ^ -D IEEE_LE=1 ^ From d802d7fe90d361222197753765de5c8bcbe6dea9 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 5 Jul 2024 13:35:11 +0000 Subject: [PATCH 024/277] ECC-1861: GRIB2: emission parameters with additional srcs/sinks --- .../grib2/localConcepts/ecmf/cfVarName.def | 36 +++++++++++++++++++ definitions/grib2/localConcepts/ecmf/name.def | 36 +++++++++++++++++++ .../grib2/localConcepts/ecmf/paramId.def | 36 +++++++++++++++++++ .../grib2/localConcepts/ecmf/shortName.def | 36 +++++++++++++++++++ .../grib2/localConcepts/ecmf/units.def | 36 +++++++++++++++++++ 5 files changed, 180 insertions(+) diff --git a/definitions/grib2/localConcepts/ecmf/cfVarName.def b/definitions/grib2/localConcepts/ecmf/cfVarName.def index 957489177..f1a26b807 100644 --- a/definitions/grib2/localConcepts/ecmf/cfVarName.def +++ b/definitions/grib2/localConcepts/ecmf/cfVarName.def @@ -14181,6 +14181,42 @@ parameterCategory = 20 ; parameterNumber = 192 ; } +#Emission mass flux from commercial buildings heating +'emi_mflx_cbh' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 197 ; + } +#Emission mass flux from residential heating +'emi_mflx_rh' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 198 ; + } +#Emission mass flux from oil refineries and transformation industry +'emi_mflx_oti' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 199 ; + } +#Emission mass flux from gas production +'emi_mflx_gp' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 200 ; + } #Stream function gradient 'strfgrd' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/name.def b/definitions/grib2/localConcepts/ecmf/name.def index 2f7444e2a..46f80dc2c 100644 --- a/definitions/grib2/localConcepts/ecmf/name.def +++ b/definitions/grib2/localConcepts/ecmf/name.def @@ -14181,6 +14181,42 @@ parameterCategory = 20 ; parameterNumber = 192 ; } +#Emission mass flux from commercial buildings heating +'Emission mass flux from commercial buildings heating' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 197 ; + } +#Emission mass flux from residential heating +'Emission mass flux from residential heating' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 198 ; + } +#Emission mass flux from oil refineries and transformation industry +'Emission mass flux from oil refineries and transformation industry' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 199 ; + } +#Emission mass flux from gas production +'Emission mass flux from gas production' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 200 ; + } #Stream function gradient 'Stream function gradient' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/paramId.def b/definitions/grib2/localConcepts/ecmf/paramId.def index 109f9f001..10245c6bb 100644 --- a/definitions/grib2/localConcepts/ecmf/paramId.def +++ b/definitions/grib2/localConcepts/ecmf/paramId.def @@ -14181,6 +14181,42 @@ parameterCategory = 20 ; parameterNumber = 192 ; } +#Emission mass flux from commercial buildings heating +'463000' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 197 ; + } +#Emission mass flux from residential heating +'464000' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 198 ; + } +#Emission mass flux from oil refineries and transformation industry +'465000' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 199 ; + } +#Emission mass flux from gas production +'466000' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 200 ; + } #Stream function gradient '129001' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/shortName.def b/definitions/grib2/localConcepts/ecmf/shortName.def index 0c36a8dd0..88148b199 100644 --- a/definitions/grib2/localConcepts/ecmf/shortName.def +++ b/definitions/grib2/localConcepts/ecmf/shortName.def @@ -14181,6 +14181,42 @@ parameterCategory = 20 ; parameterNumber = 192 ; } +#Emission mass flux from commercial buildings heating +'emi_mflx_cbh' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 197 ; + } +#Emission mass flux from residential heating +'emi_mflx_rh' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 198 ; + } +#Emission mass flux from oil refineries and transformation industry +'emi_mflx_oti' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 199 ; + } +#Emission mass flux from gas production +'emi_mflx_gp' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 200 ; + } #Stream function gradient 'strfgrd' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/units.def b/definitions/grib2/localConcepts/ecmf/units.def index 8a166eaa4..720c17198 100644 --- a/definitions/grib2/localConcepts/ecmf/units.def +++ b/definitions/grib2/localConcepts/ecmf/units.def @@ -14181,6 +14181,42 @@ parameterCategory = 20 ; parameterNumber = 192 ; } +#Emission mass flux from commercial buildings heating +'kg m**-2 s**-1' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 197 ; + } +#Emission mass flux from residential heating +'kg m**-2 s**-1' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 198 ; + } +#Emission mass flux from oil refineries and transformation industry +'kg m**-2 s**-1' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 199 ; + } +#Emission mass flux from gas production +'kg m**-2 s**-1' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 77 ; + is_chemical_srcsink = 1 ; + sourceSinkChemicalPhysicalProcess = 200 ; + } #Stream function gradient 'm**2 s**-1' = { discipline = 192 ; From 0ac670b036212af3fce5900a563a5dbdd4f2741c Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 6 Jul 2024 14:19:44 +0100 Subject: [PATCH 025/277] GRIB2 tables cleanup --- definitions/grib2/tables/0.0.table | 4 ---- definitions/grib2/tables/0/4.12.table | 1 - definitions/grib2/tables/0/4.13.table | 1 - definitions/grib2/tables/0/4.14.table | 1 - definitions/grib2/tables/0/4.15.table | 1 - definitions/grib2/tables/0/4.151.table | 1 - definitions/grib2/tables/0/4.201.table | 1 - definitions/grib2/tables/0/4.202.table | 1 - definitions/grib2/tables/0/4.204.table | 1 - definitions/grib2/tables/0/4.205.table | 1 - definitions/grib2/tables/0/4.206.table | 1 - definitions/grib2/tables/0/4.207.table | 1 - definitions/grib2/tables/0/4.208.table | 1 - definitions/grib2/tables/0/4.209.table | 1 - definitions/grib2/tables/0/4.210.table | 1 - definitions/grib2/tables/0/4.211.table | 1 - definitions/grib2/tables/0/4.212.table | 1 - definitions/grib2/tables/0/4.213.table | 1 - definitions/grib2/tables/0/4.217.table | 1 - definitions/grib2/tables/0/4.220.table | 1 - definitions/grib2/tables/0/4.221.table | 1 - definitions/grib2/tables/0/4.7.table | 1 - definitions/grib2/tables/0/4.8.table | 1 - definitions/grib2/tables/0/4.9.table | 1 - definitions/grib2/tables/0/4.91.table | 1 - definitions/grib2/tables/0/5.6.table | 1 - definitions/grib2/tables/1/4.12.table | 1 - definitions/grib2/tables/1/4.13.table | 1 - definitions/grib2/tables/1/4.14.table | 1 - definitions/grib2/tables/1/4.15.table | 1 - definitions/grib2/tables/1/4.151.table | 1 - definitions/grib2/tables/1/4.201.table | 1 - definitions/grib2/tables/1/4.202.table | 1 - definitions/grib2/tables/1/4.204.table | 1 - definitions/grib2/tables/1/4.205.table | 1 - definitions/grib2/tables/1/4.206.table | 1 - definitions/grib2/tables/1/4.207.table | 1 - definitions/grib2/tables/1/4.208.table | 1 - definitions/grib2/tables/1/4.209.table | 1 - definitions/grib2/tables/1/4.210.table | 1 - definitions/grib2/tables/1/4.211.table | 1 - definitions/grib2/tables/1/4.212.table | 1 - definitions/grib2/tables/1/4.213.table | 1 - definitions/grib2/tables/1/4.217.table | 1 - definitions/grib2/tables/1/4.220.table | 1 - definitions/grib2/tables/1/4.221.table | 1 - definitions/grib2/tables/1/4.7.table | 1 - definitions/grib2/tables/1/4.8.table | 1 - definitions/grib2/tables/1/4.9.table | 1 - definitions/grib2/tables/1/5.6.table | 1 - definitions/grib2/tables/10/0.0.table | 3 --- definitions/grib2/tables/10/1.2.table | 2 -- definitions/grib2/tables/10/1.3.table | 2 -- definitions/grib2/tables/10/1.4.table | 2 -- definitions/grib2/tables/10/3.0.table | 2 -- definitions/grib2/tables/10/3.1.table | 15 -------------- definitions/grib2/tables/10/3.10.table | 1 - definitions/grib2/tables/10/3.11.table | 1 - definitions/grib2/tables/10/3.15.table | 5 ----- definitions/grib2/tables/10/3.2.table | 2 -- definitions/grib2/tables/10/3.20.table | 2 -- definitions/grib2/tables/10/3.21.table | 3 --- definitions/grib2/tables/10/3.3.table | 2 -- definitions/grib2/tables/10/3.4.table | 1 - definitions/grib2/tables/10/3.7.table | 1 - definitions/grib2/tables/10/3.8.table | 2 -- definitions/grib2/tables/10/3.9.table | 1 - definitions/grib2/tables/10/4.0.table | 9 --------- definitions/grib2/tables/10/4.1.0.table | 2 -- definitions/grib2/tables/10/4.1.1.table | 2 -- definitions/grib2/tables/10/4.1.10.table | 2 -- definitions/grib2/tables/10/4.1.2.table | 2 -- definitions/grib2/tables/10/4.1.3.table | 2 -- definitions/grib2/tables/10/4.10.table | 2 -- definitions/grib2/tables/10/4.11.table | 2 -- definitions/grib2/tables/10/4.12.table | 2 -- definitions/grib2/tables/10/4.13.table | 2 -- definitions/grib2/tables/10/4.14.table | 2 -- definitions/grib2/tables/10/4.15.table | 2 -- definitions/grib2/tables/10/4.151.table | 1 - definitions/grib2/tables/10/4.2.0.0.table | 2 -- definitions/grib2/tables/10/4.2.0.1.table | 3 --- definitions/grib2/tables/10/4.2.0.13.table | 2 -- definitions/grib2/tables/10/4.2.0.14.table | 2 -- definitions/grib2/tables/10/4.2.0.15.table | 2 -- definitions/grib2/tables/10/4.2.0.16.table | 2 -- definitions/grib2/tables/10/4.2.0.18.table | 2 -- definitions/grib2/tables/10/4.2.0.19.table | 2 -- definitions/grib2/tables/10/4.2.0.190.table | 2 -- definitions/grib2/tables/10/4.2.0.191.table | 2 -- definitions/grib2/tables/10/4.2.0.2.table | 2 -- definitions/grib2/tables/10/4.2.0.20.table | 4 ---- definitions/grib2/tables/10/4.2.0.3.table | 2 -- definitions/grib2/tables/10/4.2.0.4.table | 3 --- definitions/grib2/tables/10/4.2.0.5.table | 2 -- definitions/grib2/tables/10/4.2.0.6.table | 2 -- definitions/grib2/tables/10/4.2.0.7.table | 2 -- definitions/grib2/tables/10/4.2.1.0.table | 2 -- definitions/grib2/tables/10/4.2.1.1.table | 2 -- definitions/grib2/tables/10/4.2.10.0.table | 2 -- definitions/grib2/tables/10/4.2.10.1.table | 2 -- definitions/grib2/tables/10/4.2.10.191.table | 2 -- definitions/grib2/tables/10/4.2.10.2.table | 2 -- definitions/grib2/tables/10/4.2.10.3.table | 2 -- definitions/grib2/tables/10/4.2.10.4.table | 3 --- definitions/grib2/tables/10/4.2.2.0.table | 2 -- definitions/grib2/tables/10/4.2.2.3.table | 2 -- definitions/grib2/tables/10/4.2.2.4.table | 2 -- definitions/grib2/tables/10/4.2.3.0.table | 2 -- definitions/grib2/tables/10/4.2.3.1.table | 2 -- definitions/grib2/tables/10/4.201.table | 2 -- definitions/grib2/tables/10/4.202.table | 2 -- definitions/grib2/tables/10/4.203.table | 2 -- definitions/grib2/tables/10/4.204.table | 2 -- definitions/grib2/tables/10/4.205.table | 2 -- definitions/grib2/tables/10/4.206.table | 2 -- definitions/grib2/tables/10/4.207.table | 2 -- definitions/grib2/tables/10/4.208.table | 2 -- definitions/grib2/tables/10/4.209.table | 2 -- definitions/grib2/tables/10/4.210.table | 2 -- definitions/grib2/tables/10/4.211.table | 2 -- definitions/grib2/tables/10/4.212.table | 2 -- definitions/grib2/tables/10/4.213.table | 2 -- definitions/grib2/tables/10/4.215.table | 4 ---- definitions/grib2/tables/10/4.216.table | 1 - definitions/grib2/tables/10/4.217.table | 2 -- definitions/grib2/tables/10/4.218.table | 3 --- definitions/grib2/tables/10/4.219.table | 2 -- definitions/grib2/tables/10/4.220.table | 2 -- definitions/grib2/tables/10/4.221.table | 2 -- definitions/grib2/tables/10/4.222.table | 2 -- definitions/grib2/tables/10/4.224.table | 4 ---- definitions/grib2/tables/10/4.227.table | 2 -- definitions/grib2/tables/10/4.3.table | 2 -- definitions/grib2/tables/10/4.4.table | 3 --- definitions/grib2/tables/10/4.5.table | 7 ------- definitions/grib2/tables/10/4.6.table | 2 -- definitions/grib2/tables/10/4.7.table | 2 -- definitions/grib2/tables/10/4.8.table | 2 -- definitions/grib2/tables/10/4.9.table | 2 -- definitions/grib2/tables/10/4.91.table | 2 -- definitions/grib2/tables/10/5.0.table | 5 ----- definitions/grib2/tables/10/5.1.table | 2 -- definitions/grib2/tables/10/5.2.table | 3 --- definitions/grib2/tables/10/5.3.table | 2 -- definitions/grib2/tables/10/5.4.table | 2 -- definitions/grib2/tables/10/5.40.table | 1 - definitions/grib2/tables/10/5.5.table | 2 -- definitions/grib2/tables/10/5.6.table | 2 -- definitions/grib2/tables/10/5.7.table | 1 - definitions/grib2/tables/11/0.0.table | 3 --- definitions/grib2/tables/11/1.2.table | 2 -- definitions/grib2/tables/11/1.3.table | 2 -- definitions/grib2/tables/11/1.4.table | 2 -- definitions/grib2/tables/11/3.0.table | 2 -- definitions/grib2/tables/11/3.1.table | 15 -------------- definitions/grib2/tables/11/3.10.table | 1 - definitions/grib2/tables/11/3.11.table | 1 - definitions/grib2/tables/11/3.15.table | 5 ----- definitions/grib2/tables/11/3.2.table | 2 -- definitions/grib2/tables/11/3.20.table | 2 -- definitions/grib2/tables/11/3.21.table | 3 --- definitions/grib2/tables/11/3.3.table | 2 -- definitions/grib2/tables/11/3.4.table | 1 - definitions/grib2/tables/11/3.7.table | 1 - definitions/grib2/tables/11/3.8.table | 2 -- definitions/grib2/tables/11/3.9.table | 1 - definitions/grib2/tables/11/4.0.table | 9 --------- definitions/grib2/tables/11/4.1.0.table | 2 -- definitions/grib2/tables/11/4.1.1.table | 2 -- definitions/grib2/tables/11/4.1.10.table | 2 -- definitions/grib2/tables/11/4.1.2.table | 2 -- definitions/grib2/tables/11/4.1.3.table | 2 -- definitions/grib2/tables/11/4.10.table | 2 -- definitions/grib2/tables/11/4.11.table | 2 -- definitions/grib2/tables/11/4.12.table | 2 -- definitions/grib2/tables/11/4.13.table | 2 -- definitions/grib2/tables/11/4.14.table | 2 -- definitions/grib2/tables/11/4.15.table | 2 -- definitions/grib2/tables/11/4.2.0.0.table | 2 -- definitions/grib2/tables/11/4.2.0.1.table | 3 --- definitions/grib2/tables/11/4.2.0.13.table | 2 -- definitions/grib2/tables/11/4.2.0.14.table | 2 -- definitions/grib2/tables/11/4.2.0.15.table | 2 -- definitions/grib2/tables/11/4.2.0.16.table | 2 -- definitions/grib2/tables/11/4.2.0.18.table | 2 -- definitions/grib2/tables/11/4.2.0.19.table | 2 -- definitions/grib2/tables/11/4.2.0.190.table | 2 -- definitions/grib2/tables/11/4.2.0.191.table | 2 -- definitions/grib2/tables/11/4.2.0.2.table | 2 -- definitions/grib2/tables/11/4.2.0.20.table | 4 ---- definitions/grib2/tables/11/4.2.0.3.table | 2 -- definitions/grib2/tables/11/4.2.0.4.table | 3 --- definitions/grib2/tables/11/4.2.0.5.table | 2 -- definitions/grib2/tables/11/4.2.0.6.table | 2 -- definitions/grib2/tables/11/4.2.0.7.table | 2 -- definitions/grib2/tables/11/4.2.1.0.table | 2 -- definitions/grib2/tables/11/4.2.1.1.table | 2 -- definitions/grib2/tables/11/4.2.10.0.table | 2 -- definitions/grib2/tables/11/4.2.10.1.table | 2 -- definitions/grib2/tables/11/4.2.10.191.table | 2 -- definitions/grib2/tables/11/4.2.10.2.table | 2 -- definitions/grib2/tables/11/4.2.10.3.table | 2 -- definitions/grib2/tables/11/4.2.10.4.table | 3 --- definitions/grib2/tables/11/4.2.2.0.table | 2 -- definitions/grib2/tables/11/4.2.2.3.table | 2 -- definitions/grib2/tables/11/4.2.2.4.table | 2 -- definitions/grib2/tables/11/4.2.3.0.table | 2 -- definitions/grib2/tables/11/4.2.3.1.table | 2 -- definitions/grib2/tables/11/4.201.table | 2 -- definitions/grib2/tables/11/4.202.table | 2 -- definitions/grib2/tables/11/4.203.table | 2 -- definitions/grib2/tables/11/4.204.table | 2 -- definitions/grib2/tables/11/4.205.table | 2 -- definitions/grib2/tables/11/4.206.table | 2 -- definitions/grib2/tables/11/4.207.table | 2 -- definitions/grib2/tables/11/4.208.table | 2 -- definitions/grib2/tables/11/4.209.table | 2 -- definitions/grib2/tables/11/4.210.table | 2 -- definitions/grib2/tables/11/4.211.table | 2 -- definitions/grib2/tables/11/4.212.table | 2 -- definitions/grib2/tables/11/4.213.table | 2 -- definitions/grib2/tables/11/4.215.table | 4 ---- definitions/grib2/tables/11/4.216.table | 1 - definitions/grib2/tables/11/4.217.table | 2 -- definitions/grib2/tables/11/4.218.table | 3 --- definitions/grib2/tables/11/4.219.table | 2 -- definitions/grib2/tables/11/4.220.table | 2 -- definitions/grib2/tables/11/4.221.table | 2 -- definitions/grib2/tables/11/4.222.table | 2 -- definitions/grib2/tables/11/4.224.table | 4 ---- definitions/grib2/tables/11/4.227.table | 2 -- definitions/grib2/tables/11/4.3.table | 2 -- definitions/grib2/tables/11/4.4.table | 3 --- definitions/grib2/tables/11/4.5.table | 7 ------- definitions/grib2/tables/11/4.6.table | 2 -- definitions/grib2/tables/11/4.7.table | 2 -- definitions/grib2/tables/11/4.8.table | 2 -- definitions/grib2/tables/11/4.9.table | 2 -- definitions/grib2/tables/11/4.91.table | 2 -- definitions/grib2/tables/11/5.0.table | 5 ----- definitions/grib2/tables/11/5.1.table | 2 -- definitions/grib2/tables/11/5.2.table | 3 --- definitions/grib2/tables/11/5.3.table | 2 -- definitions/grib2/tables/11/5.4.table | 2 -- definitions/grib2/tables/11/5.40.table | 1 - definitions/grib2/tables/11/5.5.table | 2 -- definitions/grib2/tables/11/5.6.table | 2 -- definitions/grib2/tables/11/5.7.table | 1 - definitions/grib2/tables/12/0.0.table | 3 --- definitions/grib2/tables/12/1.2.table | 2 -- definitions/grib2/tables/12/1.3.table | 2 -- definitions/grib2/tables/12/1.4.table | 2 -- definitions/grib2/tables/12/1.5.table | 2 -- definitions/grib2/tables/12/1.6.table | 2 -- definitions/grib2/tables/12/3.0.table | 2 -- definitions/grib2/tables/12/3.1.table | 15 -------------- definitions/grib2/tables/12/3.10.table | 1 - definitions/grib2/tables/12/3.11.table | 1 - definitions/grib2/tables/12/3.15.table | 5 ----- definitions/grib2/tables/12/3.2.table | 2 -- definitions/grib2/tables/12/3.20.table | 2 -- definitions/grib2/tables/12/3.21.table | 3 --- definitions/grib2/tables/12/3.3.table | 2 -- definitions/grib2/tables/12/3.4.table | 1 - definitions/grib2/tables/12/3.7.table | 1 - definitions/grib2/tables/12/3.8.table | 2 -- definitions/grib2/tables/12/3.9.table | 1 - definitions/grib2/tables/12/4.0.table | 10 ---------- definitions/grib2/tables/12/4.1.0.table | 2 -- definitions/grib2/tables/12/4.1.1.table | 2 -- definitions/grib2/tables/12/4.1.10.table | 2 -- definitions/grib2/tables/12/4.1.2.table | 2 -- definitions/grib2/tables/12/4.1.3.table | 2 -- definitions/grib2/tables/12/4.10.table | 2 -- definitions/grib2/tables/12/4.11.table | 2 -- definitions/grib2/tables/12/4.12.table | 2 -- definitions/grib2/tables/12/4.13.table | 2 -- definitions/grib2/tables/12/4.14.table | 2 -- definitions/grib2/tables/12/4.15.table | 2 -- definitions/grib2/tables/12/4.2.0.0.table | 2 -- definitions/grib2/tables/12/4.2.0.1.table | 3 --- definitions/grib2/tables/12/4.2.0.13.table | 2 -- definitions/grib2/tables/12/4.2.0.14.table | 2 -- definitions/grib2/tables/12/4.2.0.15.table | 2 -- definitions/grib2/tables/12/4.2.0.16.table | 2 -- definitions/grib2/tables/12/4.2.0.18.table | 2 -- definitions/grib2/tables/12/4.2.0.19.table | 2 -- definitions/grib2/tables/12/4.2.0.190.table | 2 -- definitions/grib2/tables/12/4.2.0.191.table | 2 -- definitions/grib2/tables/12/4.2.0.2.table | 2 -- definitions/grib2/tables/12/4.2.0.20.table | 4 ---- definitions/grib2/tables/12/4.2.0.3.table | 2 -- definitions/grib2/tables/12/4.2.0.4.table | 3 --- definitions/grib2/tables/12/4.2.0.5.table | 2 -- definitions/grib2/tables/12/4.2.0.6.table | 2 -- definitions/grib2/tables/12/4.2.0.7.table | 2 -- definitions/grib2/tables/12/4.2.1.0.table | 2 -- definitions/grib2/tables/12/4.2.1.1.table | 2 -- definitions/grib2/tables/12/4.2.10.0.table | 2 -- definitions/grib2/tables/12/4.2.10.1.table | 2 -- definitions/grib2/tables/12/4.2.10.191.table | 2 -- definitions/grib2/tables/12/4.2.10.2.table | 2 -- definitions/grib2/tables/12/4.2.10.3.table | 2 -- definitions/grib2/tables/12/4.2.10.4.table | 3 --- definitions/grib2/tables/12/4.2.2.0.table | 2 -- definitions/grib2/tables/12/4.2.2.3.table | 2 -- definitions/grib2/tables/12/4.2.2.4.table | 2 -- definitions/grib2/tables/12/4.2.3.0.table | 2 -- definitions/grib2/tables/12/4.2.3.1.table | 2 -- definitions/grib2/tables/12/4.201.table | 2 -- definitions/grib2/tables/12/4.202.table | 2 -- definitions/grib2/tables/12/4.203.table | 2 -- definitions/grib2/tables/12/4.204.table | 2 -- definitions/grib2/tables/12/4.205.table | 2 -- definitions/grib2/tables/12/4.206.table | 2 -- definitions/grib2/tables/12/4.207.table | 2 -- definitions/grib2/tables/12/4.208.table | 2 -- definitions/grib2/tables/12/4.209.table | 2 -- definitions/grib2/tables/12/4.210.table | 2 -- definitions/grib2/tables/12/4.211.table | 2 -- definitions/grib2/tables/12/4.212.table | 2 -- definitions/grib2/tables/12/4.213.table | 2 -- definitions/grib2/tables/12/4.215.table | 4 ---- definitions/grib2/tables/12/4.216.table | 1 - definitions/grib2/tables/12/4.217.table | 2 -- definitions/grib2/tables/12/4.218.table | 3 --- definitions/grib2/tables/12/4.219.table | 2 -- definitions/grib2/tables/12/4.220.table | 2 -- definitions/grib2/tables/12/4.221.table | 2 -- definitions/grib2/tables/12/4.222.table | 2 -- definitions/grib2/tables/12/4.224.table | 4 ---- definitions/grib2/tables/12/4.227.table | 2 -- definitions/grib2/tables/12/4.3.table | 2 -- definitions/grib2/tables/12/4.4.table | 3 --- definitions/grib2/tables/12/4.5.table | 7 ------- definitions/grib2/tables/12/4.6.table | 2 -- definitions/grib2/tables/12/4.7.table | 2 -- definitions/grib2/tables/12/4.8.table | 2 -- definitions/grib2/tables/12/4.9.table | 2 -- definitions/grib2/tables/12/4.91.table | 2 -- definitions/grib2/tables/12/5.0.table | 5 ----- definitions/grib2/tables/12/5.1.table | 2 -- definitions/grib2/tables/12/5.2.table | 3 --- definitions/grib2/tables/12/5.3.table | 2 -- definitions/grib2/tables/12/5.4.table | 2 -- definitions/grib2/tables/12/5.40.table | 1 - definitions/grib2/tables/12/5.5.table | 2 -- definitions/grib2/tables/12/5.6.table | 2 -- definitions/grib2/tables/12/5.7.table | 1 - definitions/grib2/tables/13/0.0.table | 3 --- definitions/grib2/tables/13/1.2.table | 2 -- definitions/grib2/tables/13/1.3.table | 2 -- definitions/grib2/tables/13/1.4.table | 2 -- definitions/grib2/tables/13/1.5.table | 2 -- definitions/grib2/tables/13/1.6.table | 2 -- definitions/grib2/tables/13/3.0.table | 2 -- definitions/grib2/tables/13/3.1.table | 15 -------------- definitions/grib2/tables/13/3.10.table | 1 - definitions/grib2/tables/13/3.11.table | 1 - definitions/grib2/tables/13/3.15.table | 5 ----- definitions/grib2/tables/13/3.2.table | 2 -- definitions/grib2/tables/13/3.20.table | 2 -- definitions/grib2/tables/13/3.21.table | 3 --- definitions/grib2/tables/13/3.3.table | 2 -- definitions/grib2/tables/13/3.4.table | 1 - definitions/grib2/tables/13/3.7.table | 1 - definitions/grib2/tables/13/3.8.table | 2 -- definitions/grib2/tables/13/3.9.table | 1 - definitions/grib2/tables/13/4.0.table | 11 ---------- definitions/grib2/tables/13/4.1.0.table | 2 -- definitions/grib2/tables/13/4.1.1.table | 2 -- definitions/grib2/tables/13/4.1.10.table | 2 -- definitions/grib2/tables/13/4.1.2.table | 2 -- definitions/grib2/tables/13/4.1.3.table | 2 -- definitions/grib2/tables/13/4.10.table | 2 -- definitions/grib2/tables/13/4.11.table | 2 -- definitions/grib2/tables/13/4.12.table | 2 -- definitions/grib2/tables/13/4.13.table | 2 -- definitions/grib2/tables/13/4.14.table | 2 -- definitions/grib2/tables/13/4.15.table | 2 -- definitions/grib2/tables/13/4.2.0.0.table | 2 -- definitions/grib2/tables/13/4.2.0.1.table | 3 --- definitions/grib2/tables/13/4.2.0.13.table | 2 -- definitions/grib2/tables/13/4.2.0.14.table | 2 -- definitions/grib2/tables/13/4.2.0.15.table | 2 -- definitions/grib2/tables/13/4.2.0.16.table | 2 -- definitions/grib2/tables/13/4.2.0.18.table | 2 -- definitions/grib2/tables/13/4.2.0.19.table | 2 -- definitions/grib2/tables/13/4.2.0.190.table | 2 -- definitions/grib2/tables/13/4.2.0.191.table | 2 -- definitions/grib2/tables/13/4.2.0.2.table | 2 -- definitions/grib2/tables/13/4.2.0.20.table | 4 ---- definitions/grib2/tables/13/4.2.0.3.table | 2 -- definitions/grib2/tables/13/4.2.0.4.table | 3 --- definitions/grib2/tables/13/4.2.0.5.table | 2 -- definitions/grib2/tables/13/4.2.0.6.table | 2 -- definitions/grib2/tables/13/4.2.0.7.table | 2 -- definitions/grib2/tables/13/4.2.1.0.table | 2 -- definitions/grib2/tables/13/4.2.1.1.table | 2 -- definitions/grib2/tables/13/4.2.10.0.table | 2 -- definitions/grib2/tables/13/4.2.10.1.table | 2 -- definitions/grib2/tables/13/4.2.10.191.table | 2 -- definitions/grib2/tables/13/4.2.10.2.table | 2 -- definitions/grib2/tables/13/4.2.10.3.table | 2 -- definitions/grib2/tables/13/4.2.10.4.table | 3 --- definitions/grib2/tables/13/4.2.2.0.table | 2 -- definitions/grib2/tables/13/4.2.2.3.table | 2 -- definitions/grib2/tables/13/4.2.2.4.table | 2 -- definitions/grib2/tables/13/4.2.3.0.table | 2 -- definitions/grib2/tables/13/4.2.3.1.table | 2 -- definitions/grib2/tables/13/4.201.table | 2 -- definitions/grib2/tables/13/4.202.table | 2 -- definitions/grib2/tables/13/4.203.table | 2 -- definitions/grib2/tables/13/4.204.table | 2 -- definitions/grib2/tables/13/4.205.table | 2 -- definitions/grib2/tables/13/4.206.table | 2 -- definitions/grib2/tables/13/4.207.table | 2 -- definitions/grib2/tables/13/4.208.table | 2 -- definitions/grib2/tables/13/4.209.table | 2 -- definitions/grib2/tables/13/4.210.table | 2 -- definitions/grib2/tables/13/4.211.table | 2 -- definitions/grib2/tables/13/4.212.table | 2 -- definitions/grib2/tables/13/4.213.table | 2 -- definitions/grib2/tables/13/4.215.table | 4 ---- definitions/grib2/tables/13/4.216.table | 1 - definitions/grib2/tables/13/4.217.table | 2 -- definitions/grib2/tables/13/4.218.table | 3 --- definitions/grib2/tables/13/4.219.table | 2 -- definitions/grib2/tables/13/4.220.table | 2 -- definitions/grib2/tables/13/4.221.table | 2 -- definitions/grib2/tables/13/4.222.table | 2 -- definitions/grib2/tables/13/4.224.table | 4 ---- definitions/grib2/tables/13/4.227.table | 2 -- definitions/grib2/tables/13/4.3.table | 2 -- definitions/grib2/tables/13/4.4.table | 3 --- definitions/grib2/tables/13/4.5.table | 7 ------- definitions/grib2/tables/13/4.6.table | 2 -- definitions/grib2/tables/13/4.7.table | 2 -- definitions/grib2/tables/13/4.8.table | 2 -- definitions/grib2/tables/13/4.9.table | 2 -- definitions/grib2/tables/13/4.91.table | 2 -- definitions/grib2/tables/13/5.0.table | 5 ----- definitions/grib2/tables/13/5.1.table | 2 -- definitions/grib2/tables/13/5.2.table | 3 --- definitions/grib2/tables/13/5.3.table | 2 -- definitions/grib2/tables/13/5.4.table | 2 -- definitions/grib2/tables/13/5.40.table | 1 - definitions/grib2/tables/13/5.5.table | 2 -- definitions/grib2/tables/13/5.6.table | 2 -- definitions/grib2/tables/13/5.7.table | 1 - definitions/grib2/tables/14/0.0.table | 3 --- definitions/grib2/tables/14/1.2.table | 2 -- definitions/grib2/tables/14/1.3.table | 2 -- definitions/grib2/tables/14/1.4.table | 2 -- definitions/grib2/tables/14/1.5.table | 2 -- definitions/grib2/tables/14/1.6.table | 2 -- definitions/grib2/tables/14/3.0.table | 2 -- definitions/grib2/tables/14/3.1.table | 15 -------------- definitions/grib2/tables/14/3.10.table | 1 - definitions/grib2/tables/14/3.11.table | 1 - definitions/grib2/tables/14/3.15.table | 5 ----- definitions/grib2/tables/14/3.2.table | 2 -- definitions/grib2/tables/14/3.20.table | 2 -- definitions/grib2/tables/14/3.21.table | 3 --- definitions/grib2/tables/14/3.3.table | 2 -- definitions/grib2/tables/14/3.7.table | 1 - definitions/grib2/tables/14/3.8.table | 2 -- definitions/grib2/tables/14/3.9.table | 1 - definitions/grib2/tables/14/4.0.table | 11 ---------- definitions/grib2/tables/14/4.1.0.table | 2 -- definitions/grib2/tables/14/4.1.1.table | 2 -- definitions/grib2/tables/14/4.1.10.table | 2 -- definitions/grib2/tables/14/4.1.2.table | 2 -- definitions/grib2/tables/14/4.1.3.table | 2 -- definitions/grib2/tables/14/4.10.table | 2 -- definitions/grib2/tables/14/4.11.table | 2 -- definitions/grib2/tables/14/4.12.table | 2 -- definitions/grib2/tables/14/4.13.table | 2 -- definitions/grib2/tables/14/4.14.table | 2 -- definitions/grib2/tables/14/4.15.table | 2 -- definitions/grib2/tables/14/4.2.0.0.table | 2 -- definitions/grib2/tables/14/4.2.0.1.table | 3 --- definitions/grib2/tables/14/4.2.0.13.table | 2 -- definitions/grib2/tables/14/4.2.0.14.table | 2 -- definitions/grib2/tables/14/4.2.0.15.table | 2 -- definitions/grib2/tables/14/4.2.0.16.table | 2 -- definitions/grib2/tables/14/4.2.0.18.table | 2 -- definitions/grib2/tables/14/4.2.0.19.table | 2 -- definitions/grib2/tables/14/4.2.0.190.table | 2 -- definitions/grib2/tables/14/4.2.0.191.table | 2 -- definitions/grib2/tables/14/4.2.0.2.table | 2 -- definitions/grib2/tables/14/4.2.0.20.table | 4 ---- definitions/grib2/tables/14/4.2.0.3.table | 2 -- definitions/grib2/tables/14/4.2.0.4.table | 3 --- definitions/grib2/tables/14/4.2.0.5.table | 2 -- definitions/grib2/tables/14/4.2.0.6.table | 2 -- definitions/grib2/tables/14/4.2.0.7.table | 2 -- definitions/grib2/tables/14/4.2.1.0.table | 2 -- definitions/grib2/tables/14/4.2.1.1.table | 2 -- definitions/grib2/tables/14/4.2.10.0.table | 2 -- definitions/grib2/tables/14/4.2.10.1.table | 2 -- definitions/grib2/tables/14/4.2.10.191.table | 2 -- definitions/grib2/tables/14/4.2.10.2.table | 2 -- definitions/grib2/tables/14/4.2.10.3.table | 2 -- definitions/grib2/tables/14/4.2.10.4.table | 3 --- definitions/grib2/tables/14/4.2.2.0.table | 2 -- definitions/grib2/tables/14/4.2.2.3.table | 2 -- definitions/grib2/tables/14/4.2.2.4.table | 2 -- definitions/grib2/tables/14/4.2.3.0.table | 2 -- definitions/grib2/tables/14/4.2.3.1.table | 2 -- definitions/grib2/tables/14/4.201.table | 2 -- definitions/grib2/tables/14/4.202.table | 2 -- definitions/grib2/tables/14/4.203.table | 2 -- definitions/grib2/tables/14/4.204.table | 2 -- definitions/grib2/tables/14/4.205.table | 2 -- definitions/grib2/tables/14/4.206.table | 2 -- definitions/grib2/tables/14/4.207.table | 2 -- definitions/grib2/tables/14/4.208.table | 2 -- definitions/grib2/tables/14/4.209.table | 2 -- definitions/grib2/tables/14/4.210.table | 2 -- definitions/grib2/tables/14/4.211.table | 2 -- definitions/grib2/tables/14/4.212.table | 2 -- definitions/grib2/tables/14/4.213.table | 2 -- definitions/grib2/tables/14/4.215.table | 4 ---- definitions/grib2/tables/14/4.216.table | 1 - definitions/grib2/tables/14/4.217.table | 2 -- definitions/grib2/tables/14/4.218.table | 3 --- definitions/grib2/tables/14/4.219.table | 2 -- definitions/grib2/tables/14/4.220.table | 2 -- definitions/grib2/tables/14/4.221.table | 2 -- definitions/grib2/tables/14/4.222.table | 2 -- definitions/grib2/tables/14/4.224.table | 4 ---- definitions/grib2/tables/14/4.227.table | 2 -- definitions/grib2/tables/14/4.241.table | 2 -- definitions/grib2/tables/14/4.242.table | 2 -- definitions/grib2/tables/14/4.243.table | 2 -- definitions/grib2/tables/14/4.3.table | 2 -- definitions/grib2/tables/14/4.4.table | 3 --- definitions/grib2/tables/14/4.5.table | 7 ------- definitions/grib2/tables/14/4.6.table | 2 -- definitions/grib2/tables/14/4.7.table | 2 -- definitions/grib2/tables/14/4.8.table | 2 -- definitions/grib2/tables/14/4.9.table | 2 -- definitions/grib2/tables/14/4.91.table | 2 -- definitions/grib2/tables/14/5.0.table | 5 ----- definitions/grib2/tables/14/5.1.table | 2 -- definitions/grib2/tables/14/5.2.table | 3 --- definitions/grib2/tables/14/5.3.table | 2 -- definitions/grib2/tables/14/5.4.table | 2 -- definitions/grib2/tables/14/5.40.table | 1 - definitions/grib2/tables/14/5.5.table | 2 -- definitions/grib2/tables/14/5.6.table | 2 -- definitions/grib2/tables/14/5.7.table | 1 - definitions/grib2/tables/15/0.0.table | 3 --- definitions/grib2/tables/15/1.2.table | 2 -- definitions/grib2/tables/15/1.3.table | 2 -- definitions/grib2/tables/15/1.4.table | 2 -- definitions/grib2/tables/15/1.5.table | 2 -- definitions/grib2/tables/15/1.6.table | 2 -- definitions/grib2/tables/15/3.0.table | 2 -- definitions/grib2/tables/15/3.1.table | 15 -------------- definitions/grib2/tables/15/3.10.table | 1 - definitions/grib2/tables/15/3.11.table | 1 - definitions/grib2/tables/15/3.15.table | 5 ----- definitions/grib2/tables/15/3.2.table | 2 -- definitions/grib2/tables/15/3.20.table | 2 -- definitions/grib2/tables/15/3.21.table | 3 --- definitions/grib2/tables/15/3.3.table | 2 -- definitions/grib2/tables/15/3.7.table | 1 - definitions/grib2/tables/15/3.8.table | 2 -- definitions/grib2/tables/15/3.9.table | 1 - definitions/grib2/tables/15/4.0.table | 12 ----------- definitions/grib2/tables/15/4.1.0.table | 2 -- definitions/grib2/tables/15/4.1.1.table | 2 -- definitions/grib2/tables/15/4.1.10.table | 2 -- definitions/grib2/tables/15/4.1.2.table | 2 -- definitions/grib2/tables/15/4.1.3.table | 2 -- definitions/grib2/tables/15/4.10.table | 2 -- definitions/grib2/tables/15/4.11.table | 2 -- definitions/grib2/tables/15/4.12.table | 2 -- definitions/grib2/tables/15/4.13.table | 2 -- definitions/grib2/tables/15/4.14.table | 2 -- definitions/grib2/tables/15/4.15.table | 2 -- definitions/grib2/tables/15/4.2.0.0.table | 2 -- definitions/grib2/tables/15/4.2.0.1.table | 3 --- definitions/grib2/tables/15/4.2.0.13.table | 2 -- definitions/grib2/tables/15/4.2.0.14.table | 2 -- definitions/grib2/tables/15/4.2.0.15.table | 2 -- definitions/grib2/tables/15/4.2.0.16.table | 2 -- definitions/grib2/tables/15/4.2.0.18.table | 2 -- definitions/grib2/tables/15/4.2.0.19.table | 2 -- definitions/grib2/tables/15/4.2.0.190.table | 2 -- definitions/grib2/tables/15/4.2.0.191.table | 2 -- definitions/grib2/tables/15/4.2.0.2.table | 2 -- definitions/grib2/tables/15/4.2.0.20.table | 4 ---- definitions/grib2/tables/15/4.2.0.3.table | 2 -- definitions/grib2/tables/15/4.2.0.4.table | 3 --- definitions/grib2/tables/15/4.2.0.5.table | 2 -- definitions/grib2/tables/15/4.2.0.6.table | 2 -- definitions/grib2/tables/15/4.2.0.7.table | 2 -- definitions/grib2/tables/15/4.2.1.0.table | 2 -- definitions/grib2/tables/15/4.2.1.1.table | 2 -- definitions/grib2/tables/15/4.2.10.0.table | 2 -- definitions/grib2/tables/15/4.2.10.1.table | 2 -- definitions/grib2/tables/15/4.2.10.191.table | 2 -- definitions/grib2/tables/15/4.2.10.2.table | 2 -- definitions/grib2/tables/15/4.2.10.3.table | 2 -- definitions/grib2/tables/15/4.2.10.4.table | 3 --- definitions/grib2/tables/15/4.2.2.0.table | 2 -- definitions/grib2/tables/15/4.2.2.3.table | 2 -- definitions/grib2/tables/15/4.2.2.4.table | 2 -- definitions/grib2/tables/15/4.2.3.0.table | 2 -- definitions/grib2/tables/15/4.2.3.1.table | 2 -- definitions/grib2/tables/15/4.201.table | 2 -- definitions/grib2/tables/15/4.202.table | 2 -- definitions/grib2/tables/15/4.203.table | 2 -- definitions/grib2/tables/15/4.204.table | 2 -- definitions/grib2/tables/15/4.205.table | 2 -- definitions/grib2/tables/15/4.206.table | 2 -- definitions/grib2/tables/15/4.207.table | 2 -- definitions/grib2/tables/15/4.208.table | 2 -- definitions/grib2/tables/15/4.209.table | 2 -- definitions/grib2/tables/15/4.210.table | 2 -- definitions/grib2/tables/15/4.211.table | 2 -- definitions/grib2/tables/15/4.212.table | 2 -- definitions/grib2/tables/15/4.213.table | 2 -- definitions/grib2/tables/15/4.215.table | 4 ---- definitions/grib2/tables/15/4.216.table | 1 - definitions/grib2/tables/15/4.217.table | 2 -- definitions/grib2/tables/15/4.218.table | 3 --- definitions/grib2/tables/15/4.219.table | 2 -- definitions/grib2/tables/15/4.220.table | 2 -- definitions/grib2/tables/15/4.221.table | 2 -- definitions/grib2/tables/15/4.222.table | 2 -- definitions/grib2/tables/15/4.224.table | 4 ---- definitions/grib2/tables/15/4.227.table | 2 -- definitions/grib2/tables/15/4.240.table | 2 -- definitions/grib2/tables/15/4.241.table | 2 -- definitions/grib2/tables/15/4.242.table | 2 -- definitions/grib2/tables/15/4.243.table | 2 -- definitions/grib2/tables/15/4.3.table | 2 -- definitions/grib2/tables/15/4.4.table | 3 --- definitions/grib2/tables/15/4.5.table | 9 --------- definitions/grib2/tables/15/4.6.table | 2 -- definitions/grib2/tables/15/4.7.table | 2 -- definitions/grib2/tables/15/4.8.table | 2 -- definitions/grib2/tables/15/4.9.table | 2 -- definitions/grib2/tables/15/4.91.table | 2 -- definitions/grib2/tables/15/5.0.table | 5 ----- definitions/grib2/tables/15/5.1.table | 2 -- definitions/grib2/tables/15/5.2.table | 3 --- definitions/grib2/tables/15/5.3.table | 2 -- definitions/grib2/tables/15/5.4.table | 2 -- definitions/grib2/tables/15/5.40.table | 1 - definitions/grib2/tables/15/5.5.table | 2 -- definitions/grib2/tables/15/5.6.table | 2 -- definitions/grib2/tables/15/5.7.table | 1 - definitions/grib2/tables/16/0.0.table | 3 --- definitions/grib2/tables/16/1.2.table | 2 -- definitions/grib2/tables/16/1.3.table | 2 -- definitions/grib2/tables/16/1.4.table | 2 -- definitions/grib2/tables/16/1.5.table | 2 -- definitions/grib2/tables/16/1.6.table | 2 -- definitions/grib2/tables/16/3.0.table | 2 -- definitions/grib2/tables/16/3.1.table | 15 -------------- definitions/grib2/tables/16/3.10.table | 1 - definitions/grib2/tables/16/3.11.table | 1 - definitions/grib2/tables/16/3.15.table | 5 ----- definitions/grib2/tables/16/3.2.table | 2 -- definitions/grib2/tables/16/3.20.table | 2 -- definitions/grib2/tables/16/3.21.table | 3 --- definitions/grib2/tables/16/3.3.table | 2 -- definitions/grib2/tables/16/3.7.table | 1 - definitions/grib2/tables/16/3.8.table | 2 -- definitions/grib2/tables/16/3.9.table | 1 - definitions/grib2/tables/16/4.0.table | 11 ---------- definitions/grib2/tables/16/4.1.0.table | 2 -- definitions/grib2/tables/16/4.1.1.table | 2 -- definitions/grib2/tables/16/4.1.10.table | 2 -- definitions/grib2/tables/16/4.1.2.table | 2 -- definitions/grib2/tables/16/4.1.3.table | 2 -- definitions/grib2/tables/16/4.10.table | 2 -- definitions/grib2/tables/16/4.11.table | 2 -- definitions/grib2/tables/16/4.12.table | 2 -- definitions/grib2/tables/16/4.13.table | 2 -- definitions/grib2/tables/16/4.14.table | 2 -- definitions/grib2/tables/16/4.15.table | 2 -- definitions/grib2/tables/16/4.2.0.0.table | 2 -- definitions/grib2/tables/16/4.2.0.1.table | 3 --- definitions/grib2/tables/16/4.2.0.13.table | 2 -- definitions/grib2/tables/16/4.2.0.14.table | 2 -- definitions/grib2/tables/16/4.2.0.15.table | 2 -- definitions/grib2/tables/16/4.2.0.16.table | 2 -- definitions/grib2/tables/16/4.2.0.18.table | 2 -- definitions/grib2/tables/16/4.2.0.19.table | 2 -- definitions/grib2/tables/16/4.2.0.190.table | 2 -- definitions/grib2/tables/16/4.2.0.191.table | 2 -- definitions/grib2/tables/16/4.2.0.2.table | 2 -- definitions/grib2/tables/16/4.2.0.20.table | 4 ---- definitions/grib2/tables/16/4.2.0.3.table | 2 -- definitions/grib2/tables/16/4.2.0.4.table | 3 --- definitions/grib2/tables/16/4.2.0.5.table | 2 -- definitions/grib2/tables/16/4.2.0.6.table | 3 --- definitions/grib2/tables/16/4.2.0.7.table | 2 -- definitions/grib2/tables/16/4.2.1.0.table | 2 -- definitions/grib2/tables/16/4.2.1.1.table | 2 -- definitions/grib2/tables/16/4.2.10.0.table | 2 -- definitions/grib2/tables/16/4.2.10.1.table | 2 -- definitions/grib2/tables/16/4.2.10.191.table | 2 -- definitions/grib2/tables/16/4.2.10.2.table | 2 -- definitions/grib2/tables/16/4.2.10.3.table | 2 -- definitions/grib2/tables/16/4.2.10.4.table | 3 --- definitions/grib2/tables/16/4.2.2.0.table | 2 -- definitions/grib2/tables/16/4.2.2.3.table | 2 -- definitions/grib2/tables/16/4.2.2.4.table | 2 -- definitions/grib2/tables/16/4.2.3.0.table | 2 -- definitions/grib2/tables/16/4.2.3.1.table | 3 --- definitions/grib2/tables/16/4.201.table | 2 -- definitions/grib2/tables/16/4.202.table | 2 -- definitions/grib2/tables/16/4.203.table | 2 -- definitions/grib2/tables/16/4.204.table | 2 -- definitions/grib2/tables/16/4.205.table | 2 -- definitions/grib2/tables/16/4.206.table | 2 -- definitions/grib2/tables/16/4.207.table | 2 -- definitions/grib2/tables/16/4.208.table | 2 -- definitions/grib2/tables/16/4.209.table | 2 -- definitions/grib2/tables/16/4.210.table | 2 -- definitions/grib2/tables/16/4.211.table | 2 -- definitions/grib2/tables/16/4.212.table | 2 -- definitions/grib2/tables/16/4.213.table | 2 -- definitions/grib2/tables/16/4.215.table | 4 ---- definitions/grib2/tables/16/4.216.table | 1 - definitions/grib2/tables/16/4.217.table | 2 -- definitions/grib2/tables/16/4.218.table | 3 --- definitions/grib2/tables/16/4.219.table | 2 -- definitions/grib2/tables/16/4.220.table | 2 -- definitions/grib2/tables/16/4.221.table | 2 -- definitions/grib2/tables/16/4.222.table | 2 -- definitions/grib2/tables/16/4.224.table | 4 ---- definitions/grib2/tables/16/4.227.table | 2 -- definitions/grib2/tables/16/4.240.table | 2 -- definitions/grib2/tables/16/4.241.table | 2 -- definitions/grib2/tables/16/4.242.table | 2 -- definitions/grib2/tables/16/4.243.table | 2 -- definitions/grib2/tables/16/4.3.table | 2 -- definitions/grib2/tables/16/4.4.table | 3 --- definitions/grib2/tables/16/4.5.table | 8 -------- definitions/grib2/tables/16/4.6.table | 2 -- definitions/grib2/tables/16/4.7.table | 2 -- definitions/grib2/tables/16/4.8.table | 2 -- definitions/grib2/tables/16/4.9.table | 2 -- definitions/grib2/tables/16/4.91.table | 2 -- definitions/grib2/tables/16/5.0.table | 5 ----- definitions/grib2/tables/16/5.1.table | 2 -- definitions/grib2/tables/16/5.2.table | 3 --- definitions/grib2/tables/16/5.3.table | 2 -- definitions/grib2/tables/16/5.4.table | 2 -- definitions/grib2/tables/16/5.40.table | 1 - definitions/grib2/tables/16/5.5.table | 2 -- definitions/grib2/tables/16/5.6.table | 2 -- definitions/grib2/tables/16/5.7.table | 1 - definitions/grib2/tables/17/0.0.table | 3 --- definitions/grib2/tables/17/1.2.table | 2 -- definitions/grib2/tables/17/1.3.table | 2 -- definitions/grib2/tables/17/1.4.table | 2 -- definitions/grib2/tables/17/1.5.table | 2 -- definitions/grib2/tables/17/1.6.table | 2 -- definitions/grib2/tables/17/3.0.table | 2 -- definitions/grib2/tables/17/3.1.table | 15 -------------- definitions/grib2/tables/17/3.10.table | 1 - definitions/grib2/tables/17/3.11.table | 1 - definitions/grib2/tables/17/3.15.table | 5 ----- definitions/grib2/tables/17/3.2.table | 2 -- definitions/grib2/tables/17/3.20.table | 2 -- definitions/grib2/tables/17/3.21.table | 3 --- definitions/grib2/tables/17/3.3.table | 2 -- definitions/grib2/tables/17/3.7.table | 1 - definitions/grib2/tables/17/3.8.table | 2 -- definitions/grib2/tables/17/3.9.table | 1 - definitions/grib2/tables/17/4.0.table | 11 ---------- definitions/grib2/tables/17/4.1.0.table | 2 -- definitions/grib2/tables/17/4.1.1.table | 2 -- definitions/grib2/tables/17/4.1.10.table | 2 -- definitions/grib2/tables/17/4.1.2.table | 2 -- definitions/grib2/tables/17/4.1.3.table | 2 -- definitions/grib2/tables/17/4.10.table | 2 -- definitions/grib2/tables/17/4.11.table | 2 -- definitions/grib2/tables/17/4.12.table | 2 -- definitions/grib2/tables/17/4.13.table | 2 -- definitions/grib2/tables/17/4.14.table | 2 -- definitions/grib2/tables/17/4.15.table | 2 -- definitions/grib2/tables/17/4.2.0.0.table | 2 -- definitions/grib2/tables/17/4.2.0.1.table | 3 --- definitions/grib2/tables/17/4.2.0.13.table | 2 -- definitions/grib2/tables/17/4.2.0.14.table | 2 -- definitions/grib2/tables/17/4.2.0.15.table | 2 -- definitions/grib2/tables/17/4.2.0.16.table | 2 -- definitions/grib2/tables/17/4.2.0.18.table | 2 -- definitions/grib2/tables/17/4.2.0.19.table | 2 -- definitions/grib2/tables/17/4.2.0.190.table | 2 -- definitions/grib2/tables/17/4.2.0.191.table | 2 -- definitions/grib2/tables/17/4.2.0.2.table | 2 -- definitions/grib2/tables/17/4.2.0.20.table | 4 ---- definitions/grib2/tables/17/4.2.0.3.table | 2 -- definitions/grib2/tables/17/4.2.0.4.table | 3 --- definitions/grib2/tables/17/4.2.0.5.table | 2 -- definitions/grib2/tables/17/4.2.0.6.table | 3 --- definitions/grib2/tables/17/4.2.0.7.table | 2 -- definitions/grib2/tables/17/4.2.1.0.table | 2 -- definitions/grib2/tables/17/4.2.1.1.table | 2 -- definitions/grib2/tables/17/4.2.10.0.table | 2 -- definitions/grib2/tables/17/4.2.10.1.table | 2 -- definitions/grib2/tables/17/4.2.10.191.table | 2 -- definitions/grib2/tables/17/4.2.10.2.table | 2 -- definitions/grib2/tables/17/4.2.10.3.table | 2 -- definitions/grib2/tables/17/4.2.10.4.table | 3 --- definitions/grib2/tables/17/4.2.2.0.table | 2 -- definitions/grib2/tables/17/4.2.2.3.table | 2 -- definitions/grib2/tables/17/4.2.2.4.table | 2 -- definitions/grib2/tables/17/4.2.3.0.table | 2 -- definitions/grib2/tables/17/4.2.3.1.table | 3 --- definitions/grib2/tables/17/4.201.table | 2 -- definitions/grib2/tables/17/4.202.table | 2 -- definitions/grib2/tables/17/4.203.table | 2 -- definitions/grib2/tables/17/4.204.table | 2 -- definitions/grib2/tables/17/4.205.table | 2 -- definitions/grib2/tables/17/4.206.table | 2 -- definitions/grib2/tables/17/4.207.table | 2 -- definitions/grib2/tables/17/4.208.table | 2 -- definitions/grib2/tables/17/4.209.table | 2 -- definitions/grib2/tables/17/4.210.table | 2 -- definitions/grib2/tables/17/4.211.table | 2 -- definitions/grib2/tables/17/4.212.table | 2 -- definitions/grib2/tables/17/4.213.table | 2 -- definitions/grib2/tables/17/4.215.table | 4 ---- definitions/grib2/tables/17/4.216.table | 1 - definitions/grib2/tables/17/4.217.table | 2 -- definitions/grib2/tables/17/4.218.table | 3 --- definitions/grib2/tables/17/4.219.table | 2 -- definitions/grib2/tables/17/4.220.table | 2 -- definitions/grib2/tables/17/4.221.table | 2 -- definitions/grib2/tables/17/4.222.table | 2 -- definitions/grib2/tables/17/4.224.table | 4 ---- definitions/grib2/tables/17/4.227.table | 2 -- definitions/grib2/tables/17/4.240.table | 2 -- definitions/grib2/tables/17/4.241.table | 2 -- definitions/grib2/tables/17/4.242.table | 2 -- definitions/grib2/tables/17/4.243.table | 2 -- definitions/grib2/tables/17/4.3.table | 2 -- definitions/grib2/tables/17/4.4.table | 3 --- definitions/grib2/tables/17/4.5.table | 9 --------- definitions/grib2/tables/17/4.6.table | 2 -- definitions/grib2/tables/17/4.7.table | 2 -- definitions/grib2/tables/17/4.8.table | 2 -- definitions/grib2/tables/17/4.9.table | 2 -- definitions/grib2/tables/17/4.91.table | 2 -- definitions/grib2/tables/17/5.0.table | 5 ----- definitions/grib2/tables/17/5.1.table | 2 -- definitions/grib2/tables/17/5.2.table | 3 --- definitions/grib2/tables/17/5.3.table | 2 -- definitions/grib2/tables/17/5.4.table | 2 -- definitions/grib2/tables/17/5.40.table | 1 - definitions/grib2/tables/17/5.5.table | 2 -- definitions/grib2/tables/17/5.6.table | 2 -- definitions/grib2/tables/17/5.7.table | 1 - definitions/grib2/tables/18/0.0.table | 3 --- definitions/grib2/tables/18/1.2.table | 2 -- definitions/grib2/tables/18/1.3.table | 2 -- definitions/grib2/tables/18/1.4.table | 2 -- definitions/grib2/tables/18/1.5.table | 2 -- definitions/grib2/tables/18/1.6.table | 2 -- definitions/grib2/tables/18/3.0.table | 2 -- definitions/grib2/tables/18/3.1.table | 15 -------------- definitions/grib2/tables/18/3.10.table | 1 - definitions/grib2/tables/18/3.11.table | 1 - definitions/grib2/tables/18/3.15.table | 5 ----- definitions/grib2/tables/18/3.2.table | 2 -- definitions/grib2/tables/18/3.20.table | 2 -- definitions/grib2/tables/18/3.21.table | 3 --- definitions/grib2/tables/18/3.3.table | 2 -- definitions/grib2/tables/18/3.7.table | 1 - definitions/grib2/tables/18/3.8.table | 2 -- definitions/grib2/tables/18/3.9.table | 1 - definitions/grib2/tables/18/4.0.table | 12 ----------- definitions/grib2/tables/18/4.1.0.table | 2 -- definitions/grib2/tables/18/4.1.1.table | 2 -- definitions/grib2/tables/18/4.1.10.table | 2 -- definitions/grib2/tables/18/4.1.2.table | 2 -- definitions/grib2/tables/18/4.1.3.table | 2 -- definitions/grib2/tables/18/4.10.table | 2 -- definitions/grib2/tables/18/4.11.table | 2 -- definitions/grib2/tables/18/4.12.table | 2 -- definitions/grib2/tables/18/4.13.table | 2 -- definitions/grib2/tables/18/4.14.table | 2 -- definitions/grib2/tables/18/4.15.table | 2 -- definitions/grib2/tables/18/4.2.0.0.table | 2 -- definitions/grib2/tables/18/4.2.0.1.table | 3 --- definitions/grib2/tables/18/4.2.0.13.table | 2 -- definitions/grib2/tables/18/4.2.0.14.table | 2 -- definitions/grib2/tables/18/4.2.0.15.table | 2 -- definitions/grib2/tables/18/4.2.0.16.table | 2 -- definitions/grib2/tables/18/4.2.0.18.table | 2 -- definitions/grib2/tables/18/4.2.0.19.table | 2 -- definitions/grib2/tables/18/4.2.0.190.table | 2 -- definitions/grib2/tables/18/4.2.0.191.table | 2 -- definitions/grib2/tables/18/4.2.0.2.table | 2 -- definitions/grib2/tables/18/4.2.0.20.table | 4 ---- definitions/grib2/tables/18/4.2.0.3.table | 2 -- definitions/grib2/tables/18/4.2.0.4.table | 3 --- definitions/grib2/tables/18/4.2.0.5.table | 2 -- definitions/grib2/tables/18/4.2.0.6.table | 3 --- definitions/grib2/tables/18/4.2.0.7.table | 2 -- definitions/grib2/tables/18/4.2.1.0.table | 2 -- definitions/grib2/tables/18/4.2.1.1.table | 2 -- definitions/grib2/tables/18/4.2.10.0.table | 2 -- definitions/grib2/tables/18/4.2.10.1.table | 2 -- definitions/grib2/tables/18/4.2.10.191.table | 2 -- definitions/grib2/tables/18/4.2.10.2.table | 2 -- definitions/grib2/tables/18/4.2.10.3.table | 2 -- definitions/grib2/tables/18/4.2.10.4.table | 3 --- definitions/grib2/tables/18/4.2.2.0.table | 2 -- definitions/grib2/tables/18/4.2.2.3.table | 2 -- definitions/grib2/tables/18/4.2.2.4.table | 2 -- definitions/grib2/tables/18/4.2.3.0.table | 2 -- definitions/grib2/tables/18/4.2.3.1.table | 3 --- definitions/grib2/tables/18/4.201.table | 2 -- definitions/grib2/tables/18/4.202.table | 2 -- definitions/grib2/tables/18/4.203.table | 2 -- definitions/grib2/tables/18/4.204.table | 2 -- definitions/grib2/tables/18/4.205.table | 2 -- definitions/grib2/tables/18/4.206.table | 2 -- definitions/grib2/tables/18/4.207.table | 2 -- definitions/grib2/tables/18/4.208.table | 2 -- definitions/grib2/tables/18/4.209.table | 2 -- definitions/grib2/tables/18/4.210.table | 2 -- definitions/grib2/tables/18/4.211.table | 2 -- definitions/grib2/tables/18/4.212.table | 2 -- definitions/grib2/tables/18/4.213.table | 2 -- definitions/grib2/tables/18/4.215.table | 4 ---- definitions/grib2/tables/18/4.216.table | 1 - definitions/grib2/tables/18/4.217.table | 2 -- definitions/grib2/tables/18/4.218.table | 3 --- definitions/grib2/tables/18/4.219.table | 2 -- definitions/grib2/tables/18/4.220.table | 2 -- definitions/grib2/tables/18/4.221.table | 2 -- definitions/grib2/tables/18/4.222.table | 2 -- definitions/grib2/tables/18/4.224.table | 4 ---- definitions/grib2/tables/18/4.227.table | 2 -- definitions/grib2/tables/18/4.240.table | 2 -- definitions/grib2/tables/18/4.241.table | 2 -- definitions/grib2/tables/18/4.242.table | 2 -- definitions/grib2/tables/18/4.243.table | 2 -- definitions/grib2/tables/18/4.3.table | 2 -- definitions/grib2/tables/18/4.4.table | 3 --- definitions/grib2/tables/18/4.5.table | 9 --------- definitions/grib2/tables/18/4.6.table | 2 -- definitions/grib2/tables/18/4.7.table | 2 -- definitions/grib2/tables/18/4.8.table | 2 -- definitions/grib2/tables/18/4.9.table | 2 -- definitions/grib2/tables/18/4.91.table | 2 -- definitions/grib2/tables/18/5.0.table | 5 ----- definitions/grib2/tables/18/5.1.table | 2 -- definitions/grib2/tables/18/5.2.table | 3 --- definitions/grib2/tables/18/5.3.table | 2 -- definitions/grib2/tables/18/5.4.table | 2 -- definitions/grib2/tables/18/5.40.table | 1 - definitions/grib2/tables/18/5.5.table | 2 -- definitions/grib2/tables/18/5.6.table | 2 -- definitions/grib2/tables/18/5.7.table | 1 - definitions/grib2/tables/19/0.0.table | 3 --- definitions/grib2/tables/19/1.2.table | 2 -- definitions/grib2/tables/19/1.3.table | 2 -- definitions/grib2/tables/19/1.4.table | 2 -- definitions/grib2/tables/19/1.5.table | 2 -- definitions/grib2/tables/19/1.6.table | 2 -- definitions/grib2/tables/19/3.0.table | 2 -- definitions/grib2/tables/19/3.1.table | 15 -------------- definitions/grib2/tables/19/3.10.table | 1 - definitions/grib2/tables/19/3.11.table | 1 - definitions/grib2/tables/19/3.15.table | 5 ----- definitions/grib2/tables/19/3.2.table | 2 -- definitions/grib2/tables/19/3.20.table | 2 -- definitions/grib2/tables/19/3.21.table | 3 --- definitions/grib2/tables/19/3.3.table | 2 -- definitions/grib2/tables/19/3.7.table | 1 - definitions/grib2/tables/19/3.8.table | 2 -- definitions/grib2/tables/19/3.9.table | 1 - definitions/grib2/tables/19/4.0.table | 13 ------------ definitions/grib2/tables/19/4.1.0.table | 2 -- definitions/grib2/tables/19/4.1.1.table | 2 -- definitions/grib2/tables/19/4.1.10.table | 2 -- definitions/grib2/tables/19/4.1.2.table | 2 -- definitions/grib2/tables/19/4.1.3.table | 2 -- definitions/grib2/tables/19/4.10.table | 2 -- definitions/grib2/tables/19/4.11.table | 2 -- definitions/grib2/tables/19/4.12.table | 2 -- definitions/grib2/tables/19/4.13.table | 2 -- definitions/grib2/tables/19/4.14.table | 2 -- definitions/grib2/tables/19/4.15.table | 2 -- definitions/grib2/tables/19/4.2.0.0.table | 2 -- definitions/grib2/tables/19/4.2.0.1.table | 3 --- definitions/grib2/tables/19/4.2.0.13.table | 2 -- definitions/grib2/tables/19/4.2.0.14.table | 2 -- definitions/grib2/tables/19/4.2.0.15.table | 2 -- definitions/grib2/tables/19/4.2.0.16.table | 2 -- definitions/grib2/tables/19/4.2.0.18.table | 2 -- definitions/grib2/tables/19/4.2.0.19.table | 2 -- definitions/grib2/tables/19/4.2.0.190.table | 2 -- definitions/grib2/tables/19/4.2.0.191.table | 2 -- definitions/grib2/tables/19/4.2.0.2.table | 2 -- definitions/grib2/tables/19/4.2.0.20.table | 4 ---- definitions/grib2/tables/19/4.2.0.3.table | 2 -- definitions/grib2/tables/19/4.2.0.4.table | 3 --- definitions/grib2/tables/19/4.2.0.5.table | 2 -- definitions/grib2/tables/19/4.2.0.6.table | 3 --- definitions/grib2/tables/19/4.2.0.7.table | 2 -- definitions/grib2/tables/19/4.2.1.0.table | 2 -- definitions/grib2/tables/19/4.2.1.1.table | 2 -- definitions/grib2/tables/19/4.2.10.0.table | 2 -- definitions/grib2/tables/19/4.2.10.1.table | 2 -- definitions/grib2/tables/19/4.2.10.191.table | 2 -- definitions/grib2/tables/19/4.2.10.2.table | 2 -- definitions/grib2/tables/19/4.2.10.3.table | 2 -- definitions/grib2/tables/19/4.2.10.4.table | 3 --- definitions/grib2/tables/19/4.2.2.0.table | 2 -- definitions/grib2/tables/19/4.2.2.3.table | 2 -- definitions/grib2/tables/19/4.2.2.4.table | 2 -- definitions/grib2/tables/19/4.2.3.0.table | 2 -- definitions/grib2/tables/19/4.2.3.1.table | 3 --- definitions/grib2/tables/19/4.201.table | 2 -- definitions/grib2/tables/19/4.202.table | 2 -- definitions/grib2/tables/19/4.203.table | 2 -- definitions/grib2/tables/19/4.204.table | 2 -- definitions/grib2/tables/19/4.205.table | 2 -- definitions/grib2/tables/19/4.206.table | 2 -- definitions/grib2/tables/19/4.207.table | 2 -- definitions/grib2/tables/19/4.208.table | 2 -- definitions/grib2/tables/19/4.209.table | 2 -- definitions/grib2/tables/19/4.210.table | 2 -- definitions/grib2/tables/19/4.211.table | 2 -- definitions/grib2/tables/19/4.212.table | 2 -- definitions/grib2/tables/19/4.213.table | 2 -- definitions/grib2/tables/19/4.215.table | 4 ---- definitions/grib2/tables/19/4.216.table | 1 - definitions/grib2/tables/19/4.217.table | 2 -- definitions/grib2/tables/19/4.218.table | 3 --- definitions/grib2/tables/19/4.219.table | 2 -- definitions/grib2/tables/19/4.220.table | 2 -- definitions/grib2/tables/19/4.221.table | 2 -- definitions/grib2/tables/19/4.222.table | 2 -- definitions/grib2/tables/19/4.224.table | 4 ---- definitions/grib2/tables/19/4.227.table | 2 -- definitions/grib2/tables/19/4.240.table | 2 -- definitions/grib2/tables/19/4.241.table | 2 -- definitions/grib2/tables/19/4.242.table | 2 -- definitions/grib2/tables/19/4.243.table | 2 -- definitions/grib2/tables/19/4.3.table | 2 -- definitions/grib2/tables/19/4.4.table | 3 --- definitions/grib2/tables/19/4.5.table | 9 --------- definitions/grib2/tables/19/4.6.table | 2 -- definitions/grib2/tables/19/4.7.table | 2 -- definitions/grib2/tables/19/4.8.table | 2 -- definitions/grib2/tables/19/4.9.table | 2 -- definitions/grib2/tables/19/4.91.table | 2 -- definitions/grib2/tables/19/5.0.table | 5 ----- definitions/grib2/tables/19/5.1.table | 2 -- definitions/grib2/tables/19/5.2.table | 3 --- definitions/grib2/tables/19/5.3.table | 2 -- definitions/grib2/tables/19/5.4.table | 2 -- definitions/grib2/tables/19/5.40.table | 1 - definitions/grib2/tables/19/5.5.table | 2 -- definitions/grib2/tables/19/5.6.table | 2 -- definitions/grib2/tables/19/5.7.table | 1 - definitions/grib2/tables/2/0.0.table | 3 --- definitions/grib2/tables/2/1.2.table | 2 -- definitions/grib2/tables/2/1.3.table | 2 -- definitions/grib2/tables/2/1.4.table | 2 -- definitions/grib2/tables/2/3.0.table | 2 -- definitions/grib2/tables/2/3.1.table | 16 --------------- definitions/grib2/tables/2/3.2.table | 2 -- definitions/grib2/tables/2/3.20.table | 2 -- definitions/grib2/tables/2/3.21.table | 3 --- definitions/grib2/tables/2/3.8.table | 2 -- definitions/grib2/tables/2/4.1.0.table | 2 -- definitions/grib2/tables/2/4.1.1.table | 2 -- definitions/grib2/tables/2/4.1.10.table | 2 -- definitions/grib2/tables/2/4.1.2.table | 2 -- definitions/grib2/tables/2/4.1.3.table | 2 -- definitions/grib2/tables/2/4.10.table | 1 - definitions/grib2/tables/2/4.11.table | 1 - definitions/grib2/tables/2/4.12.table | 1 - definitions/grib2/tables/2/4.13.table | 1 - definitions/grib2/tables/2/4.14.table | 1 - definitions/grib2/tables/2/4.15.table | 1 - definitions/grib2/tables/2/4.151.table | 1 - definitions/grib2/tables/2/4.2.0.0.table | 2 -- definitions/grib2/tables/2/4.2.0.1.table | 2 -- definitions/grib2/tables/2/4.2.0.13.table | 2 -- definitions/grib2/tables/2/4.2.0.14.table | 2 -- definitions/grib2/tables/2/4.2.0.15.table | 2 -- definitions/grib2/tables/2/4.2.0.18.table | 2 -- definitions/grib2/tables/2/4.2.0.19.table | 2 -- definitions/grib2/tables/2/4.2.0.190.table | 2 -- definitions/grib2/tables/2/4.2.0.191.table | 2 -- definitions/grib2/tables/2/4.2.0.2.table | 2 -- definitions/grib2/tables/2/4.2.0.20.table | 2 -- definitions/grib2/tables/2/4.2.0.3.table | 2 -- definitions/grib2/tables/2/4.2.0.4.table | 2 -- definitions/grib2/tables/2/4.2.0.5.table | 2 -- definitions/grib2/tables/2/4.2.0.6.table | 2 -- definitions/grib2/tables/2/4.2.0.7.table | 2 -- definitions/grib2/tables/2/4.2.1.1.table | 2 -- definitions/grib2/tables/2/4.2.10.0.table | 2 -- definitions/grib2/tables/2/4.2.10.1.table | 2 -- definitions/grib2/tables/2/4.2.10.2.table | 2 -- definitions/grib2/tables/2/4.2.10.3.table | 2 -- definitions/grib2/tables/2/4.2.10.4.table | 2 -- definitions/grib2/tables/2/4.2.2.0.table | 2 -- definitions/grib2/tables/2/4.2.2.3.table | 2 -- definitions/grib2/tables/2/4.2.3.0.table | 2 -- definitions/grib2/tables/2/4.2.3.1.table | 2 -- definitions/grib2/tables/2/4.201.table | 1 - definitions/grib2/tables/2/4.202.table | 1 - definitions/grib2/tables/2/4.203.table | 1 - definitions/grib2/tables/2/4.204.table | 1 - definitions/grib2/tables/2/4.205.table | 1 - definitions/grib2/tables/2/4.206.table | 1 - definitions/grib2/tables/2/4.207.table | 1 - definitions/grib2/tables/2/4.208.table | 1 - definitions/grib2/tables/2/4.209.table | 1 - definitions/grib2/tables/2/4.210.table | 1 - definitions/grib2/tables/2/4.211.table | 1 - definitions/grib2/tables/2/4.212.table | 1 - definitions/grib2/tables/2/4.213.table | 1 - definitions/grib2/tables/2/4.217.table | 1 - definitions/grib2/tables/2/4.220.table | 1 - definitions/grib2/tables/2/4.221.table | 1 - definitions/grib2/tables/2/4.230.table | 3 --- definitions/grib2/tables/2/4.3.table | 2 -- definitions/grib2/tables/2/4.4.table | 2 -- definitions/grib2/tables/2/4.5.table | 6 ------ definitions/grib2/tables/2/4.6.table | 1 - definitions/grib2/tables/2/4.7.table | 1 - definitions/grib2/tables/2/4.8.table | 1 - definitions/grib2/tables/2/4.9.table | 1 - definitions/grib2/tables/2/4.91.table | 1 - definitions/grib2/tables/2/5.0.table | 1 - definitions/grib2/tables/2/5.1.table | 1 - definitions/grib2/tables/2/5.2.table | 1 - definitions/grib2/tables/2/5.3.table | 1 - definitions/grib2/tables/2/5.4.table | 1 - definitions/grib2/tables/2/5.40.table | 1 - definitions/grib2/tables/2/5.5.table | 1 - definitions/grib2/tables/2/5.6.table | 1 - definitions/grib2/tables/20/0.0.table | 3 --- definitions/grib2/tables/20/1.2.table | 2 -- definitions/grib2/tables/20/1.3.table | 2 -- definitions/grib2/tables/20/1.4.table | 2 -- definitions/grib2/tables/20/1.5.table | 2 -- definitions/grib2/tables/20/1.6.table | 2 -- definitions/grib2/tables/20/3.0.table | 2 -- definitions/grib2/tables/20/3.1.table | 15 -------------- definitions/grib2/tables/20/3.10.table | 1 - definitions/grib2/tables/20/3.11.table | 1 - definitions/grib2/tables/20/3.15.table | 5 ----- definitions/grib2/tables/20/3.2.table | 2 -- definitions/grib2/tables/20/3.20.table | 2 -- definitions/grib2/tables/20/3.21.table | 3 --- definitions/grib2/tables/20/3.3.table | 2 -- definitions/grib2/tables/20/3.7.table | 1 - definitions/grib2/tables/20/3.8.table | 2 -- definitions/grib2/tables/20/3.9.table | 1 - definitions/grib2/tables/20/4.0.table | 13 ------------ definitions/grib2/tables/20/4.1.0.table | 2 -- definitions/grib2/tables/20/4.1.1.table | 2 -- definitions/grib2/tables/20/4.1.10.table | 2 -- definitions/grib2/tables/20/4.1.2.table | 2 -- definitions/grib2/tables/20/4.1.3.table | 2 -- definitions/grib2/tables/20/4.10.table | 2 -- definitions/grib2/tables/20/4.11.table | 2 -- definitions/grib2/tables/20/4.12.table | 2 -- definitions/grib2/tables/20/4.13.table | 2 -- definitions/grib2/tables/20/4.14.table | 2 -- definitions/grib2/tables/20/4.15.table | 2 -- definitions/grib2/tables/20/4.2.0.0.table | 2 -- definitions/grib2/tables/20/4.2.0.1.table | 3 --- definitions/grib2/tables/20/4.2.0.13.table | 2 -- definitions/grib2/tables/20/4.2.0.14.table | 2 -- definitions/grib2/tables/20/4.2.0.15.table | 2 -- definitions/grib2/tables/20/4.2.0.16.table | 2 -- definitions/grib2/tables/20/4.2.0.18.table | 2 -- definitions/grib2/tables/20/4.2.0.19.table | 2 -- definitions/grib2/tables/20/4.2.0.190.table | 2 -- definitions/grib2/tables/20/4.2.0.191.table | 2 -- definitions/grib2/tables/20/4.2.0.2.table | 2 -- definitions/grib2/tables/20/4.2.0.20.table | 4 ---- definitions/grib2/tables/20/4.2.0.3.table | 2 -- definitions/grib2/tables/20/4.2.0.4.table | 3 --- definitions/grib2/tables/20/4.2.0.5.table | 2 -- definitions/grib2/tables/20/4.2.0.6.table | 3 --- definitions/grib2/tables/20/4.2.0.7.table | 2 -- definitions/grib2/tables/20/4.2.1.0.table | 2 -- definitions/grib2/tables/20/4.2.1.1.table | 2 -- definitions/grib2/tables/20/4.2.10.0.table | 2 -- definitions/grib2/tables/20/4.2.10.1.table | 2 -- definitions/grib2/tables/20/4.2.10.191.table | 2 -- definitions/grib2/tables/20/4.2.10.2.table | 2 -- definitions/grib2/tables/20/4.2.10.3.table | 2 -- definitions/grib2/tables/20/4.2.10.4.table | 3 --- definitions/grib2/tables/20/4.2.2.0.table | 2 -- definitions/grib2/tables/20/4.2.2.3.table | 2 -- definitions/grib2/tables/20/4.2.2.4.table | 2 -- definitions/grib2/tables/20/4.2.3.0.table | 2 -- definitions/grib2/tables/20/4.2.3.1.table | 3 --- definitions/grib2/tables/20/4.201.table | 2 -- definitions/grib2/tables/20/4.202.table | 2 -- definitions/grib2/tables/20/4.203.table | 2 -- definitions/grib2/tables/20/4.204.table | 2 -- definitions/grib2/tables/20/4.205.table | 2 -- definitions/grib2/tables/20/4.206.table | 2 -- definitions/grib2/tables/20/4.207.table | 2 -- definitions/grib2/tables/20/4.208.table | 2 -- definitions/grib2/tables/20/4.209.table | 2 -- definitions/grib2/tables/20/4.210.table | 2 -- definitions/grib2/tables/20/4.211.table | 2 -- definitions/grib2/tables/20/4.212.table | 2 -- definitions/grib2/tables/20/4.213.table | 2 -- definitions/grib2/tables/20/4.215.table | 4 ---- definitions/grib2/tables/20/4.216.table | 1 - definitions/grib2/tables/20/4.217.table | 2 -- definitions/grib2/tables/20/4.218.table | 3 --- definitions/grib2/tables/20/4.219.table | 2 -- definitions/grib2/tables/20/4.220.table | 2 -- definitions/grib2/tables/20/4.221.table | 2 -- definitions/grib2/tables/20/4.222.table | 2 -- definitions/grib2/tables/20/4.224.table | 4 ---- definitions/grib2/tables/20/4.227.table | 2 -- definitions/grib2/tables/20/4.230.table | 12 ----------- definitions/grib2/tables/20/4.240.table | 2 -- definitions/grib2/tables/20/4.241.table | 2 -- definitions/grib2/tables/20/4.242.table | 2 -- definitions/grib2/tables/20/4.243.table | 2 -- definitions/grib2/tables/20/4.3.table | 2 -- definitions/grib2/tables/20/4.4.table | 3 --- definitions/grib2/tables/20/4.5.table | 9 --------- definitions/grib2/tables/20/4.6.table | 2 -- definitions/grib2/tables/20/4.7.table | 2 -- definitions/grib2/tables/20/4.8.table | 2 -- definitions/grib2/tables/20/4.9.table | 2 -- definitions/grib2/tables/20/4.91.table | 2 -- definitions/grib2/tables/20/5.0.table | 5 ----- definitions/grib2/tables/20/5.1.table | 2 -- definitions/grib2/tables/20/5.2.table | 3 --- definitions/grib2/tables/20/5.3.table | 2 -- definitions/grib2/tables/20/5.4.table | 2 -- definitions/grib2/tables/20/5.40.table | 1 - definitions/grib2/tables/20/5.5.table | 2 -- definitions/grib2/tables/20/5.6.table | 2 -- definitions/grib2/tables/20/5.7.table | 1 - definitions/grib2/tables/21/0.0.table | 3 --- definitions/grib2/tables/21/1.2.table | 2 -- definitions/grib2/tables/21/1.3.table | 2 -- definitions/grib2/tables/21/1.4.table | 2 -- definitions/grib2/tables/21/1.5.table | 2 -- definitions/grib2/tables/21/1.6.table | 2 -- definitions/grib2/tables/21/3.0.table | 2 -- definitions/grib2/tables/21/3.1.table | 15 -------------- definitions/grib2/tables/21/3.10.table | 1 - definitions/grib2/tables/21/3.11.table | 1 - definitions/grib2/tables/21/3.15.table | 5 ----- definitions/grib2/tables/21/3.2.table | 2 -- definitions/grib2/tables/21/3.20.table | 2 -- definitions/grib2/tables/21/3.21.table | 3 --- definitions/grib2/tables/21/3.3.table | 2 -- definitions/grib2/tables/21/3.7.table | 1 - definitions/grib2/tables/21/3.8.table | 2 -- definitions/grib2/tables/21/3.9.table | 1 - definitions/grib2/tables/21/4.0.table | 13 ------------ definitions/grib2/tables/21/4.1.0.table | 2 -- definitions/grib2/tables/21/4.1.1.table | 2 -- definitions/grib2/tables/21/4.1.10.table | 2 -- definitions/grib2/tables/21/4.1.2.table | 2 -- definitions/grib2/tables/21/4.1.3.table | 2 -- definitions/grib2/tables/21/4.10.table | 2 -- definitions/grib2/tables/21/4.11.table | 2 -- definitions/grib2/tables/21/4.12.table | 2 -- definitions/grib2/tables/21/4.13.table | 2 -- definitions/grib2/tables/21/4.14.table | 2 -- definitions/grib2/tables/21/4.15.table | 2 -- definitions/grib2/tables/21/4.16.table | 2 -- definitions/grib2/tables/21/4.2.0.0.table | 2 -- definitions/grib2/tables/21/4.2.0.1.table | 3 --- definitions/grib2/tables/21/4.2.0.13.table | 2 -- definitions/grib2/tables/21/4.2.0.14.table | 2 -- definitions/grib2/tables/21/4.2.0.15.table | 2 -- definitions/grib2/tables/21/4.2.0.16.table | 2 -- definitions/grib2/tables/21/4.2.0.18.table | 2 -- definitions/grib2/tables/21/4.2.0.19.table | 2 -- definitions/grib2/tables/21/4.2.0.190.table | 2 -- definitions/grib2/tables/21/4.2.0.191.table | 2 -- definitions/grib2/tables/21/4.2.0.2.table | 2 -- definitions/grib2/tables/21/4.2.0.20.table | 4 ---- definitions/grib2/tables/21/4.2.0.3.table | 2 -- definitions/grib2/tables/21/4.2.0.4.table | 3 --- definitions/grib2/tables/21/4.2.0.5.table | 2 -- definitions/grib2/tables/21/4.2.0.6.table | 3 --- definitions/grib2/tables/21/4.2.0.7.table | 2 -- definitions/grib2/tables/21/4.2.1.0.table | 2 -- definitions/grib2/tables/21/4.2.1.1.table | 2 -- definitions/grib2/tables/21/4.2.10.0.table | 2 -- definitions/grib2/tables/21/4.2.10.1.table | 2 -- definitions/grib2/tables/21/4.2.10.191.table | 2 -- definitions/grib2/tables/21/4.2.10.2.table | 2 -- definitions/grib2/tables/21/4.2.10.3.table | 2 -- definitions/grib2/tables/21/4.2.10.4.table | 3 --- definitions/grib2/tables/21/4.2.2.0.table | 2 -- definitions/grib2/tables/21/4.2.2.3.table | 2 -- definitions/grib2/tables/21/4.2.2.4.table | 2 -- definitions/grib2/tables/21/4.2.3.0.table | 2 -- definitions/grib2/tables/21/4.2.3.1.table | 3 --- definitions/grib2/tables/21/4.201.table | 2 -- definitions/grib2/tables/21/4.202.table | 2 -- definitions/grib2/tables/21/4.203.table | 2 -- definitions/grib2/tables/21/4.204.table | 2 -- definitions/grib2/tables/21/4.205.table | 2 -- definitions/grib2/tables/21/4.206.table | 2 -- definitions/grib2/tables/21/4.207.table | 2 -- definitions/grib2/tables/21/4.208.table | 2 -- definitions/grib2/tables/21/4.209.table | 2 -- definitions/grib2/tables/21/4.210.table | 2 -- definitions/grib2/tables/21/4.211.table | 2 -- definitions/grib2/tables/21/4.212.table | 2 -- definitions/grib2/tables/21/4.213.table | 2 -- definitions/grib2/tables/21/4.215.table | 4 ---- definitions/grib2/tables/21/4.216.table | 1 - definitions/grib2/tables/21/4.217.table | 2 -- definitions/grib2/tables/21/4.218.table | 3 --- definitions/grib2/tables/21/4.219.table | 2 -- definitions/grib2/tables/21/4.220.table | 2 -- definitions/grib2/tables/21/4.221.table | 2 -- definitions/grib2/tables/21/4.222.table | 2 -- definitions/grib2/tables/21/4.224.table | 4 ---- definitions/grib2/tables/21/4.227.table | 2 -- definitions/grib2/tables/21/4.230.table | 12 ----------- definitions/grib2/tables/21/4.233.table | 12 ----------- definitions/grib2/tables/21/4.238.table | 2 -- definitions/grib2/tables/21/4.240.table | 2 -- definitions/grib2/tables/21/4.241.table | 2 -- definitions/grib2/tables/21/4.242.table | 2 -- definitions/grib2/tables/21/4.243.table | 2 -- definitions/grib2/tables/21/4.244.table | 2 -- definitions/grib2/tables/21/4.3.table | 2 -- definitions/grib2/tables/21/4.4.table | 3 --- definitions/grib2/tables/21/4.5.table | 9 --------- definitions/grib2/tables/21/4.6.table | 2 -- definitions/grib2/tables/21/4.7.table | 2 -- definitions/grib2/tables/21/4.8.table | 2 -- definitions/grib2/tables/21/4.9.table | 2 -- definitions/grib2/tables/21/4.91.table | 2 -- definitions/grib2/tables/21/5.0.table | 5 ----- definitions/grib2/tables/21/5.1.table | 2 -- definitions/grib2/tables/21/5.2.table | 3 --- definitions/grib2/tables/21/5.3.table | 2 -- definitions/grib2/tables/21/5.4.table | 2 -- definitions/grib2/tables/21/5.40.table | 1 - definitions/grib2/tables/21/5.5.table | 2 -- definitions/grib2/tables/21/5.6.table | 2 -- definitions/grib2/tables/21/5.7.table | 1 - definitions/grib2/tables/22/0.0.table | 3 --- definitions/grib2/tables/22/1.2.table | 2 -- definitions/grib2/tables/22/1.3.table | 2 -- definitions/grib2/tables/22/1.4.table | 2 -- definitions/grib2/tables/22/1.5.table | 2 -- definitions/grib2/tables/22/1.6.table | 2 -- definitions/grib2/tables/22/3.0.table | 2 -- definitions/grib2/tables/22/3.1.table | 19 ------------------ definitions/grib2/tables/22/3.10.table | 1 - definitions/grib2/tables/22/3.11.table | 1 - definitions/grib2/tables/22/3.15.table | 5 ----- definitions/grib2/tables/22/3.2.table | 2 -- definitions/grib2/tables/22/3.20.table | 2 -- definitions/grib2/tables/22/3.21.table | 3 --- definitions/grib2/tables/22/3.25.table | 5 ----- definitions/grib2/tables/22/3.3.table | 2 -- definitions/grib2/tables/22/3.7.table | 1 - definitions/grib2/tables/22/3.8.table | 2 -- definitions/grib2/tables/22/3.9.table | 1 - definitions/grib2/tables/22/4.0.table | 13 ------------ definitions/grib2/tables/22/4.1.0.table | 2 -- definitions/grib2/tables/22/4.1.1.table | 2 -- definitions/grib2/tables/22/4.1.10.table | 2 -- definitions/grib2/tables/22/4.1.2.table | 2 -- definitions/grib2/tables/22/4.1.3.table | 2 -- definitions/grib2/tables/22/4.10.table | 2 -- definitions/grib2/tables/22/4.11.table | 2 -- definitions/grib2/tables/22/4.12.table | 2 -- definitions/grib2/tables/22/4.13.table | 2 -- definitions/grib2/tables/22/4.14.table | 2 -- definitions/grib2/tables/22/4.15.table | 2 -- definitions/grib2/tables/22/4.16.table | 2 -- definitions/grib2/tables/22/4.2.0.0.table | 2 -- definitions/grib2/tables/22/4.2.0.1.table | 3 --- definitions/grib2/tables/22/4.2.0.13.table | 2 -- definitions/grib2/tables/22/4.2.0.14.table | 2 -- definitions/grib2/tables/22/4.2.0.15.table | 2 -- definitions/grib2/tables/22/4.2.0.16.table | 2 -- definitions/grib2/tables/22/4.2.0.18.table | 2 -- definitions/grib2/tables/22/4.2.0.19.table | 2 -- definitions/grib2/tables/22/4.2.0.190.table | 2 -- definitions/grib2/tables/22/4.2.0.191.table | 2 -- definitions/grib2/tables/22/4.2.0.2.table | 2 -- definitions/grib2/tables/22/4.2.0.20.table | 4 ---- definitions/grib2/tables/22/4.2.0.3.table | 2 -- definitions/grib2/tables/22/4.2.0.4.table | 3 --- definitions/grib2/tables/22/4.2.0.5.table | 2 -- definitions/grib2/tables/22/4.2.0.6.table | 3 --- definitions/grib2/tables/22/4.2.0.7.table | 2 -- definitions/grib2/tables/22/4.2.1.0.table | 2 -- definitions/grib2/tables/22/4.2.1.1.table | 2 -- definitions/grib2/tables/22/4.2.10.0.table | 3 --- definitions/grib2/tables/22/4.2.10.1.table | 2 -- definitions/grib2/tables/22/4.2.10.191.table | 2 -- definitions/grib2/tables/22/4.2.10.2.table | 2 -- definitions/grib2/tables/22/4.2.10.3.table | 2 -- definitions/grib2/tables/22/4.2.10.4.table | 3 --- definitions/grib2/tables/22/4.2.2.0.table | 2 -- definitions/grib2/tables/22/4.2.2.3.table | 2 -- definitions/grib2/tables/22/4.2.2.4.table | 2 -- definitions/grib2/tables/22/4.2.3.0.table | 2 -- definitions/grib2/tables/22/4.2.3.1.table | 4 ---- definitions/grib2/tables/22/4.201.table | 2 -- definitions/grib2/tables/22/4.202.table | 2 -- definitions/grib2/tables/22/4.203.table | 2 -- definitions/grib2/tables/22/4.204.table | 2 -- definitions/grib2/tables/22/4.205.table | 2 -- definitions/grib2/tables/22/4.206.table | 2 -- definitions/grib2/tables/22/4.207.table | 2 -- definitions/grib2/tables/22/4.208.table | 2 -- definitions/grib2/tables/22/4.209.table | 2 -- definitions/grib2/tables/22/4.210.table | 2 -- definitions/grib2/tables/22/4.211.table | 2 -- definitions/grib2/tables/22/4.212.table | 2 -- definitions/grib2/tables/22/4.213.table | 2 -- definitions/grib2/tables/22/4.215.table | 4 ---- definitions/grib2/tables/22/4.216.table | 1 - definitions/grib2/tables/22/4.217.table | 2 -- definitions/grib2/tables/22/4.218.table | 3 --- definitions/grib2/tables/22/4.219.table | 2 -- definitions/grib2/tables/22/4.220.table | 2 -- definitions/grib2/tables/22/4.221.table | 2 -- definitions/grib2/tables/22/4.222.table | 2 -- definitions/grib2/tables/22/4.224.table | 4 ---- definitions/grib2/tables/22/4.227.table | 2 -- definitions/grib2/tables/22/4.230.table | 15 -------------- definitions/grib2/tables/22/4.233.table | 15 -------------- definitions/grib2/tables/22/4.240.table | 2 -- definitions/grib2/tables/22/4.241.table | 2 -- definitions/grib2/tables/22/4.242.table | 2 -- definitions/grib2/tables/22/4.243.table | 2 -- definitions/grib2/tables/22/4.244.table | 2 -- definitions/grib2/tables/22/4.3.table | 2 -- definitions/grib2/tables/22/4.4.table | 3 --- definitions/grib2/tables/22/4.5.table | 9 --------- definitions/grib2/tables/22/4.6.table | 2 -- definitions/grib2/tables/22/4.7.table | 2 -- definitions/grib2/tables/22/4.8.table | 2 -- definitions/grib2/tables/22/4.9.table | 2 -- definitions/grib2/tables/22/4.91.table | 2 -- definitions/grib2/tables/22/5.0.table | 7 ------- definitions/grib2/tables/22/5.1.table | 2 -- definitions/grib2/tables/22/5.2.table | 3 --- definitions/grib2/tables/22/5.25.table | 4 ---- definitions/grib2/tables/22/5.26.table | 1 - definitions/grib2/tables/22/5.3.table | 2 -- definitions/grib2/tables/22/5.4.table | 2 -- definitions/grib2/tables/22/5.40.table | 1 - definitions/grib2/tables/22/5.5.table | 2 -- definitions/grib2/tables/22/5.6.table | 2 -- definitions/grib2/tables/22/5.7.table | 1 - definitions/grib2/tables/23/0.0.table | 3 --- definitions/grib2/tables/23/1.2.table | 2 -- definitions/grib2/tables/23/1.3.table | 2 -- definitions/grib2/tables/23/1.4.table | 2 -- definitions/grib2/tables/23/1.5.table | 2 -- definitions/grib2/tables/23/1.6.table | 2 -- definitions/grib2/tables/23/3.0.table | 2 -- definitions/grib2/tables/23/3.1.table | 19 ------------------ definitions/grib2/tables/23/3.10.table | 1 - definitions/grib2/tables/23/3.11.table | 1 - definitions/grib2/tables/23/3.15.table | 5 ----- definitions/grib2/tables/23/3.2.table | 2 -- definitions/grib2/tables/23/3.20.table | 2 -- definitions/grib2/tables/23/3.21.table | 3 --- definitions/grib2/tables/23/3.25.table | 5 ----- definitions/grib2/tables/23/3.3.table | 2 -- definitions/grib2/tables/23/3.7.table | 1 - definitions/grib2/tables/23/3.8.table | 2 -- definitions/grib2/tables/23/3.9.table | 1 - definitions/grib2/tables/23/4.0.table | 13 ------------ definitions/grib2/tables/23/4.1.0.table | 2 -- definitions/grib2/tables/23/4.1.1.table | 2 -- definitions/grib2/tables/23/4.1.10.table | 2 -- definitions/grib2/tables/23/4.1.2.table | 2 -- definitions/grib2/tables/23/4.1.3.table | 2 -- definitions/grib2/tables/23/4.10.table | 2 -- definitions/grib2/tables/23/4.11.table | 2 -- definitions/grib2/tables/23/4.12.table | 2 -- definitions/grib2/tables/23/4.13.table | 2 -- definitions/grib2/tables/23/4.14.table | 2 -- definitions/grib2/tables/23/4.15.table | 2 -- definitions/grib2/tables/23/4.16.table | 2 -- definitions/grib2/tables/23/4.2.0.0.table | 2 -- definitions/grib2/tables/23/4.2.0.1.table | 3 --- definitions/grib2/tables/23/4.2.0.13.table | 2 -- definitions/grib2/tables/23/4.2.0.14.table | 2 -- definitions/grib2/tables/23/4.2.0.15.table | 2 -- definitions/grib2/tables/23/4.2.0.16.table | 2 -- definitions/grib2/tables/23/4.2.0.18.table | 2 -- definitions/grib2/tables/23/4.2.0.19.table | 2 -- definitions/grib2/tables/23/4.2.0.190.table | 2 -- definitions/grib2/tables/23/4.2.0.191.table | 2 -- definitions/grib2/tables/23/4.2.0.2.table | 2 -- definitions/grib2/tables/23/4.2.0.20.table | 4 ---- definitions/grib2/tables/23/4.2.0.3.table | 2 -- definitions/grib2/tables/23/4.2.0.4.table | 3 --- definitions/grib2/tables/23/4.2.0.5.table | 2 -- definitions/grib2/tables/23/4.2.0.6.table | 3 --- definitions/grib2/tables/23/4.2.0.7.table | 2 -- definitions/grib2/tables/23/4.2.1.0.table | 2 -- definitions/grib2/tables/23/4.2.1.1.table | 2 -- definitions/grib2/tables/23/4.2.10.0.table | 3 --- definitions/grib2/tables/23/4.2.10.1.table | 2 -- definitions/grib2/tables/23/4.2.10.191.table | 2 -- definitions/grib2/tables/23/4.2.10.2.table | 2 -- definitions/grib2/tables/23/4.2.10.3.table | 2 -- definitions/grib2/tables/23/4.2.10.4.table | 3 --- definitions/grib2/tables/23/4.2.2.0.table | 2 -- definitions/grib2/tables/23/4.2.2.3.table | 2 -- definitions/grib2/tables/23/4.2.2.4.table | 2 -- definitions/grib2/tables/23/4.2.3.0.table | 2 -- definitions/grib2/tables/23/4.2.3.1.table | 4 ---- definitions/grib2/tables/23/4.201.table | 2 -- definitions/grib2/tables/23/4.202.table | 2 -- definitions/grib2/tables/23/4.203.table | 2 -- definitions/grib2/tables/23/4.204.table | 2 -- definitions/grib2/tables/23/4.205.table | 2 -- definitions/grib2/tables/23/4.206.table | 2 -- definitions/grib2/tables/23/4.207.table | 2 -- definitions/grib2/tables/23/4.208.table | 2 -- definitions/grib2/tables/23/4.209.table | 2 -- definitions/grib2/tables/23/4.210.table | 2 -- definitions/grib2/tables/23/4.211.table | 2 -- definitions/grib2/tables/23/4.212.table | 2 -- definitions/grib2/tables/23/4.213.table | 2 -- definitions/grib2/tables/23/4.215.table | 4 ---- definitions/grib2/tables/23/4.216.table | 1 - definitions/grib2/tables/23/4.217.table | 2 -- definitions/grib2/tables/23/4.218.table | 3 --- definitions/grib2/tables/23/4.219.table | 2 -- definitions/grib2/tables/23/4.220.table | 2 -- definitions/grib2/tables/23/4.221.table | 2 -- definitions/grib2/tables/23/4.222.table | 2 -- definitions/grib2/tables/23/4.224.table | 4 ---- definitions/grib2/tables/23/4.227.table | 2 -- definitions/grib2/tables/23/4.230.table | 15 -------------- definitions/grib2/tables/23/4.233.table | 15 -------------- definitions/grib2/tables/23/4.240.table | 2 -- definitions/grib2/tables/23/4.241.table | 2 -- definitions/grib2/tables/23/4.242.table | 2 -- definitions/grib2/tables/23/4.243.table | 2 -- definitions/grib2/tables/23/4.244.table | 2 -- definitions/grib2/tables/23/4.3.table | 2 -- definitions/grib2/tables/23/4.4.table | 3 --- definitions/grib2/tables/23/4.5.table | 9 --------- definitions/grib2/tables/23/4.6.table | 2 -- definitions/grib2/tables/23/4.7.table | 2 -- definitions/grib2/tables/23/4.8.table | 2 -- definitions/grib2/tables/23/4.9.table | 2 -- definitions/grib2/tables/23/4.91.table | 2 -- definitions/grib2/tables/23/5.0.table | 7 ------- definitions/grib2/tables/23/5.1.table | 2 -- definitions/grib2/tables/23/5.2.table | 3 --- definitions/grib2/tables/23/5.25.table | 4 ---- definitions/grib2/tables/23/5.26.table | 1 - definitions/grib2/tables/23/5.3.table | 2 -- definitions/grib2/tables/23/5.4.table | 2 -- definitions/grib2/tables/23/5.40.table | 1 - definitions/grib2/tables/23/5.5.table | 2 -- definitions/grib2/tables/23/5.6.table | 2 -- definitions/grib2/tables/23/5.7.table | 1 - definitions/grib2/tables/24/0.0.table | 3 --- definitions/grib2/tables/24/1.2.table | 2 -- definitions/grib2/tables/24/1.3.table | 2 -- definitions/grib2/tables/24/1.4.table | 2 -- definitions/grib2/tables/24/1.5.table | 2 -- definitions/grib2/tables/24/1.6.table | 2 -- definitions/grib2/tables/24/3.0.table | 2 -- definitions/grib2/tables/24/3.1.table | 19 ------------------ definitions/grib2/tables/24/3.10.table | 1 - definitions/grib2/tables/24/3.11.table | 1 - definitions/grib2/tables/24/3.15.table | 5 ----- definitions/grib2/tables/24/3.2.table | 2 -- definitions/grib2/tables/24/3.20.table | 2 -- definitions/grib2/tables/24/3.21.table | 3 --- definitions/grib2/tables/24/3.25.table | 5 ----- definitions/grib2/tables/24/3.3.table | 2 -- definitions/grib2/tables/24/3.7.table | 1 - definitions/grib2/tables/24/3.8.table | 2 -- definitions/grib2/tables/24/3.9.table | 1 - definitions/grib2/tables/24/4.0.table | 14 ------------- definitions/grib2/tables/24/4.1.0.table | 2 -- definitions/grib2/tables/24/4.1.1.table | 2 -- definitions/grib2/tables/24/4.1.10.table | 2 -- definitions/grib2/tables/24/4.1.2.table | 2 -- definitions/grib2/tables/24/4.1.3.table | 2 -- definitions/grib2/tables/24/4.10.table | 2 -- definitions/grib2/tables/24/4.11.table | 2 -- definitions/grib2/tables/24/4.12.table | 2 -- definitions/grib2/tables/24/4.13.table | 2 -- definitions/grib2/tables/24/4.14.table | 2 -- definitions/grib2/tables/24/4.15.table | 2 -- definitions/grib2/tables/24/4.16.table | 2 -- definitions/grib2/tables/24/4.2.0.0.table | 2 -- definitions/grib2/tables/24/4.2.0.1.table | 4 ---- definitions/grib2/tables/24/4.2.0.13.table | 2 -- definitions/grib2/tables/24/4.2.0.14.table | 2 -- definitions/grib2/tables/24/4.2.0.15.table | 2 -- definitions/grib2/tables/24/4.2.0.16.table | 2 -- definitions/grib2/tables/24/4.2.0.18.table | 2 -- definitions/grib2/tables/24/4.2.0.19.table | 2 -- definitions/grib2/tables/24/4.2.0.190.table | 2 -- definitions/grib2/tables/24/4.2.0.191.table | 2 -- definitions/grib2/tables/24/4.2.0.2.table | 2 -- definitions/grib2/tables/24/4.2.0.20.table | 4 ---- definitions/grib2/tables/24/4.2.0.3.table | 2 -- definitions/grib2/tables/24/4.2.0.4.table | 3 --- definitions/grib2/tables/24/4.2.0.5.table | 2 -- definitions/grib2/tables/24/4.2.0.6.table | 3 --- definitions/grib2/tables/24/4.2.0.7.table | 2 -- definitions/grib2/tables/24/4.2.1.0.table | 2 -- definitions/grib2/tables/24/4.2.1.1.table | 2 -- definitions/grib2/tables/24/4.2.10.0.table | 2 -- definitions/grib2/tables/24/4.2.10.1.table | 2 -- definitions/grib2/tables/24/4.2.10.191.table | 2 -- definitions/grib2/tables/24/4.2.10.2.table | 2 -- definitions/grib2/tables/24/4.2.10.3.table | 2 -- definitions/grib2/tables/24/4.2.10.4.table | 3 --- definitions/grib2/tables/24/4.2.2.0.table | 2 -- definitions/grib2/tables/24/4.2.2.3.table | 2 -- definitions/grib2/tables/24/4.2.2.4.table | 2 -- definitions/grib2/tables/24/4.2.3.0.table | 2 -- definitions/grib2/tables/24/4.2.3.1.table | 4 ---- definitions/grib2/tables/24/4.201.table | 2 -- definitions/grib2/tables/24/4.202.table | 2 -- definitions/grib2/tables/24/4.203.table | 2 -- definitions/grib2/tables/24/4.204.table | 2 -- definitions/grib2/tables/24/4.205.table | 2 -- definitions/grib2/tables/24/4.206.table | 2 -- definitions/grib2/tables/24/4.207.table | 2 -- definitions/grib2/tables/24/4.208.table | 2 -- definitions/grib2/tables/24/4.209.table | 2 -- definitions/grib2/tables/24/4.210.table | 2 -- definitions/grib2/tables/24/4.211.table | 2 -- definitions/grib2/tables/24/4.212.table | 2 -- definitions/grib2/tables/24/4.213.table | 2 -- definitions/grib2/tables/24/4.215.table | 4 ---- definitions/grib2/tables/24/4.216.table | 1 - definitions/grib2/tables/24/4.217.table | 2 -- definitions/grib2/tables/24/4.218.table | 3 --- definitions/grib2/tables/24/4.219.table | 2 -- definitions/grib2/tables/24/4.220.table | 2 -- definitions/grib2/tables/24/4.221.table | 2 -- definitions/grib2/tables/24/4.222.table | 2 -- definitions/grib2/tables/24/4.224.table | 4 ---- definitions/grib2/tables/24/4.227.table | 2 -- definitions/grib2/tables/24/4.230.table | 15 -------------- definitions/grib2/tables/24/4.233.table | 15 -------------- definitions/grib2/tables/24/4.238.table | 2 -- definitions/grib2/tables/24/4.240.table | 2 -- definitions/grib2/tables/24/4.241.table | 2 -- definitions/grib2/tables/24/4.242.table | 2 -- definitions/grib2/tables/24/4.243.table | 2 -- definitions/grib2/tables/24/4.244.table | 2 -- definitions/grib2/tables/24/4.3.table | 2 -- definitions/grib2/tables/24/4.4.table | 3 --- definitions/grib2/tables/24/4.5.table | 9 --------- definitions/grib2/tables/24/4.6.table | 2 -- definitions/grib2/tables/24/4.7.table | 2 -- definitions/grib2/tables/24/4.8.table | 2 -- definitions/grib2/tables/24/4.9.table | 2 -- definitions/grib2/tables/24/4.91.table | 2 -- definitions/grib2/tables/24/5.0.table | 7 ------- definitions/grib2/tables/24/5.1.table | 2 -- definitions/grib2/tables/24/5.2.table | 3 --- definitions/grib2/tables/24/5.25.table | 4 ---- definitions/grib2/tables/24/5.26.table | 1 - definitions/grib2/tables/24/5.3.table | 2 -- definitions/grib2/tables/24/5.4.table | 2 -- definitions/grib2/tables/24/5.40.table | 1 - definitions/grib2/tables/24/5.5.table | 2 -- definitions/grib2/tables/24/5.6.table | 2 -- definitions/grib2/tables/24/5.7.table | 1 - definitions/grib2/tables/25/0.0.table | 4 ---- definitions/grib2/tables/25/1.2.table | 2 -- definitions/grib2/tables/25/1.3.table | 2 -- definitions/grib2/tables/25/1.4.table | 2 -- definitions/grib2/tables/25/1.5.table | 2 -- definitions/grib2/tables/25/1.6.table | 2 -- definitions/grib2/tables/25/3.0.table | 2 -- definitions/grib2/tables/25/3.1.table | 19 ------------------ definitions/grib2/tables/25/3.10.table | 1 - definitions/grib2/tables/25/3.11.table | 1 - definitions/grib2/tables/25/3.15.table | 5 ----- definitions/grib2/tables/25/3.2.table | 2 -- definitions/grib2/tables/25/3.20.table | 2 -- definitions/grib2/tables/25/3.21.table | 3 --- definitions/grib2/tables/25/3.25.table | 5 ----- definitions/grib2/tables/25/3.3.table | 2 -- definitions/grib2/tables/25/3.7.table | 1 - definitions/grib2/tables/25/3.8.table | 2 -- definitions/grib2/tables/25/3.9.table | 1 - definitions/grib2/tables/25/4.0.table | 14 ------------- definitions/grib2/tables/25/4.1.0.table | 2 -- definitions/grib2/tables/25/4.1.1.table | 2 -- definitions/grib2/tables/25/4.1.10.table | 2 -- definitions/grib2/tables/25/4.1.2.table | 2 -- definitions/grib2/tables/25/4.1.20.table | 2 -- definitions/grib2/tables/25/4.1.3.table | 2 -- definitions/grib2/tables/25/4.1.4.table | 2 -- definitions/grib2/tables/25/4.10.table | 2 -- definitions/grib2/tables/25/4.11.table | 2 -- definitions/grib2/tables/25/4.12.table | 2 -- definitions/grib2/tables/25/4.13.table | 2 -- definitions/grib2/tables/25/4.14.table | 2 -- definitions/grib2/tables/25/4.15.table | 2 -- definitions/grib2/tables/25/4.16.table | 2 -- definitions/grib2/tables/25/4.2.0.0.table | 2 -- definitions/grib2/tables/25/4.2.0.1.table | 4 ---- definitions/grib2/tables/25/4.2.0.13.table | 2 -- definitions/grib2/tables/25/4.2.0.14.table | 2 -- definitions/grib2/tables/25/4.2.0.15.table | 2 -- definitions/grib2/tables/25/4.2.0.16.table | 2 -- definitions/grib2/tables/25/4.2.0.18.table | 2 -- definitions/grib2/tables/25/4.2.0.19.table | 2 -- definitions/grib2/tables/25/4.2.0.190.table | 2 -- definitions/grib2/tables/25/4.2.0.191.table | 2 -- definitions/grib2/tables/25/4.2.0.2.table | 2 -- definitions/grib2/tables/25/4.2.0.20.table | 4 ---- definitions/grib2/tables/25/4.2.0.3.table | 2 -- definitions/grib2/tables/25/4.2.0.4.table | 3 --- definitions/grib2/tables/25/4.2.0.5.table | 2 -- definitions/grib2/tables/25/4.2.0.6.table | 3 --- definitions/grib2/tables/25/4.2.0.7.table | 2 -- definitions/grib2/tables/25/4.2.1.0.table | 2 -- definitions/grib2/tables/25/4.2.1.1.table | 2 -- definitions/grib2/tables/25/4.2.10.0.table | 2 -- definitions/grib2/tables/25/4.2.10.1.table | 2 -- definitions/grib2/tables/25/4.2.10.191.table | 2 -- definitions/grib2/tables/25/4.2.10.2.table | 2 -- definitions/grib2/tables/25/4.2.10.3.table | 2 -- definitions/grib2/tables/25/4.2.10.4.table | 3 --- definitions/grib2/tables/25/4.2.2.0.table | 2 -- definitions/grib2/tables/25/4.2.2.3.table | 2 -- definitions/grib2/tables/25/4.2.2.4.table | 2 -- definitions/grib2/tables/25/4.2.2.5.table | 2 -- definitions/grib2/tables/25/4.2.20.0.table | 2 -- definitions/grib2/tables/25/4.2.20.1.table | 2 -- definitions/grib2/tables/25/4.2.20.2.table | 2 -- definitions/grib2/tables/25/4.2.3.0.table | 2 -- definitions/grib2/tables/25/4.2.3.1.table | 4 ---- definitions/grib2/tables/25/4.2.4.0.table | 2 -- definitions/grib2/tables/25/4.2.4.1.table | 2 -- definitions/grib2/tables/25/4.2.4.10.table | 2 -- definitions/grib2/tables/25/4.2.4.2.table | 2 -- definitions/grib2/tables/25/4.2.4.3.table | 2 -- definitions/grib2/tables/25/4.2.4.4.table | 2 -- definitions/grib2/tables/25/4.2.4.5.table | 2 -- definitions/grib2/tables/25/4.2.4.6.table | 2 -- definitions/grib2/tables/25/4.2.4.7.table | 2 -- definitions/grib2/tables/25/4.2.4.8.table | 2 -- definitions/grib2/tables/25/4.2.4.9.table | 2 -- definitions/grib2/tables/25/4.201.table | 2 -- definitions/grib2/tables/25/4.202.table | 2 -- definitions/grib2/tables/25/4.203.table | 2 -- definitions/grib2/tables/25/4.204.table | 2 -- definitions/grib2/tables/25/4.205.table | 2 -- definitions/grib2/tables/25/4.206.table | 2 -- definitions/grib2/tables/25/4.207.table | 2 -- definitions/grib2/tables/25/4.208.table | 2 -- definitions/grib2/tables/25/4.209.table | 2 -- definitions/grib2/tables/25/4.210.table | 2 -- definitions/grib2/tables/25/4.211.table | 2 -- definitions/grib2/tables/25/4.212.table | 2 -- definitions/grib2/tables/25/4.213.table | 2 -- definitions/grib2/tables/25/4.215.table | 4 ---- definitions/grib2/tables/25/4.216.table | 1 - definitions/grib2/tables/25/4.217.table | 2 -- definitions/grib2/tables/25/4.218.table | 3 --- definitions/grib2/tables/25/4.219.table | 2 -- definitions/grib2/tables/25/4.220.table | 2 -- definitions/grib2/tables/25/4.221.table | 2 -- definitions/grib2/tables/25/4.222.table | 2 -- definitions/grib2/tables/25/4.224.table | 4 ---- definitions/grib2/tables/25/4.227.table | 2 -- definitions/grib2/tables/25/4.228.table | 1 - definitions/grib2/tables/25/4.230.table | 15 -------------- definitions/grib2/tables/25/4.233.table | 15 -------------- definitions/grib2/tables/25/4.238.table | 2 -- definitions/grib2/tables/25/4.240.table | 2 -- definitions/grib2/tables/25/4.241.table | 2 -- definitions/grib2/tables/25/4.242.table | 2 -- definitions/grib2/tables/25/4.243.table | 2 -- definitions/grib2/tables/25/4.244.table | 2 -- definitions/grib2/tables/25/4.3.table | 2 -- definitions/grib2/tables/25/4.4.table | 3 --- definitions/grib2/tables/25/4.5.table | 10 ---------- definitions/grib2/tables/25/4.6.table | 2 -- definitions/grib2/tables/25/4.7.table | 2 -- definitions/grib2/tables/25/4.8.table | 2 -- definitions/grib2/tables/25/4.9.table | 2 -- definitions/grib2/tables/25/4.91.table | 2 -- definitions/grib2/tables/25/5.0.table | 7 ------- definitions/grib2/tables/25/5.1.table | 2 -- definitions/grib2/tables/25/5.2.table | 3 --- definitions/grib2/tables/25/5.25.table | 4 ---- definitions/grib2/tables/25/5.26.table | 1 - definitions/grib2/tables/25/5.3.table | 2 -- definitions/grib2/tables/25/5.4.table | 2 -- definitions/grib2/tables/25/5.40.table | 1 - definitions/grib2/tables/25/5.5.table | 2 -- definitions/grib2/tables/25/5.6.table | 2 -- definitions/grib2/tables/25/5.7.table | 1 - definitions/grib2/tables/26/0.0.table | 4 ---- definitions/grib2/tables/26/1.2.table | 2 -- definitions/grib2/tables/26/1.3.table | 2 -- definitions/grib2/tables/26/1.4.table | 2 -- definitions/grib2/tables/26/1.5.table | 2 -- definitions/grib2/tables/26/1.6.table | 2 -- definitions/grib2/tables/26/3.0.table | 2 -- definitions/grib2/tables/26/3.1.table | 19 ------------------ definitions/grib2/tables/26/3.10.table | 1 - definitions/grib2/tables/26/3.11.table | 1 - definitions/grib2/tables/26/3.15.table | 5 ----- definitions/grib2/tables/26/3.2.table | 2 -- definitions/grib2/tables/26/3.20.table | 2 -- definitions/grib2/tables/26/3.21.table | 3 --- definitions/grib2/tables/26/3.25.table | 5 ----- definitions/grib2/tables/26/3.3.table | 2 -- definitions/grib2/tables/26/3.7.table | 1 - definitions/grib2/tables/26/3.8.table | 2 -- definitions/grib2/tables/26/3.9.table | 1 - definitions/grib2/tables/26/4.0.table | 14 ------------- definitions/grib2/tables/26/4.1.0.table | 2 -- definitions/grib2/tables/26/4.1.1.table | 2 -- definitions/grib2/tables/26/4.1.10.table | 2 -- definitions/grib2/tables/26/4.1.2.table | 2 -- definitions/grib2/tables/26/4.1.20.table | 2 -- definitions/grib2/tables/26/4.1.3.table | 2 -- definitions/grib2/tables/26/4.1.4.table | 2 -- definitions/grib2/tables/26/4.10.table | 2 -- definitions/grib2/tables/26/4.11.table | 2 -- definitions/grib2/tables/26/4.12.table | 2 -- definitions/grib2/tables/26/4.13.table | 2 -- definitions/grib2/tables/26/4.14.table | 2 -- definitions/grib2/tables/26/4.15.table | 2 -- definitions/grib2/tables/26/4.16.table | 2 -- definitions/grib2/tables/26/4.2.0.0.table | 2 -- definitions/grib2/tables/26/4.2.0.1.table | 3 --- definitions/grib2/tables/26/4.2.0.13.table | 2 -- definitions/grib2/tables/26/4.2.0.14.table | 2 -- definitions/grib2/tables/26/4.2.0.15.table | 2 -- definitions/grib2/tables/26/4.2.0.16.table | 2 -- definitions/grib2/tables/26/4.2.0.18.table | 2 -- definitions/grib2/tables/26/4.2.0.19.table | 2 -- definitions/grib2/tables/26/4.2.0.190.table | 2 -- definitions/grib2/tables/26/4.2.0.191.table | 2 -- definitions/grib2/tables/26/4.2.0.2.table | 2 -- definitions/grib2/tables/26/4.2.0.20.table | 4 ---- definitions/grib2/tables/26/4.2.0.3.table | 2 -- definitions/grib2/tables/26/4.2.0.4.table | 3 --- definitions/grib2/tables/26/4.2.0.5.table | 2 -- definitions/grib2/tables/26/4.2.0.6.table | 3 --- definitions/grib2/tables/26/4.2.0.7.table | 2 -- definitions/grib2/tables/26/4.2.1.0.table | 2 -- definitions/grib2/tables/26/4.2.1.1.table | 2 -- definitions/grib2/tables/26/4.2.10.0.table | 2 -- definitions/grib2/tables/26/4.2.10.1.table | 2 -- definitions/grib2/tables/26/4.2.10.191.table | 2 -- definitions/grib2/tables/26/4.2.10.2.table | 2 -- definitions/grib2/tables/26/4.2.10.3.table | 2 -- definitions/grib2/tables/26/4.2.10.4.table | 3 --- definitions/grib2/tables/26/4.2.2.0.table | 2 -- definitions/grib2/tables/26/4.2.2.3.table | 2 -- definitions/grib2/tables/26/4.2.2.4.table | 2 -- definitions/grib2/tables/26/4.2.2.5.table | 2 -- definitions/grib2/tables/26/4.2.20.0.table | 2 -- definitions/grib2/tables/26/4.2.20.1.table | 2 -- definitions/grib2/tables/26/4.2.20.2.table | 2 -- definitions/grib2/tables/26/4.2.3.0.table | 2 -- definitions/grib2/tables/26/4.2.3.1.table | 4 ---- definitions/grib2/tables/26/4.2.4.0.table | 2 -- definitions/grib2/tables/26/4.2.4.1.table | 2 -- definitions/grib2/tables/26/4.2.4.10.table | 2 -- definitions/grib2/tables/26/4.2.4.2.table | 2 -- definitions/grib2/tables/26/4.2.4.3.table | 2 -- definitions/grib2/tables/26/4.2.4.4.table | 2 -- definitions/grib2/tables/26/4.2.4.5.table | 2 -- definitions/grib2/tables/26/4.2.4.6.table | 2 -- definitions/grib2/tables/26/4.2.4.7.table | 2 -- definitions/grib2/tables/26/4.2.4.8.table | 2 -- definitions/grib2/tables/26/4.2.4.9.table | 2 -- definitions/grib2/tables/26/4.201.table | 2 -- definitions/grib2/tables/26/4.202.table | 2 -- definitions/grib2/tables/26/4.203.table | 2 -- definitions/grib2/tables/26/4.204.table | 2 -- definitions/grib2/tables/26/4.205.table | 2 -- definitions/grib2/tables/26/4.206.table | 2 -- definitions/grib2/tables/26/4.207.table | 2 -- definitions/grib2/tables/26/4.208.table | 2 -- definitions/grib2/tables/26/4.209.table | 2 -- definitions/grib2/tables/26/4.210.table | 2 -- definitions/grib2/tables/26/4.211.table | 2 -- definitions/grib2/tables/26/4.212.table | 2 -- definitions/grib2/tables/26/4.213.table | 2 -- definitions/grib2/tables/26/4.214.table | 2 -- definitions/grib2/tables/26/4.215.table | 4 ---- definitions/grib2/tables/26/4.216.table | 1 - definitions/grib2/tables/26/4.217.table | 2 -- definitions/grib2/tables/26/4.218.table | 3 --- definitions/grib2/tables/26/4.219.table | 2 -- definitions/grib2/tables/26/4.220.table | 2 -- definitions/grib2/tables/26/4.221.table | 2 -- definitions/grib2/tables/26/4.222.table | 2 -- definitions/grib2/tables/26/4.224.table | 4 ---- definitions/grib2/tables/26/4.227.table | 2 -- definitions/grib2/tables/26/4.228.table | 1 - definitions/grib2/tables/26/4.230.table | 15 -------------- definitions/grib2/tables/26/4.233.table | 15 -------------- definitions/grib2/tables/26/4.238.table | 2 -- definitions/grib2/tables/26/4.240.table | 2 -- definitions/grib2/tables/26/4.241.table | 2 -- definitions/grib2/tables/26/4.242.table | 2 -- definitions/grib2/tables/26/4.243.table | 2 -- definitions/grib2/tables/26/4.244.table | 2 -- definitions/grib2/tables/26/4.246.table | 1 - definitions/grib2/tables/26/4.247.table | 1 - definitions/grib2/tables/26/4.3.table | 2 -- definitions/grib2/tables/26/4.4.table | 3 --- definitions/grib2/tables/26/4.5.table | 10 ---------- definitions/grib2/tables/26/4.6.table | 2 -- definitions/grib2/tables/26/4.7.table | 2 -- definitions/grib2/tables/26/4.8.table | 2 -- definitions/grib2/tables/26/4.9.table | 2 -- definitions/grib2/tables/26/4.91.table | 2 -- definitions/grib2/tables/26/5.0.table | 7 ------- definitions/grib2/tables/26/5.1.table | 2 -- definitions/grib2/tables/26/5.2.table | 3 --- definitions/grib2/tables/26/5.25.table | 4 ---- definitions/grib2/tables/26/5.26.table | 1 - definitions/grib2/tables/26/5.3.table | 2 -- definitions/grib2/tables/26/5.4.table | 2 -- definitions/grib2/tables/26/5.40.table | 1 - definitions/grib2/tables/26/5.5.table | 2 -- definitions/grib2/tables/26/5.6.table | 2 -- definitions/grib2/tables/26/5.7.table | 1 - definitions/grib2/tables/27/0.0.table | 4 ---- definitions/grib2/tables/27/1.2.table | 2 -- definitions/grib2/tables/27/1.3.table | 2 -- definitions/grib2/tables/27/1.4.table | 2 -- definitions/grib2/tables/27/1.5.table | 2 -- definitions/grib2/tables/27/1.6.table | 2 -- definitions/grib2/tables/27/3.0.table | 2 -- definitions/grib2/tables/27/3.1.table | 19 ------------------ definitions/grib2/tables/27/3.10.table | 1 - definitions/grib2/tables/27/3.11.table | 1 - definitions/grib2/tables/27/3.15.table | 5 ----- definitions/grib2/tables/27/3.2.table | 2 -- definitions/grib2/tables/27/3.20.table | 2 -- definitions/grib2/tables/27/3.21.table | 3 --- definitions/grib2/tables/27/3.25.table | 5 ----- definitions/grib2/tables/27/3.3.table | 2 -- definitions/grib2/tables/27/3.7.table | 1 - definitions/grib2/tables/27/3.8.table | 2 -- definitions/grib2/tables/27/3.9.table | 1 - definitions/grib2/tables/27/4.0.table | 14 ------------- definitions/grib2/tables/27/4.1.0.table | 2 -- definitions/grib2/tables/27/4.1.1.table | 2 -- definitions/grib2/tables/27/4.1.10.table | 2 -- definitions/grib2/tables/27/4.1.2.table | 2 -- definitions/grib2/tables/27/4.1.20.table | 2 -- definitions/grib2/tables/27/4.1.3.table | 2 -- definitions/grib2/tables/27/4.1.4.table | 2 -- definitions/grib2/tables/27/4.10.table | 2 -- definitions/grib2/tables/27/4.11.table | 2 -- definitions/grib2/tables/27/4.12.table | 2 -- definitions/grib2/tables/27/4.13.table | 2 -- definitions/grib2/tables/27/4.14.table | 2 -- definitions/grib2/tables/27/4.15.table | 2 -- definitions/grib2/tables/27/4.16.table | 2 -- definitions/grib2/tables/27/4.2.0.0.table | 2 -- definitions/grib2/tables/27/4.2.0.1.table | 3 --- definitions/grib2/tables/27/4.2.0.13.table | 2 -- definitions/grib2/tables/27/4.2.0.14.table | 2 -- definitions/grib2/tables/27/4.2.0.15.table | 2 -- definitions/grib2/tables/27/4.2.0.16.table | 2 -- definitions/grib2/tables/27/4.2.0.18.table | 2 -- definitions/grib2/tables/27/4.2.0.19.table | 2 -- definitions/grib2/tables/27/4.2.0.190.table | 2 -- definitions/grib2/tables/27/4.2.0.191.table | 2 -- definitions/grib2/tables/27/4.2.0.2.table | 2 -- definitions/grib2/tables/27/4.2.0.20.table | 4 ---- definitions/grib2/tables/27/4.2.0.3.table | 2 -- definitions/grib2/tables/27/4.2.0.4.table | 3 --- definitions/grib2/tables/27/4.2.0.5.table | 2 -- definitions/grib2/tables/27/4.2.0.6.table | 3 --- definitions/grib2/tables/27/4.2.0.7.table | 2 -- definitions/grib2/tables/27/4.2.1.0.table | 2 -- definitions/grib2/tables/27/4.2.1.1.table | 2 -- definitions/grib2/tables/27/4.2.1.2.table | 2 -- definitions/grib2/tables/27/4.2.10.0.table | 2 -- definitions/grib2/tables/27/4.2.10.1.table | 2 -- definitions/grib2/tables/27/4.2.10.191.table | 2 -- definitions/grib2/tables/27/4.2.10.2.table | 2 -- definitions/grib2/tables/27/4.2.10.3.table | 2 -- definitions/grib2/tables/27/4.2.10.4.table | 3 --- definitions/grib2/tables/27/4.2.2.0.table | 2 -- definitions/grib2/tables/27/4.2.2.3.table | 2 -- definitions/grib2/tables/27/4.2.2.4.table | 2 -- definitions/grib2/tables/27/4.2.2.5.table | 2 -- definitions/grib2/tables/27/4.2.20.0.table | 2 -- definitions/grib2/tables/27/4.2.20.1.table | 2 -- definitions/grib2/tables/27/4.2.20.2.table | 2 -- definitions/grib2/tables/27/4.2.3.0.table | 2 -- definitions/grib2/tables/27/4.2.3.1.table | 4 ---- definitions/grib2/tables/27/4.2.4.0.table | 2 -- definitions/grib2/tables/27/4.2.4.1.table | 2 -- definitions/grib2/tables/27/4.2.4.10.table | 2 -- definitions/grib2/tables/27/4.2.4.2.table | 2 -- definitions/grib2/tables/27/4.2.4.3.table | 2 -- definitions/grib2/tables/27/4.2.4.4.table | 2 -- definitions/grib2/tables/27/4.2.4.5.table | 2 -- definitions/grib2/tables/27/4.2.4.6.table | 2 -- definitions/grib2/tables/27/4.2.4.7.table | 2 -- definitions/grib2/tables/27/4.2.4.8.table | 2 -- definitions/grib2/tables/27/4.2.4.9.table | 2 -- definitions/grib2/tables/27/4.201.table | 2 -- definitions/grib2/tables/27/4.202.table | 2 -- definitions/grib2/tables/27/4.203.table | 2 -- definitions/grib2/tables/27/4.204.table | 2 -- definitions/grib2/tables/27/4.205.table | 2 -- definitions/grib2/tables/27/4.206.table | 2 -- definitions/grib2/tables/27/4.207.table | 2 -- definitions/grib2/tables/27/4.208.table | 2 -- definitions/grib2/tables/27/4.209.table | 2 -- definitions/grib2/tables/27/4.210.table | 2 -- definitions/grib2/tables/27/4.211.table | 2 -- definitions/grib2/tables/27/4.212.table | 2 -- definitions/grib2/tables/27/4.213.table | 2 -- definitions/grib2/tables/27/4.214.table | 2 -- definitions/grib2/tables/27/4.215.table | 4 ---- definitions/grib2/tables/27/4.216.table | 1 - definitions/grib2/tables/27/4.217.table | 2 -- definitions/grib2/tables/27/4.218.table | 3 --- definitions/grib2/tables/27/4.219.table | 2 -- definitions/grib2/tables/27/4.220.table | 2 -- definitions/grib2/tables/27/4.221.table | 2 -- definitions/grib2/tables/27/4.222.table | 2 -- definitions/grib2/tables/27/4.224.table | 4 ---- definitions/grib2/tables/27/4.227.table | 2 -- definitions/grib2/tables/27/4.228.table | 1 - definitions/grib2/tables/27/4.230.table | 15 -------------- definitions/grib2/tables/27/4.233.table | 15 -------------- definitions/grib2/tables/27/4.238.table | 2 -- definitions/grib2/tables/27/4.240.table | 2 -- definitions/grib2/tables/27/4.241.table | 2 -- definitions/grib2/tables/27/4.242.table | 2 -- definitions/grib2/tables/27/4.243.table | 2 -- definitions/grib2/tables/27/4.244.table | 2 -- definitions/grib2/tables/27/4.246.table | 1 - definitions/grib2/tables/27/4.247.table | 1 - definitions/grib2/tables/27/4.248.table | 2 -- definitions/grib2/tables/27/4.3.table | 2 -- definitions/grib2/tables/27/4.4.table | 3 --- definitions/grib2/tables/27/4.5.table | 10 ---------- definitions/grib2/tables/27/4.6.table | 2 -- definitions/grib2/tables/27/4.7.table | 2 -- definitions/grib2/tables/27/4.8.table | 2 -- definitions/grib2/tables/27/4.9.table | 2 -- definitions/grib2/tables/27/4.91.table | 2 -- definitions/grib2/tables/27/5.0.table | 7 ------- definitions/grib2/tables/27/5.1.table | 2 -- definitions/grib2/tables/27/5.2.table | 3 --- definitions/grib2/tables/27/5.25.table | 4 ---- definitions/grib2/tables/27/5.26.table | 1 - definitions/grib2/tables/27/5.3.table | 2 -- definitions/grib2/tables/27/5.4.table | 2 -- definitions/grib2/tables/27/5.40.table | 1 - definitions/grib2/tables/27/5.5.table | 2 -- definitions/grib2/tables/27/5.6.table | 2 -- definitions/grib2/tables/27/5.7.table | 1 - definitions/grib2/tables/28/0.0.table | 4 ---- definitions/grib2/tables/28/1.2.table | 2 -- definitions/grib2/tables/28/1.3.table | 2 -- definitions/grib2/tables/28/1.4.table | 2 -- definitions/grib2/tables/28/1.5.table | 2 -- definitions/grib2/tables/28/1.6.table | 2 -- definitions/grib2/tables/28/3.0.table | 2 -- definitions/grib2/tables/28/3.1.table | 19 ------------------ definitions/grib2/tables/28/3.10.table | 1 - definitions/grib2/tables/28/3.11.table | 1 - definitions/grib2/tables/28/3.15.table | 5 ----- definitions/grib2/tables/28/3.2.table | 2 -- definitions/grib2/tables/28/3.20.table | 2 -- definitions/grib2/tables/28/3.21.table | 3 --- definitions/grib2/tables/28/3.25.table | 5 ----- definitions/grib2/tables/28/3.3.table | 2 -- definitions/grib2/tables/28/3.7.table | 1 - definitions/grib2/tables/28/3.8.table | 2 -- definitions/grib2/tables/28/3.9.table | 1 - definitions/grib2/tables/28/4.0.table | 14 ------------- definitions/grib2/tables/28/4.1.0.table | 2 -- definitions/grib2/tables/28/4.1.1.table | 2 -- definitions/grib2/tables/28/4.1.10.table | 2 -- definitions/grib2/tables/28/4.1.2.table | 2 -- definitions/grib2/tables/28/4.1.20.table | 2 -- definitions/grib2/tables/28/4.1.3.table | 2 -- definitions/grib2/tables/28/4.1.4.table | 2 -- definitions/grib2/tables/28/4.10.table | 3 --- definitions/grib2/tables/28/4.11.table | 2 -- definitions/grib2/tables/28/4.12.table | 2 -- definitions/grib2/tables/28/4.13.table | 2 -- definitions/grib2/tables/28/4.14.table | 2 -- definitions/grib2/tables/28/4.15.table | 2 -- definitions/grib2/tables/28/4.16.table | 2 -- definitions/grib2/tables/28/4.2.0.0.table | 2 -- definitions/grib2/tables/28/4.2.0.1.table | 3 --- definitions/grib2/tables/28/4.2.0.13.table | 2 -- definitions/grib2/tables/28/4.2.0.14.table | 2 -- definitions/grib2/tables/28/4.2.0.15.table | 2 -- definitions/grib2/tables/28/4.2.0.16.table | 2 -- definitions/grib2/tables/28/4.2.0.18.table | 2 -- definitions/grib2/tables/28/4.2.0.19.table | 2 -- definitions/grib2/tables/28/4.2.0.190.table | 2 -- definitions/grib2/tables/28/4.2.0.191.table | 2 -- definitions/grib2/tables/28/4.2.0.2.table | 2 -- definitions/grib2/tables/28/4.2.0.20.table | 4 ---- definitions/grib2/tables/28/4.2.0.3.table | 2 -- definitions/grib2/tables/28/4.2.0.4.table | 3 --- definitions/grib2/tables/28/4.2.0.5.table | 2 -- definitions/grib2/tables/28/4.2.0.6.table | 3 --- definitions/grib2/tables/28/4.2.0.7.table | 2 -- definitions/grib2/tables/28/4.2.1.0.table | 2 -- definitions/grib2/tables/28/4.2.1.1.table | 2 -- definitions/grib2/tables/28/4.2.1.2.table | 2 -- definitions/grib2/tables/28/4.2.10.0.table | 2 -- definitions/grib2/tables/28/4.2.10.1.table | 2 -- definitions/grib2/tables/28/4.2.10.191.table | 2 -- definitions/grib2/tables/28/4.2.10.2.table | 2 -- definitions/grib2/tables/28/4.2.10.3.table | 2 -- definitions/grib2/tables/28/4.2.10.4.table | 3 --- definitions/grib2/tables/28/4.2.2.0.table | 2 -- definitions/grib2/tables/28/4.2.2.3.table | 2 -- definitions/grib2/tables/28/4.2.2.4.table | 2 -- definitions/grib2/tables/28/4.2.2.5.table | 2 -- definitions/grib2/tables/28/4.2.20.0.table | 2 -- definitions/grib2/tables/28/4.2.20.1.table | 2 -- definitions/grib2/tables/28/4.2.20.2.table | 2 -- definitions/grib2/tables/28/4.2.3.0.table | 2 -- definitions/grib2/tables/28/4.2.3.1.table | 4 ---- definitions/grib2/tables/28/4.2.4.0.table | 2 -- definitions/grib2/tables/28/4.2.4.1.table | 2 -- definitions/grib2/tables/28/4.2.4.10.table | 2 -- definitions/grib2/tables/28/4.2.4.2.table | 2 -- definitions/grib2/tables/28/4.2.4.3.table | 2 -- definitions/grib2/tables/28/4.2.4.4.table | 2 -- definitions/grib2/tables/28/4.2.4.5.table | 2 -- definitions/grib2/tables/28/4.2.4.6.table | 2 -- definitions/grib2/tables/28/4.2.4.7.table | 2 -- definitions/grib2/tables/28/4.2.4.8.table | 2 -- definitions/grib2/tables/28/4.2.4.9.table | 2 -- definitions/grib2/tables/28/4.201.table | 2 -- definitions/grib2/tables/28/4.202.table | 2 -- definitions/grib2/tables/28/4.203.table | 2 -- definitions/grib2/tables/28/4.204.table | 2 -- definitions/grib2/tables/28/4.205.table | 2 -- definitions/grib2/tables/28/4.206.table | 2 -- definitions/grib2/tables/28/4.207.table | 2 -- definitions/grib2/tables/28/4.208.table | 2 -- definitions/grib2/tables/28/4.209.table | 2 -- definitions/grib2/tables/28/4.210.table | 2 -- definitions/grib2/tables/28/4.211.table | 2 -- definitions/grib2/tables/28/4.212.table | 2 -- definitions/grib2/tables/28/4.213.table | 2 -- definitions/grib2/tables/28/4.214.table | 2 -- definitions/grib2/tables/28/4.215.table | 4 ---- definitions/grib2/tables/28/4.216.table | 1 - definitions/grib2/tables/28/4.217.table | 2 -- definitions/grib2/tables/28/4.218.table | 3 --- definitions/grib2/tables/28/4.219.table | 2 -- definitions/grib2/tables/28/4.220.table | 2 -- definitions/grib2/tables/28/4.221.table | 2 -- definitions/grib2/tables/28/4.222.table | 2 -- definitions/grib2/tables/28/4.224.table | 4 ---- definitions/grib2/tables/28/4.227.table | 2 -- definitions/grib2/tables/28/4.228.table | 1 - definitions/grib2/tables/28/4.230.table | 15 -------------- definitions/grib2/tables/28/4.233.table | 15 -------------- definitions/grib2/tables/28/4.238.table | 2 -- definitions/grib2/tables/28/4.240.table | 2 -- definitions/grib2/tables/28/4.241.table | 2 -- definitions/grib2/tables/28/4.242.table | 2 -- definitions/grib2/tables/28/4.243.table | 2 -- definitions/grib2/tables/28/4.244.table | 2 -- definitions/grib2/tables/28/4.246.table | 1 - definitions/grib2/tables/28/4.247.table | 1 - definitions/grib2/tables/28/4.248.table | 2 -- definitions/grib2/tables/28/4.249.table | 1 - definitions/grib2/tables/28/4.3.table | 2 -- definitions/grib2/tables/28/4.4.table | 3 --- definitions/grib2/tables/28/4.5.table | 10 ---------- definitions/grib2/tables/28/4.6.table | 2 -- definitions/grib2/tables/28/4.7.table | 2 -- definitions/grib2/tables/28/4.8.table | 2 -- definitions/grib2/tables/28/4.9.table | 2 -- definitions/grib2/tables/28/4.91.table | 2 -- definitions/grib2/tables/28/5.0.table | 7 ------- definitions/grib2/tables/28/5.1.table | 2 -- definitions/grib2/tables/28/5.2.table | 3 --- definitions/grib2/tables/28/5.25.table | 4 ---- definitions/grib2/tables/28/5.26.table | 1 - definitions/grib2/tables/28/5.3.table | 2 -- definitions/grib2/tables/28/5.4.table | 2 -- definitions/grib2/tables/28/5.40.table | 1 - definitions/grib2/tables/28/5.5.table | 2 -- definitions/grib2/tables/28/5.6.table | 2 -- definitions/grib2/tables/28/5.7.table | 1 - definitions/grib2/tables/29/0.0.table | 4 ---- definitions/grib2/tables/29/1.2.table | 2 -- definitions/grib2/tables/29/1.3.table | 2 -- definitions/grib2/tables/29/1.4.table | 2 -- definitions/grib2/tables/29/1.5.table | 2 -- definitions/grib2/tables/29/1.6.table | 2 -- definitions/grib2/tables/29/3.0.table | 2 -- definitions/grib2/tables/29/3.1.table | 19 ------------------ definitions/grib2/tables/29/3.10.table | 1 - definitions/grib2/tables/29/3.11.table | 1 - definitions/grib2/tables/29/3.15.table | 5 ----- definitions/grib2/tables/29/3.2.table | 2 -- definitions/grib2/tables/29/3.20.table | 2 -- definitions/grib2/tables/29/3.21.table | 3 --- definitions/grib2/tables/29/3.25.table | 5 ----- definitions/grib2/tables/29/3.3.table | 2 -- definitions/grib2/tables/29/3.7.table | 1 - definitions/grib2/tables/29/3.8.table | 2 -- definitions/grib2/tables/29/3.9.table | 1 - definitions/grib2/tables/29/4.0.table | 14 ------------- definitions/grib2/tables/29/4.1.0.table | 2 -- definitions/grib2/tables/29/4.1.1.table | 2 -- definitions/grib2/tables/29/4.1.10.table | 2 -- definitions/grib2/tables/29/4.1.2.table | 2 -- definitions/grib2/tables/29/4.1.20.table | 2 -- definitions/grib2/tables/29/4.1.3.table | 2 -- definitions/grib2/tables/29/4.1.4.table | 2 -- definitions/grib2/tables/29/4.10.table | 3 --- definitions/grib2/tables/29/4.11.table | 2 -- definitions/grib2/tables/29/4.12.table | 2 -- definitions/grib2/tables/29/4.13.table | 2 -- definitions/grib2/tables/29/4.14.table | 2 -- definitions/grib2/tables/29/4.15.table | 2 -- definitions/grib2/tables/29/4.16.table | 2 -- definitions/grib2/tables/29/4.2.0.0.table | 2 -- definitions/grib2/tables/29/4.2.0.1.table | 3 --- definitions/grib2/tables/29/4.2.0.13.table | 2 -- definitions/grib2/tables/29/4.2.0.14.table | 2 -- definitions/grib2/tables/29/4.2.0.15.table | 2 -- definitions/grib2/tables/29/4.2.0.16.table | 2 -- definitions/grib2/tables/29/4.2.0.18.table | 2 -- definitions/grib2/tables/29/4.2.0.19.table | 2 -- definitions/grib2/tables/29/4.2.0.190.table | 2 -- definitions/grib2/tables/29/4.2.0.191.table | 2 -- definitions/grib2/tables/29/4.2.0.2.table | 2 -- definitions/grib2/tables/29/4.2.0.20.table | 4 ---- definitions/grib2/tables/29/4.2.0.3.table | 2 -- definitions/grib2/tables/29/4.2.0.4.table | 3 --- definitions/grib2/tables/29/4.2.0.5.table | 2 -- definitions/grib2/tables/29/4.2.0.6.table | 3 --- definitions/grib2/tables/29/4.2.0.7.table | 2 -- definitions/grib2/tables/29/4.2.1.0.table | 2 -- definitions/grib2/tables/29/4.2.1.1.table | 2 -- definitions/grib2/tables/29/4.2.1.2.table | 2 -- definitions/grib2/tables/29/4.2.10.0.table | 2 -- definitions/grib2/tables/29/4.2.10.1.table | 2 -- definitions/grib2/tables/29/4.2.10.191.table | 2 -- definitions/grib2/tables/29/4.2.10.2.table | 2 -- definitions/grib2/tables/29/4.2.10.3.table | 2 -- definitions/grib2/tables/29/4.2.10.4.table | 3 --- definitions/grib2/tables/29/4.2.2.0.table | 2 -- definitions/grib2/tables/29/4.2.2.3.table | 2 -- definitions/grib2/tables/29/4.2.2.4.table | 2 -- definitions/grib2/tables/29/4.2.2.5.table | 2 -- definitions/grib2/tables/29/4.2.20.0.table | 2 -- definitions/grib2/tables/29/4.2.20.1.table | 2 -- definitions/grib2/tables/29/4.2.20.2.table | 2 -- definitions/grib2/tables/29/4.2.3.0.table | 2 -- definitions/grib2/tables/29/4.2.3.1.table | 4 ---- definitions/grib2/tables/29/4.2.4.0.table | 2 -- definitions/grib2/tables/29/4.2.4.1.table | 2 -- definitions/grib2/tables/29/4.2.4.10.table | 2 -- definitions/grib2/tables/29/4.2.4.2.table | 2 -- definitions/grib2/tables/29/4.2.4.3.table | 2 -- definitions/grib2/tables/29/4.2.4.4.table | 2 -- definitions/grib2/tables/29/4.2.4.5.table | 2 -- definitions/grib2/tables/29/4.2.4.6.table | 2 -- definitions/grib2/tables/29/4.2.4.7.table | 2 -- definitions/grib2/tables/29/4.2.4.8.table | 2 -- definitions/grib2/tables/29/4.2.4.9.table | 2 -- definitions/grib2/tables/29/4.201.table | 2 -- definitions/grib2/tables/29/4.202.table | 2 -- definitions/grib2/tables/29/4.203.table | 2 -- definitions/grib2/tables/29/4.204.table | 2 -- definitions/grib2/tables/29/4.205.table | 2 -- definitions/grib2/tables/29/4.206.table | 2 -- definitions/grib2/tables/29/4.207.table | 2 -- definitions/grib2/tables/29/4.208.table | 2 -- definitions/grib2/tables/29/4.209.table | 2 -- definitions/grib2/tables/29/4.210.table | 2 -- definitions/grib2/tables/29/4.211.table | 2 -- definitions/grib2/tables/29/4.212.table | 2 -- definitions/grib2/tables/29/4.213.table | 2 -- definitions/grib2/tables/29/4.214.table | 2 -- definitions/grib2/tables/29/4.215.table | 4 ---- definitions/grib2/tables/29/4.216.table | 1 - definitions/grib2/tables/29/4.217.table | 2 -- definitions/grib2/tables/29/4.218.table | 3 --- definitions/grib2/tables/29/4.219.table | 2 -- definitions/grib2/tables/29/4.220.table | 2 -- definitions/grib2/tables/29/4.221.table | 2 -- definitions/grib2/tables/29/4.222.table | 2 -- definitions/grib2/tables/29/4.224.table | 4 ---- definitions/grib2/tables/29/4.227.table | 2 -- definitions/grib2/tables/29/4.228.table | 1 - definitions/grib2/tables/29/4.230.table | 15 -------------- definitions/grib2/tables/29/4.233.table | 15 -------------- definitions/grib2/tables/29/4.238.table | 2 -- definitions/grib2/tables/29/4.240.table | 2 -- definitions/grib2/tables/29/4.241.table | 2 -- definitions/grib2/tables/29/4.242.table | 2 -- definitions/grib2/tables/29/4.243.table | 2 -- definitions/grib2/tables/29/4.244.table | 2 -- definitions/grib2/tables/29/4.246.table | 1 - definitions/grib2/tables/29/4.247.table | 1 - definitions/grib2/tables/29/4.248.table | 2 -- definitions/grib2/tables/29/4.249.table | 1 - definitions/grib2/tables/29/4.250.table | 2 -- definitions/grib2/tables/29/4.3.table | 2 -- definitions/grib2/tables/29/4.4.table | 3 --- definitions/grib2/tables/29/4.5.table | 10 ---------- definitions/grib2/tables/29/4.6.table | 2 -- definitions/grib2/tables/29/4.7.table | 2 -- definitions/grib2/tables/29/4.8.table | 2 -- definitions/grib2/tables/29/4.9.table | 2 -- definitions/grib2/tables/29/4.91.table | 2 -- definitions/grib2/tables/29/5.0.table | 7 ------- definitions/grib2/tables/29/5.1.table | 2 -- definitions/grib2/tables/29/5.2.table | 3 --- definitions/grib2/tables/29/5.25.table | 4 ---- definitions/grib2/tables/29/5.26.table | 1 - definitions/grib2/tables/29/5.3.table | 2 -- definitions/grib2/tables/29/5.4.table | 2 -- definitions/grib2/tables/29/5.40.table | 1 - definitions/grib2/tables/29/5.5.table | 2 -- definitions/grib2/tables/29/5.6.table | 2 -- definitions/grib2/tables/29/5.7.table | 1 - definitions/grib2/tables/3/0.0.table | 3 --- definitions/grib2/tables/3/1.2.table | 2 -- definitions/grib2/tables/3/1.3.table | 2 -- definitions/grib2/tables/3/1.4.table | 2 -- definitions/grib2/tables/3/3.0.table | 2 -- definitions/grib2/tables/3/3.1.table | 16 --------------- definitions/grib2/tables/3/3.2.table | 2 -- definitions/grib2/tables/3/3.20.table | 2 -- definitions/grib2/tables/3/3.21.table | 3 --- definitions/grib2/tables/3/3.7.table | 1 - definitions/grib2/tables/3/3.8.table | 2 -- definitions/grib2/tables/3/4.1.0.table | 2 -- definitions/grib2/tables/3/4.1.1.table | 2 -- definitions/grib2/tables/3/4.1.10.table | 2 -- definitions/grib2/tables/3/4.1.2.table | 2 -- definitions/grib2/tables/3/4.1.3.table | 2 -- definitions/grib2/tables/3/4.10.table | 1 - definitions/grib2/tables/3/4.11.table | 1 - definitions/grib2/tables/3/4.12.table | 1 - definitions/grib2/tables/3/4.13.table | 1 - definitions/grib2/tables/3/4.14.table | 1 - definitions/grib2/tables/3/4.15.table | 1 - definitions/grib2/tables/3/4.151.table | 1 - definitions/grib2/tables/3/4.2.0.0.table | 2 -- definitions/grib2/tables/3/4.2.0.1.table | 2 -- definitions/grib2/tables/3/4.2.0.13.table | 2 -- definitions/grib2/tables/3/4.2.0.14.table | 2 -- definitions/grib2/tables/3/4.2.0.15.table | 2 -- definitions/grib2/tables/3/4.2.0.18.table | 2 -- definitions/grib2/tables/3/4.2.0.19.table | 2 -- definitions/grib2/tables/3/4.2.0.190.table | 2 -- definitions/grib2/tables/3/4.2.0.191.table | 2 -- definitions/grib2/tables/3/4.2.0.2.table | 2 -- definitions/grib2/tables/3/4.2.0.20.table | 2 -- definitions/grib2/tables/3/4.2.0.3.table | 2 -- definitions/grib2/tables/3/4.2.0.4.table | 2 -- definitions/grib2/tables/3/4.2.0.5.table | 2 -- definitions/grib2/tables/3/4.2.0.6.table | 2 -- definitions/grib2/tables/3/4.2.0.7.table | 2 -- definitions/grib2/tables/3/4.2.1.1.table | 2 -- definitions/grib2/tables/3/4.2.10.0.table | 2 -- definitions/grib2/tables/3/4.2.10.1.table | 2 -- definitions/grib2/tables/3/4.2.10.2.table | 2 -- definitions/grib2/tables/3/4.2.10.3.table | 2 -- definitions/grib2/tables/3/4.2.10.4.table | 2 -- definitions/grib2/tables/3/4.2.2.0.table | 2 -- definitions/grib2/tables/3/4.2.2.3.table | 2 -- definitions/grib2/tables/3/4.2.3.0.table | 2 -- definitions/grib2/tables/3/4.2.3.1.table | 2 -- definitions/grib2/tables/3/4.201.table | 1 - definitions/grib2/tables/3/4.202.table | 1 - definitions/grib2/tables/3/4.203.table | 1 - definitions/grib2/tables/3/4.204.table | 1 - definitions/grib2/tables/3/4.205.table | 1 - definitions/grib2/tables/3/4.206.table | 1 - definitions/grib2/tables/3/4.207.table | 1 - definitions/grib2/tables/3/4.208.table | 1 - definitions/grib2/tables/3/4.209.table | 1 - definitions/grib2/tables/3/4.210.table | 1 - definitions/grib2/tables/3/4.211.table | 1 - definitions/grib2/tables/3/4.212.table | 1 - definitions/grib2/tables/3/4.213.table | 1 - definitions/grib2/tables/3/4.217.table | 1 - definitions/grib2/tables/3/4.220.table | 1 - definitions/grib2/tables/3/4.221.table | 1 - definitions/grib2/tables/3/4.230.table | 3 --- definitions/grib2/tables/3/4.3.table | 2 -- definitions/grib2/tables/3/4.4.table | 2 -- definitions/grib2/tables/3/4.5.table | 6 ------ definitions/grib2/tables/3/4.6.table | 1 - definitions/grib2/tables/3/4.7.table | 1 - definitions/grib2/tables/3/4.8.table | 1 - definitions/grib2/tables/3/4.9.table | 1 - definitions/grib2/tables/3/4.91.table | 1 - definitions/grib2/tables/3/5.0.table | 1 - definitions/grib2/tables/3/5.1.table | 1 - definitions/grib2/tables/3/5.2.table | 1 - definitions/grib2/tables/3/5.3.table | 1 - definitions/grib2/tables/3/5.4.table | 1 - definitions/grib2/tables/3/5.40.table | 1 - definitions/grib2/tables/3/5.5.table | 1 - definitions/grib2/tables/3/5.6.table | 1 - definitions/grib2/tables/30/0.0.table | 4 ---- definitions/grib2/tables/30/1.2.table | 2 -- definitions/grib2/tables/30/1.3.table | 2 -- definitions/grib2/tables/30/1.4.table | 2 -- definitions/grib2/tables/30/1.5.table | 2 -- definitions/grib2/tables/30/1.6.table | 2 -- definitions/grib2/tables/30/3.0.table | 2 -- definitions/grib2/tables/30/3.1.table | 19 ------------------ definitions/grib2/tables/30/3.10.table | 1 - definitions/grib2/tables/30/3.11.table | 1 - definitions/grib2/tables/30/3.15.table | 5 ----- definitions/grib2/tables/30/3.2.table | 2 -- definitions/grib2/tables/30/3.20.table | 2 -- definitions/grib2/tables/30/3.21.table | 3 --- definitions/grib2/tables/30/3.25.table | 5 ----- definitions/grib2/tables/30/3.3.table | 2 -- definitions/grib2/tables/30/3.7.table | 1 - definitions/grib2/tables/30/3.8.table | 2 -- definitions/grib2/tables/30/3.9.table | 1 - definitions/grib2/tables/30/4.0.table | 14 ------------- definitions/grib2/tables/30/4.1.0.table | 2 -- definitions/grib2/tables/30/4.1.1.table | 2 -- definitions/grib2/tables/30/4.1.10.table | 2 -- definitions/grib2/tables/30/4.1.2.table | 2 -- definitions/grib2/tables/30/4.1.20.table | 2 -- definitions/grib2/tables/30/4.1.3.table | 2 -- definitions/grib2/tables/30/4.1.4.table | 2 -- definitions/grib2/tables/30/4.10.table | 3 --- definitions/grib2/tables/30/4.11.table | 2 -- definitions/grib2/tables/30/4.12.table | 2 -- definitions/grib2/tables/30/4.13.table | 2 -- definitions/grib2/tables/30/4.14.table | 2 -- definitions/grib2/tables/30/4.15.table | 2 -- definitions/grib2/tables/30/4.16.table | 2 -- definitions/grib2/tables/30/4.2.0.0.table | 2 -- definitions/grib2/tables/30/4.2.0.1.table | 3 --- definitions/grib2/tables/30/4.2.0.13.table | 2 -- definitions/grib2/tables/30/4.2.0.14.table | 2 -- definitions/grib2/tables/30/4.2.0.15.table | 2 -- definitions/grib2/tables/30/4.2.0.16.table | 2 -- definitions/grib2/tables/30/4.2.0.18.table | 2 -- definitions/grib2/tables/30/4.2.0.19.table | 2 -- definitions/grib2/tables/30/4.2.0.190.table | 2 -- definitions/grib2/tables/30/4.2.0.191.table | 2 -- definitions/grib2/tables/30/4.2.0.2.table | 2 -- definitions/grib2/tables/30/4.2.0.20.table | 4 ---- definitions/grib2/tables/30/4.2.0.21.table | 2 -- definitions/grib2/tables/30/4.2.0.3.table | 2 -- definitions/grib2/tables/30/4.2.0.4.table | 3 --- definitions/grib2/tables/30/4.2.0.5.table | 2 -- definitions/grib2/tables/30/4.2.0.6.table | 3 --- definitions/grib2/tables/30/4.2.0.7.table | 2 -- definitions/grib2/tables/30/4.2.1.0.table | 2 -- definitions/grib2/tables/30/4.2.1.1.table | 2 -- definitions/grib2/tables/30/4.2.1.2.table | 2 -- definitions/grib2/tables/30/4.2.10.0.table | 2 -- definitions/grib2/tables/30/4.2.10.1.table | 2 -- definitions/grib2/tables/30/4.2.10.191.table | 2 -- definitions/grib2/tables/30/4.2.10.2.table | 2 -- definitions/grib2/tables/30/4.2.10.3.table | 2 -- definitions/grib2/tables/30/4.2.10.4.table | 3 --- definitions/grib2/tables/30/4.2.2.0.table | 2 -- definitions/grib2/tables/30/4.2.2.3.table | 2 -- definitions/grib2/tables/30/4.2.2.4.table | 2 -- definitions/grib2/tables/30/4.2.2.5.table | 2 -- definitions/grib2/tables/30/4.2.2.6.table | 2 -- definitions/grib2/tables/30/4.2.20.0.table | 2 -- definitions/grib2/tables/30/4.2.20.1.table | 2 -- definitions/grib2/tables/30/4.2.20.2.table | 2 -- definitions/grib2/tables/30/4.2.3.0.table | 2 -- definitions/grib2/tables/30/4.2.3.1.table | 4 ---- definitions/grib2/tables/30/4.2.4.0.table | 2 -- definitions/grib2/tables/30/4.2.4.1.table | 2 -- definitions/grib2/tables/30/4.2.4.10.table | 2 -- definitions/grib2/tables/30/4.2.4.2.table | 2 -- definitions/grib2/tables/30/4.2.4.3.table | 2 -- definitions/grib2/tables/30/4.2.4.4.table | 2 -- definitions/grib2/tables/30/4.2.4.5.table | 2 -- definitions/grib2/tables/30/4.2.4.6.table | 2 -- definitions/grib2/tables/30/4.2.4.7.table | 2 -- definitions/grib2/tables/30/4.2.4.8.table | 2 -- definitions/grib2/tables/30/4.2.4.9.table | 2 -- definitions/grib2/tables/30/4.201.table | 2 -- definitions/grib2/tables/30/4.202.table | 2 -- definitions/grib2/tables/30/4.203.table | 2 -- definitions/grib2/tables/30/4.204.table | 2 -- definitions/grib2/tables/30/4.205.table | 2 -- definitions/grib2/tables/30/4.206.table | 2 -- definitions/grib2/tables/30/4.207.table | 2 -- definitions/grib2/tables/30/4.208.table | 2 -- definitions/grib2/tables/30/4.209.table | 2 -- definitions/grib2/tables/30/4.210.table | 2 -- definitions/grib2/tables/30/4.211.table | 2 -- definitions/grib2/tables/30/4.212.table | 2 -- definitions/grib2/tables/30/4.213.table | 2 -- definitions/grib2/tables/30/4.214.table | 2 -- definitions/grib2/tables/30/4.215.table | 4 ---- definitions/grib2/tables/30/4.216.table | 1 - definitions/grib2/tables/30/4.217.table | 2 -- definitions/grib2/tables/30/4.218.table | 3 --- definitions/grib2/tables/30/4.219.table | 2 -- definitions/grib2/tables/30/4.220.table | 2 -- definitions/grib2/tables/30/4.221.table | 2 -- definitions/grib2/tables/30/4.222.table | 2 -- definitions/grib2/tables/30/4.224.table | 4 ---- definitions/grib2/tables/30/4.227.table | 2 -- definitions/grib2/tables/30/4.228.table | 1 - definitions/grib2/tables/30/4.230.table | 15 -------------- definitions/grib2/tables/30/4.233.table | 15 -------------- definitions/grib2/tables/30/4.238.table | 2 -- definitions/grib2/tables/30/4.239.table | 2 -- definitions/grib2/tables/30/4.240.table | 2 -- definitions/grib2/tables/30/4.241.table | 2 -- definitions/grib2/tables/30/4.242.table | 2 -- definitions/grib2/tables/30/4.243.table | 2 -- definitions/grib2/tables/30/4.244.table | 2 -- definitions/grib2/tables/30/4.246.table | 1 - definitions/grib2/tables/30/4.247.table | 1 - definitions/grib2/tables/30/4.248.table | 2 -- definitions/grib2/tables/30/4.249.table | 1 - definitions/grib2/tables/30/4.250.table | 2 -- definitions/grib2/tables/30/4.3.table | 2 -- definitions/grib2/tables/30/4.4.table | 3 --- definitions/grib2/tables/30/4.5.table | 10 ---------- definitions/grib2/tables/30/4.6.table | 2 -- definitions/grib2/tables/30/4.7.table | 2 -- definitions/grib2/tables/30/4.8.table | 2 -- definitions/grib2/tables/30/4.9.table | 2 -- definitions/grib2/tables/30/4.91.table | 2 -- definitions/grib2/tables/30/5.0.table | 7 ------- definitions/grib2/tables/30/5.1.table | 2 -- definitions/grib2/tables/30/5.2.table | 3 --- definitions/grib2/tables/30/5.25.table | 4 ---- definitions/grib2/tables/30/5.26.table | 1 - definitions/grib2/tables/30/5.3.table | 2 -- definitions/grib2/tables/30/5.4.table | 2 -- definitions/grib2/tables/30/5.40.table | 1 - definitions/grib2/tables/30/5.5.table | 2 -- definitions/grib2/tables/30/5.6.table | 2 -- definitions/grib2/tables/30/5.7.table | 1 - definitions/grib2/tables/31/0.0.table | 4 ---- definitions/grib2/tables/31/1.2.table | 2 -- definitions/grib2/tables/31/1.3.table | 2 -- definitions/grib2/tables/31/1.4.table | 2 -- definitions/grib2/tables/31/1.5.table | 2 -- definitions/grib2/tables/31/1.6.table | 2 -- definitions/grib2/tables/31/3.0.table | 2 -- definitions/grib2/tables/31/3.1.table | 19 ------------------ definitions/grib2/tables/31/3.10.table | 1 - definitions/grib2/tables/31/3.11.table | 1 - definitions/grib2/tables/31/3.15.table | 5 ----- definitions/grib2/tables/31/3.2.table | 2 -- definitions/grib2/tables/31/3.20.table | 2 -- definitions/grib2/tables/31/3.21.table | 3 --- definitions/grib2/tables/31/3.25.table | 5 ----- definitions/grib2/tables/31/3.3.table | 2 -- definitions/grib2/tables/31/3.7.table | 1 - definitions/grib2/tables/31/3.8.table | 2 -- definitions/grib2/tables/31/3.9.table | 1 - definitions/grib2/tables/31/4.0.table | 14 ------------- definitions/grib2/tables/31/4.1.0.table | 2 -- definitions/grib2/tables/31/4.1.1.table | 2 -- definitions/grib2/tables/31/4.1.10.table | 2 -- definitions/grib2/tables/31/4.1.2.table | 2 -- definitions/grib2/tables/31/4.1.20.table | 2 -- definitions/grib2/tables/31/4.1.3.table | 2 -- definitions/grib2/tables/31/4.1.4.table | 2 -- definitions/grib2/tables/31/4.10.table | 3 --- definitions/grib2/tables/31/4.100.table | 2 -- definitions/grib2/tables/31/4.101.table | 3 --- definitions/grib2/tables/31/4.102.table | 3 --- definitions/grib2/tables/31/4.11.table | 2 -- definitions/grib2/tables/31/4.12.table | 2 -- definitions/grib2/tables/31/4.13.table | 2 -- definitions/grib2/tables/31/4.14.table | 2 -- definitions/grib2/tables/31/4.15.table | 2 -- definitions/grib2/tables/31/4.16.table | 2 -- definitions/grib2/tables/31/4.2.0.0.table | 2 -- definitions/grib2/tables/31/4.2.0.1.table | 3 --- definitions/grib2/tables/31/4.2.0.13.table | 2 -- definitions/grib2/tables/31/4.2.0.14.table | 2 -- definitions/grib2/tables/31/4.2.0.15.table | 2 -- definitions/grib2/tables/31/4.2.0.16.table | 2 -- definitions/grib2/tables/31/4.2.0.18.table | 2 -- definitions/grib2/tables/31/4.2.0.19.table | 2 -- definitions/grib2/tables/31/4.2.0.190.table | 2 -- definitions/grib2/tables/31/4.2.0.191.table | 2 -- definitions/grib2/tables/31/4.2.0.2.table | 2 -- definitions/grib2/tables/31/4.2.0.20.table | 4 ---- definitions/grib2/tables/31/4.2.0.21.table | 2 -- definitions/grib2/tables/31/4.2.0.3.table | 2 -- definitions/grib2/tables/31/4.2.0.4.table | 3 --- definitions/grib2/tables/31/4.2.0.5.table | 2 -- definitions/grib2/tables/31/4.2.0.6.table | 3 --- definitions/grib2/tables/31/4.2.0.7.table | 2 -- definitions/grib2/tables/31/4.2.1.0.table | 2 -- definitions/grib2/tables/31/4.2.1.1.table | 2 -- definitions/grib2/tables/31/4.2.1.2.table | 2 -- definitions/grib2/tables/31/4.2.10.0.table | 2 -- definitions/grib2/tables/31/4.2.10.1.table | 2 -- definitions/grib2/tables/31/4.2.10.191.table | 2 -- definitions/grib2/tables/31/4.2.10.2.table | 2 -- definitions/grib2/tables/31/4.2.10.3.table | 2 -- definitions/grib2/tables/31/4.2.10.4.table | 3 --- definitions/grib2/tables/31/4.2.2.0.table | 2 -- definitions/grib2/tables/31/4.2.2.3.table | 2 -- definitions/grib2/tables/31/4.2.2.4.table | 2 -- definitions/grib2/tables/31/4.2.2.5.table | 2 -- definitions/grib2/tables/31/4.2.2.6.table | 2 -- definitions/grib2/tables/31/4.2.20.0.table | 2 -- definitions/grib2/tables/31/4.2.20.1.table | 2 -- definitions/grib2/tables/31/4.2.20.2.table | 2 -- definitions/grib2/tables/31/4.2.3.0.table | 2 -- definitions/grib2/tables/31/4.2.3.1.table | 4 ---- definitions/grib2/tables/31/4.2.4.0.table | 2 -- definitions/grib2/tables/31/4.2.4.1.table | 2 -- definitions/grib2/tables/31/4.2.4.10.table | 2 -- definitions/grib2/tables/31/4.2.4.2.table | 2 -- definitions/grib2/tables/31/4.2.4.3.table | 2 -- definitions/grib2/tables/31/4.2.4.4.table | 2 -- definitions/grib2/tables/31/4.2.4.5.table | 2 -- definitions/grib2/tables/31/4.2.4.6.table | 2 -- definitions/grib2/tables/31/4.2.4.7.table | 2 -- definitions/grib2/tables/31/4.2.4.8.table | 2 -- definitions/grib2/tables/31/4.2.4.9.table | 2 -- definitions/grib2/tables/31/4.201.table | 2 -- definitions/grib2/tables/31/4.202.table | 2 -- definitions/grib2/tables/31/4.203.table | 2 -- definitions/grib2/tables/31/4.204.table | 2 -- definitions/grib2/tables/31/4.205.table | 2 -- definitions/grib2/tables/31/4.206.table | 2 -- definitions/grib2/tables/31/4.207.table | 2 -- definitions/grib2/tables/31/4.208.table | 2 -- definitions/grib2/tables/31/4.209.table | 2 -- definitions/grib2/tables/31/4.210.table | 2 -- definitions/grib2/tables/31/4.211.table | 2 -- definitions/grib2/tables/31/4.212.table | 2 -- definitions/grib2/tables/31/4.213.table | 2 -- definitions/grib2/tables/31/4.214.table | 2 -- definitions/grib2/tables/31/4.215.table | 4 ---- definitions/grib2/tables/31/4.216.table | 1 - definitions/grib2/tables/31/4.217.table | 2 -- definitions/grib2/tables/31/4.218.table | 3 --- definitions/grib2/tables/31/4.219.table | 2 -- definitions/grib2/tables/31/4.220.table | 2 -- definitions/grib2/tables/31/4.221.table | 2 -- definitions/grib2/tables/31/4.222.table | 2 -- definitions/grib2/tables/31/4.224.table | 4 ---- definitions/grib2/tables/31/4.227.table | 2 -- definitions/grib2/tables/31/4.228.table | 1 - definitions/grib2/tables/31/4.230.table | 15 -------------- definitions/grib2/tables/31/4.233.table | 15 -------------- definitions/grib2/tables/31/4.238.table | 2 -- definitions/grib2/tables/31/4.239.table | 2 -- definitions/grib2/tables/31/4.240.table | 2 -- definitions/grib2/tables/31/4.241.table | 2 -- definitions/grib2/tables/31/4.242.table | 2 -- definitions/grib2/tables/31/4.243.table | 2 -- definitions/grib2/tables/31/4.244.table | 2 -- definitions/grib2/tables/31/4.246.table | 1 - definitions/grib2/tables/31/4.247.table | 1 - definitions/grib2/tables/31/4.248.table | 2 -- definitions/grib2/tables/31/4.249.table | 1 - definitions/grib2/tables/31/4.250.table | 2 -- definitions/grib2/tables/31/4.251.table | 2 -- definitions/grib2/tables/31/4.3.table | 2 -- definitions/grib2/tables/31/4.4.table | 3 --- definitions/grib2/tables/31/4.5.table | 10 ---------- definitions/grib2/tables/31/4.6.table | 2 -- definitions/grib2/tables/31/4.7.table | 2 -- definitions/grib2/tables/31/4.8.table | 2 -- definitions/grib2/tables/31/4.9.table | 2 -- definitions/grib2/tables/31/4.91.table | 2 -- definitions/grib2/tables/31/5.0.table | 7 ------- definitions/grib2/tables/31/5.1.table | 2 -- definitions/grib2/tables/31/5.2.table | 3 --- definitions/grib2/tables/31/5.25.table | 4 ---- definitions/grib2/tables/31/5.26.table | 1 - definitions/grib2/tables/31/5.3.table | 2 -- definitions/grib2/tables/31/5.4.table | 2 -- definitions/grib2/tables/31/5.40.table | 1 - definitions/grib2/tables/31/5.5.table | 2 -- definitions/grib2/tables/31/5.6.table | 2 -- definitions/grib2/tables/31/5.7.table | 1 - definitions/grib2/tables/32/0.0.table | 4 ---- definitions/grib2/tables/32/1.2.table | 2 -- definitions/grib2/tables/32/1.3.table | 2 -- definitions/grib2/tables/32/1.4.table | 2 -- definitions/grib2/tables/32/1.5.table | 2 -- definitions/grib2/tables/32/1.6.table | 2 -- definitions/grib2/tables/32/3.0.table | 2 -- definitions/grib2/tables/32/3.1.table | 20 ------------------- definitions/grib2/tables/32/3.10.table | 1 - definitions/grib2/tables/32/3.11.table | 1 - definitions/grib2/tables/32/3.12.table | 2 -- definitions/grib2/tables/32/3.13.table | 1 - definitions/grib2/tables/32/3.15.table | 5 ----- definitions/grib2/tables/32/3.2.table | 2 -- definitions/grib2/tables/32/3.20.table | 2 -- definitions/grib2/tables/32/3.21.table | 3 --- definitions/grib2/tables/32/3.25.table | 5 ----- definitions/grib2/tables/32/3.3.table | 2 -- definitions/grib2/tables/32/3.7.table | 1 - definitions/grib2/tables/32/3.8.table | 2 -- definitions/grib2/tables/32/3.9.table | 1 - definitions/grib2/tables/32/4.0.table | 13 ------------ definitions/grib2/tables/32/4.1.0.table | 2 -- definitions/grib2/tables/32/4.1.1.table | 2 -- definitions/grib2/tables/32/4.1.10.table | 2 -- definitions/grib2/tables/32/4.1.2.table | 2 -- definitions/grib2/tables/32/4.1.20.table | 2 -- definitions/grib2/tables/32/4.1.3.table | 2 -- definitions/grib2/tables/32/4.1.4.table | 2 -- definitions/grib2/tables/32/4.10.table | 3 --- definitions/grib2/tables/32/4.100.table | 2 -- definitions/grib2/tables/32/4.101.table | 3 --- definitions/grib2/tables/32/4.102.table | 3 --- definitions/grib2/tables/32/4.11.table | 2 -- definitions/grib2/tables/32/4.12.table | 2 -- definitions/grib2/tables/32/4.13.table | 2 -- definitions/grib2/tables/32/4.14.table | 2 -- definitions/grib2/tables/32/4.15.table | 2 -- definitions/grib2/tables/32/4.16.table | 2 -- definitions/grib2/tables/32/4.2.0.0.table | 2 -- definitions/grib2/tables/32/4.2.0.1.table | 3 --- definitions/grib2/tables/32/4.2.0.13.table | 2 -- definitions/grib2/tables/32/4.2.0.14.table | 2 -- definitions/grib2/tables/32/4.2.0.15.table | 2 -- definitions/grib2/tables/32/4.2.0.16.table | 2 -- definitions/grib2/tables/32/4.2.0.18.table | 2 -- definitions/grib2/tables/32/4.2.0.19.table | 2 -- definitions/grib2/tables/32/4.2.0.190.table | 2 -- definitions/grib2/tables/32/4.2.0.191.table | 2 -- definitions/grib2/tables/32/4.2.0.2.table | 2 -- definitions/grib2/tables/32/4.2.0.20.table | 4 ---- definitions/grib2/tables/32/4.2.0.21.table | 2 -- definitions/grib2/tables/32/4.2.0.3.table | 2 -- definitions/grib2/tables/32/4.2.0.4.table | 3 --- definitions/grib2/tables/32/4.2.0.5.table | 2 -- definitions/grib2/tables/32/4.2.0.6.table | 3 --- definitions/grib2/tables/32/4.2.0.7.table | 2 -- definitions/grib2/tables/32/4.2.1.0.table | 2 -- definitions/grib2/tables/32/4.2.1.1.table | 2 -- definitions/grib2/tables/32/4.2.1.2.table | 2 -- definitions/grib2/tables/32/4.2.10.0.table | 2 -- definitions/grib2/tables/32/4.2.10.1.table | 2 -- definitions/grib2/tables/32/4.2.10.191.table | 2 -- definitions/grib2/tables/32/4.2.10.2.table | 2 -- definitions/grib2/tables/32/4.2.10.3.table | 2 -- definitions/grib2/tables/32/4.2.10.4.table | 3 --- definitions/grib2/tables/32/4.2.2.0.table | 2 -- definitions/grib2/tables/32/4.2.2.3.table | 2 -- definitions/grib2/tables/32/4.2.2.4.table | 2 -- definitions/grib2/tables/32/4.2.2.5.table | 2 -- definitions/grib2/tables/32/4.2.2.6.table | 2 -- definitions/grib2/tables/32/4.2.20.0.table | 2 -- definitions/grib2/tables/32/4.2.20.1.table | 2 -- definitions/grib2/tables/32/4.2.20.2.table | 2 -- definitions/grib2/tables/32/4.2.20.3.table | 2 -- definitions/grib2/tables/32/4.2.3.0.table | 2 -- definitions/grib2/tables/32/4.2.3.1.table | 4 ---- definitions/grib2/tables/32/4.2.4.0.table | 2 -- definitions/grib2/tables/32/4.2.4.1.table | 2 -- definitions/grib2/tables/32/4.2.4.10.table | 2 -- definitions/grib2/tables/32/4.2.4.2.table | 2 -- definitions/grib2/tables/32/4.2.4.3.table | 2 -- definitions/grib2/tables/32/4.2.4.4.table | 2 -- definitions/grib2/tables/32/4.2.4.5.table | 2 -- definitions/grib2/tables/32/4.2.4.6.table | 2 -- definitions/grib2/tables/32/4.2.4.7.table | 2 -- definitions/grib2/tables/32/4.2.4.8.table | 2 -- definitions/grib2/tables/32/4.2.4.9.table | 2 -- definitions/grib2/tables/32/4.201.table | 2 -- definitions/grib2/tables/32/4.202.table | 2 -- definitions/grib2/tables/32/4.203.table | 2 -- definitions/grib2/tables/32/4.204.table | 2 -- definitions/grib2/tables/32/4.205.table | 2 -- definitions/grib2/tables/32/4.206.table | 2 -- definitions/grib2/tables/32/4.207.table | 2 -- definitions/grib2/tables/32/4.208.table | 2 -- definitions/grib2/tables/32/4.209.table | 2 -- definitions/grib2/tables/32/4.210.table | 2 -- definitions/grib2/tables/32/4.211.table | 2 -- definitions/grib2/tables/32/4.212.table | 2 -- definitions/grib2/tables/32/4.213.table | 2 -- definitions/grib2/tables/32/4.214.table | 2 -- definitions/grib2/tables/32/4.215.table | 4 ---- definitions/grib2/tables/32/4.216.table | 1 - definitions/grib2/tables/32/4.217.table | 2 -- definitions/grib2/tables/32/4.218.table | 3 --- definitions/grib2/tables/32/4.219.table | 2 -- definitions/grib2/tables/32/4.220.table | 2 -- definitions/grib2/tables/32/4.221.table | 2 -- definitions/grib2/tables/32/4.222.table | 2 -- definitions/grib2/tables/32/4.224.table | 4 ---- definitions/grib2/tables/32/4.227.table | 2 -- definitions/grib2/tables/32/4.228.table | 1 - definitions/grib2/tables/32/4.230.table | 15 -------------- definitions/grib2/tables/32/4.233.table | 15 -------------- definitions/grib2/tables/32/4.238.table | 2 -- definitions/grib2/tables/32/4.239.table | 2 -- definitions/grib2/tables/32/4.240.table | 2 -- definitions/grib2/tables/32/4.241.table | 2 -- definitions/grib2/tables/32/4.242.table | 2 -- definitions/grib2/tables/32/4.243.table | 2 -- definitions/grib2/tables/32/4.244.table | 2 -- definitions/grib2/tables/32/4.246.table | 1 - definitions/grib2/tables/32/4.247.table | 1 - definitions/grib2/tables/32/4.248.table | 2 -- definitions/grib2/tables/32/4.249.table | 1 - definitions/grib2/tables/32/4.250.table | 2 -- definitions/grib2/tables/32/4.251.table | 2 -- definitions/grib2/tables/32/4.252.table | 1 - definitions/grib2/tables/32/4.3.table | 2 -- definitions/grib2/tables/32/4.4.table | 3 --- definitions/grib2/tables/32/4.5.table | 10 ---------- definitions/grib2/tables/32/4.6.table | 2 -- definitions/grib2/tables/32/4.7.table | 2 -- definitions/grib2/tables/32/4.8.table | 2 -- definitions/grib2/tables/32/4.9.table | 2 -- definitions/grib2/tables/32/4.91.table | 2 -- definitions/grib2/tables/32/5.0.table | 7 ------- definitions/grib2/tables/32/5.1.table | 2 -- definitions/grib2/tables/32/5.2.table | 3 --- definitions/grib2/tables/32/5.25.table | 4 ---- definitions/grib2/tables/32/5.26.table | 1 - definitions/grib2/tables/32/5.3.table | 2 -- definitions/grib2/tables/32/5.4.table | 2 -- definitions/grib2/tables/32/5.40.table | 1 - definitions/grib2/tables/32/5.5.table | 2 -- definitions/grib2/tables/32/5.6.table | 2 -- definitions/grib2/tables/32/5.7.table | 1 - definitions/grib2/tables/4/0.0.table | 3 --- definitions/grib2/tables/4/1.2.table | 2 -- definitions/grib2/tables/4/1.3.table | 2 -- definitions/grib2/tables/4/1.4.table | 2 -- definitions/grib2/tables/4/3.0.table | 2 -- definitions/grib2/tables/4/3.1.table | 16 --------------- definitions/grib2/tables/4/3.15.table | 5 ----- definitions/grib2/tables/4/3.2.table | 2 -- definitions/grib2/tables/4/3.20.table | 2 -- definitions/grib2/tables/4/3.21.table | 3 --- definitions/grib2/tables/4/3.7.table | 1 - definitions/grib2/tables/4/3.8.table | 2 -- definitions/grib2/tables/4/4.1.0.table | 2 -- definitions/grib2/tables/4/4.1.1.table | 2 -- definitions/grib2/tables/4/4.1.10.table | 2 -- definitions/grib2/tables/4/4.1.2.table | 2 -- definitions/grib2/tables/4/4.1.3.table | 2 -- definitions/grib2/tables/4/4.10.table | 1 - definitions/grib2/tables/4/4.11.table | 1 - definitions/grib2/tables/4/4.2.0.0.table | 2 -- definitions/grib2/tables/4/4.2.0.1.table | 2 -- definitions/grib2/tables/4/4.2.0.13.table | 2 -- definitions/grib2/tables/4/4.2.0.14.table | 2 -- definitions/grib2/tables/4/4.2.0.15.table | 2 -- definitions/grib2/tables/4/4.2.0.18.table | 2 -- definitions/grib2/tables/4/4.2.0.19.table | 2 -- definitions/grib2/tables/4/4.2.0.190.table | 2 -- definitions/grib2/tables/4/4.2.0.191.table | 2 -- definitions/grib2/tables/4/4.2.0.2.table | 2 -- definitions/grib2/tables/4/4.2.0.20.table | 2 -- definitions/grib2/tables/4/4.2.0.3.table | 2 -- definitions/grib2/tables/4/4.2.0.4.table | 2 -- definitions/grib2/tables/4/4.2.0.5.table | 2 -- definitions/grib2/tables/4/4.2.0.6.table | 2 -- definitions/grib2/tables/4/4.2.0.7.table | 2 -- definitions/grib2/tables/4/4.2.1.0.table | 2 -- definitions/grib2/tables/4/4.2.1.1.table | 2 -- definitions/grib2/tables/4/4.2.10.0.table | 2 -- definitions/grib2/tables/4/4.2.10.1.table | 2 -- definitions/grib2/tables/4/4.2.10.2.table | 2 -- definitions/grib2/tables/4/4.2.10.3.table | 2 -- definitions/grib2/tables/4/4.2.10.4.table | 2 -- definitions/grib2/tables/4/4.2.2.0.table | 2 -- definitions/grib2/tables/4/4.2.2.3.table | 2 -- definitions/grib2/tables/4/4.2.3.0.table | 2 -- definitions/grib2/tables/4/4.2.3.1.table | 2 -- definitions/grib2/tables/4/4.230.table | 3 --- definitions/grib2/tables/4/4.3.table | 2 -- definitions/grib2/tables/4/4.4.table | 2 -- definitions/grib2/tables/4/4.5.table | 6 ------ definitions/grib2/tables/4/4.6.table | 1 - definitions/grib2/tables/4/5.0.table | 1 - definitions/grib2/tables/4/5.1.table | 1 - definitions/grib2/tables/4/5.2.table | 1 - definitions/grib2/tables/4/5.3.table | 1 - definitions/grib2/tables/4/5.4.table | 1 - definitions/grib2/tables/4/5.40.table | 1 - definitions/grib2/tables/4/5.5.table | 1 - definitions/grib2/tables/5/0.0.table | 3 --- definitions/grib2/tables/5/1.2.table | 2 -- definitions/grib2/tables/5/1.3.table | 2 -- definitions/grib2/tables/5/1.4.table | 2 -- definitions/grib2/tables/5/3.0.table | 2 -- definitions/grib2/tables/5/3.1.table | 16 --------------- definitions/grib2/tables/5/3.15.table | 5 ----- definitions/grib2/tables/5/3.2.table | 2 -- definitions/grib2/tables/5/3.20.table | 2 -- definitions/grib2/tables/5/3.21.table | 3 --- definitions/grib2/tables/5/3.7.table | 1 - definitions/grib2/tables/5/3.8.table | 2 -- definitions/grib2/tables/5/4.1.0.table | 2 -- definitions/grib2/tables/5/4.1.1.table | 2 -- definitions/grib2/tables/5/4.1.10.table | 2 -- definitions/grib2/tables/5/4.1.2.table | 2 -- definitions/grib2/tables/5/4.1.3.table | 2 -- definitions/grib2/tables/5/4.10.table | 1 - definitions/grib2/tables/5/4.11.table | 1 - definitions/grib2/tables/5/4.15.table | 2 -- definitions/grib2/tables/5/4.2.0.20.table | 4 ---- definitions/grib2/tables/5/4.203.table | 1 - definitions/grib2/tables/5/4.230.table | 1 - definitions/grib2/tables/5/4.3.table | 2 -- definitions/grib2/tables/5/4.4.table | 2 -- definitions/grib2/tables/5/4.5.table | 6 ------ definitions/grib2/tables/5/4.6.table | 1 - definitions/grib2/tables/5/5.0.table | 1 - definitions/grib2/tables/5/5.1.table | 1 - definitions/grib2/tables/5/5.2.table | 1 - definitions/grib2/tables/5/5.3.table | 1 - definitions/grib2/tables/5/5.4.table | 1 - definitions/grib2/tables/5/5.40.table | 1 - definitions/grib2/tables/5/5.5.table | 1 - definitions/grib2/tables/6/0.0.table | 3 --- definitions/grib2/tables/6/1.2.table | 2 -- definitions/grib2/tables/6/1.3.table | 2 -- definitions/grib2/tables/6/1.4.table | 2 -- definitions/grib2/tables/6/3.0.table | 2 -- definitions/grib2/tables/6/3.1.table | 16 --------------- definitions/grib2/tables/6/3.15.table | 4 ---- definitions/grib2/tables/6/3.2.table | 2 -- definitions/grib2/tables/6/3.20.table | 2 -- definitions/grib2/tables/6/3.21.table | 3 --- definitions/grib2/tables/6/3.8.table | 2 -- definitions/grib2/tables/6/4.0.table | 1 - definitions/grib2/tables/6/4.1.0.table | 2 -- definitions/grib2/tables/6/4.1.1.table | 2 -- definitions/grib2/tables/6/4.1.10.table | 2 -- definitions/grib2/tables/6/4.1.2.table | 2 -- definitions/grib2/tables/6/4.1.3.table | 2 -- definitions/grib2/tables/6/4.10.table | 1 - definitions/grib2/tables/6/4.11.table | 1 - definitions/grib2/tables/6/4.12.table | 1 - definitions/grib2/tables/6/4.13.table | 1 - definitions/grib2/tables/6/4.14.table | 1 - definitions/grib2/tables/6/4.15.table | 2 -- definitions/grib2/tables/6/4.151.table | 1 - definitions/grib2/tables/6/4.2.10.191.table | 2 -- definitions/grib2/tables/6/4.201.table | 1 - definitions/grib2/tables/6/4.202.table | 1 - definitions/grib2/tables/6/4.203.table | 1 - definitions/grib2/tables/6/4.204.table | 1 - definitions/grib2/tables/6/4.205.table | 1 - definitions/grib2/tables/6/4.206.table | 1 - definitions/grib2/tables/6/4.207.table | 1 - definitions/grib2/tables/6/4.208.table | 1 - definitions/grib2/tables/6/4.209.table | 1 - definitions/grib2/tables/6/4.210.table | 1 - definitions/grib2/tables/6/4.211.table | 1 - definitions/grib2/tables/6/4.212.table | 1 - definitions/grib2/tables/6/4.213.table | 1 - definitions/grib2/tables/6/4.217.table | 1 - definitions/grib2/tables/6/4.220.table | 1 - definitions/grib2/tables/6/4.221.table | 1 - definitions/grib2/tables/6/4.230.table | 1 - definitions/grib2/tables/6/4.3.table | 2 -- definitions/grib2/tables/6/4.4.table | 2 -- definitions/grib2/tables/6/4.5.table | 6 ------ definitions/grib2/tables/6/4.6.table | 2 -- definitions/grib2/tables/6/4.7.table | 1 - definitions/grib2/tables/6/4.8.table | 1 - definitions/grib2/tables/6/4.9.table | 1 - definitions/grib2/tables/6/4.91.table | 1 - definitions/grib2/tables/6/5.0.table | 1 - definitions/grib2/tables/6/5.1.table | 1 - definitions/grib2/tables/6/5.2.table | 1 - definitions/grib2/tables/6/5.3.table | 1 - definitions/grib2/tables/6/5.4.table | 1 - definitions/grib2/tables/6/5.40.table | 1 - definitions/grib2/tables/6/5.5.table | 1 - definitions/grib2/tables/6/5.6.table | 1 - definitions/grib2/tables/7/0.0.table | 3 --- definitions/grib2/tables/7/1.2.table | 2 -- definitions/grib2/tables/7/1.3.table | 2 -- definitions/grib2/tables/7/1.4.table | 2 -- definitions/grib2/tables/7/3.0.table | 2 -- definitions/grib2/tables/7/3.1.table | 16 --------------- definitions/grib2/tables/7/3.10.table | 1 - definitions/grib2/tables/7/3.11.table | 1 - definitions/grib2/tables/7/3.2.table | 2 -- definitions/grib2/tables/7/3.20.table | 2 -- definitions/grib2/tables/7/3.21.table | 3 --- definitions/grib2/tables/7/3.3.table | 2 -- definitions/grib2/tables/7/3.4.table | 1 - definitions/grib2/tables/7/3.8.table | 2 -- definitions/grib2/tables/7/3.9.table | 1 - definitions/grib2/tables/7/4.0.table | 9 --------- definitions/grib2/tables/7/4.1.0.table | 2 -- definitions/grib2/tables/7/4.1.1.table | 2 -- definitions/grib2/tables/7/4.1.10.table | 2 -- definitions/grib2/tables/7/4.1.2.table | 2 -- definitions/grib2/tables/7/4.1.3.table | 2 -- definitions/grib2/tables/7/4.10.table | 2 -- definitions/grib2/tables/7/4.11.table | 2 -- definitions/grib2/tables/7/4.12.table | 2 -- definitions/grib2/tables/7/4.13.table | 1 - definitions/grib2/tables/7/4.14.table | 1 - definitions/grib2/tables/7/4.15.table | 2 -- definitions/grib2/tables/7/4.151.table | 1 - definitions/grib2/tables/7/4.2.0.0.table | 2 -- definitions/grib2/tables/7/4.2.0.1.table | 2 -- definitions/grib2/tables/7/4.2.0.13.table | 2 -- definitions/grib2/tables/7/4.2.0.14.table | 2 -- definitions/grib2/tables/7/4.2.0.15.table | 2 -- definitions/grib2/tables/7/4.2.0.16.table | 2 -- definitions/grib2/tables/7/4.2.0.18.table | 2 -- definitions/grib2/tables/7/4.2.0.19.table | 2 -- definitions/grib2/tables/7/4.2.0.190.table | 2 -- definitions/grib2/tables/7/4.2.0.191.table | 2 -- definitions/grib2/tables/7/4.2.0.2.table | 2 -- definitions/grib2/tables/7/4.2.0.20.table | 4 ---- definitions/grib2/tables/7/4.2.0.3.table | 2 -- definitions/grib2/tables/7/4.2.0.4.table | 3 --- definitions/grib2/tables/7/4.2.0.5.table | 2 -- definitions/grib2/tables/7/4.2.0.6.table | 3 --- definitions/grib2/tables/7/4.2.0.7.table | 2 -- definitions/grib2/tables/7/4.2.1.0.table | 2 -- definitions/grib2/tables/7/4.2.1.1.table | 2 -- definitions/grib2/tables/7/4.2.10.0.table | 2 -- definitions/grib2/tables/7/4.2.10.1.table | 2 -- definitions/grib2/tables/7/4.2.10.191.table | 2 -- definitions/grib2/tables/7/4.2.10.2.table | 2 -- definitions/grib2/tables/7/4.2.10.3.table | 2 -- definitions/grib2/tables/7/4.2.10.4.table | 2 -- definitions/grib2/tables/7/4.2.2.0.table | 2 -- definitions/grib2/tables/7/4.2.2.3.table | 2 -- definitions/grib2/tables/7/4.2.3.0.table | 2 -- definitions/grib2/tables/7/4.2.3.1.table | 2 -- definitions/grib2/tables/7/4.201.table | 2 -- definitions/grib2/tables/7/4.202.table | 1 - definitions/grib2/tables/7/4.203.table | 1 - definitions/grib2/tables/7/4.204.table | 1 - definitions/grib2/tables/7/4.205.table | 1 - definitions/grib2/tables/7/4.206.table | 1 - definitions/grib2/tables/7/4.207.table | 1 - definitions/grib2/tables/7/4.208.table | 1 - definitions/grib2/tables/7/4.209.table | 1 - definitions/grib2/tables/7/4.210.table | 1 - definitions/grib2/tables/7/4.211.table | 1 - definitions/grib2/tables/7/4.212.table | 1 - definitions/grib2/tables/7/4.213.table | 1 - definitions/grib2/tables/7/4.217.table | 1 - definitions/grib2/tables/7/4.220.table | 1 - definitions/grib2/tables/7/4.221.table | 1 - definitions/grib2/tables/7/4.224.table | 4 ---- definitions/grib2/tables/7/4.230.table | 1 - definitions/grib2/tables/7/4.3.table | 2 -- definitions/grib2/tables/7/4.4.table | 2 -- definitions/grib2/tables/7/4.5.table | 6 ------ definitions/grib2/tables/7/4.6.table | 2 -- definitions/grib2/tables/7/4.7.table | 2 -- definitions/grib2/tables/7/4.8.table | 1 - definitions/grib2/tables/7/4.9.table | 1 - definitions/grib2/tables/7/4.91.table | 2 -- definitions/grib2/tables/7/5.0.table | 1 - definitions/grib2/tables/7/5.1.table | 1 - definitions/grib2/tables/7/5.2.table | 1 - definitions/grib2/tables/7/5.3.table | 1 - definitions/grib2/tables/7/5.4.table | 1 - definitions/grib2/tables/7/5.40.table | 1 - definitions/grib2/tables/7/5.5.table | 1 - definitions/grib2/tables/7/5.6.table | 1 - definitions/grib2/tables/8/0.0.table | 3 --- definitions/grib2/tables/8/1.2.table | 2 -- definitions/grib2/tables/8/1.3.table | 2 -- definitions/grib2/tables/8/1.4.table | 2 -- definitions/grib2/tables/8/3.0.table | 2 -- definitions/grib2/tables/8/3.1.table | 15 -------------- definitions/grib2/tables/8/3.10.table | 1 - definitions/grib2/tables/8/3.11.table | 1 - definitions/grib2/tables/8/3.15.table | 5 ----- definitions/grib2/tables/8/3.2.table | 2 -- definitions/grib2/tables/8/3.20.table | 2 -- definitions/grib2/tables/8/3.21.table | 3 --- definitions/grib2/tables/8/3.3.table | 2 -- definitions/grib2/tables/8/3.4.table | 1 - definitions/grib2/tables/8/3.7.table | 1 - definitions/grib2/tables/8/3.8.table | 2 -- definitions/grib2/tables/8/3.9.table | 1 - definitions/grib2/tables/8/4.0.table | 9 --------- definitions/grib2/tables/8/4.1.0.table | 2 -- definitions/grib2/tables/8/4.1.1.table | 2 -- definitions/grib2/tables/8/4.1.10.table | 2 -- definitions/grib2/tables/8/4.1.2.table | 2 -- definitions/grib2/tables/8/4.1.3.table | 2 -- definitions/grib2/tables/8/4.10.table | 2 -- definitions/grib2/tables/8/4.11.table | 2 -- definitions/grib2/tables/8/4.12.table | 2 -- definitions/grib2/tables/8/4.13.table | 2 -- definitions/grib2/tables/8/4.14.table | 2 -- definitions/grib2/tables/8/4.15.table | 2 -- definitions/grib2/tables/8/4.151.table | 1 - definitions/grib2/tables/8/4.2.0.0.table | 2 -- definitions/grib2/tables/8/4.2.0.1.table | 3 --- definitions/grib2/tables/8/4.2.0.13.table | 2 -- definitions/grib2/tables/8/4.2.0.14.table | 2 -- definitions/grib2/tables/8/4.2.0.15.table | 2 -- definitions/grib2/tables/8/4.2.0.16.table | 2 -- definitions/grib2/tables/8/4.2.0.18.table | 2 -- definitions/grib2/tables/8/4.2.0.19.table | 2 -- definitions/grib2/tables/8/4.2.0.190.table | 2 -- definitions/grib2/tables/8/4.2.0.191.table | 2 -- definitions/grib2/tables/8/4.2.0.2.table | 2 -- definitions/grib2/tables/8/4.2.0.20.table | 4 ---- definitions/grib2/tables/8/4.2.0.3.table | 2 -- definitions/grib2/tables/8/4.2.0.4.table | 3 --- definitions/grib2/tables/8/4.2.0.5.table | 2 -- definitions/grib2/tables/8/4.2.0.6.table | 2 -- definitions/grib2/tables/8/4.2.0.7.table | 2 -- definitions/grib2/tables/8/4.2.1.0.table | 2 -- definitions/grib2/tables/8/4.2.1.1.table | 2 -- definitions/grib2/tables/8/4.2.10.0.table | 2 -- definitions/grib2/tables/8/4.2.10.1.table | 2 -- definitions/grib2/tables/8/4.2.10.191.table | 2 -- definitions/grib2/tables/8/4.2.10.2.table | 2 -- definitions/grib2/tables/8/4.2.10.3.table | 2 -- definitions/grib2/tables/8/4.2.10.4.table | 3 --- definitions/grib2/tables/8/4.2.2.0.table | 2 -- definitions/grib2/tables/8/4.2.2.3.table | 2 -- definitions/grib2/tables/8/4.2.3.0.table | 2 -- definitions/grib2/tables/8/4.2.3.1.table | 2 -- definitions/grib2/tables/8/4.201.table | 2 -- definitions/grib2/tables/8/4.202.table | 2 -- definitions/grib2/tables/8/4.203.table | 2 -- definitions/grib2/tables/8/4.204.table | 2 -- definitions/grib2/tables/8/4.205.table | 2 -- definitions/grib2/tables/8/4.206.table | 2 -- definitions/grib2/tables/8/4.207.table | 2 -- definitions/grib2/tables/8/4.208.table | 2 -- definitions/grib2/tables/8/4.209.table | 2 -- definitions/grib2/tables/8/4.210.table | 2 -- definitions/grib2/tables/8/4.211.table | 2 -- definitions/grib2/tables/8/4.212.table | 2 -- definitions/grib2/tables/8/4.213.table | 2 -- definitions/grib2/tables/8/4.215.table | 4 ---- definitions/grib2/tables/8/4.216.table | 1 - definitions/grib2/tables/8/4.217.table | 2 -- definitions/grib2/tables/8/4.218.table | 3 --- definitions/grib2/tables/8/4.219.table | 2 -- definitions/grib2/tables/8/4.220.table | 2 -- definitions/grib2/tables/8/4.221.table | 2 -- definitions/grib2/tables/8/4.222.table | 2 -- definitions/grib2/tables/8/4.224.table | 4 ---- definitions/grib2/tables/8/4.230.table | 8 -------- definitions/grib2/tables/8/4.3.table | 2 -- definitions/grib2/tables/8/4.4.table | 3 --- definitions/grib2/tables/8/4.5.table | 7 ------- definitions/grib2/tables/8/4.6.table | 2 -- definitions/grib2/tables/8/4.7.table | 2 -- definitions/grib2/tables/8/4.8.table | 2 -- definitions/grib2/tables/8/4.9.table | 2 -- definitions/grib2/tables/8/4.91.table | 2 -- definitions/grib2/tables/8/5.0.table | 5 ----- definitions/grib2/tables/8/5.1.table | 2 -- definitions/grib2/tables/8/5.2.table | 3 --- definitions/grib2/tables/8/5.3.table | 2 -- definitions/grib2/tables/8/5.4.table | 2 -- definitions/grib2/tables/8/5.40.table | 1 - definitions/grib2/tables/8/5.5.table | 2 -- definitions/grib2/tables/8/5.6.table | 2 -- definitions/grib2/tables/8/5.7.table | 1 - definitions/grib2/tables/9/0.0.table | 3 --- definitions/grib2/tables/9/1.2.table | 2 -- definitions/grib2/tables/9/1.3.table | 2 -- definitions/grib2/tables/9/1.4.table | 2 -- definitions/grib2/tables/9/3.0.table | 2 -- definitions/grib2/tables/9/3.1.table | 15 -------------- definitions/grib2/tables/9/3.10.table | 1 - definitions/grib2/tables/9/3.11.table | 1 - definitions/grib2/tables/9/3.15.table | 5 ----- definitions/grib2/tables/9/3.2.table | 2 -- definitions/grib2/tables/9/3.20.table | 2 -- definitions/grib2/tables/9/3.21.table | 3 --- definitions/grib2/tables/9/3.3.table | 2 -- definitions/grib2/tables/9/3.4.table | 1 - definitions/grib2/tables/9/3.7.table | 1 - definitions/grib2/tables/9/3.8.table | 2 -- definitions/grib2/tables/9/3.9.table | 1 - definitions/grib2/tables/9/4.0.table | 9 --------- definitions/grib2/tables/9/4.1.0.table | 2 -- definitions/grib2/tables/9/4.1.1.table | 2 -- definitions/grib2/tables/9/4.1.10.table | 2 -- definitions/grib2/tables/9/4.1.2.table | 2 -- definitions/grib2/tables/9/4.1.3.table | 2 -- definitions/grib2/tables/9/4.10.table | 2 -- definitions/grib2/tables/9/4.11.table | 2 -- definitions/grib2/tables/9/4.12.table | 2 -- definitions/grib2/tables/9/4.13.table | 2 -- definitions/grib2/tables/9/4.14.table | 2 -- definitions/grib2/tables/9/4.15.table | 2 -- definitions/grib2/tables/9/4.151.table | 1 - definitions/grib2/tables/9/4.2.0.0.table | 2 -- definitions/grib2/tables/9/4.2.0.1.table | 3 --- definitions/grib2/tables/9/4.2.0.13.table | 2 -- definitions/grib2/tables/9/4.2.0.14.table | 2 -- definitions/grib2/tables/9/4.2.0.15.table | 2 -- definitions/grib2/tables/9/4.2.0.16.table | 2 -- definitions/grib2/tables/9/4.2.0.18.table | 2 -- definitions/grib2/tables/9/4.2.0.19.table | 2 -- definitions/grib2/tables/9/4.2.0.190.table | 2 -- definitions/grib2/tables/9/4.2.0.191.table | 2 -- definitions/grib2/tables/9/4.2.0.2.table | 2 -- definitions/grib2/tables/9/4.2.0.20.table | 4 ---- definitions/grib2/tables/9/4.2.0.3.table | 2 -- definitions/grib2/tables/9/4.2.0.4.table | 3 --- definitions/grib2/tables/9/4.2.0.5.table | 2 -- definitions/grib2/tables/9/4.2.0.6.table | 2 -- definitions/grib2/tables/9/4.2.0.7.table | 2 -- definitions/grib2/tables/9/4.2.1.0.table | 2 -- definitions/grib2/tables/9/4.2.1.1.table | 2 -- definitions/grib2/tables/9/4.2.10.0.table | 2 -- definitions/grib2/tables/9/4.2.10.1.table | 2 -- definitions/grib2/tables/9/4.2.10.191.table | 2 -- definitions/grib2/tables/9/4.2.10.2.table | 2 -- definitions/grib2/tables/9/4.2.10.3.table | 2 -- definitions/grib2/tables/9/4.2.10.4.table | 3 --- definitions/grib2/tables/9/4.2.2.0.table | 2 -- definitions/grib2/tables/9/4.2.2.3.table | 2 -- definitions/grib2/tables/9/4.2.2.4.table | 1 - definitions/grib2/tables/9/4.2.3.0.table | 2 -- definitions/grib2/tables/9/4.2.3.1.table | 2 -- definitions/grib2/tables/9/4.201.table | 2 -- definitions/grib2/tables/9/4.202.table | 2 -- definitions/grib2/tables/9/4.203.table | 2 -- definitions/grib2/tables/9/4.204.table | 2 -- definitions/grib2/tables/9/4.205.table | 2 -- definitions/grib2/tables/9/4.206.table | 2 -- definitions/grib2/tables/9/4.207.table | 2 -- definitions/grib2/tables/9/4.208.table | 2 -- definitions/grib2/tables/9/4.209.table | 2 -- definitions/grib2/tables/9/4.210.table | 2 -- definitions/grib2/tables/9/4.211.table | 2 -- definitions/grib2/tables/9/4.212.table | 2 -- definitions/grib2/tables/9/4.213.table | 2 -- definitions/grib2/tables/9/4.215.table | 4 ---- definitions/grib2/tables/9/4.216.table | 1 - definitions/grib2/tables/9/4.217.table | 2 -- definitions/grib2/tables/9/4.218.table | 3 --- definitions/grib2/tables/9/4.219.table | 2 -- definitions/grib2/tables/9/4.220.table | 2 -- definitions/grib2/tables/9/4.221.table | 2 -- definitions/grib2/tables/9/4.222.table | 2 -- definitions/grib2/tables/9/4.224.table | 4 ---- definitions/grib2/tables/9/4.227.table | 2 -- definitions/grib2/tables/9/4.230.table | 8 -------- definitions/grib2/tables/9/4.3.table | 2 -- definitions/grib2/tables/9/4.4.table | 3 --- definitions/grib2/tables/9/4.5.table | 7 ------- definitions/grib2/tables/9/4.6.table | 2 -- definitions/grib2/tables/9/4.7.table | 2 -- definitions/grib2/tables/9/4.8.table | 2 -- definitions/grib2/tables/9/4.9.table | 2 -- definitions/grib2/tables/9/4.91.table | 2 -- definitions/grib2/tables/9/5.0.table | 5 ----- definitions/grib2/tables/9/5.1.table | 2 -- definitions/grib2/tables/9/5.2.table | 3 --- definitions/grib2/tables/9/5.3.table | 2 -- definitions/grib2/tables/9/5.4.table | 2 -- definitions/grib2/tables/9/5.40.table | 1 - definitions/grib2/tables/9/5.5.table | 2 -- definitions/grib2/tables/9/5.6.table | 2 -- definitions/grib2/tables/9/5.7.table | 1 - .../grib2/tables/local/ecmf/4/1.2.table | 1 - .../grib2/tables/local/kwbc/1/4.5.table | 9 --------- 3331 files changed, 8139 deletions(-) diff --git a/definitions/grib2/tables/0.0.table b/definitions/grib2/tables/0.0.table index 1746f737c..b7c1f613f 100644 --- a/definitions/grib2/tables/0.0.table +++ b/definitions/grib2/tables/0.0.table @@ -4,10 +4,6 @@ 2 2 Land surface products 3 3 Satellite remote sensing products (formerly Space products) 4 4 Space weather products -# 5-9 Reserved 10 10 Oceanographic products -# 11-19 Reserved 20 20 Health and socioeconomic impacts -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.12.table b/definitions/grib2/tables/0/4.12.table index 25880d822..b72100f3c 100644 --- a/definitions/grib2/tables/0/4.12.table +++ b/definitions/grib2/tables/0/4.12.table @@ -1,5 +1,4 @@ 0 0 Maintenance Mode 1 1 Clear air 2 2 Precipitation -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.13.table b/definitions/grib2/tables/0/4.13.table index f9d88b8bc..fc291ad18 100644 --- a/definitions/grib2/tables/0/4.13.table +++ b/definitions/grib2/tables/0/4.13.table @@ -1,4 +1,3 @@ 0 0 No quality control applied 1 1 Quality control applied -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.14.table b/definitions/grib2/tables/0/4.14.table index 8b87dc1d0..010634951 100644 --- a/definitions/grib2/tables/0/4.14.table +++ b/definitions/grib2/tables/0/4.14.table @@ -1,4 +1,3 @@ 0 0 No clutter filter used 1 1 Clutter filter used -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.15.table b/definitions/grib2/tables/0/4.15.table index 0d6013275..f11376d23 100644 --- a/definitions/grib2/tables/0/4.15.table +++ b/definitions/grib2/tables/0/4.15.table @@ -1,4 +1,3 @@ 0 0 Confidence level (4.151.table) 1 1 Delta time (seconds) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.151.table b/definitions/grib2/tables/0/4.151.table index fcd8406c4..6fb8f79aa 100644 --- a/definitions/grib2/tables/0/4.151.table +++ b/definitions/grib2/tables/0/4.151.table @@ -2,5 +2,4 @@ 1 1 suspect 2 2 acceptable 3 3 excellent -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.201.table b/definitions/grib2/tables/0/4.201.table index 4bef8f107..ba7bb6bd4 100644 --- a/definitions/grib2/tables/0/4.201.table +++ b/definitions/grib2/tables/0/4.201.table @@ -3,5 +3,4 @@ 3 3 Freezing rain 4 4 Mixed/ice 5 5 Snow -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.202.table b/definitions/grib2/tables/0/4.202.table index 59e68255c..766abfd16 100644 --- a/definitions/grib2/tables/0/4.202.table +++ b/definitions/grib2/tables/0/4.202.table @@ -1,2 +1 @@ -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.204.table b/definitions/grib2/tables/0/4.204.table index 77a80d665..07e5d3a25 100644 --- a/definitions/grib2/tables/0/4.204.table +++ b/definitions/grib2/tables/0/4.204.table @@ -3,5 +3,4 @@ 2 2 Few (3% - 15%) 3 3 Scattered (16% - 45%) 4 4 Numerous (> 45%) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.205.table b/definitions/grib2/tables/0/4.205.table index 47098f4a0..3f3dff0c2 100644 --- a/definitions/grib2/tables/0/4.205.table +++ b/definitions/grib2/tables/0/4.205.table @@ -1,4 +1,3 @@ 0 0 Aerosol not present 1 1 Aerosol present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.206.table b/definitions/grib2/tables/0/4.206.table index 3b040fc87..b7893c9f5 100644 --- a/definitions/grib2/tables/0/4.206.table +++ b/definitions/grib2/tables/0/4.206.table @@ -1,4 +1,3 @@ 0 0 Not present 1 1 Present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.207.table b/definitions/grib2/tables/0/4.207.table index d24bc91fe..b95e0981a 100644 --- a/definitions/grib2/tables/0/4.207.table +++ b/definitions/grib2/tables/0/4.207.table @@ -2,5 +2,4 @@ 1 1 Light 2 2 Moderate 3 3 Severe -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.208.table b/definitions/grib2/tables/0/4.208.table index 88d92268f..f40149be5 100644 --- a/definitions/grib2/tables/0/4.208.table +++ b/definitions/grib2/tables/0/4.208.table @@ -3,5 +3,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.209.table b/definitions/grib2/tables/0/4.209.table index 915adba05..492e88651 100644 --- a/definitions/grib2/tables/0/4.209.table +++ b/definitions/grib2/tables/0/4.209.table @@ -2,5 +2,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.210.table b/definitions/grib2/tables/0/4.210.table index a96417b74..c95a31360 100644 --- a/definitions/grib2/tables/0/4.210.table +++ b/definitions/grib2/tables/0/4.210.table @@ -1,4 +1,3 @@ 0 0 Contrail not present 1 1 Contrail present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.211.table b/definitions/grib2/tables/0/4.211.table index 753c15f5a..dfce01939 100644 --- a/definitions/grib2/tables/0/4.211.table +++ b/definitions/grib2/tables/0/4.211.table @@ -1,5 +1,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non bypass -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.212.table b/definitions/grib2/tables/0/4.212.table index 5fff126e2..57fe82244 100644 --- a/definitions/grib2/tables/0/4.212.table +++ b/definitions/grib2/tables/0/4.212.table @@ -11,5 +11,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.213.table b/definitions/grib2/tables/0/4.213.table index 3b826a0fa..bc5b301c3 100644 --- a/definitions/grib2/tables/0/4.213.table +++ b/definitions/grib2/tables/0/4.213.table @@ -9,5 +9,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.217.table b/definitions/grib2/tables/0/4.217.table index 79fd1815f..9c2c78b5a 100644 --- a/definitions/grib2/tables/0/4.217.table +++ b/definitions/grib2/tables/0/4.217.table @@ -2,5 +2,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.220.table b/definitions/grib2/tables/0/4.220.table index db83ed7a3..875f98f87 100644 --- a/definitions/grib2/tables/0/4.220.table +++ b/definitions/grib2/tables/0/4.220.table @@ -1,4 +1,3 @@ 0 0 Latitude 1 1 Longitude -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.221.table b/definitions/grib2/tables/0/4.221.table index 5c4ee7c5c..cbbdfb348 100644 --- a/definitions/grib2/tables/0/4.221.table +++ b/definitions/grib2/tables/0/4.221.table @@ -1,4 +1,3 @@ 0 0 Not included 1 1 Extrapolated -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.7.table b/definitions/grib2/tables/0/4.7.table index 0f480b46d..721cf259f 100644 --- a/definitions/grib2/tables/0/4.7.table +++ b/definitions/grib2/tables/0/4.7.table @@ -5,5 +5,4 @@ 4 4 Spread of all members 5 5 Large anomaly index of all members (see Note) 6 6 Unweighted mean of the cluster members -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.8.table b/definitions/grib2/tables/0/4.8.table index 9b5c904d6..32395df19 100644 --- a/definitions/grib2/tables/0/4.8.table +++ b/definitions/grib2/tables/0/4.8.table @@ -1,4 +1,3 @@ 0 0 Anomaly correlation 1 1 Root mean square -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.9.table b/definitions/grib2/tables/0/4.9.table index fe1f72c8f..47af85a3b 100644 --- a/definitions/grib2/tables/0/4.9.table +++ b/definitions/grib2/tables/0/4.9.table @@ -3,5 +3,4 @@ 2 2 Probability of event between lower and upper limits. The range includes the lower limit but not the upper limit 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/0/4.91.table b/definitions/grib2/tables/0/4.91.table index d0cde6a7b..c0ac7e538 100644 --- a/definitions/grib2/tables/0/4.91.table +++ b/definitions/grib2/tables/0/4.91.table @@ -10,5 +10,4 @@ 9 9 Lower or equal upper limit 10 10 Between lower and upper limits. The range includes the upper limit but not the lower limit 11 11 Equal to first limit -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/0/5.6.table b/definitions/grib2/tables/0/5.6.table index df2e2fe59..504d9baa9 100644 --- a/definitions/grib2/tables/0/5.6.table +++ b/definitions/grib2/tables/0/5.6.table @@ -1,4 +1,3 @@ 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.12.table b/definitions/grib2/tables/1/4.12.table index 88e78ade6..c847e27f2 100644 --- a/definitions/grib2/tables/1/4.12.table +++ b/definitions/grib2/tables/1/4.12.table @@ -1,5 +1,4 @@ 0 0 Maintenance Mode 1 1 Clear air 2 2 Precipitation -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.13.table b/definitions/grib2/tables/1/4.13.table index f9d88b8bc..fc291ad18 100644 --- a/definitions/grib2/tables/1/4.13.table +++ b/definitions/grib2/tables/1/4.13.table @@ -1,4 +1,3 @@ 0 0 No quality control applied 1 1 Quality control applied -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.14.table b/definitions/grib2/tables/1/4.14.table index 8b87dc1d0..010634951 100644 --- a/definitions/grib2/tables/1/4.14.table +++ b/definitions/grib2/tables/1/4.14.table @@ -1,4 +1,3 @@ 0 0 No clutter filter used 1 1 Clutter filter used -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.15.table b/definitions/grib2/tables/1/4.15.table index 0d6013275..f11376d23 100644 --- a/definitions/grib2/tables/1/4.15.table +++ b/definitions/grib2/tables/1/4.15.table @@ -1,4 +1,3 @@ 0 0 Confidence level (4.151.table) 1 1 Delta time (seconds) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.151.table b/definitions/grib2/tables/1/4.151.table index fcd8406c4..6fb8f79aa 100644 --- a/definitions/grib2/tables/1/4.151.table +++ b/definitions/grib2/tables/1/4.151.table @@ -2,5 +2,4 @@ 1 1 suspect 2 2 acceptable 3 3 excellent -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.201.table b/definitions/grib2/tables/1/4.201.table index 3b8ae1e90..7fd0a3e91 100644 --- a/definitions/grib2/tables/1/4.201.table +++ b/definitions/grib2/tables/1/4.201.table @@ -3,5 +3,4 @@ 3 3 Freezing rain 4 4 Mixed/ice 5 5 Snow -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.202.table b/definitions/grib2/tables/1/4.202.table index 59e68255c..766abfd16 100644 --- a/definitions/grib2/tables/1/4.202.table +++ b/definitions/grib2/tables/1/4.202.table @@ -1,2 +1 @@ -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.204.table b/definitions/grib2/tables/1/4.204.table index 77a80d665..07e5d3a25 100644 --- a/definitions/grib2/tables/1/4.204.table +++ b/definitions/grib2/tables/1/4.204.table @@ -3,5 +3,4 @@ 2 2 Few (3% - 15%) 3 3 Scattered (16% - 45%) 4 4 Numerous (> 45%) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.205.table b/definitions/grib2/tables/1/4.205.table index 47098f4a0..3f3dff0c2 100644 --- a/definitions/grib2/tables/1/4.205.table +++ b/definitions/grib2/tables/1/4.205.table @@ -1,4 +1,3 @@ 0 0 Aerosol not present 1 1 Aerosol present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.206.table b/definitions/grib2/tables/1/4.206.table index 3b040fc87..b7893c9f5 100644 --- a/definitions/grib2/tables/1/4.206.table +++ b/definitions/grib2/tables/1/4.206.table @@ -1,4 +1,3 @@ 0 0 Not present 1 1 Present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.207.table b/definitions/grib2/tables/1/4.207.table index e701c476e..a74654d99 100644 --- a/definitions/grib2/tables/1/4.207.table +++ b/definitions/grib2/tables/1/4.207.table @@ -2,5 +2,4 @@ 1 1 Light 2 2 Moderate 3 3 Severe -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.208.table b/definitions/grib2/tables/1/4.208.table index 88d92268f..f40149be5 100644 --- a/definitions/grib2/tables/1/4.208.table +++ b/definitions/grib2/tables/1/4.208.table @@ -3,5 +3,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.209.table b/definitions/grib2/tables/1/4.209.table index 915adba05..492e88651 100644 --- a/definitions/grib2/tables/1/4.209.table +++ b/definitions/grib2/tables/1/4.209.table @@ -2,5 +2,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.210.table b/definitions/grib2/tables/1/4.210.table index a96417b74..c95a31360 100644 --- a/definitions/grib2/tables/1/4.210.table +++ b/definitions/grib2/tables/1/4.210.table @@ -1,4 +1,3 @@ 0 0 Contrail not present 1 1 Contrail present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.211.table b/definitions/grib2/tables/1/4.211.table index 753c15f5a..dfce01939 100644 --- a/definitions/grib2/tables/1/4.211.table +++ b/definitions/grib2/tables/1/4.211.table @@ -1,5 +1,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non bypass -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.212.table b/definitions/grib2/tables/1/4.212.table index 5fff126e2..57fe82244 100644 --- a/definitions/grib2/tables/1/4.212.table +++ b/definitions/grib2/tables/1/4.212.table @@ -11,5 +11,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.213.table b/definitions/grib2/tables/1/4.213.table index 3b826a0fa..bc5b301c3 100644 --- a/definitions/grib2/tables/1/4.213.table +++ b/definitions/grib2/tables/1/4.213.table @@ -9,5 +9,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.217.table b/definitions/grib2/tables/1/4.217.table index 79fd1815f..9c2c78b5a 100644 --- a/definitions/grib2/tables/1/4.217.table +++ b/definitions/grib2/tables/1/4.217.table @@ -2,5 +2,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.220.table b/definitions/grib2/tables/1/4.220.table index db83ed7a3..875f98f87 100644 --- a/definitions/grib2/tables/1/4.220.table +++ b/definitions/grib2/tables/1/4.220.table @@ -1,4 +1,3 @@ 0 0 Latitude 1 1 Longitude -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.221.table b/definitions/grib2/tables/1/4.221.table index 5c4ee7c5c..cbbdfb348 100644 --- a/definitions/grib2/tables/1/4.221.table +++ b/definitions/grib2/tables/1/4.221.table @@ -1,4 +1,3 @@ 0 0 Not included 1 1 Extrapolated -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.7.table b/definitions/grib2/tables/1/4.7.table index 0f480b46d..721cf259f 100644 --- a/definitions/grib2/tables/1/4.7.table +++ b/definitions/grib2/tables/1/4.7.table @@ -5,5 +5,4 @@ 4 4 Spread of all members 5 5 Large anomaly index of all members (see Note) 6 6 Unweighted mean of the cluster members -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.8.table b/definitions/grib2/tables/1/4.8.table index 9b5c904d6..32395df19 100644 --- a/definitions/grib2/tables/1/4.8.table +++ b/definitions/grib2/tables/1/4.8.table @@ -1,4 +1,3 @@ 0 0 Anomaly correlation 1 1 Root mean square -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/4.9.table b/definitions/grib2/tables/1/4.9.table index fe1f72c8f..47af85a3b 100644 --- a/definitions/grib2/tables/1/4.9.table +++ b/definitions/grib2/tables/1/4.9.table @@ -3,5 +3,4 @@ 2 2 Probability of event between lower and upper limits. The range includes the lower limit but not the upper limit 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/1/5.6.table b/definitions/grib2/tables/1/5.6.table index df2e2fe59..504d9baa9 100644 --- a/definitions/grib2/tables/1/5.6.table +++ b/definitions/grib2/tables/1/5.6.table @@ -1,4 +1,3 @@ 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/0.0.table b/definitions/grib2/tables/10/0.0.table index 88d8b2cb3..41ff90231 100644 --- a/definitions/grib2/tables/10/0.0.table +++ b/definitions/grib2/tables/10/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/1.2.table b/definitions/grib2/tables/10/1.2.table index 606bf8300..05dc8c2ea 100644 --- a/definitions/grib2/tables/10/1.2.table +++ b/definitions/grib2/tables/10/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/1.3.table b/definitions/grib2/tables/10/1.3.table index 712bb2ba8..7c0132a8e 100644 --- a/definitions/grib2/tables/10/1.3.table +++ b/definitions/grib2/tables/10/1.3.table @@ -5,6 +5,4 @@ 3 3 Re-analysis products 4 4 THORPEX Interactive Grand Global Ensemble (TIGGE) 5 5 THORPEX Interactive Grand Global Ensemble (TIGGE) test -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/1.4.table b/definitions/grib2/tables/10/1.4.table index 7f47afd96..d14ca167a 100644 --- a/definitions/grib2/tables/10/1.4.table +++ b/definitions/grib2/tables/10/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/10/3.0.table b/definitions/grib2/tables/10/3.0.table index 4269b25ad..a803cb068 100644 --- a/definitions/grib2/tables/10/3.0.table +++ b/definitions/grib2/tables/10/3.0.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/10/3.1.table b/definitions/grib2/tables/10/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/10/3.1.table +++ b/definitions/grib2/tables/10/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/10/3.10.table b/definitions/grib2/tables/10/3.10.table index da36dc664..da6ef60f8 100644 --- a/definitions/grib2/tables/10/3.10.table +++ b/definitions/grib2/tables/10/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/10/3.11.table b/definitions/grib2/tables/10/3.11.table index 0a299af98..bad05e213 100644 --- a/definitions/grib2/tables/10/3.11.table +++ b/definitions/grib2/tables/10/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/10/3.15.table b/definitions/grib2/tables/10/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/10/3.15.table +++ b/definitions/grib2/tables/10/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/3.2.table b/definitions/grib2/tables/10/3.2.table index 58a2a548b..f96955c77 100644 --- a/definitions/grib2/tables/10/3.2.table +++ b/definitions/grib2/tables/10/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame 9 9 Earth represented by the OSGB 1936 Datum, using the Airy_1830 Spheroid, the Greenwich meridian as 0 longitude, the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/3.20.table b/definitions/grib2/tables/10/3.20.table index 63de6b1a9..49f742062 100644 --- a/definitions/grib2/tables/10/3.20.table +++ b/definitions/grib2/tables/10/3.20.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/3.21.table b/definitions/grib2/tables/10/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/10/3.21.table +++ b/definitions/grib2/tables/10/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/3.3.table b/definitions/grib2/tables/10/3.3.table index bd47e2509..cf950fbcf 100644 --- a/definitions/grib2/tables/10/3.3.table +++ b/definitions/grib2/tables/10/3.3.table @@ -1,9 +1,7 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/10/3.4.table b/definitions/grib2/tables/10/3.4.table index ea9cbe829..d77b6b89f 100644 --- a/definitions/grib2/tables/10/3.4.table +++ b/definitions/grib2/tables/10/3.4.table @@ -7,4 +7,3 @@ 3 1 Adjacent points in j (y) direction is consecutive 4 0 All rows scan in the same direction 4 1 Adjacent rows scans in the opposite direction -# 5-8 Reserved diff --git a/definitions/grib2/tables/10/3.7.table b/definitions/grib2/tables/10/3.7.table index 2d01b8d52..dc17ad734 100644 --- a/definitions/grib2/tables/10/3.7.table +++ b/definitions/grib2/tables/10/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 The complex numbers Fnm. See separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/10/3.8.table b/definitions/grib2/tables/10/3.8.table index 6df554ae9..719e18df9 100644 --- a/definitions/grib2/tables/10/3.8.table +++ b/definitions/grib2/tables/10/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/3.9.table b/definitions/grib2/tables/10/3.9.table index 530d1dee0..5e7d3d880 100644 --- a/definitions/grib2/tables/10/3.9.table +++ b/definitions/grib2/tables/10/3.9.table @@ -1,4 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/10/4.0.table b/definitions/grib2/tables/10/4.0.table index 28733d42d..bea2b95f8 100644 --- a/definitions/grib2/tables/10/4.0.table +++ b/definitions/grib2/tables/10/4.0.table @@ -15,13 +15,10 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data -# 33-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -33,21 +30,15 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/10/4.1.0.table b/definitions/grib2/tables/10/4.1.0.table index 3413dbad5..c5f166b65 100644 --- a/definitions/grib2/tables/10/4.1.0.table +++ b/definitions/grib2/tables/10/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.1.1.table b/definitions/grib2/tables/10/4.1.1.table index dea5bc49e..51d3e1752 100644 --- a/definitions/grib2/tables/10/4.1.1.table +++ b/definitions/grib2/tables/10/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.1.10.table b/definitions/grib2/tables/10/4.1.10.table index e6ce6faf7..2541195f0 100644 --- a/definitions/grib2/tables/10/4.1.10.table +++ b/definitions/grib2/tables/10/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Sub-surface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.1.2.table b/definitions/grib2/tables/10/4.1.2.table index 805836998..014bdf18e 100644 --- a/definitions/grib2/tables/10/4.1.2.table +++ b/definitions/grib2/tables/10/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.1.3.table b/definitions/grib2/tables/10/4.1.3.table index adcbfb051..4ac485be4 100644 --- a/definitions/grib2/tables/10/4.1.3.table +++ b/definitions/grib2/tables/10/4.1.3.table @@ -1,8 +1,6 @@ # Code table 4.1 - Parameter category by product discipline. Product discipline 3 - Space products 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.10.table b/definitions/grib2/tables/10/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/10/4.10.table +++ b/definitions/grib2/tables/10/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/10/4.11.table b/definitions/grib2/tables/10/4.11.table index af9ff29ad..54d5c84de 100644 --- a/definitions/grib2/tables/10/4.11.table +++ b/definitions/grib2/tables/10/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.12.table b/definitions/grib2/tables/10/4.12.table index 6cab67bf5..64c3bdbd9 100644 --- a/definitions/grib2/tables/10/4.12.table +++ b/definitions/grib2/tables/10/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.13.table b/definitions/grib2/tables/10/4.13.table index f090fb9ae..20415bfc5 100644 --- a/definitions/grib2/tables/10/4.13.table +++ b/definitions/grib2/tables/10/4.13.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.14.table b/definitions/grib2/tables/10/4.14.table index bcb04f328..d8a259329 100644 --- a/definitions/grib2/tables/10/4.14.table +++ b/definitions/grib2/tables/10/4.14.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.15.table b/definitions/grib2/tables/10/4.15.table index 6e1ef5745..8e1a90426 100644 --- a/definitions/grib2/tables/10/4.15.table +++ b/definitions/grib2/tables/10/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.151.table b/definitions/grib2/tables/10/4.151.table index 30487afb4..90a8c6ca0 100644 --- a/definitions/grib2/tables/10/4.151.table +++ b/definitions/grib2/tables/10/4.151.table @@ -3,5 +3,4 @@ 1 1 suspect 2 2 acceptable 3 3 excellent -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.0.table b/definitions/grib2/tables/10/4.2.0.0.table index 8656f8974..79dd8518e 100644 --- a/definitions/grib2/tables/10/4.2.0.0.table +++ b/definitions/grib2/tables/10/4.2.0.0.table @@ -20,6 +20,4 @@ 18 18 Snow temperature (top of snow) (K) 19 19 Turbulent transfer coefficient for heat (Numeric) 20 20 Turbulent diffusion coefficient for heat (m2/s) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.1.table b/definitions/grib2/tables/10/4.2.0.1.table index 3d68fbe86..06c78260d 100644 --- a/definitions/grib2/tables/10/4.2.0.1.table +++ b/definitions/grib2/tables/10/4.2.0.1.table @@ -86,10 +86,7 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rainwater content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) -# 93-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.13.table b/definitions/grib2/tables/10/4.2.0.13.table index 90ab7d1b9..3aead6cbd 100644 --- a/definitions/grib2/tables/10/4.2.0.13.table +++ b/definitions/grib2/tables/10/4.2.0.13.table @@ -1,5 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.14.table b/definitions/grib2/tables/10/4.2.0.14.table index fca42ccc7..62943028c 100644 --- a/definitions/grib2/tables/10/4.2.0.14.table +++ b/definitions/grib2/tables/10/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.15.table b/definitions/grib2/tables/10/4.2.0.15.table index 66ccff19d..734440838 100644 --- a/definitions/grib2/tables/10/4.2.0.15.table +++ b/definitions/grib2/tables/10/4.2.0.15.table @@ -14,6 +14,4 @@ 12 12 Reflectivity of rain (dB) 13 13 Reflectivity of graupel (dB) 14 14 Reflectivity of hail (dB) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.16.table b/definitions/grib2/tables/10/4.2.0.16.table index 18dedb7c0..98630ec0e 100644 --- a/definitions/grib2/tables/10/4.2.0.16.table +++ b/definitions/grib2/tables/10/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.18.table b/definitions/grib2/tables/10/4.2.0.18.table index 165aa6008..6de688a0b 100644 --- a/definitions/grib2/tables/10/4.2.0.18.table +++ b/definitions/grib2/tables/10/4.2.0.18.table @@ -13,6 +13,4 @@ 11 11 Wet deposition (Bq m-2) 12 12 Dry deposition (Bq m-2) 13 13 Total deposition (wet + dry) (Bq m-2) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.19.table b/definitions/grib2/tables/10/4.2.0.19.table index 90003262e..1c38a0477 100644 --- a/definitions/grib2/tables/10/4.2.0.19.table +++ b/definitions/grib2/tables/10/4.2.0.19.table @@ -27,6 +27,4 @@ 25 25 Weather (Code table 4.225) 26 26 Convective outlook (Code table 4.224) 27 27 Icing scenario (Code table 4.227) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.190.table b/definitions/grib2/tables/10/4.2.0.190.table index 3d9d5ff85..f401ef529 100644 --- a/definitions/grib2/tables/10/4.2.0.190.table +++ b/definitions/grib2/tables/10/4.2.0.190.table @@ -1,5 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.191.table b/definitions/grib2/tables/10/4.2.0.191.table index 4ff12e532..c44d4c807 100644 --- a/definitions/grib2/tables/10/4.2.0.191.table +++ b/definitions/grib2/tables/10/4.2.0.191.table @@ -2,6 +2,4 @@ 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/10/4.2.0.2.table b/definitions/grib2/tables/10/4.2.0.2.table index 6fcd262b0..e680d1570 100644 --- a/definitions/grib2/tables/10/4.2.0.2.table +++ b/definitions/grib2/tables/10/4.2.0.2.table @@ -35,6 +35,4 @@ 33 33 Wind fetch (m) 34 34 Normal wind component (m/s) 35 35 Tangential wind component (m/s) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.20.table b/definitions/grib2/tables/10/4.2.0.20.table index 898a774eb..59518592d 100644 --- a/definitions/grib2/tables/10/4.2.0.20.table +++ b/definitions/grib2/tables/10/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (Sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -25,7 +24,6 @@ 57 57 Total yearly average burden of the atmosphere (mol) 58 58 Total yearly averaged atmospheric loss (mol/s) 59 59 Aerosol number concentration (m-3) -# 60-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -37,6 +35,4 @@ 108 108 Aerosol lidar backscatter from the ground (m-1 sr-1) 109 109 Aerosol lidar extinction from satellite (m-1) 110 110 Aerosol lidar extinction from the ground (m-1) -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.3.table b/definitions/grib2/tables/10/4.2.0.3.table index 08c1c7bc3..03f4c15ff 100644 --- a/definitions/grib2/tables/10/4.2.0.3.table +++ b/definitions/grib2/tables/10/4.2.0.3.table @@ -26,6 +26,4 @@ 24 24 Anisotropy of sub-gridscale orography (Numeric) 25 25 Natural logarithm of pressure in Pa (Numeric) 26 26 Exner pressure (Numeric) -# 27-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.4.table b/definitions/grib2/tables/10/4.2.0.4.table index 336fdb421..6c69548e3 100644 --- a/definitions/grib2/tables/10/4.2.0.4.table +++ b/definitions/grib2/tables/10/4.2.0.4.table @@ -12,9 +12,6 @@ 10 10 Photosynthetically active radiation (W m-2) 11 11 Net short-wave radiation flux, clear sky (W m-2) 12 12 Downward UV radiation (W m-2) -# 13-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.5.table b/definitions/grib2/tables/10/4.2.0.5.table index 86a199ace..0e3775b06 100644 --- a/definitions/grib2/tables/10/4.2.0.5.table +++ b/definitions/grib2/tables/10/4.2.0.5.table @@ -6,6 +6,4 @@ 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long-wave radiation flux (W m-2) 6 6 Net long-wave radiation flux, clear sky (W m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.6.table b/definitions/grib2/tables/10/4.2.0.6.table index fb935344e..6f3724ceb 100644 --- a/definitions/grib2/tables/10/4.2.0.6.table +++ b/definitions/grib2/tables/10/4.2.0.6.table @@ -35,6 +35,4 @@ 33 33 Sunshine duration (s) 34 34 Surface long wave effective total cloudiness (Numeric) 35 35 Surface short wave effective total cloudiness (Numeric) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.0.7.table b/definitions/grib2/tables/10/4.2.0.7.table index 6c1794c73..4d22c0129 100644 --- a/definitions/grib2/tables/10/4.2.0.7.table +++ b/definitions/grib2/tables/10/4.2.0.7.table @@ -15,6 +15,4 @@ 13 13 Showalter index (K) 14 14 Reserved 15 15 Updraft helicity (m2 s-2) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.1.0.table b/definitions/grib2/tables/10/4.2.1.0.table index 9c4d129da..4d79bd24f 100644 --- a/definitions/grib2/tables/10/4.2.1.0.table +++ b/definitions/grib2/tables/10/4.2.1.0.table @@ -6,6 +6,4 @@ 4 4 Snow water equivalent per cent of normal (%) 5 5 Baseflow-groundwater runoff (kg m-2) 6 6 Storm surface runoff (kg m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.1.1.table b/definitions/grib2/tables/10/4.2.1.1.table index aa560e479..24efd5d1a 100644 --- a/definitions/grib2/tables/10/4.2.1.1.table +++ b/definitions/grib2/tables/10/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.10.0.table b/definitions/grib2/tables/10/4.2.10.0.table index 78d3bdef4..972eb7132 100644 --- a/definitions/grib2/tables/10/4.2.10.0.table +++ b/definitions/grib2/tables/10/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (s-1) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.10.1.table b/definitions/grib2/tables/10/4.2.10.1.table index de6b562b8..ef6f9dc67 100644 --- a/definitions/grib2/tables/10/4.2.10.1.table +++ b/definitions/grib2/tables/10/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.10.191.table b/definitions/grib2/tables/10/4.2.10.191.table index 6cafbd3d4..9b1fb12bb 100644 --- a/definitions/grib2/tables/10/4.2.10.191.table +++ b/definitions/grib2/tables/10/4.2.10.191.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Meridional overturning stream function (m3/s) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.10.2.table b/definitions/grib2/tables/10/4.2.10.2.table index 258aeef18..5c14f114c 100644 --- a/definitions/grib2/tables/10/4.2.10.2.table +++ b/definitions/grib2/tables/10/4.2.10.2.table @@ -9,6 +9,4 @@ 7 7 Ice divergence (/s) 8 8 Ice temperature (K) 9 9 Ice internal pressure (Pa m) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.10.3.table b/definitions/grib2/tables/10/4.2.10.3.table index 3b9a2df46..7e8a250e4 100644 --- a/definitions/grib2/tables/10/4.2.10.3.table +++ b/definitions/grib2/tables/10/4.2.10.3.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.10.4.table b/definitions/grib2/tables/10/4.2.10.4.table index 91ffb2b29..21aae1504 100644 --- a/definitions/grib2/tables/10/4.2.10.4.table +++ b/definitions/grib2/tables/10/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2 s-1) 6 6 Ocean vertical momentum diffusivity (m2 s-1) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (m-1) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.2.0.table b/definitions/grib2/tables/10/4.2.2.0.table index 0632ff414..95456e01d 100644 --- a/definitions/grib2/tables/10/4.2.2.0.table +++ b/definitions/grib2/tables/10/4.2.2.0.table @@ -32,6 +32,4 @@ 30 30 Deciduous forest cover (Proportion) 31 31 Normalized differential vegetation index (NDVI) (Numeric) 32 32 Root depth of vegetation (m) -# 33-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.2.3.table b/definitions/grib2/tables/10/4.2.2.3.table index d7db59d5e..e24fb0798 100644 --- a/definitions/grib2/tables/10/4.2.2.3.table +++ b/definitions/grib2/tables/10/4.2.2.3.table @@ -22,6 +22,4 @@ 20 20 Column-integrated soil moisture (kg m-2) 21 21 Soil ice (kg m-3) 22 22 Column-integrated soil ice (kg m-2) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.2.4.table b/definitions/grib2/tables/10/4.2.2.4.table index 0992f59db..89ad52214 100644 --- a/definitions/grib2/tables/10/4.2.2.4.table +++ b/definitions/grib2/tables/10/4.2.2.4.table @@ -3,6 +3,4 @@ 1 1 Fire outlook due to dry thunderstorm (Code table 4.224) 2 2 Haines Index (Numeric) 3 3 Fire burned area (%) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.3.0.table b/definitions/grib2/tables/10/4.2.3.0.table index 8c19d43b2..e06377ac2 100644 --- a/definitions/grib2/tables/10/4.2.3.0.table +++ b/definitions/grib2/tables/10/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.2.3.1.table b/definitions/grib2/tables/10/4.2.3.1.table index af1896b14..2e35a816a 100644 --- a/definitions/grib2/tables/10/4.2.3.1.table +++ b/definitions/grib2/tables/10/4.2.3.1.table @@ -23,6 +23,4 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.201.table b/definitions/grib2/tables/10/4.201.table index e16d5d808..83a129c62 100644 --- a/definitions/grib2/tables/10/4.201.table +++ b/definitions/grib2/tables/10/4.201.table @@ -5,6 +5,4 @@ 3 3 Freezing rain 4 4 Mixed/ice 5 5 Snow -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.202.table b/definitions/grib2/tables/10/4.202.table index aa93458f1..31ea5e959 100644 --- a/definitions/grib2/tables/10/4.202.table +++ b/definitions/grib2/tables/10/4.202.table @@ -1,4 +1,2 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.203.table b/definitions/grib2/tables/10/4.203.table index b8c37f87f..54a58ba6a 100644 --- a/definitions/grib2/tables/10/4.203.table +++ b/definitions/grib2/tables/10/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.204.table b/definitions/grib2/tables/10/4.204.table index 8d8bca9b2..9bc7d0300 100644 --- a/definitions/grib2/tables/10/4.204.table +++ b/definitions/grib2/tables/10/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (16-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.205.table b/definitions/grib2/tables/10/4.205.table index 3fadf7d80..0cc467381 100644 --- a/definitions/grib2/tables/10/4.205.table +++ b/definitions/grib2/tables/10/4.205.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.206.table b/definitions/grib2/tables/10/4.206.table index 43b0ba137..dd078ebf5 100644 --- a/definitions/grib2/tables/10/4.206.table +++ b/definitions/grib2/tables/10/4.206.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.207.table b/definitions/grib2/tables/10/4.207.table index 815a5777e..7b30c9f9f 100644 --- a/definitions/grib2/tables/10/4.207.table +++ b/definitions/grib2/tables/10/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.208.table b/definitions/grib2/tables/10/4.208.table index 23ea97317..62c937cfa 100644 --- a/definitions/grib2/tables/10/4.208.table +++ b/definitions/grib2/tables/10/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.209.table b/definitions/grib2/tables/10/4.209.table index 53c6c5eba..92983f0b7 100644 --- a/definitions/grib2/tables/10/4.209.table +++ b/definitions/grib2/tables/10/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically-driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.210.table b/definitions/grib2/tables/10/4.210.table index 149b2ba06..c54c5581f 100644 --- a/definitions/grib2/tables/10/4.210.table +++ b/definitions/grib2/tables/10/4.210.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.211.table b/definitions/grib2/tables/10/4.211.table index b5753f19f..a1b6c828c 100644 --- a/definitions/grib2/tables/10/4.211.table +++ b/definitions/grib2/tables/10/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.212.table b/definitions/grib2/tables/10/4.212.table index 738c45d2c..f7cf87a3e 100644 --- a/definitions/grib2/tables/10/4.212.table +++ b/definitions/grib2/tables/10/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.213.table b/definitions/grib2/tables/10/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/10/4.213.table +++ b/definitions/grib2/tables/10/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.215.table b/definitions/grib2/tables/10/4.215.table index 5ed37c034..582bc6f69 100644 --- a/definitions/grib2/tables/10/4.215.table +++ b/definitions/grib2/tables/10/4.215.table @@ -1,9 +1,5 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.216.table b/definitions/grib2/tables/10/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/10/4.216.table +++ b/definitions/grib2/tables/10/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/10/4.217.table b/definitions/grib2/tables/10/4.217.table index 6a014c9c3..34089434a 100644 --- a/definitions/grib2/tables/10/4.217.table +++ b/definitions/grib2/tables/10/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.218.table b/definitions/grib2/tables/10/4.218.table index b6087448f..54af038dc 100644 --- a/definitions/grib2/tables/10/4.218.table +++ b/definitions/grib2/tables/10/4.218.table @@ -18,7 +18,6 @@ 16 16 Barren desert 17 17 Water bodies 18 18 Tundra -# 19-96 Reserved 97 97 Snow / ice on land 98 98 Snow / ice on water 99 99 Sun-glint @@ -33,6 +32,4 @@ 108 108 High cloud / Cirrus 109 109 High cloud / unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.219.table b/definitions/grib2/tables/10/4.219.table index a02452fc4..ead9d6b7b 100644 --- a/definitions/grib2/tables/10/4.219.table +++ b/definitions/grib2/tables/10/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.220.table b/definitions/grib2/tables/10/4.220.table index 7a18fa1fd..8d6d6c124 100644 --- a/definitions/grib2/tables/10/4.220.table +++ b/definitions/grib2/tables/10/4.220.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.221.table b/definitions/grib2/tables/10/4.221.table index eb0b64502..dc0d2201b 100644 --- a/definitions/grib2/tables/10/4.221.table +++ b/definitions/grib2/tables/10/4.221.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.222.table b/definitions/grib2/tables/10/4.222.table index f554a7f3d..a4790257b 100644 --- a/definitions/grib2/tables/10/4.222.table +++ b/definitions/grib2/tables/10/4.222.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.224.table b/definitions/grib2/tables/10/4.224.table index cf67496b8..ae077e6f0 100644 --- a/definitions/grib2/tables/10/4.224.table +++ b/definitions/grib2/tables/10/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/10/4.227.table b/definitions/grib2/tables/10/4.227.table index 7676664e4..3e123f07c 100644 --- a/definitions/grib2/tables/10/4.227.table +++ b/definitions/grib2/tables/10/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.3.table b/definitions/grib2/tables/10/4.3.table index 8a4e919c9..18a944e21 100644 --- a/definitions/grib2/tables/10/4.3.table +++ b/definitions/grib2/tables/10/4.3.table @@ -11,6 +11,4 @@ 9 9 Climatological 10 10 Probability-weighted forecast 11 11 Bias-corrected ensemble forecast -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.4.table b/definitions/grib2/tables/10/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/10/4.4.table +++ b/definitions/grib2/tables/10/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.5.table b/definitions/grib2/tables/10/4.5.table index c3b8aec5d..276349f57 100644 --- a/definitions/grib2/tables/10/4.5.table +++ b/definitions/grib2/tables/10/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -# 21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -30,13 +28,10 @@ 112 112 Reserved 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) -# 115-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 120-149 Reserved 150 150 Generalized vertical height coordinate -# 151-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom @@ -44,6 +39,4 @@ 164 164 Bottom of thermally active sediment layer 165 165 Bottom of sediment layer penetrated by thermal wave 166 sfc Mixing layer -# 167-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.6.table b/definitions/grib2/tables/10/4.6.table index eaa5c4362..30146761b 100644 --- a/definitions/grib2/tables/10/4.6.table +++ b/definitions/grib2/tables/10/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.7.table b/definitions/grib2/tables/10/4.7.table index e6d887bdb..48fdee35d 100644 --- a/definitions/grib2/tables/10/4.7.table +++ b/definitions/grib2/tables/10/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.8.table b/definitions/grib2/tables/10/4.8.table index d06153079..60e79328c 100644 --- a/definitions/grib2/tables/10/4.8.table +++ b/definitions/grib2/tables/10/4.8.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.9.table b/definitions/grib2/tables/10/4.9.table index 5243e58dd..0e32bf392 100644 --- a/definitions/grib2/tables/10/4.9.table +++ b/definitions/grib2/tables/10/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/4.91.table b/definitions/grib2/tables/10/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/10/4.91.table +++ b/definitions/grib2/tables/10/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/10/5.0.table b/definitions/grib2/tables/10/5.0.table index f27acb859..7d9a25c37 100644 --- a/definitions/grib2/tables/10/5.0.table +++ b/definitions/grib2/tables/10/5.0.table @@ -6,15 +6,10 @@ 4 4 Grid point data - IEEE floating point data 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) -#42-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -#52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/10/5.1.table b/definitions/grib2/tables/10/5.1.table index 158a35850..445d053a3 100644 --- a/definitions/grib2/tables/10/5.1.table +++ b/definitions/grib2/tables/10/5.1.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/5.2.table b/definitions/grib2/tables/10/5.2.table index d12b46fbd..23764170f 100644 --- a/definitions/grib2/tables/10/5.2.table +++ b/definitions/grib2/tables/10/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1)=C1, f(n)=f(n-1)+C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/5.3.table b/definitions/grib2/tables/10/5.3.table index 6f228aeec..e140f88e8 100644 --- a/definitions/grib2/tables/10/5.3.table +++ b/definitions/grib2/tables/10/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/5.4.table b/definitions/grib2/tables/10/5.4.table index f844f557e..7e69a3535 100644 --- a/definitions/grib2/tables/10/5.4.table +++ b/definitions/grib2/tables/10/5.4.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/5.40.table b/definitions/grib2/tables/10/5.40.table index 2431eb547..e9241d100 100644 --- a/definitions/grib2/tables/10/5.40.table +++ b/definitions/grib2/tables/10/5.40.table @@ -1,5 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/10/5.5.table b/definitions/grib2/tables/10/5.5.table index f2216e273..aa71c5fa1 100644 --- a/definitions/grib2/tables/10/5.5.table +++ b/definitions/grib2/tables/10/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/5.6.table b/definitions/grib2/tables/10/5.6.table index 3b0892d37..d91c3592f 100644 --- a/definitions/grib2/tables/10/5.6.table +++ b/definitions/grib2/tables/10/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/10/5.7.table b/definitions/grib2/tables/10/5.7.table index f056d3059..493d0826a 100644 --- a/definitions/grib2/tables/10/5.7.table +++ b/definitions/grib2/tables/10/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/11/0.0.table b/definitions/grib2/tables/11/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/11/0.0.table +++ b/definitions/grib2/tables/11/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/1.2.table b/definitions/grib2/tables/11/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/11/1.2.table +++ b/definitions/grib2/tables/11/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/1.3.table b/definitions/grib2/tables/11/1.3.table index 34ace7fda..e49d8fe78 100644 --- a/definitions/grib2/tables/11/1.3.table +++ b/definitions/grib2/tables/11/1.3.table @@ -7,6 +7,4 @@ 5 5 THORPEX Interactive Grand Global Ensemble test (TIGGE) 6 6 Sub-seasonal to seasonal prediction project (S2S) 7 7 Sub-seasonal to seasonal prediction project test (S2S) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/1.4.table b/definitions/grib2/tables/11/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/11/1.4.table +++ b/definitions/grib2/tables/11/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/11/3.0.table b/definitions/grib2/tables/11/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/11/3.0.table +++ b/definitions/grib2/tables/11/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/11/3.1.table b/definitions/grib2/tables/11/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/11/3.1.table +++ b/definitions/grib2/tables/11/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/11/3.10.table b/definitions/grib2/tables/11/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/11/3.10.table +++ b/definitions/grib2/tables/11/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/11/3.11.table b/definitions/grib2/tables/11/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/11/3.11.table +++ b/definitions/grib2/tables/11/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/11/3.15.table b/definitions/grib2/tables/11/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/11/3.15.table +++ b/definitions/grib2/tables/11/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/3.2.table b/definitions/grib2/tables/11/3.2.table index b9574a424..ed8eb276c 100644 --- a/definitions/grib2/tables/11/3.2.table +++ b/definitions/grib2/tables/11/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/3.20.table b/definitions/grib2/tables/11/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/11/3.20.table +++ b/definitions/grib2/tables/11/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/3.21.table b/definitions/grib2/tables/11/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/11/3.21.table +++ b/definitions/grib2/tables/11/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/3.3.table b/definitions/grib2/tables/11/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/11/3.3.table +++ b/definitions/grib2/tables/11/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/11/3.4.table b/definitions/grib2/tables/11/3.4.table index ea9cbe829..d77b6b89f 100644 --- a/definitions/grib2/tables/11/3.4.table +++ b/definitions/grib2/tables/11/3.4.table @@ -7,4 +7,3 @@ 3 1 Adjacent points in j (y) direction is consecutive 4 0 All rows scan in the same direction 4 1 Adjacent rows scans in the opposite direction -# 5-8 Reserved diff --git a/definitions/grib2/tables/11/3.7.table b/definitions/grib2/tables/11/3.7.table index 2d01b8d52..dc17ad734 100644 --- a/definitions/grib2/tables/11/3.7.table +++ b/definitions/grib2/tables/11/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 The complex numbers Fnm. See separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/11/3.8.table b/definitions/grib2/tables/11/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/11/3.8.table +++ b/definitions/grib2/tables/11/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/3.9.table b/definitions/grib2/tables/11/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/11/3.9.table +++ b/definitions/grib2/tables/11/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/11/4.0.table b/definitions/grib2/tables/11/4.0.table index 51b3ccfa7..870878928 100644 --- a/definitions/grib2/tables/11/4.0.table +++ b/definitions/grib2/tables/11/4.0.table @@ -15,15 +15,12 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data -# 35-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -39,21 +36,15 @@ 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 60 60 Individual ensemble re-forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble re-forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 55-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/11/4.1.0.table b/definitions/grib2/tables/11/4.1.0.table index 3413dbad5..c5f166b65 100644 --- a/definitions/grib2/tables/11/4.1.0.table +++ b/definitions/grib2/tables/11/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.1.1.table b/definitions/grib2/tables/11/4.1.1.table index dea5bc49e..51d3e1752 100644 --- a/definitions/grib2/tables/11/4.1.1.table +++ b/definitions/grib2/tables/11/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.1.10.table b/definitions/grib2/tables/11/4.1.10.table index e6ce6faf7..2541195f0 100644 --- a/definitions/grib2/tables/11/4.1.10.table +++ b/definitions/grib2/tables/11/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Sub-surface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.1.2.table b/definitions/grib2/tables/11/4.1.2.table index 805836998..014bdf18e 100644 --- a/definitions/grib2/tables/11/4.1.2.table +++ b/definitions/grib2/tables/11/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.1.3.table b/definitions/grib2/tables/11/4.1.3.table index adcbfb051..4ac485be4 100644 --- a/definitions/grib2/tables/11/4.1.3.table +++ b/definitions/grib2/tables/11/4.1.3.table @@ -1,8 +1,6 @@ # Code table 4.1 - Parameter category by product discipline. Product discipline 3 - Space products 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.10.table b/definitions/grib2/tables/11/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/11/4.10.table +++ b/definitions/grib2/tables/11/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/11/4.11.table b/definitions/grib2/tables/11/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/11/4.11.table +++ b/definitions/grib2/tables/11/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.12.table b/definitions/grib2/tables/11/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/11/4.12.table +++ b/definitions/grib2/tables/11/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.13.table b/definitions/grib2/tables/11/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/11/4.13.table +++ b/definitions/grib2/tables/11/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.14.table b/definitions/grib2/tables/11/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/11/4.14.table +++ b/definitions/grib2/tables/11/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.15.table b/definitions/grib2/tables/11/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/11/4.15.table +++ b/definitions/grib2/tables/11/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.0.table b/definitions/grib2/tables/11/4.2.0.0.table index e69e087c9..fa15f1fb1 100644 --- a/definitions/grib2/tables/11/4.2.0.0.table +++ b/definitions/grib2/tables/11/4.2.0.0.table @@ -20,6 +20,4 @@ 18 18 Snow temperature (top of snow) (K) 19 19 Turbulent transfer coefficient for heat (Numeric) 20 20 Turbulent diffusion coefficient for heat (m2/s) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.1.table b/definitions/grib2/tables/11/4.2.0.1.table index 256732de0..7172dc3f4 100644 --- a/definitions/grib2/tables/11/4.2.0.1.table +++ b/definitions/grib2/tables/11/4.2.0.1.table @@ -86,10 +86,7 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rainwater content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) -# 93-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.13.table b/definitions/grib2/tables/11/4.2.0.13.table index 90ab7d1b9..3aead6cbd 100644 --- a/definitions/grib2/tables/11/4.2.0.13.table +++ b/definitions/grib2/tables/11/4.2.0.13.table @@ -1,5 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.14.table b/definitions/grib2/tables/11/4.2.0.14.table index fca42ccc7..62943028c 100644 --- a/definitions/grib2/tables/11/4.2.0.14.table +++ b/definitions/grib2/tables/11/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.15.table b/definitions/grib2/tables/11/4.2.0.15.table index 5a599a98e..634f8ff16 100644 --- a/definitions/grib2/tables/11/4.2.0.15.table +++ b/definitions/grib2/tables/11/4.2.0.15.table @@ -14,6 +14,4 @@ 12 12 Reflectivity of rain (dB) 13 13 Reflectivity of graupel (dB) 14 14 Reflectivity of hail (dB) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.16.table b/definitions/grib2/tables/11/4.2.0.16.table index 18dedb7c0..98630ec0e 100644 --- a/definitions/grib2/tables/11/4.2.0.16.table +++ b/definitions/grib2/tables/11/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.18.table b/definitions/grib2/tables/11/4.2.0.18.table index fe06e9ea6..9909fb04a 100644 --- a/definitions/grib2/tables/11/4.2.0.18.table +++ b/definitions/grib2/tables/11/4.2.0.18.table @@ -13,6 +13,4 @@ 11 11 Wet deposition (Bq m-2) 12 12 Dry deposition (Bq m-2) 13 13 Total deposition (wet + dry) (Bq m-2) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.19.table b/definitions/grib2/tables/11/4.2.0.19.table index 90003262e..1c38a0477 100644 --- a/definitions/grib2/tables/11/4.2.0.19.table +++ b/definitions/grib2/tables/11/4.2.0.19.table @@ -27,6 +27,4 @@ 25 25 Weather (Code table 4.225) 26 26 Convective outlook (Code table 4.224) 27 27 Icing scenario (Code table 4.227) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.190.table b/definitions/grib2/tables/11/4.2.0.190.table index 3d9d5ff85..f401ef529 100644 --- a/definitions/grib2/tables/11/4.2.0.190.table +++ b/definitions/grib2/tables/11/4.2.0.190.table @@ -1,5 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.191.table b/definitions/grib2/tables/11/4.2.0.191.table index 4ff12e532..c44d4c807 100644 --- a/definitions/grib2/tables/11/4.2.0.191.table +++ b/definitions/grib2/tables/11/4.2.0.191.table @@ -2,6 +2,4 @@ 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/11/4.2.0.2.table b/definitions/grib2/tables/11/4.2.0.2.table index f0570417b..fb2756464 100644 --- a/definitions/grib2/tables/11/4.2.0.2.table +++ b/definitions/grib2/tables/11/4.2.0.2.table @@ -35,6 +35,4 @@ 33 33 Wind fetch (m) 34 34 Normal wind component (m s-1) 35 35 Tangential wind component (m s-1) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.20.table b/definitions/grib2/tables/11/4.2.0.20.table index ca90179fe..fbdd1132b 100644 --- a/definitions/grib2/tables/11/4.2.0.20.table +++ b/definitions/grib2/tables/11/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -25,7 +24,6 @@ 57 57 Total yearly average burden of the atmosphere (mol) 58 58 Total yearly averaged atmospheric loss (mol/s) 59 59 Aerosol number concentration (m-3) -# 60-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -37,6 +35,4 @@ 108 108 Aerosol lidar backscatter from the ground (m-1 sr-1) 109 109 Aerosol lidar extinction from satellite (m-1) 110 110 Aerosol lidar extinction from the ground (m-1) -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.3.table b/definitions/grib2/tables/11/4.2.0.3.table index 08c1c7bc3..03f4c15ff 100644 --- a/definitions/grib2/tables/11/4.2.0.3.table +++ b/definitions/grib2/tables/11/4.2.0.3.table @@ -26,6 +26,4 @@ 24 24 Anisotropy of sub-gridscale orography (Numeric) 25 25 Natural logarithm of pressure in Pa (Numeric) 26 26 Exner pressure (Numeric) -# 27-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.4.table b/definitions/grib2/tables/11/4.2.0.4.table index 336fdb421..6c69548e3 100644 --- a/definitions/grib2/tables/11/4.2.0.4.table +++ b/definitions/grib2/tables/11/4.2.0.4.table @@ -12,9 +12,6 @@ 10 10 Photosynthetically active radiation (W m-2) 11 11 Net short-wave radiation flux, clear sky (W m-2) 12 12 Downward UV radiation (W m-2) -# 13-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.5.table b/definitions/grib2/tables/11/4.2.0.5.table index 86a199ace..0e3775b06 100644 --- a/definitions/grib2/tables/11/4.2.0.5.table +++ b/definitions/grib2/tables/11/4.2.0.5.table @@ -6,6 +6,4 @@ 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long-wave radiation flux (W m-2) 6 6 Net long-wave radiation flux, clear sky (W m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.6.table b/definitions/grib2/tables/11/4.2.0.6.table index 2d088e5fc..1a2f31db6 100644 --- a/definitions/grib2/tables/11/4.2.0.6.table +++ b/definitions/grib2/tables/11/4.2.0.6.table @@ -35,6 +35,4 @@ 33 33 Sunshine duration (s) 34 34 Surface long-wave effective total cloudiness (Numeric) 35 35 Surface short-wave effective total cloudiness (Numeric) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.0.7.table b/definitions/grib2/tables/11/4.2.0.7.table index 6c1794c73..4d22c0129 100644 --- a/definitions/grib2/tables/11/4.2.0.7.table +++ b/definitions/grib2/tables/11/4.2.0.7.table @@ -15,6 +15,4 @@ 13 13 Showalter index (K) 14 14 Reserved 15 15 Updraft helicity (m2 s-2) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.1.0.table b/definitions/grib2/tables/11/4.2.1.0.table index 9c4d129da..4d79bd24f 100644 --- a/definitions/grib2/tables/11/4.2.1.0.table +++ b/definitions/grib2/tables/11/4.2.1.0.table @@ -6,6 +6,4 @@ 4 4 Snow water equivalent per cent of normal (%) 5 5 Baseflow-groundwater runoff (kg m-2) 6 6 Storm surface runoff (kg m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.1.1.table b/definitions/grib2/tables/11/4.2.1.1.table index aa560e479..24efd5d1a 100644 --- a/definitions/grib2/tables/11/4.2.1.1.table +++ b/definitions/grib2/tables/11/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.10.0.table b/definitions/grib2/tables/11/4.2.10.0.table index 43643d405..bf117b60d 100644 --- a/definitions/grib2/tables/11/4.2.10.0.table +++ b/definitions/grib2/tables/11/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (s-1) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.10.1.table b/definitions/grib2/tables/11/4.2.10.1.table index de6b562b8..ef6f9dc67 100644 --- a/definitions/grib2/tables/11/4.2.10.1.table +++ b/definitions/grib2/tables/11/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.10.191.table b/definitions/grib2/tables/11/4.2.10.191.table index 6cafbd3d4..9b1fb12bb 100644 --- a/definitions/grib2/tables/11/4.2.10.191.table +++ b/definitions/grib2/tables/11/4.2.10.191.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Meridional overturning stream function (m3/s) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.10.2.table b/definitions/grib2/tables/11/4.2.10.2.table index 258aeef18..5c14f114c 100644 --- a/definitions/grib2/tables/11/4.2.10.2.table +++ b/definitions/grib2/tables/11/4.2.10.2.table @@ -9,6 +9,4 @@ 7 7 Ice divergence (/s) 8 8 Ice temperature (K) 9 9 Ice internal pressure (Pa m) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.10.3.table b/definitions/grib2/tables/11/4.2.10.3.table index 3b9a2df46..7e8a250e4 100644 --- a/definitions/grib2/tables/11/4.2.10.3.table +++ b/definitions/grib2/tables/11/4.2.10.3.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.10.4.table b/definitions/grib2/tables/11/4.2.10.4.table index 91ffb2b29..21aae1504 100644 --- a/definitions/grib2/tables/11/4.2.10.4.table +++ b/definitions/grib2/tables/11/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2 s-1) 6 6 Ocean vertical momentum diffusivity (m2 s-1) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (m-1) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.2.0.table b/definitions/grib2/tables/11/4.2.2.0.table index 0632ff414..95456e01d 100644 --- a/definitions/grib2/tables/11/4.2.2.0.table +++ b/definitions/grib2/tables/11/4.2.2.0.table @@ -32,6 +32,4 @@ 30 30 Deciduous forest cover (Proportion) 31 31 Normalized differential vegetation index (NDVI) (Numeric) 32 32 Root depth of vegetation (m) -# 33-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.2.3.table b/definitions/grib2/tables/11/4.2.2.3.table index d7db59d5e..e24fb0798 100644 --- a/definitions/grib2/tables/11/4.2.2.3.table +++ b/definitions/grib2/tables/11/4.2.2.3.table @@ -22,6 +22,4 @@ 20 20 Column-integrated soil moisture (kg m-2) 21 21 Soil ice (kg m-3) 22 22 Column-integrated soil ice (kg m-2) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.2.4.table b/definitions/grib2/tables/11/4.2.2.4.table index 0992f59db..89ad52214 100644 --- a/definitions/grib2/tables/11/4.2.2.4.table +++ b/definitions/grib2/tables/11/4.2.2.4.table @@ -3,6 +3,4 @@ 1 1 Fire outlook due to dry thunderstorm (Code table 4.224) 2 2 Haines Index (Numeric) 3 3 Fire burned area (%) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.3.0.table b/definitions/grib2/tables/11/4.2.3.0.table index 8c19d43b2..e06377ac2 100644 --- a/definitions/grib2/tables/11/4.2.3.0.table +++ b/definitions/grib2/tables/11/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.2.3.1.table b/definitions/grib2/tables/11/4.2.3.1.table index af1896b14..2e35a816a 100644 --- a/definitions/grib2/tables/11/4.2.3.1.table +++ b/definitions/grib2/tables/11/4.2.3.1.table @@ -23,6 +23,4 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.201.table b/definitions/grib2/tables/11/4.201.table index b9711f69c..de7218f5c 100644 --- a/definitions/grib2/tables/11/4.201.table +++ b/definitions/grib2/tables/11/4.201.table @@ -5,6 +5,4 @@ 3 3 Freezing rain 4 4 Mixed/ice 5 5 Snow -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.202.table b/definitions/grib2/tables/11/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/11/4.202.table +++ b/definitions/grib2/tables/11/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.203.table b/definitions/grib2/tables/11/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/11/4.203.table +++ b/definitions/grib2/tables/11/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.204.table b/definitions/grib2/tables/11/4.204.table index ffbd89502..2084e77dc 100644 --- a/definitions/grib2/tables/11/4.204.table +++ b/definitions/grib2/tables/11/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (16-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.205.table b/definitions/grib2/tables/11/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/11/4.205.table +++ b/definitions/grib2/tables/11/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.206.table b/definitions/grib2/tables/11/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/11/4.206.table +++ b/definitions/grib2/tables/11/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.207.table b/definitions/grib2/tables/11/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/11/4.207.table +++ b/definitions/grib2/tables/11/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.208.table b/definitions/grib2/tables/11/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/11/4.208.table +++ b/definitions/grib2/tables/11/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.209.table b/definitions/grib2/tables/11/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/11/4.209.table +++ b/definitions/grib2/tables/11/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.210.table b/definitions/grib2/tables/11/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/11/4.210.table +++ b/definitions/grib2/tables/11/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.211.table b/definitions/grib2/tables/11/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/11/4.211.table +++ b/definitions/grib2/tables/11/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.212.table b/definitions/grib2/tables/11/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/11/4.212.table +++ b/definitions/grib2/tables/11/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.213.table b/definitions/grib2/tables/11/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/11/4.213.table +++ b/definitions/grib2/tables/11/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.215.table b/definitions/grib2/tables/11/4.215.table index c264c6722..da458b072 100644 --- a/definitions/grib2/tables/11/4.215.table +++ b/definitions/grib2/tables/11/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely-sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.216.table b/definitions/grib2/tables/11/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/11/4.216.table +++ b/definitions/grib2/tables/11/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/11/4.217.table b/definitions/grib2/tables/11/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/11/4.217.table +++ b/definitions/grib2/tables/11/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.218.table b/definitions/grib2/tables/11/4.218.table index acf069c32..d023ece2b 100644 --- a/definitions/grib2/tables/11/4.218.table +++ b/definitions/grib2/tables/11/4.218.table @@ -18,7 +18,6 @@ 16 16 Barren desert 17 17 Water bodies 18 18 Tundra -# 19-96 Reserved 97 97 Snow / ice on land 98 98 Snow / ice on water 99 99 Sun-glint @@ -33,6 +32,4 @@ 108 108 High cloud / Cirrus 109 109 High cloud / unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.219.table b/definitions/grib2/tables/11/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/11/4.219.table +++ b/definitions/grib2/tables/11/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.220.table b/definitions/grib2/tables/11/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/11/4.220.table +++ b/definitions/grib2/tables/11/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.221.table b/definitions/grib2/tables/11/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/11/4.221.table +++ b/definitions/grib2/tables/11/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.222.table b/definitions/grib2/tables/11/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/11/4.222.table +++ b/definitions/grib2/tables/11/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.224.table b/definitions/grib2/tables/11/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/11/4.224.table +++ b/definitions/grib2/tables/11/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/11/4.227.table b/definitions/grib2/tables/11/4.227.table index 7676664e4..3e123f07c 100644 --- a/definitions/grib2/tables/11/4.227.table +++ b/definitions/grib2/tables/11/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.3.table b/definitions/grib2/tables/11/4.3.table index 1681cfc93..e370ba795 100644 --- a/definitions/grib2/tables/11/4.3.table +++ b/definitions/grib2/tables/11/4.3.table @@ -11,6 +11,4 @@ 9 9 Climatological 10 10 Probability-weighted forecast 11 11 Bias-corrected ensemble forecast -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.4.table b/definitions/grib2/tables/11/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/11/4.4.table +++ b/definitions/grib2/tables/11/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.5.table b/definitions/grib2/tables/11/4.5.table index c3b8aec5d..276349f57 100644 --- a/definitions/grib2/tables/11/4.5.table +++ b/definitions/grib2/tables/11/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -# 21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -30,13 +28,10 @@ 112 112 Reserved 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) -# 115-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 120-149 Reserved 150 150 Generalized vertical height coordinate -# 151-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom @@ -44,6 +39,4 @@ 164 164 Bottom of thermally active sediment layer 165 165 Bottom of sediment layer penetrated by thermal wave 166 sfc Mixing layer -# 167-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.6.table b/definitions/grib2/tables/11/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/11/4.6.table +++ b/definitions/grib2/tables/11/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.7.table b/definitions/grib2/tables/11/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/11/4.7.table +++ b/definitions/grib2/tables/11/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.8.table b/definitions/grib2/tables/11/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/11/4.8.table +++ b/definitions/grib2/tables/11/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.9.table b/definitions/grib2/tables/11/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/11/4.9.table +++ b/definitions/grib2/tables/11/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/4.91.table b/definitions/grib2/tables/11/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/11/4.91.table +++ b/definitions/grib2/tables/11/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/11/5.0.table b/definitions/grib2/tables/11/5.0.table index f27acb859..7d9a25c37 100644 --- a/definitions/grib2/tables/11/5.0.table +++ b/definitions/grib2/tables/11/5.0.table @@ -6,15 +6,10 @@ 4 4 Grid point data - IEEE floating point data 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) -#42-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -#52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/11/5.1.table b/definitions/grib2/tables/11/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/11/5.1.table +++ b/definitions/grib2/tables/11/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/5.2.table b/definitions/grib2/tables/11/5.2.table index d12b46fbd..23764170f 100644 --- a/definitions/grib2/tables/11/5.2.table +++ b/definitions/grib2/tables/11/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1)=C1, f(n)=f(n-1)+C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/5.3.table b/definitions/grib2/tables/11/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/11/5.3.table +++ b/definitions/grib2/tables/11/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/5.4.table b/definitions/grib2/tables/11/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/11/5.4.table +++ b/definitions/grib2/tables/11/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/5.40.table b/definitions/grib2/tables/11/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/11/5.40.table +++ b/definitions/grib2/tables/11/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/11/5.5.table b/definitions/grib2/tables/11/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/11/5.5.table +++ b/definitions/grib2/tables/11/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/5.6.table b/definitions/grib2/tables/11/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/11/5.6.table +++ b/definitions/grib2/tables/11/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/11/5.7.table b/definitions/grib2/tables/11/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/11/5.7.table +++ b/definitions/grib2/tables/11/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/12/0.0.table b/definitions/grib2/tables/12/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/12/0.0.table +++ b/definitions/grib2/tables/12/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/1.2.table b/definitions/grib2/tables/12/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/12/1.2.table +++ b/definitions/grib2/tables/12/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/1.3.table b/definitions/grib2/tables/12/1.3.table index 34ace7fda..e49d8fe78 100644 --- a/definitions/grib2/tables/12/1.3.table +++ b/definitions/grib2/tables/12/1.3.table @@ -7,6 +7,4 @@ 5 5 THORPEX Interactive Grand Global Ensemble test (TIGGE) 6 6 Sub-seasonal to seasonal prediction project (S2S) 7 7 Sub-seasonal to seasonal prediction project test (S2S) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/1.4.table b/definitions/grib2/tables/12/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/12/1.4.table +++ b/definitions/grib2/tables/12/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/12/1.5.table b/definitions/grib2/tables/12/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/12/1.5.table +++ b/definitions/grib2/tables/12/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/12/1.6.table b/definitions/grib2/tables/12/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/12/1.6.table +++ b/definitions/grib2/tables/12/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/3.0.table b/definitions/grib2/tables/12/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/12/3.0.table +++ b/definitions/grib2/tables/12/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/12/3.1.table b/definitions/grib2/tables/12/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/12/3.1.table +++ b/definitions/grib2/tables/12/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/12/3.10.table b/definitions/grib2/tables/12/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/12/3.10.table +++ b/definitions/grib2/tables/12/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/12/3.11.table b/definitions/grib2/tables/12/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/12/3.11.table +++ b/definitions/grib2/tables/12/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/12/3.15.table b/definitions/grib2/tables/12/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/12/3.15.table +++ b/definitions/grib2/tables/12/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/3.2.table b/definitions/grib2/tables/12/3.2.table index b9574a424..ed8eb276c 100644 --- a/definitions/grib2/tables/12/3.2.table +++ b/definitions/grib2/tables/12/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/3.20.table b/definitions/grib2/tables/12/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/12/3.20.table +++ b/definitions/grib2/tables/12/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/3.21.table b/definitions/grib2/tables/12/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/12/3.21.table +++ b/definitions/grib2/tables/12/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/3.3.table b/definitions/grib2/tables/12/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/12/3.3.table +++ b/definitions/grib2/tables/12/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/12/3.4.table b/definitions/grib2/tables/12/3.4.table index ea9cbe829..d77b6b89f 100644 --- a/definitions/grib2/tables/12/3.4.table +++ b/definitions/grib2/tables/12/3.4.table @@ -7,4 +7,3 @@ 3 1 Adjacent points in j (y) direction is consecutive 4 0 All rows scan in the same direction 4 1 Adjacent rows scans in the opposite direction -# 5-8 Reserved diff --git a/definitions/grib2/tables/12/3.7.table b/definitions/grib2/tables/12/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/12/3.7.table +++ b/definitions/grib2/tables/12/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/12/3.8.table b/definitions/grib2/tables/12/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/12/3.8.table +++ b/definitions/grib2/tables/12/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/3.9.table b/definitions/grib2/tables/12/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/12/3.9.table +++ b/definitions/grib2/tables/12/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/12/4.0.table b/definitions/grib2/tables/12/4.0.table index 8608d20f9..72b5acf3e 100644 --- a/definitions/grib2/tables/12/4.0.table +++ b/definitions/grib2/tables/12/4.0.table @@ -15,15 +15,12 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data -# 35-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -34,28 +31,21 @@ 46 46 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 49-50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time 52 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 60 60 Individual ensemble re-forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble re-forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 55-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/12/4.1.0.table b/definitions/grib2/tables/12/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/12/4.1.0.table +++ b/definitions/grib2/tables/12/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.1.1.table b/definitions/grib2/tables/12/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/12/4.1.1.table +++ b/definitions/grib2/tables/12/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.1.10.table b/definitions/grib2/tables/12/4.1.10.table index e9663f391..ac6a221f9 100644 --- a/definitions/grib2/tables/12/4.1.10.table +++ b/definitions/grib2/tables/12/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Sub-surface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.1.2.table b/definitions/grib2/tables/12/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/12/4.1.2.table +++ b/definitions/grib2/tables/12/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.1.3.table b/definitions/grib2/tables/12/4.1.3.table index c1a1e267a..5102b92b2 100644 --- a/definitions/grib2/tables/12/4.1.3.table +++ b/definitions/grib2/tables/12/4.1.3.table @@ -1,6 +1,4 @@ # Code table 4.1 - Parameter category by product discipline 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.10.table b/definitions/grib2/tables/12/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/12/4.10.table +++ b/definitions/grib2/tables/12/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/12/4.11.table b/definitions/grib2/tables/12/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/12/4.11.table +++ b/definitions/grib2/tables/12/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.12.table b/definitions/grib2/tables/12/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/12/4.12.table +++ b/definitions/grib2/tables/12/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.13.table b/definitions/grib2/tables/12/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/12/4.13.table +++ b/definitions/grib2/tables/12/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.14.table b/definitions/grib2/tables/12/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/12/4.14.table +++ b/definitions/grib2/tables/12/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.15.table b/definitions/grib2/tables/12/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/12/4.15.table +++ b/definitions/grib2/tables/12/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.0.table b/definitions/grib2/tables/12/4.2.0.0.table index f5841e889..bcc7bc876 100644 --- a/definitions/grib2/tables/12/4.2.0.0.table +++ b/definitions/grib2/tables/12/4.2.0.0.table @@ -20,6 +20,4 @@ 18 18 Snow temperature (top of snow) (K) 19 19 Turbulent transfer coefficient for heat (Numeric) 20 20 Turbulent diffusion coefficient for heat (m2/s) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.1.table b/definitions/grib2/tables/12/4.2.0.1.table index fb7c3d776..738d9f37c 100644 --- a/definitions/grib2/tables/12/4.2.0.1.table +++ b/definitions/grib2/tables/12/4.2.0.1.table @@ -86,10 +86,7 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rainwater content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) -# 93-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.13.table b/definitions/grib2/tables/12/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/12/4.2.0.13.table +++ b/definitions/grib2/tables/12/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.14.table b/definitions/grib2/tables/12/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/12/4.2.0.14.table +++ b/definitions/grib2/tables/12/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.15.table b/definitions/grib2/tables/12/4.2.0.15.table index bb0b9ab46..fdb54bf4f 100644 --- a/definitions/grib2/tables/12/4.2.0.15.table +++ b/definitions/grib2/tables/12/4.2.0.15.table @@ -14,6 +14,4 @@ 12 12 Reflectivity of rain (dB) 13 13 Reflectivity of graupel (dB) 14 14 Reflectivity of hail (dB) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.16.table b/definitions/grib2/tables/12/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/12/4.2.0.16.table +++ b/definitions/grib2/tables/12/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.18.table b/definitions/grib2/tables/12/4.2.0.18.table index 7e0a736eb..8a8bbc46a 100644 --- a/definitions/grib2/tables/12/4.2.0.18.table +++ b/definitions/grib2/tables/12/4.2.0.18.table @@ -13,6 +13,4 @@ 11 11 Wet deposition (Bq m-2) 12 12 Dry deposition (Bq m-2) 13 13 Total deposition (wet + dry) (Bq m-2) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.19.table b/definitions/grib2/tables/12/4.2.0.19.table index d2beef083..49e1b1a7e 100644 --- a/definitions/grib2/tables/12/4.2.0.19.table +++ b/definitions/grib2/tables/12/4.2.0.19.table @@ -27,6 +27,4 @@ 25 25 Weather (Code table 4.225) 26 26 Convective outlook (Code table 4.224) 27 27 Icing scenario (Code table 4.227) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.190.table b/definitions/grib2/tables/12/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/12/4.2.0.190.table +++ b/definitions/grib2/tables/12/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.191.table b/definitions/grib2/tables/12/4.2.0.191.table index 2e82e01da..251ecc861 100644 --- a/definitions/grib2/tables/12/4.2.0.191.table +++ b/definitions/grib2/tables/12/4.2.0.191.table @@ -2,6 +2,4 @@ 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.2.table b/definitions/grib2/tables/12/4.2.0.2.table index ad1d84f52..e3041d9c6 100644 --- a/definitions/grib2/tables/12/4.2.0.2.table +++ b/definitions/grib2/tables/12/4.2.0.2.table @@ -35,6 +35,4 @@ 33 33 Wind fetch (m) 34 34 Normal wind component (m s-1) 35 35 Tangential wind component (m s-1) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.20.table b/definitions/grib2/tables/12/4.2.0.20.table index a0eb7724a..6a2105ecf 100644 --- a/definitions/grib2/tables/12/4.2.0.20.table +++ b/definitions/grib2/tables/12/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -25,7 +24,6 @@ 57 57 Total yearly average burden of the atmosphere (mol) 58 58 Total yearly averaged atmospheric loss (mol/s) 59 59 Aerosol number concentration (m-3) -# 60-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -37,6 +35,4 @@ 108 108 Aerosol lidar backscatter from the ground (m-1 sr-1) 109 109 Aerosol lidar extinction from satellite (m-1) 110 110 Aerosol lidar extinction from the ground (m-1) -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.3.table b/definitions/grib2/tables/12/4.2.0.3.table index e1a68bfc5..5aed1a408 100644 --- a/definitions/grib2/tables/12/4.2.0.3.table +++ b/definitions/grib2/tables/12/4.2.0.3.table @@ -26,6 +26,4 @@ 24 24 Anisotropy of sub-gridscale orography (Numeric) 25 25 Natural logarithm of pressure in Pa (Numeric) 26 26 Exner pressure (Numeric) -# 27-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.4.table b/definitions/grib2/tables/12/4.2.0.4.table index 03b5cea38..4b0159cd4 100644 --- a/definitions/grib2/tables/12/4.2.0.4.table +++ b/definitions/grib2/tables/12/4.2.0.4.table @@ -12,9 +12,6 @@ 10 10 Photosynthetically active radiation (W m-2) 11 11 Net short-wave radiation flux, clear sky (W m-2) 12 12 Downward UV radiation (W m-2) -# 13-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.5.table b/definitions/grib2/tables/12/4.2.0.5.table index 1bdd6ebee..d5e41d237 100644 --- a/definitions/grib2/tables/12/4.2.0.5.table +++ b/definitions/grib2/tables/12/4.2.0.5.table @@ -6,6 +6,4 @@ 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long-wave radiation flux (W m-2) 6 6 Net long-wave radiation flux, clear sky (W m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.6.table b/definitions/grib2/tables/12/4.2.0.6.table index 89da06eec..e9c732d98 100644 --- a/definitions/grib2/tables/12/4.2.0.6.table +++ b/definitions/grib2/tables/12/4.2.0.6.table @@ -35,6 +35,4 @@ 33 33 Sunshine duration (s) 34 34 Surface long-wave effective total cloudiness (Numeric) 35 35 Surface short-wave effective total cloudiness (Numeric) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.0.7.table b/definitions/grib2/tables/12/4.2.0.7.table index 8a2b85fb9..094a07a7c 100644 --- a/definitions/grib2/tables/12/4.2.0.7.table +++ b/definitions/grib2/tables/12/4.2.0.7.table @@ -15,6 +15,4 @@ 13 13 Showalter index (K) 14 14 Reserved 15 15 Updraft helicity (m2 s-2) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.1.0.table b/definitions/grib2/tables/12/4.2.1.0.table index b6c648f00..20c862e3e 100644 --- a/definitions/grib2/tables/12/4.2.1.0.table +++ b/definitions/grib2/tables/12/4.2.1.0.table @@ -6,6 +6,4 @@ 4 4 Snow water equivalent per cent of normal (%) 5 5 Baseflow-groundwater runoff (kg m-2) 6 6 Storm surface runoff (kg m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.1.1.table b/definitions/grib2/tables/12/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/12/4.2.1.1.table +++ b/definitions/grib2/tables/12/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.10.0.table b/definitions/grib2/tables/12/4.2.10.0.table index 76b3da22c..0c8af37cd 100644 --- a/definitions/grib2/tables/12/4.2.10.0.table +++ b/definitions/grib2/tables/12/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (s-1) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.10.1.table b/definitions/grib2/tables/12/4.2.10.1.table index f0a073c00..c172554a9 100644 --- a/definitions/grib2/tables/12/4.2.10.1.table +++ b/definitions/grib2/tables/12/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.10.191.table b/definitions/grib2/tables/12/4.2.10.191.table index 6b9eee36e..ec1c05f53 100644 --- a/definitions/grib2/tables/12/4.2.10.191.table +++ b/definitions/grib2/tables/12/4.2.10.191.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Meridional overturning stream function (m3/s) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.10.2.table b/definitions/grib2/tables/12/4.2.10.2.table index 24458b91f..5047c1287 100644 --- a/definitions/grib2/tables/12/4.2.10.2.table +++ b/definitions/grib2/tables/12/4.2.10.2.table @@ -9,6 +9,4 @@ 7 7 Ice divergence (/s) 8 8 Ice temperature (K) 9 9 Ice internal pressure (Pa m) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.10.3.table b/definitions/grib2/tables/12/4.2.10.3.table index 937720c93..71f0770e8 100644 --- a/definitions/grib2/tables/12/4.2.10.3.table +++ b/definitions/grib2/tables/12/4.2.10.3.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.10.4.table b/definitions/grib2/tables/12/4.2.10.4.table index e20a49470..13b95e5a7 100644 --- a/definitions/grib2/tables/12/4.2.10.4.table +++ b/definitions/grib2/tables/12/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2 s-1) 6 6 Ocean vertical momentum diffusivity (m2 s-1) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (m-1) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.2.0.table b/definitions/grib2/tables/12/4.2.2.0.table index 98eae911a..8bd14ac8b 100644 --- a/definitions/grib2/tables/12/4.2.2.0.table +++ b/definitions/grib2/tables/12/4.2.2.0.table @@ -32,6 +32,4 @@ 30 30 Deciduous forest cover (Proportion) 31 31 Normalized differential vegetation index (NDVI) (Numeric) 32 32 Root depth of vegetation (m) -# 33-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.2.3.table b/definitions/grib2/tables/12/4.2.2.3.table index 3d3298c8a..31b88d06d 100644 --- a/definitions/grib2/tables/12/4.2.2.3.table +++ b/definitions/grib2/tables/12/4.2.2.3.table @@ -22,6 +22,4 @@ 20 20 Column-integrated soil moisture (kg m-2) 21 21 Soil ice (kg m-3) 22 22 Column-integrated soil ice (kg m-2) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.2.4.table b/definitions/grib2/tables/12/4.2.2.4.table index 30865c1b8..3e301368a 100644 --- a/definitions/grib2/tables/12/4.2.2.4.table +++ b/definitions/grib2/tables/12/4.2.2.4.table @@ -3,6 +3,4 @@ 1 1 Fire outlook due to dry thunderstorm (Code table 4.224) 2 2 Haines Index (Numeric) 3 3 Fire burned area (%) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.3.0.table b/definitions/grib2/tables/12/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/12/4.2.3.0.table +++ b/definitions/grib2/tables/12/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.2.3.1.table b/definitions/grib2/tables/12/4.2.3.1.table index bc16d8855..3856da223 100644 --- a/definitions/grib2/tables/12/4.2.3.1.table +++ b/definitions/grib2/tables/12/4.2.3.1.table @@ -23,6 +23,4 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.201.table b/definitions/grib2/tables/12/4.201.table index fa173c4e0..7787ce735 100644 --- a/definitions/grib2/tables/12/4.201.table +++ b/definitions/grib2/tables/12/4.201.table @@ -10,6 +10,4 @@ 8 8 Ice pellets 9 9 Graupel 10 10 Hail -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.202.table b/definitions/grib2/tables/12/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/12/4.202.table +++ b/definitions/grib2/tables/12/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.203.table b/definitions/grib2/tables/12/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/12/4.203.table +++ b/definitions/grib2/tables/12/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.204.table b/definitions/grib2/tables/12/4.204.table index ffbd89502..2084e77dc 100644 --- a/definitions/grib2/tables/12/4.204.table +++ b/definitions/grib2/tables/12/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (16-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.205.table b/definitions/grib2/tables/12/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/12/4.205.table +++ b/definitions/grib2/tables/12/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.206.table b/definitions/grib2/tables/12/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/12/4.206.table +++ b/definitions/grib2/tables/12/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.207.table b/definitions/grib2/tables/12/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/12/4.207.table +++ b/definitions/grib2/tables/12/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.208.table b/definitions/grib2/tables/12/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/12/4.208.table +++ b/definitions/grib2/tables/12/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.209.table b/definitions/grib2/tables/12/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/12/4.209.table +++ b/definitions/grib2/tables/12/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.210.table b/definitions/grib2/tables/12/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/12/4.210.table +++ b/definitions/grib2/tables/12/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.211.table b/definitions/grib2/tables/12/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/12/4.211.table +++ b/definitions/grib2/tables/12/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.212.table b/definitions/grib2/tables/12/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/12/4.212.table +++ b/definitions/grib2/tables/12/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.213.table b/definitions/grib2/tables/12/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/12/4.213.table +++ b/definitions/grib2/tables/12/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.215.table b/definitions/grib2/tables/12/4.215.table index c264c6722..da458b072 100644 --- a/definitions/grib2/tables/12/4.215.table +++ b/definitions/grib2/tables/12/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely-sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.216.table b/definitions/grib2/tables/12/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/12/4.216.table +++ b/definitions/grib2/tables/12/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/12/4.217.table b/definitions/grib2/tables/12/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/12/4.217.table +++ b/definitions/grib2/tables/12/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.218.table b/definitions/grib2/tables/12/4.218.table index acf069c32..d023ece2b 100644 --- a/definitions/grib2/tables/12/4.218.table +++ b/definitions/grib2/tables/12/4.218.table @@ -18,7 +18,6 @@ 16 16 Barren desert 17 17 Water bodies 18 18 Tundra -# 19-96 Reserved 97 97 Snow / ice on land 98 98 Snow / ice on water 99 99 Sun-glint @@ -33,6 +32,4 @@ 108 108 High cloud / Cirrus 109 109 High cloud / unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.219.table b/definitions/grib2/tables/12/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/12/4.219.table +++ b/definitions/grib2/tables/12/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.220.table b/definitions/grib2/tables/12/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/12/4.220.table +++ b/definitions/grib2/tables/12/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.221.table b/definitions/grib2/tables/12/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/12/4.221.table +++ b/definitions/grib2/tables/12/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.222.table b/definitions/grib2/tables/12/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/12/4.222.table +++ b/definitions/grib2/tables/12/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.224.table b/definitions/grib2/tables/12/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/12/4.224.table +++ b/definitions/grib2/tables/12/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/12/4.227.table b/definitions/grib2/tables/12/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/12/4.227.table +++ b/definitions/grib2/tables/12/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/12/4.3.table b/definitions/grib2/tables/12/4.3.table index 1681cfc93..e370ba795 100644 --- a/definitions/grib2/tables/12/4.3.table +++ b/definitions/grib2/tables/12/4.3.table @@ -11,6 +11,4 @@ 9 9 Climatological 10 10 Probability-weighted forecast 11 11 Bias-corrected ensemble forecast -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.4.table b/definitions/grib2/tables/12/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/12/4.4.table +++ b/definitions/grib2/tables/12/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.5.table b/definitions/grib2/tables/12/4.5.table index c3b8aec5d..276349f57 100644 --- a/definitions/grib2/tables/12/4.5.table +++ b/definitions/grib2/tables/12/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -# 21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -30,13 +28,10 @@ 112 112 Reserved 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) -# 115-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 120-149 Reserved 150 150 Generalized vertical height coordinate -# 151-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom @@ -44,6 +39,4 @@ 164 164 Bottom of thermally active sediment layer 165 165 Bottom of sediment layer penetrated by thermal wave 166 sfc Mixing layer -# 167-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.6.table b/definitions/grib2/tables/12/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/12/4.6.table +++ b/definitions/grib2/tables/12/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.7.table b/definitions/grib2/tables/12/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/12/4.7.table +++ b/definitions/grib2/tables/12/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.8.table b/definitions/grib2/tables/12/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/12/4.8.table +++ b/definitions/grib2/tables/12/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.9.table b/definitions/grib2/tables/12/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/12/4.9.table +++ b/definitions/grib2/tables/12/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/4.91.table b/definitions/grib2/tables/12/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/12/4.91.table +++ b/definitions/grib2/tables/12/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/12/5.0.table b/definitions/grib2/tables/12/5.0.table index 2795336df..7d9a25c37 100644 --- a/definitions/grib2/tables/12/5.0.table +++ b/definitions/grib2/tables/12/5.0.table @@ -6,15 +6,10 @@ 4 4 Grid point data - IEEE floating point data 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) -# 42-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/12/5.1.table b/definitions/grib2/tables/12/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/12/5.1.table +++ b/definitions/grib2/tables/12/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/5.2.table b/definitions/grib2/tables/12/5.2.table index d12b46fbd..23764170f 100644 --- a/definitions/grib2/tables/12/5.2.table +++ b/definitions/grib2/tables/12/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1)=C1, f(n)=f(n-1)+C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/5.3.table b/definitions/grib2/tables/12/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/12/5.3.table +++ b/definitions/grib2/tables/12/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/5.4.table b/definitions/grib2/tables/12/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/12/5.4.table +++ b/definitions/grib2/tables/12/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/5.40.table b/definitions/grib2/tables/12/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/12/5.40.table +++ b/definitions/grib2/tables/12/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/12/5.5.table b/definitions/grib2/tables/12/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/12/5.5.table +++ b/definitions/grib2/tables/12/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/5.6.table b/definitions/grib2/tables/12/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/12/5.6.table +++ b/definitions/grib2/tables/12/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/12/5.7.table b/definitions/grib2/tables/12/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/12/5.7.table +++ b/definitions/grib2/tables/12/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/13/0.0.table b/definitions/grib2/tables/13/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/13/0.0.table +++ b/definitions/grib2/tables/13/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/1.2.table b/definitions/grib2/tables/13/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/13/1.2.table +++ b/definitions/grib2/tables/13/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/1.3.table b/definitions/grib2/tables/13/1.3.table index c3b924d9d..eaa109f99 100644 --- a/definitions/grib2/tables/13/1.3.table +++ b/definitions/grib2/tables/13/1.3.table @@ -7,6 +7,4 @@ 5 5 THORPEX Interactive Grand Global Ensemble test (TIGGE) 6 6 S2S operational products 7 7 S2S test products -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/1.4.table b/definitions/grib2/tables/13/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/13/1.4.table +++ b/definitions/grib2/tables/13/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/13/1.5.table b/definitions/grib2/tables/13/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/13/1.5.table +++ b/definitions/grib2/tables/13/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/13/1.6.table b/definitions/grib2/tables/13/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/13/1.6.table +++ b/definitions/grib2/tables/13/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/3.0.table b/definitions/grib2/tables/13/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/13/3.0.table +++ b/definitions/grib2/tables/13/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/13/3.1.table b/definitions/grib2/tables/13/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/13/3.1.table +++ b/definitions/grib2/tables/13/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/13/3.10.table b/definitions/grib2/tables/13/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/13/3.10.table +++ b/definitions/grib2/tables/13/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/13/3.11.table b/definitions/grib2/tables/13/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/13/3.11.table +++ b/definitions/grib2/tables/13/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/13/3.15.table b/definitions/grib2/tables/13/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/13/3.15.table +++ b/definitions/grib2/tables/13/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/3.2.table b/definitions/grib2/tables/13/3.2.table index b9574a424..ed8eb276c 100644 --- a/definitions/grib2/tables/13/3.2.table +++ b/definitions/grib2/tables/13/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/3.20.table b/definitions/grib2/tables/13/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/13/3.20.table +++ b/definitions/grib2/tables/13/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/3.21.table b/definitions/grib2/tables/13/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/13/3.21.table +++ b/definitions/grib2/tables/13/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/3.3.table b/definitions/grib2/tables/13/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/13/3.3.table +++ b/definitions/grib2/tables/13/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/13/3.4.table b/definitions/grib2/tables/13/3.4.table index ea9cbe829..d77b6b89f 100644 --- a/definitions/grib2/tables/13/3.4.table +++ b/definitions/grib2/tables/13/3.4.table @@ -7,4 +7,3 @@ 3 1 Adjacent points in j (y) direction is consecutive 4 0 All rows scan in the same direction 4 1 Adjacent rows scans in the opposite direction -# 5-8 Reserved diff --git a/definitions/grib2/tables/13/3.7.table b/definitions/grib2/tables/13/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/13/3.7.table +++ b/definitions/grib2/tables/13/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/13/3.8.table b/definitions/grib2/tables/13/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/13/3.8.table +++ b/definitions/grib2/tables/13/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/3.9.table b/definitions/grib2/tables/13/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/13/3.9.table +++ b/definitions/grib2/tables/13/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/13/4.0.table b/definitions/grib2/tables/13/4.0.table index 7627a2a3d..4e0a86fbd 100644 --- a/definitions/grib2/tables/13/4.0.table +++ b/definitions/grib2/tables/13/4.0.table @@ -15,15 +15,12 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data -# 35-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -34,29 +31,21 @@ 46 46 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 49-50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time 52 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters -# 55-59 Reserved 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 62-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/13/4.1.0.table b/definitions/grib2/tables/13/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/13/4.1.0.table +++ b/definitions/grib2/tables/13/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.1.1.table b/definitions/grib2/tables/13/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/13/4.1.1.table +++ b/definitions/grib2/tables/13/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.1.10.table b/definitions/grib2/tables/13/4.1.10.table index e9663f391..ac6a221f9 100644 --- a/definitions/grib2/tables/13/4.1.10.table +++ b/definitions/grib2/tables/13/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Sub-surface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.1.2.table b/definitions/grib2/tables/13/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/13/4.1.2.table +++ b/definitions/grib2/tables/13/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.1.3.table b/definitions/grib2/tables/13/4.1.3.table index c1a1e267a..5102b92b2 100644 --- a/definitions/grib2/tables/13/4.1.3.table +++ b/definitions/grib2/tables/13/4.1.3.table @@ -1,6 +1,4 @@ # Code table 4.1 - Parameter category by product discipline 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.10.table b/definitions/grib2/tables/13/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/13/4.10.table +++ b/definitions/grib2/tables/13/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/13/4.11.table b/definitions/grib2/tables/13/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/13/4.11.table +++ b/definitions/grib2/tables/13/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.12.table b/definitions/grib2/tables/13/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/13/4.12.table +++ b/definitions/grib2/tables/13/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.13.table b/definitions/grib2/tables/13/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/13/4.13.table +++ b/definitions/grib2/tables/13/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.14.table b/definitions/grib2/tables/13/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/13/4.14.table +++ b/definitions/grib2/tables/13/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.15.table b/definitions/grib2/tables/13/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/13/4.15.table +++ b/definitions/grib2/tables/13/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.0.table b/definitions/grib2/tables/13/4.2.0.0.table index 24d21959d..1e5d530e6 100644 --- a/definitions/grib2/tables/13/4.2.0.0.table +++ b/definitions/grib2/tables/13/4.2.0.0.table @@ -21,6 +21,4 @@ 19 19 Turbulent transfer coefficient for heat (Numeric) 20 20 Turbulent diffusion coefficient for heat (m2/s) 21 21 Apparent temperature (K) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.1.table b/definitions/grib2/tables/13/4.2.0.1.table index fb7c3d776..738d9f37c 100644 --- a/definitions/grib2/tables/13/4.2.0.1.table +++ b/definitions/grib2/tables/13/4.2.0.1.table @@ -86,10 +86,7 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rainwater content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) -# 93-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.13.table b/definitions/grib2/tables/13/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/13/4.2.0.13.table +++ b/definitions/grib2/tables/13/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.14.table b/definitions/grib2/tables/13/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/13/4.2.0.14.table +++ b/definitions/grib2/tables/13/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.15.table b/definitions/grib2/tables/13/4.2.0.15.table index bb0b9ab46..fdb54bf4f 100644 --- a/definitions/grib2/tables/13/4.2.0.15.table +++ b/definitions/grib2/tables/13/4.2.0.15.table @@ -14,6 +14,4 @@ 12 12 Reflectivity of rain (dB) 13 13 Reflectivity of graupel (dB) 14 14 Reflectivity of hail (dB) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.16.table b/definitions/grib2/tables/13/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/13/4.2.0.16.table +++ b/definitions/grib2/tables/13/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.18.table b/definitions/grib2/tables/13/4.2.0.18.table index 7e0a736eb..8a8bbc46a 100644 --- a/definitions/grib2/tables/13/4.2.0.18.table +++ b/definitions/grib2/tables/13/4.2.0.18.table @@ -13,6 +13,4 @@ 11 11 Wet deposition (Bq m-2) 12 12 Dry deposition (Bq m-2) 13 13 Total deposition (wet + dry) (Bq m-2) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.19.table b/definitions/grib2/tables/13/4.2.0.19.table index d2beef083..49e1b1a7e 100644 --- a/definitions/grib2/tables/13/4.2.0.19.table +++ b/definitions/grib2/tables/13/4.2.0.19.table @@ -27,6 +27,4 @@ 25 25 Weather (Code table 4.225) 26 26 Convective outlook (Code table 4.224) 27 27 Icing scenario (Code table 4.227) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.190.table b/definitions/grib2/tables/13/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/13/4.2.0.190.table +++ b/definitions/grib2/tables/13/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.191.table b/definitions/grib2/tables/13/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/13/4.2.0.191.table +++ b/definitions/grib2/tables/13/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.2.table b/definitions/grib2/tables/13/4.2.0.2.table index 7bd1509f5..57f55079c 100644 --- a/definitions/grib2/tables/13/4.2.0.2.table +++ b/definitions/grib2/tables/13/4.2.0.2.table @@ -38,6 +38,4 @@ 36 36 Amplitude function for Rossby wave envelope for meridional wind (m/s) 37 37 Northward turbulent surface stress (N m-2 s) 38 38 Eastward turbulent surface stress (N m-2 s) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.20.table b/definitions/grib2/tables/13/4.2.0.20.table index df9ccc184..697e8e2d3 100644 --- a/definitions/grib2/tables/13/4.2.0.20.table +++ b/definitions/grib2/tables/13/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -25,7 +24,6 @@ 57 57 Total yearly average burden of the atmosphere (mol) 58 58 Total yearly averaged atmospheric loss (mol/s) 59 59 Aerosol number concentration (m-3) -# 60-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -37,6 +35,4 @@ 108 108 Aerosol lidar backscatter from the ground (m-1 sr-1) 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.3.table b/definitions/grib2/tables/13/4.2.0.3.table index e1a68bfc5..5aed1a408 100644 --- a/definitions/grib2/tables/13/4.2.0.3.table +++ b/definitions/grib2/tables/13/4.2.0.3.table @@ -26,6 +26,4 @@ 24 24 Anisotropy of sub-gridscale orography (Numeric) 25 25 Natural logarithm of pressure in Pa (Numeric) 26 26 Exner pressure (Numeric) -# 27-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.4.table b/definitions/grib2/tables/13/4.2.0.4.table index 03b5cea38..4b0159cd4 100644 --- a/definitions/grib2/tables/13/4.2.0.4.table +++ b/definitions/grib2/tables/13/4.2.0.4.table @@ -12,9 +12,6 @@ 10 10 Photosynthetically active radiation (W m-2) 11 11 Net short-wave radiation flux, clear sky (W m-2) 12 12 Downward UV radiation (W m-2) -# 13-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.5.table b/definitions/grib2/tables/13/4.2.0.5.table index 1bdd6ebee..d5e41d237 100644 --- a/definitions/grib2/tables/13/4.2.0.5.table +++ b/definitions/grib2/tables/13/4.2.0.5.table @@ -6,6 +6,4 @@ 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long-wave radiation flux (W m-2) 6 6 Net long-wave radiation flux, clear sky (W m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.6.table b/definitions/grib2/tables/13/4.2.0.6.table index 89da06eec..e9c732d98 100644 --- a/definitions/grib2/tables/13/4.2.0.6.table +++ b/definitions/grib2/tables/13/4.2.0.6.table @@ -35,6 +35,4 @@ 33 33 Sunshine duration (s) 34 34 Surface long-wave effective total cloudiness (Numeric) 35 35 Surface short-wave effective total cloudiness (Numeric) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.0.7.table b/definitions/grib2/tables/13/4.2.0.7.table index 8a2b85fb9..094a07a7c 100644 --- a/definitions/grib2/tables/13/4.2.0.7.table +++ b/definitions/grib2/tables/13/4.2.0.7.table @@ -15,6 +15,4 @@ 13 13 Showalter index (K) 14 14 Reserved 15 15 Updraft helicity (m2 s-2) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.1.0.table b/definitions/grib2/tables/13/4.2.1.0.table index f455c3365..13e09c639 100644 --- a/definitions/grib2/tables/13/4.2.1.0.table +++ b/definitions/grib2/tables/13/4.2.1.0.table @@ -7,6 +7,4 @@ 5 5 Baseflow-groundwater runoff (kg m-2) 6 6 Storm surface runoff (kg m-2) 7 7 Discharge from rivers or streams (m3/s) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.1.1.table b/definitions/grib2/tables/13/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/13/4.2.1.1.table +++ b/definitions/grib2/tables/13/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.10.0.table b/definitions/grib2/tables/13/4.2.10.0.table index 3611abd9a..5014980aa 100644 --- a/definitions/grib2/tables/13/4.2.10.0.table +++ b/definitions/grib2/tables/13/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (/s) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.10.1.table b/definitions/grib2/tables/13/4.2.10.1.table index f0a073c00..c172554a9 100644 --- a/definitions/grib2/tables/13/4.2.10.1.table +++ b/definitions/grib2/tables/13/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.10.191.table b/definitions/grib2/tables/13/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/13/4.2.10.191.table +++ b/definitions/grib2/tables/13/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.10.2.table b/definitions/grib2/tables/13/4.2.10.2.table index 0caeacba7..127a3a013 100644 --- a/definitions/grib2/tables/13/4.2.10.2.table +++ b/definitions/grib2/tables/13/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.10.3.table b/definitions/grib2/tables/13/4.2.10.3.table index 937720c93..71f0770e8 100644 --- a/definitions/grib2/tables/13/4.2.10.3.table +++ b/definitions/grib2/tables/13/4.2.10.3.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.10.4.table b/definitions/grib2/tables/13/4.2.10.4.table index d5615ae26..15cc8b4b3 100644 --- a/definitions/grib2/tables/13/4.2.10.4.table +++ b/definitions/grib2/tables/13/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.2.0.table b/definitions/grib2/tables/13/4.2.2.0.table index 00342a32b..3a61bf0a6 100644 --- a/definitions/grib2/tables/13/4.2.2.0.table +++ b/definitions/grib2/tables/13/4.2.2.0.table @@ -34,6 +34,4 @@ 32 32 Root depth of vegetation (m) 33 33 Water runoff and drainage (kg m-2) 34 34 Surface water runoff (kg m-2) -# 35-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.2.3.table b/definitions/grib2/tables/13/4.2.2.3.table index 3d3298c8a..31b88d06d 100644 --- a/definitions/grib2/tables/13/4.2.2.3.table +++ b/definitions/grib2/tables/13/4.2.2.3.table @@ -22,6 +22,4 @@ 20 20 Column-integrated soil moisture (kg m-2) 21 21 Soil ice (kg m-3) 22 22 Column-integrated soil ice (kg m-2) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.2.4.table b/definitions/grib2/tables/13/4.2.2.4.table index c8b877df6..8562742b1 100644 --- a/definitions/grib2/tables/13/4.2.2.4.table +++ b/definitions/grib2/tables/13/4.2.2.4.table @@ -4,6 +4,4 @@ 2 2 Haines Index (Numeric) 3 3 Fire burned area (%) 4 4 Fosberg index (Numeric) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.3.0.table b/definitions/grib2/tables/13/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/13/4.2.3.0.table +++ b/definitions/grib2/tables/13/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.2.3.1.table b/definitions/grib2/tables/13/4.2.3.1.table index bc16d8855..3856da223 100644 --- a/definitions/grib2/tables/13/4.2.3.1.table +++ b/definitions/grib2/tables/13/4.2.3.1.table @@ -23,6 +23,4 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.201.table b/definitions/grib2/tables/13/4.201.table index fa173c4e0..7787ce735 100644 --- a/definitions/grib2/tables/13/4.201.table +++ b/definitions/grib2/tables/13/4.201.table @@ -10,6 +10,4 @@ 8 8 Ice pellets 9 9 Graupel 10 10 Hail -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.202.table b/definitions/grib2/tables/13/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/13/4.202.table +++ b/definitions/grib2/tables/13/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.203.table b/definitions/grib2/tables/13/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/13/4.203.table +++ b/definitions/grib2/tables/13/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.204.table b/definitions/grib2/tables/13/4.204.table index ffbd89502..2084e77dc 100644 --- a/definitions/grib2/tables/13/4.204.table +++ b/definitions/grib2/tables/13/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (16-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.205.table b/definitions/grib2/tables/13/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/13/4.205.table +++ b/definitions/grib2/tables/13/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.206.table b/definitions/grib2/tables/13/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/13/4.206.table +++ b/definitions/grib2/tables/13/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.207.table b/definitions/grib2/tables/13/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/13/4.207.table +++ b/definitions/grib2/tables/13/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.208.table b/definitions/grib2/tables/13/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/13/4.208.table +++ b/definitions/grib2/tables/13/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.209.table b/definitions/grib2/tables/13/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/13/4.209.table +++ b/definitions/grib2/tables/13/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.210.table b/definitions/grib2/tables/13/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/13/4.210.table +++ b/definitions/grib2/tables/13/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.211.table b/definitions/grib2/tables/13/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/13/4.211.table +++ b/definitions/grib2/tables/13/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.212.table b/definitions/grib2/tables/13/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/13/4.212.table +++ b/definitions/grib2/tables/13/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.213.table b/definitions/grib2/tables/13/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/13/4.213.table +++ b/definitions/grib2/tables/13/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.215.table b/definitions/grib2/tables/13/4.215.table index c264c6722..da458b072 100644 --- a/definitions/grib2/tables/13/4.215.table +++ b/definitions/grib2/tables/13/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely-sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.216.table b/definitions/grib2/tables/13/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/13/4.216.table +++ b/definitions/grib2/tables/13/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/13/4.217.table b/definitions/grib2/tables/13/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/13/4.217.table +++ b/definitions/grib2/tables/13/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.218.table b/definitions/grib2/tables/13/4.218.table index acf069c32..d023ece2b 100644 --- a/definitions/grib2/tables/13/4.218.table +++ b/definitions/grib2/tables/13/4.218.table @@ -18,7 +18,6 @@ 16 16 Barren desert 17 17 Water bodies 18 18 Tundra -# 19-96 Reserved 97 97 Snow / ice on land 98 98 Snow / ice on water 99 99 Sun-glint @@ -33,6 +32,4 @@ 108 108 High cloud / Cirrus 109 109 High cloud / unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.219.table b/definitions/grib2/tables/13/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/13/4.219.table +++ b/definitions/grib2/tables/13/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.220.table b/definitions/grib2/tables/13/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/13/4.220.table +++ b/definitions/grib2/tables/13/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.221.table b/definitions/grib2/tables/13/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/13/4.221.table +++ b/definitions/grib2/tables/13/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.222.table b/definitions/grib2/tables/13/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/13/4.222.table +++ b/definitions/grib2/tables/13/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.224.table b/definitions/grib2/tables/13/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/13/4.224.table +++ b/definitions/grib2/tables/13/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/13/4.227.table b/definitions/grib2/tables/13/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/13/4.227.table +++ b/definitions/grib2/tables/13/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/13/4.3.table b/definitions/grib2/tables/13/4.3.table index 2b775c807..c19e8613e 100644 --- a/definitions/grib2/tables/13/4.3.table +++ b/definitions/grib2/tables/13/4.3.table @@ -13,6 +13,4 @@ 11 11 Bias-corrected ensemble forecast 12 12 Post-processed analysis 13 13 Post-processed forecast -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.4.table b/definitions/grib2/tables/13/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/13/4.4.table +++ b/definitions/grib2/tables/13/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.5.table b/definitions/grib2/tables/13/4.5.table index d61b61c9f..b033e3105 100644 --- a/definitions/grib2/tables/13/4.5.table +++ b/definitions/grib2/tables/13/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -# 21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -30,13 +28,10 @@ 112 112 Reserved 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) -# 115-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 120-149 Reserved 150 150 Generalized vertical height coordinate -# 151-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom @@ -45,6 +40,4 @@ 165 165 Bottom of sediment layer penetrated by thermal wave 166 sfc Mixing layer 167 167 Bottom of root zone -# 168-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.6.table b/definitions/grib2/tables/13/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/13/4.6.table +++ b/definitions/grib2/tables/13/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.7.table b/definitions/grib2/tables/13/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/13/4.7.table +++ b/definitions/grib2/tables/13/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.8.table b/definitions/grib2/tables/13/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/13/4.8.table +++ b/definitions/grib2/tables/13/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.9.table b/definitions/grib2/tables/13/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/13/4.9.table +++ b/definitions/grib2/tables/13/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/4.91.table b/definitions/grib2/tables/13/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/13/4.91.table +++ b/definitions/grib2/tables/13/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/13/5.0.table b/definitions/grib2/tables/13/5.0.table index 2795336df..7d9a25c37 100644 --- a/definitions/grib2/tables/13/5.0.table +++ b/definitions/grib2/tables/13/5.0.table @@ -6,15 +6,10 @@ 4 4 Grid point data - IEEE floating point data 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) -# 42-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/13/5.1.table b/definitions/grib2/tables/13/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/13/5.1.table +++ b/definitions/grib2/tables/13/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/5.2.table b/definitions/grib2/tables/13/5.2.table index d12b46fbd..23764170f 100644 --- a/definitions/grib2/tables/13/5.2.table +++ b/definitions/grib2/tables/13/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1)=C1, f(n)=f(n-1)+C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/5.3.table b/definitions/grib2/tables/13/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/13/5.3.table +++ b/definitions/grib2/tables/13/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/5.4.table b/definitions/grib2/tables/13/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/13/5.4.table +++ b/definitions/grib2/tables/13/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/5.40.table b/definitions/grib2/tables/13/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/13/5.40.table +++ b/definitions/grib2/tables/13/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/13/5.5.table b/definitions/grib2/tables/13/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/13/5.5.table +++ b/definitions/grib2/tables/13/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/5.6.table b/definitions/grib2/tables/13/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/13/5.6.table +++ b/definitions/grib2/tables/13/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/13/5.7.table b/definitions/grib2/tables/13/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/13/5.7.table +++ b/definitions/grib2/tables/13/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/14/0.0.table b/definitions/grib2/tables/14/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/14/0.0.table +++ b/definitions/grib2/tables/14/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/1.2.table b/definitions/grib2/tables/14/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/14/1.2.table +++ b/definitions/grib2/tables/14/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/1.3.table b/definitions/grib2/tables/14/1.3.table index eb3a79f9b..faa81e029 100644 --- a/definitions/grib2/tables/14/1.3.table +++ b/definitions/grib2/tables/14/1.3.table @@ -9,6 +9,4 @@ 7 7 S2S test products 8 8 Uncertainties in ensembles of regional re-analysis project (UERRA) 9 9 Uncertainties in ensembles of regional re-analysis project test (UERRA) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/1.4.table b/definitions/grib2/tables/14/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/14/1.4.table +++ b/definitions/grib2/tables/14/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/14/1.5.table b/definitions/grib2/tables/14/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/14/1.5.table +++ b/definitions/grib2/tables/14/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/14/1.6.table b/definitions/grib2/tables/14/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/14/1.6.table +++ b/definitions/grib2/tables/14/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/3.0.table b/definitions/grib2/tables/14/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/14/3.0.table +++ b/definitions/grib2/tables/14/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/14/3.1.table b/definitions/grib2/tables/14/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/14/3.1.table +++ b/definitions/grib2/tables/14/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/14/3.10.table b/definitions/grib2/tables/14/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/14/3.10.table +++ b/definitions/grib2/tables/14/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/14/3.11.table b/definitions/grib2/tables/14/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/14/3.11.table +++ b/definitions/grib2/tables/14/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/14/3.15.table b/definitions/grib2/tables/14/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/14/3.15.table +++ b/definitions/grib2/tables/14/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/3.2.table b/definitions/grib2/tables/14/3.2.table index b9574a424..ed8eb276c 100644 --- a/definitions/grib2/tables/14/3.2.table +++ b/definitions/grib2/tables/14/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/3.20.table b/definitions/grib2/tables/14/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/14/3.20.table +++ b/definitions/grib2/tables/14/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/3.21.table b/definitions/grib2/tables/14/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/14/3.21.table +++ b/definitions/grib2/tables/14/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/3.3.table b/definitions/grib2/tables/14/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/14/3.3.table +++ b/definitions/grib2/tables/14/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/14/3.7.table b/definitions/grib2/tables/14/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/14/3.7.table +++ b/definitions/grib2/tables/14/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/14/3.8.table b/definitions/grib2/tables/14/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/14/3.8.table +++ b/definitions/grib2/tables/14/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/3.9.table b/definitions/grib2/tables/14/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/14/3.9.table +++ b/definitions/grib2/tables/14/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/14/4.0.table b/definitions/grib2/tables/14/4.0.table index 7627a2a3d..4e0a86fbd 100644 --- a/definitions/grib2/tables/14/4.0.table +++ b/definitions/grib2/tables/14/4.0.table @@ -15,15 +15,12 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data -# 35-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -34,29 +31,21 @@ 46 46 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 49-50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time 52 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters -# 55-59 Reserved 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 62-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/14/4.1.0.table b/definitions/grib2/tables/14/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/14/4.1.0.table +++ b/definitions/grib2/tables/14/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.1.1.table b/definitions/grib2/tables/14/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/14/4.1.1.table +++ b/definitions/grib2/tables/14/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.1.10.table b/definitions/grib2/tables/14/4.1.10.table index e9663f391..ac6a221f9 100644 --- a/definitions/grib2/tables/14/4.1.10.table +++ b/definitions/grib2/tables/14/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Sub-surface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.1.2.table b/definitions/grib2/tables/14/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/14/4.1.2.table +++ b/definitions/grib2/tables/14/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.1.3.table b/definitions/grib2/tables/14/4.1.3.table index c1a1e267a..5102b92b2 100644 --- a/definitions/grib2/tables/14/4.1.3.table +++ b/definitions/grib2/tables/14/4.1.3.table @@ -1,6 +1,4 @@ # Code table 4.1 - Parameter category by product discipline 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.10.table b/definitions/grib2/tables/14/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/14/4.10.table +++ b/definitions/grib2/tables/14/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/14/4.11.table b/definitions/grib2/tables/14/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/14/4.11.table +++ b/definitions/grib2/tables/14/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.12.table b/definitions/grib2/tables/14/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/14/4.12.table +++ b/definitions/grib2/tables/14/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.13.table b/definitions/grib2/tables/14/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/14/4.13.table +++ b/definitions/grib2/tables/14/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.14.table b/definitions/grib2/tables/14/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/14/4.14.table +++ b/definitions/grib2/tables/14/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.15.table b/definitions/grib2/tables/14/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/14/4.15.table +++ b/definitions/grib2/tables/14/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.0.table b/definitions/grib2/tables/14/4.2.0.0.table index 24d21959d..1e5d530e6 100644 --- a/definitions/grib2/tables/14/4.2.0.0.table +++ b/definitions/grib2/tables/14/4.2.0.0.table @@ -21,6 +21,4 @@ 19 19 Turbulent transfer coefficient for heat (Numeric) 20 20 Turbulent diffusion coefficient for heat (m2/s) 21 21 Apparent temperature (K) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.1.table b/definitions/grib2/tables/14/4.2.0.1.table index bd0214c77..754633f11 100644 --- a/definitions/grib2/tables/14/4.2.0.1.table +++ b/definitions/grib2/tables/14/4.2.0.1.table @@ -86,12 +86,9 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rainwater content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) 93 93 Relative humidity with respect to water (%) 94 94 Relative humidity with respect to ice (%) -# 95-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.13.table b/definitions/grib2/tables/14/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/14/4.2.0.13.table +++ b/definitions/grib2/tables/14/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.14.table b/definitions/grib2/tables/14/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/14/4.2.0.14.table +++ b/definitions/grib2/tables/14/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.15.table b/definitions/grib2/tables/14/4.2.0.15.table index bb0b9ab46..fdb54bf4f 100644 --- a/definitions/grib2/tables/14/4.2.0.15.table +++ b/definitions/grib2/tables/14/4.2.0.15.table @@ -14,6 +14,4 @@ 12 12 Reflectivity of rain (dB) 13 13 Reflectivity of graupel (dB) 14 14 Reflectivity of hail (dB) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.16.table b/definitions/grib2/tables/14/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/14/4.2.0.16.table +++ b/definitions/grib2/tables/14/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.18.table b/definitions/grib2/tables/14/4.2.0.18.table index 7e0a736eb..8a8bbc46a 100644 --- a/definitions/grib2/tables/14/4.2.0.18.table +++ b/definitions/grib2/tables/14/4.2.0.18.table @@ -13,6 +13,4 @@ 11 11 Wet deposition (Bq m-2) 12 12 Dry deposition (Bq m-2) 13 13 Total deposition (wet + dry) (Bq m-2) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.19.table b/definitions/grib2/tables/14/4.2.0.19.table index d2beef083..49e1b1a7e 100644 --- a/definitions/grib2/tables/14/4.2.0.19.table +++ b/definitions/grib2/tables/14/4.2.0.19.table @@ -27,6 +27,4 @@ 25 25 Weather (Code table 4.225) 26 26 Convective outlook (Code table 4.224) 27 27 Icing scenario (Code table 4.227) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.190.table b/definitions/grib2/tables/14/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/14/4.2.0.190.table +++ b/definitions/grib2/tables/14/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.191.table b/definitions/grib2/tables/14/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/14/4.2.0.191.table +++ b/definitions/grib2/tables/14/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.2.table b/definitions/grib2/tables/14/4.2.0.2.table index 7bd1509f5..57f55079c 100644 --- a/definitions/grib2/tables/14/4.2.0.2.table +++ b/definitions/grib2/tables/14/4.2.0.2.table @@ -38,6 +38,4 @@ 36 36 Amplitude function for Rossby wave envelope for meridional wind (m/s) 37 37 Northward turbulent surface stress (N m-2 s) 38 38 Eastward turbulent surface stress (N m-2 s) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.20.table b/definitions/grib2/tables/14/4.2.0.20.table index df9ccc184..697e8e2d3 100644 --- a/definitions/grib2/tables/14/4.2.0.20.table +++ b/definitions/grib2/tables/14/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -25,7 +24,6 @@ 57 57 Total yearly average burden of the atmosphere (mol) 58 58 Total yearly averaged atmospheric loss (mol/s) 59 59 Aerosol number concentration (m-3) -# 60-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -37,6 +35,4 @@ 108 108 Aerosol lidar backscatter from the ground (m-1 sr-1) 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.3.table b/definitions/grib2/tables/14/4.2.0.3.table index e1a68bfc5..5aed1a408 100644 --- a/definitions/grib2/tables/14/4.2.0.3.table +++ b/definitions/grib2/tables/14/4.2.0.3.table @@ -26,6 +26,4 @@ 24 24 Anisotropy of sub-gridscale orography (Numeric) 25 25 Natural logarithm of pressure in Pa (Numeric) 26 26 Exner pressure (Numeric) -# 27-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.4.table b/definitions/grib2/tables/14/4.2.0.4.table index 03b5cea38..4b0159cd4 100644 --- a/definitions/grib2/tables/14/4.2.0.4.table +++ b/definitions/grib2/tables/14/4.2.0.4.table @@ -12,9 +12,6 @@ 10 10 Photosynthetically active radiation (W m-2) 11 11 Net short-wave radiation flux, clear sky (W m-2) 12 12 Downward UV radiation (W m-2) -# 13-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.5.table b/definitions/grib2/tables/14/4.2.0.5.table index 1bdd6ebee..d5e41d237 100644 --- a/definitions/grib2/tables/14/4.2.0.5.table +++ b/definitions/grib2/tables/14/4.2.0.5.table @@ -6,6 +6,4 @@ 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long-wave radiation flux (W m-2) 6 6 Net long-wave radiation flux, clear sky (W m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.6.table b/definitions/grib2/tables/14/4.2.0.6.table index 427240b70..5b895176b 100644 --- a/definitions/grib2/tables/14/4.2.0.6.table +++ b/definitions/grib2/tables/14/4.2.0.6.table @@ -37,6 +37,4 @@ 35 35 Surface short-wave effective total cloudiness (Numeric) 36 36 Fraction of stratiform precipitation cover (Proportion) 37 37 Fraction of convective precipitation cover (Proportion) -# 38-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.0.7.table b/definitions/grib2/tables/14/4.2.0.7.table index 8a2b85fb9..094a07a7c 100644 --- a/definitions/grib2/tables/14/4.2.0.7.table +++ b/definitions/grib2/tables/14/4.2.0.7.table @@ -15,6 +15,4 @@ 13 13 Showalter index (K) 14 14 Reserved 15 15 Updraft helicity (m2 s-2) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.1.0.table b/definitions/grib2/tables/14/4.2.1.0.table index f455c3365..13e09c639 100644 --- a/definitions/grib2/tables/14/4.2.1.0.table +++ b/definitions/grib2/tables/14/4.2.1.0.table @@ -7,6 +7,4 @@ 5 5 Baseflow-groundwater runoff (kg m-2) 6 6 Storm surface runoff (kg m-2) 7 7 Discharge from rivers or streams (m3/s) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.1.1.table b/definitions/grib2/tables/14/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/14/4.2.1.1.table +++ b/definitions/grib2/tables/14/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.10.0.table b/definitions/grib2/tables/14/4.2.10.0.table index 3611abd9a..5014980aa 100644 --- a/definitions/grib2/tables/14/4.2.10.0.table +++ b/definitions/grib2/tables/14/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (/s) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.10.1.table b/definitions/grib2/tables/14/4.2.10.1.table index f0a073c00..c172554a9 100644 --- a/definitions/grib2/tables/14/4.2.10.1.table +++ b/definitions/grib2/tables/14/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.10.191.table b/definitions/grib2/tables/14/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/14/4.2.10.191.table +++ b/definitions/grib2/tables/14/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.10.2.table b/definitions/grib2/tables/14/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/14/4.2.10.2.table +++ b/definitions/grib2/tables/14/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.10.3.table b/definitions/grib2/tables/14/4.2.10.3.table index 937720c93..71f0770e8 100644 --- a/definitions/grib2/tables/14/4.2.10.3.table +++ b/definitions/grib2/tables/14/4.2.10.3.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.10.4.table b/definitions/grib2/tables/14/4.2.10.4.table index d5615ae26..15cc8b4b3 100644 --- a/definitions/grib2/tables/14/4.2.10.4.table +++ b/definitions/grib2/tables/14/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.2.0.table b/definitions/grib2/tables/14/4.2.2.0.table index d61dd05fc..33b46e003 100644 --- a/definitions/grib2/tables/14/4.2.2.0.table +++ b/definitions/grib2/tables/14/4.2.2.0.table @@ -37,6 +37,4 @@ 35 35 Tile class (Code table 4.243) 36 36 Tile fraction (Proportion) 37 37 Tile percentage (%) -# 38-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.2.3.table b/definitions/grib2/tables/14/4.2.2.3.table index 3d3298c8a..31b88d06d 100644 --- a/definitions/grib2/tables/14/4.2.2.3.table +++ b/definitions/grib2/tables/14/4.2.2.3.table @@ -22,6 +22,4 @@ 20 20 Column-integrated soil moisture (kg m-2) 21 21 Soil ice (kg m-3) 22 22 Column-integrated soil ice (kg m-2) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.2.4.table b/definitions/grib2/tables/14/4.2.2.4.table index c8b877df6..8562742b1 100644 --- a/definitions/grib2/tables/14/4.2.2.4.table +++ b/definitions/grib2/tables/14/4.2.2.4.table @@ -4,6 +4,4 @@ 2 2 Haines Index (Numeric) 3 3 Fire burned area (%) 4 4 Fosberg index (Numeric) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.3.0.table b/definitions/grib2/tables/14/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/14/4.2.3.0.table +++ b/definitions/grib2/tables/14/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.2.3.1.table b/definitions/grib2/tables/14/4.2.3.1.table index bc16d8855..3856da223 100644 --- a/definitions/grib2/tables/14/4.2.3.1.table +++ b/definitions/grib2/tables/14/4.2.3.1.table @@ -23,6 +23,4 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.201.table b/definitions/grib2/tables/14/4.201.table index fa173c4e0..7787ce735 100644 --- a/definitions/grib2/tables/14/4.201.table +++ b/definitions/grib2/tables/14/4.201.table @@ -10,6 +10,4 @@ 8 8 Ice pellets 9 9 Graupel 10 10 Hail -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.202.table b/definitions/grib2/tables/14/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/14/4.202.table +++ b/definitions/grib2/tables/14/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.203.table b/definitions/grib2/tables/14/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/14/4.203.table +++ b/definitions/grib2/tables/14/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.204.table b/definitions/grib2/tables/14/4.204.table index ffbd89502..2084e77dc 100644 --- a/definitions/grib2/tables/14/4.204.table +++ b/definitions/grib2/tables/14/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (16-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.205.table b/definitions/grib2/tables/14/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/14/4.205.table +++ b/definitions/grib2/tables/14/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.206.table b/definitions/grib2/tables/14/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/14/4.206.table +++ b/definitions/grib2/tables/14/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.207.table b/definitions/grib2/tables/14/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/14/4.207.table +++ b/definitions/grib2/tables/14/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.208.table b/definitions/grib2/tables/14/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/14/4.208.table +++ b/definitions/grib2/tables/14/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.209.table b/definitions/grib2/tables/14/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/14/4.209.table +++ b/definitions/grib2/tables/14/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.210.table b/definitions/grib2/tables/14/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/14/4.210.table +++ b/definitions/grib2/tables/14/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.211.table b/definitions/grib2/tables/14/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/14/4.211.table +++ b/definitions/grib2/tables/14/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.212.table b/definitions/grib2/tables/14/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/14/4.212.table +++ b/definitions/grib2/tables/14/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.213.table b/definitions/grib2/tables/14/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/14/4.213.table +++ b/definitions/grib2/tables/14/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.215.table b/definitions/grib2/tables/14/4.215.table index c264c6722..da458b072 100644 --- a/definitions/grib2/tables/14/4.215.table +++ b/definitions/grib2/tables/14/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely-sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.216.table b/definitions/grib2/tables/14/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/14/4.216.table +++ b/definitions/grib2/tables/14/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/14/4.217.table b/definitions/grib2/tables/14/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/14/4.217.table +++ b/definitions/grib2/tables/14/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.218.table b/definitions/grib2/tables/14/4.218.table index acf069c32..d023ece2b 100644 --- a/definitions/grib2/tables/14/4.218.table +++ b/definitions/grib2/tables/14/4.218.table @@ -18,7 +18,6 @@ 16 16 Barren desert 17 17 Water bodies 18 18 Tundra -# 19-96 Reserved 97 97 Snow / ice on land 98 98 Snow / ice on water 99 99 Sun-glint @@ -33,6 +32,4 @@ 108 108 High cloud / Cirrus 109 109 High cloud / unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.219.table b/definitions/grib2/tables/14/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/14/4.219.table +++ b/definitions/grib2/tables/14/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.220.table b/definitions/grib2/tables/14/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/14/4.220.table +++ b/definitions/grib2/tables/14/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.221.table b/definitions/grib2/tables/14/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/14/4.221.table +++ b/definitions/grib2/tables/14/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.222.table b/definitions/grib2/tables/14/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/14/4.222.table +++ b/definitions/grib2/tables/14/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.224.table b/definitions/grib2/tables/14/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/14/4.224.table +++ b/definitions/grib2/tables/14/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/14/4.227.table b/definitions/grib2/tables/14/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/14/4.227.table +++ b/definitions/grib2/tables/14/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/14/4.241.table b/definitions/grib2/tables/14/4.241.table index ce6a15f3c..3d7098dbf 100644 --- a/definitions/grib2/tables/14/4.241.table +++ b/definitions/grib2/tables/14/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow-covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.242.table b/definitions/grib2/tables/14/4.242.table index ca852339d..7d5d908c5 100644 --- a/definitions/grib2/tables/14/4.242.table +++ b/definitions/grib2/tables/14/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GLOBCOVER GCV2009 2 2 Land use classes according to European Commission - Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.243.table b/definitions/grib2/tables/14/4.243.table index 8677e6819..720ec0dbe 100644 --- a/definitions/grib2/tables/14/4.243.table +++ b/definitions/grib2/tables/14/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/14/4.3.table b/definitions/grib2/tables/14/4.3.table index 46e498c5f..c71b29cd1 100644 --- a/definitions/grib2/tables/14/4.3.table +++ b/definitions/grib2/tables/14/4.3.table @@ -15,6 +15,4 @@ 13 13 Post-processed forecast 14 14 Nowcast 15 15 Hindcast -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.4.table b/definitions/grib2/tables/14/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/14/4.4.table +++ b/definitions/grib2/tables/14/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.5.table b/definitions/grib2/tables/14/4.5.table index d61b61c9f..b033e3105 100644 --- a/definitions/grib2/tables/14/4.5.table +++ b/definitions/grib2/tables/14/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -# 21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -30,13 +28,10 @@ 112 112 Reserved 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) -# 115-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 120-149 Reserved 150 150 Generalized vertical height coordinate -# 151-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom @@ -45,6 +40,4 @@ 165 165 Bottom of sediment layer penetrated by thermal wave 166 sfc Mixing layer 167 167 Bottom of root zone -# 168-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.6.table b/definitions/grib2/tables/14/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/14/4.6.table +++ b/definitions/grib2/tables/14/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.7.table b/definitions/grib2/tables/14/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/14/4.7.table +++ b/definitions/grib2/tables/14/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.8.table b/definitions/grib2/tables/14/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/14/4.8.table +++ b/definitions/grib2/tables/14/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.9.table b/definitions/grib2/tables/14/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/14/4.9.table +++ b/definitions/grib2/tables/14/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/4.91.table b/definitions/grib2/tables/14/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/14/4.91.table +++ b/definitions/grib2/tables/14/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/14/5.0.table b/definitions/grib2/tables/14/5.0.table index 2795336df..7d9a25c37 100644 --- a/definitions/grib2/tables/14/5.0.table +++ b/definitions/grib2/tables/14/5.0.table @@ -6,15 +6,10 @@ 4 4 Grid point data - IEEE floating point data 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) -# 42-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/14/5.1.table b/definitions/grib2/tables/14/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/14/5.1.table +++ b/definitions/grib2/tables/14/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/5.2.table b/definitions/grib2/tables/14/5.2.table index d12b46fbd..23764170f 100644 --- a/definitions/grib2/tables/14/5.2.table +++ b/definitions/grib2/tables/14/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1)=C1, f(n)=f(n-1)+C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/5.3.table b/definitions/grib2/tables/14/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/14/5.3.table +++ b/definitions/grib2/tables/14/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/5.4.table b/definitions/grib2/tables/14/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/14/5.4.table +++ b/definitions/grib2/tables/14/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/5.40.table b/definitions/grib2/tables/14/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/14/5.40.table +++ b/definitions/grib2/tables/14/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/14/5.5.table b/definitions/grib2/tables/14/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/14/5.5.table +++ b/definitions/grib2/tables/14/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/5.6.table b/definitions/grib2/tables/14/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/14/5.6.table +++ b/definitions/grib2/tables/14/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/14/5.7.table b/definitions/grib2/tables/14/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/14/5.7.table +++ b/definitions/grib2/tables/14/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/15/0.0.table b/definitions/grib2/tables/15/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/15/0.0.table +++ b/definitions/grib2/tables/15/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/1.2.table b/definitions/grib2/tables/15/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/15/1.2.table +++ b/definitions/grib2/tables/15/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/1.3.table b/definitions/grib2/tables/15/1.3.table index e7197fcb2..bbb081f20 100644 --- a/definitions/grib2/tables/15/1.3.table +++ b/definitions/grib2/tables/15/1.3.table @@ -9,6 +9,4 @@ 7 7 S2S test products 8 8 Uncertainties in ensembles of regional reanalysis project (UERRA) 9 9 Uncertainties in ensembles of regional reanalysis project test (UERRA) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/1.4.table b/definitions/grib2/tables/15/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/15/1.4.table +++ b/definitions/grib2/tables/15/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/15/1.5.table b/definitions/grib2/tables/15/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/15/1.5.table +++ b/definitions/grib2/tables/15/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/15/1.6.table b/definitions/grib2/tables/15/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/15/1.6.table +++ b/definitions/grib2/tables/15/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/3.0.table b/definitions/grib2/tables/15/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/15/3.0.table +++ b/definitions/grib2/tables/15/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/15/3.1.table b/definitions/grib2/tables/15/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/15/3.1.table +++ b/definitions/grib2/tables/15/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/15/3.10.table b/definitions/grib2/tables/15/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/15/3.10.table +++ b/definitions/grib2/tables/15/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/15/3.11.table b/definitions/grib2/tables/15/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/15/3.11.table +++ b/definitions/grib2/tables/15/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/15/3.15.table b/definitions/grib2/tables/15/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/15/3.15.table +++ b/definitions/grib2/tables/15/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/3.2.table b/definitions/grib2/tables/15/3.2.table index b9574a424..ed8eb276c 100644 --- a/definitions/grib2/tables/15/3.2.table +++ b/definitions/grib2/tables/15/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/3.20.table b/definitions/grib2/tables/15/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/15/3.20.table +++ b/definitions/grib2/tables/15/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/3.21.table b/definitions/grib2/tables/15/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/15/3.21.table +++ b/definitions/grib2/tables/15/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/3.3.table b/definitions/grib2/tables/15/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/15/3.3.table +++ b/definitions/grib2/tables/15/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/15/3.7.table b/definitions/grib2/tables/15/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/15/3.7.table +++ b/definitions/grib2/tables/15/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/15/3.8.table b/definitions/grib2/tables/15/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/15/3.8.table +++ b/definitions/grib2/tables/15/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/3.9.table b/definitions/grib2/tables/15/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/15/3.9.table +++ b/definitions/grib2/tables/15/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/15/4.0.table b/definitions/grib2/tables/15/4.0.table index b05d7ef13..f64f3990f 100644 --- a/definitions/grib2/tables/15/4.0.table +++ b/definitions/grib2/tables/15/4.0.table @@ -15,15 +15,12 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data -# 35-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -34,31 +31,22 @@ 46 46 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 49-50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time 52 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters -# 55-56 Reserved 57 57 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents based on a distribution function -# 58-59 Reserved 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 62-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/15/4.1.0.table b/definitions/grib2/tables/15/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/15/4.1.0.table +++ b/definitions/grib2/tables/15/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.1.1.table b/definitions/grib2/tables/15/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/15/4.1.1.table +++ b/definitions/grib2/tables/15/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.1.10.table b/definitions/grib2/tables/15/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/15/4.1.10.table +++ b/definitions/grib2/tables/15/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.1.2.table b/definitions/grib2/tables/15/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/15/4.1.2.table +++ b/definitions/grib2/tables/15/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.1.3.table b/definitions/grib2/tables/15/4.1.3.table index c1a1e267a..5102b92b2 100644 --- a/definitions/grib2/tables/15/4.1.3.table +++ b/definitions/grib2/tables/15/4.1.3.table @@ -1,6 +1,4 @@ # Code table 4.1 - Parameter category by product discipline 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.10.table b/definitions/grib2/tables/15/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/15/4.10.table +++ b/definitions/grib2/tables/15/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/15/4.11.table b/definitions/grib2/tables/15/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/15/4.11.table +++ b/definitions/grib2/tables/15/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.12.table b/definitions/grib2/tables/15/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/15/4.12.table +++ b/definitions/grib2/tables/15/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.13.table b/definitions/grib2/tables/15/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/15/4.13.table +++ b/definitions/grib2/tables/15/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.14.table b/definitions/grib2/tables/15/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/15/4.14.table +++ b/definitions/grib2/tables/15/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.15.table b/definitions/grib2/tables/15/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/15/4.15.table +++ b/definitions/grib2/tables/15/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.0.table b/definitions/grib2/tables/15/4.2.0.0.table index 24d21959d..1e5d530e6 100644 --- a/definitions/grib2/tables/15/4.2.0.0.table +++ b/definitions/grib2/tables/15/4.2.0.0.table @@ -21,6 +21,4 @@ 19 19 Turbulent transfer coefficient for heat (Numeric) 20 20 Turbulent diffusion coefficient for heat (m2/s) 21 21 Apparent temperature (K) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.1.table b/definitions/grib2/tables/15/4.2.0.1.table index 69386bbe2..7e5a85875 100644 --- a/definitions/grib2/tables/15/4.2.0.1.table +++ b/definitions/grib2/tables/15/4.2.0.1.table @@ -86,7 +86,6 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rainwater content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -105,6 +104,4 @@ 105 105 Number density of snow (m-3) 106 106 Number density of graupel (m-3) 107 107 Number density of hail (m-3) -# 108-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.13.table b/definitions/grib2/tables/15/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/15/4.2.0.13.table +++ b/definitions/grib2/tables/15/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.14.table b/definitions/grib2/tables/15/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/15/4.2.0.14.table +++ b/definitions/grib2/tables/15/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.15.table b/definitions/grib2/tables/15/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/15/4.2.0.15.table +++ b/definitions/grib2/tables/15/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.16.table b/definitions/grib2/tables/15/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/15/4.2.0.16.table +++ b/definitions/grib2/tables/15/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.18.table b/definitions/grib2/tables/15/4.2.0.18.table index 7e0a736eb..8a8bbc46a 100644 --- a/definitions/grib2/tables/15/4.2.0.18.table +++ b/definitions/grib2/tables/15/4.2.0.18.table @@ -13,6 +13,4 @@ 11 11 Wet deposition (Bq m-2) 12 12 Dry deposition (Bq m-2) 13 13 Total deposition (wet + dry) (Bq m-2) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.19.table b/definitions/grib2/tables/15/4.2.0.19.table index d2beef083..49e1b1a7e 100644 --- a/definitions/grib2/tables/15/4.2.0.19.table +++ b/definitions/grib2/tables/15/4.2.0.19.table @@ -27,6 +27,4 @@ 25 25 Weather (Code table 4.225) 26 26 Convective outlook (Code table 4.224) 27 27 Icing scenario (Code table 4.227) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.190.table b/definitions/grib2/tables/15/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/15/4.2.0.190.table +++ b/definitions/grib2/tables/15/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.191.table b/definitions/grib2/tables/15/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/15/4.2.0.191.table +++ b/definitions/grib2/tables/15/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.2.table b/definitions/grib2/tables/15/4.2.0.2.table index 7bd1509f5..57f55079c 100644 --- a/definitions/grib2/tables/15/4.2.0.2.table +++ b/definitions/grib2/tables/15/4.2.0.2.table @@ -38,6 +38,4 @@ 36 36 Amplitude function for Rossby wave envelope for meridional wind (m/s) 37 37 Northward turbulent surface stress (N m-2 s) 38 38 Eastward turbulent surface stress (N m-2 s) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.20.table b/definitions/grib2/tables/15/4.2.0.20.table index df9ccc184..697e8e2d3 100644 --- a/definitions/grib2/tables/15/4.2.0.20.table +++ b/definitions/grib2/tables/15/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -25,7 +24,6 @@ 57 57 Total yearly average burden of the atmosphere (mol) 58 58 Total yearly averaged atmospheric loss (mol/s) 59 59 Aerosol number concentration (m-3) -# 60-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -37,6 +35,4 @@ 108 108 Aerosol lidar backscatter from the ground (m-1 sr-1) 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.3.table b/definitions/grib2/tables/15/4.2.0.3.table index e1a68bfc5..5aed1a408 100644 --- a/definitions/grib2/tables/15/4.2.0.3.table +++ b/definitions/grib2/tables/15/4.2.0.3.table @@ -26,6 +26,4 @@ 24 24 Anisotropy of sub-gridscale orography (Numeric) 25 25 Natural logarithm of pressure in Pa (Numeric) 26 26 Exner pressure (Numeric) -# 27-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.4.table b/definitions/grib2/tables/15/4.2.0.4.table index 03b5cea38..4b0159cd4 100644 --- a/definitions/grib2/tables/15/4.2.0.4.table +++ b/definitions/grib2/tables/15/4.2.0.4.table @@ -12,9 +12,6 @@ 10 10 Photosynthetically active radiation (W m-2) 11 11 Net short-wave radiation flux, clear sky (W m-2) 12 12 Downward UV radiation (W m-2) -# 13-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.5.table b/definitions/grib2/tables/15/4.2.0.5.table index b9084509a..1cb655f94 100644 --- a/definitions/grib2/tables/15/4.2.0.5.table +++ b/definitions/grib2/tables/15/4.2.0.5.table @@ -7,6 +7,4 @@ 5 5 Net long-wave radiation flux (W m-2) 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.6.table b/definitions/grib2/tables/15/4.2.0.6.table index 8f1574d46..0c172f89c 100644 --- a/definitions/grib2/tables/15/4.2.0.6.table +++ b/definitions/grib2/tables/15/4.2.0.6.table @@ -39,6 +39,4 @@ 37 37 Fraction of convective precipitation cover (Proportion) 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) -# 40-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.0.7.table b/definitions/grib2/tables/15/4.2.0.7.table index 8a2b85fb9..094a07a7c 100644 --- a/definitions/grib2/tables/15/4.2.0.7.table +++ b/definitions/grib2/tables/15/4.2.0.7.table @@ -15,6 +15,4 @@ 13 13 Showalter index (K) 14 14 Reserved 15 15 Updraft helicity (m2 s-2) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.1.0.table b/definitions/grib2/tables/15/4.2.1.0.table index f455c3365..13e09c639 100644 --- a/definitions/grib2/tables/15/4.2.1.0.table +++ b/definitions/grib2/tables/15/4.2.1.0.table @@ -7,6 +7,4 @@ 5 5 Baseflow-groundwater runoff (kg m-2) 6 6 Storm surface runoff (kg m-2) 7 7 Discharge from rivers or streams (m3/s) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.1.1.table b/definitions/grib2/tables/15/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/15/4.2.1.1.table +++ b/definitions/grib2/tables/15/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.10.0.table b/definitions/grib2/tables/15/4.2.10.0.table index 3611abd9a..5014980aa 100644 --- a/definitions/grib2/tables/15/4.2.10.0.table +++ b/definitions/grib2/tables/15/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (/s) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.10.1.table b/definitions/grib2/tables/15/4.2.10.1.table index f0a073c00..c172554a9 100644 --- a/definitions/grib2/tables/15/4.2.10.1.table +++ b/definitions/grib2/tables/15/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.10.191.table b/definitions/grib2/tables/15/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/15/4.2.10.191.table +++ b/definitions/grib2/tables/15/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.10.2.table b/definitions/grib2/tables/15/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/15/4.2.10.2.table +++ b/definitions/grib2/tables/15/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.10.3.table b/definitions/grib2/tables/15/4.2.10.3.table index 937720c93..71f0770e8 100644 --- a/definitions/grib2/tables/15/4.2.10.3.table +++ b/definitions/grib2/tables/15/4.2.10.3.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.10.4.table b/definitions/grib2/tables/15/4.2.10.4.table index d5615ae26..15cc8b4b3 100644 --- a/definitions/grib2/tables/15/4.2.10.4.table +++ b/definitions/grib2/tables/15/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.2.0.table b/definitions/grib2/tables/15/4.2.2.0.table index b253cac22..090bbb64a 100644 --- a/definitions/grib2/tables/15/4.2.2.0.table +++ b/definitions/grib2/tables/15/4.2.2.0.table @@ -38,6 +38,4 @@ 36 36 Tile fraction (Proportion) 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.2.3.table b/definitions/grib2/tables/15/4.2.2.3.table index 2b1d0ac38..53e991677 100644 --- a/definitions/grib2/tables/15/4.2.2.3.table +++ b/definitions/grib2/tables/15/4.2.2.3.table @@ -23,6 +23,4 @@ 21 21 Soil ice (kg m-3) 22 22 Column-integrated soil ice (kg m-2) 23 23 Liquid water in snow pack (kg m-2) -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.2.4.table b/definitions/grib2/tables/15/4.2.2.4.table index c8b877df6..8562742b1 100644 --- a/definitions/grib2/tables/15/4.2.2.4.table +++ b/definitions/grib2/tables/15/4.2.2.4.table @@ -4,6 +4,4 @@ 2 2 Haines Index (Numeric) 3 3 Fire burned area (%) 4 4 Fosberg index (Numeric) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.3.0.table b/definitions/grib2/tables/15/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/15/4.2.3.0.table +++ b/definitions/grib2/tables/15/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.2.3.1.table b/definitions/grib2/tables/15/4.2.3.1.table index bc9eaab0d..0c57e41ff 100644 --- a/definitions/grib2/tables/15/4.2.3.1.table +++ b/definitions/grib2/tables/15/4.2.3.1.table @@ -23,6 +23,4 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.201.table b/definitions/grib2/tables/15/4.201.table index fa173c4e0..7787ce735 100644 --- a/definitions/grib2/tables/15/4.201.table +++ b/definitions/grib2/tables/15/4.201.table @@ -10,6 +10,4 @@ 8 8 Ice pellets 9 9 Graupel 10 10 Hail -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.202.table b/definitions/grib2/tables/15/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/15/4.202.table +++ b/definitions/grib2/tables/15/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.203.table b/definitions/grib2/tables/15/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/15/4.203.table +++ b/definitions/grib2/tables/15/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.204.table b/definitions/grib2/tables/15/4.204.table index ffbd89502..2084e77dc 100644 --- a/definitions/grib2/tables/15/4.204.table +++ b/definitions/grib2/tables/15/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (16-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.205.table b/definitions/grib2/tables/15/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/15/4.205.table +++ b/definitions/grib2/tables/15/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.206.table b/definitions/grib2/tables/15/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/15/4.206.table +++ b/definitions/grib2/tables/15/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.207.table b/definitions/grib2/tables/15/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/15/4.207.table +++ b/definitions/grib2/tables/15/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.208.table b/definitions/grib2/tables/15/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/15/4.208.table +++ b/definitions/grib2/tables/15/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.209.table b/definitions/grib2/tables/15/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/15/4.209.table +++ b/definitions/grib2/tables/15/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.210.table b/definitions/grib2/tables/15/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/15/4.210.table +++ b/definitions/grib2/tables/15/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.211.table b/definitions/grib2/tables/15/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/15/4.211.table +++ b/definitions/grib2/tables/15/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.212.table b/definitions/grib2/tables/15/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/15/4.212.table +++ b/definitions/grib2/tables/15/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.213.table b/definitions/grib2/tables/15/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/15/4.213.table +++ b/definitions/grib2/tables/15/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.215.table b/definitions/grib2/tables/15/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/15/4.215.table +++ b/definitions/grib2/tables/15/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.216.table b/definitions/grib2/tables/15/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/15/4.216.table +++ b/definitions/grib2/tables/15/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/15/4.217.table b/definitions/grib2/tables/15/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/15/4.217.table +++ b/definitions/grib2/tables/15/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.218.table b/definitions/grib2/tables/15/4.218.table index fdaa3ea31..e05d8c010 100644 --- a/definitions/grib2/tables/15/4.218.table +++ b/definitions/grib2/tables/15/4.218.table @@ -18,7 +18,6 @@ 16 16 Barren desert 17 17 Water bodies 18 18 Tundra -# 19-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -33,6 +32,4 @@ 108 108 High cloud/Cirrus 109 109 High cloud/unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.219.table b/definitions/grib2/tables/15/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/15/4.219.table +++ b/definitions/grib2/tables/15/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.220.table b/definitions/grib2/tables/15/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/15/4.220.table +++ b/definitions/grib2/tables/15/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.221.table b/definitions/grib2/tables/15/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/15/4.221.table +++ b/definitions/grib2/tables/15/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.222.table b/definitions/grib2/tables/15/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/15/4.222.table +++ b/definitions/grib2/tables/15/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.224.table b/definitions/grib2/tables/15/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/15/4.224.table +++ b/definitions/grib2/tables/15/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/15/4.227.table b/definitions/grib2/tables/15/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/15/4.227.table +++ b/definitions/grib2/tables/15/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/15/4.240.table b/definitions/grib2/tables/15/4.240.table index f8bcdf7b8..283856931 100644 --- a/definitions/grib2/tables/15/4.240.table +++ b/definitions/grib2/tables/15/4.240.table @@ -7,6 +7,4 @@ 5 5 Log-normal distribution with spatially variable number density, mean diameter and variance 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) -# 8-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/15/4.241.table b/definitions/grib2/tables/15/4.241.table index 6ce0a5ea7..50b78fa8d 100644 --- a/definitions/grib2/tables/15/4.241.table +++ b/definitions/grib2/tables/15/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.242.table b/definitions/grib2/tables/15/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/15/4.242.table +++ b/definitions/grib2/tables/15/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/15/4.243.table b/definitions/grib2/tables/15/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/15/4.243.table +++ b/definitions/grib2/tables/15/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/15/4.3.table b/definitions/grib2/tables/15/4.3.table index 46e498c5f..c71b29cd1 100644 --- a/definitions/grib2/tables/15/4.3.table +++ b/definitions/grib2/tables/15/4.3.table @@ -15,6 +15,4 @@ 13 13 Post-processed forecast 14 14 Nowcast 15 15 Hindcast -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.4.table b/definitions/grib2/tables/15/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/15/4.4.table +++ b/definitions/grib2/tables/15/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.5.table b/definitions/grib2/tables/15/4.5.table index d1a76825a..900ec1d9d 100644 --- a/definitions/grib2/tables/15/4.5.table +++ b/definitions/grib2/tables/15/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -# 21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -30,13 +28,10 @@ 112 112 Reserved 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) -# 115-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 120-149 Reserved 150 150 Generalized vertical height coordinate -# 151-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom @@ -45,8 +40,6 @@ 165 165 Bottom of sediment layer penetrated by thermal wave 166 sfc Mixing layer 167 167 Bottom of root zone -# 168-173 Reserved -# 168-169 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river @@ -58,6 +51,4 @@ 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.6.table b/definitions/grib2/tables/15/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/15/4.6.table +++ b/definitions/grib2/tables/15/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.7.table b/definitions/grib2/tables/15/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/15/4.7.table +++ b/definitions/grib2/tables/15/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.8.table b/definitions/grib2/tables/15/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/15/4.8.table +++ b/definitions/grib2/tables/15/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.9.table b/definitions/grib2/tables/15/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/15/4.9.table +++ b/definitions/grib2/tables/15/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/4.91.table b/definitions/grib2/tables/15/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/15/4.91.table +++ b/definitions/grib2/tables/15/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/15/5.0.table b/definitions/grib2/tables/15/5.0.table index 2795336df..7d9a25c37 100644 --- a/definitions/grib2/tables/15/5.0.table +++ b/definitions/grib2/tables/15/5.0.table @@ -6,15 +6,10 @@ 4 4 Grid point data - IEEE floating point data 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) -# 42-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/15/5.1.table b/definitions/grib2/tables/15/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/15/5.1.table +++ b/definitions/grib2/tables/15/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/5.2.table b/definitions/grib2/tables/15/5.2.table index d12b46fbd..23764170f 100644 --- a/definitions/grib2/tables/15/5.2.table +++ b/definitions/grib2/tables/15/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1)=C1, f(n)=f(n-1)+C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/5.3.table b/definitions/grib2/tables/15/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/15/5.3.table +++ b/definitions/grib2/tables/15/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/5.4.table b/definitions/grib2/tables/15/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/15/5.4.table +++ b/definitions/grib2/tables/15/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/5.40.table b/definitions/grib2/tables/15/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/15/5.40.table +++ b/definitions/grib2/tables/15/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/15/5.5.table b/definitions/grib2/tables/15/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/15/5.5.table +++ b/definitions/grib2/tables/15/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/5.6.table b/definitions/grib2/tables/15/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/15/5.6.table +++ b/definitions/grib2/tables/15/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/15/5.7.table b/definitions/grib2/tables/15/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/15/5.7.table +++ b/definitions/grib2/tables/15/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/16/0.0.table b/definitions/grib2/tables/16/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/16/0.0.table +++ b/definitions/grib2/tables/16/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/1.2.table b/definitions/grib2/tables/16/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/16/1.2.table +++ b/definitions/grib2/tables/16/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/1.3.table b/definitions/grib2/tables/16/1.3.table index e7197fcb2..bbb081f20 100644 --- a/definitions/grib2/tables/16/1.3.table +++ b/definitions/grib2/tables/16/1.3.table @@ -9,6 +9,4 @@ 7 7 S2S test products 8 8 Uncertainties in ensembles of regional reanalysis project (UERRA) 9 9 Uncertainties in ensembles of regional reanalysis project test (UERRA) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/1.4.table b/definitions/grib2/tables/16/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/16/1.4.table +++ b/definitions/grib2/tables/16/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/16/1.5.table b/definitions/grib2/tables/16/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/16/1.5.table +++ b/definitions/grib2/tables/16/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/16/1.6.table b/definitions/grib2/tables/16/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/16/1.6.table +++ b/definitions/grib2/tables/16/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/3.0.table b/definitions/grib2/tables/16/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/16/3.0.table +++ b/definitions/grib2/tables/16/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/16/3.1.table b/definitions/grib2/tables/16/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/16/3.1.table +++ b/definitions/grib2/tables/16/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/16/3.10.table b/definitions/grib2/tables/16/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/16/3.10.table +++ b/definitions/grib2/tables/16/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/16/3.11.table b/definitions/grib2/tables/16/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/16/3.11.table +++ b/definitions/grib2/tables/16/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/16/3.15.table b/definitions/grib2/tables/16/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/16/3.15.table +++ b/definitions/grib2/tables/16/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/3.2.table b/definitions/grib2/tables/16/3.2.table index b9574a424..ed8eb276c 100644 --- a/definitions/grib2/tables/16/3.2.table +++ b/definitions/grib2/tables/16/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/3.20.table b/definitions/grib2/tables/16/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/16/3.20.table +++ b/definitions/grib2/tables/16/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/3.21.table b/definitions/grib2/tables/16/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/16/3.21.table +++ b/definitions/grib2/tables/16/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/3.3.table b/definitions/grib2/tables/16/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/16/3.3.table +++ b/definitions/grib2/tables/16/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/16/3.7.table b/definitions/grib2/tables/16/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/16/3.7.table +++ b/definitions/grib2/tables/16/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/16/3.8.table b/definitions/grib2/tables/16/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/16/3.8.table +++ b/definitions/grib2/tables/16/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/3.9.table b/definitions/grib2/tables/16/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/16/3.9.table +++ b/definitions/grib2/tables/16/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/16/4.0.table b/definitions/grib2/tables/16/4.0.table index eef83c7c3..1dbf0c57e 100644 --- a/definitions/grib2/tables/16/4.0.table +++ b/definitions/grib2/tables/16/4.0.table @@ -15,15 +15,12 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data -# 35-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -34,7 +31,6 @@ 46 46 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 49-50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time 52 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time @@ -42,24 +38,17 @@ 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 56 56 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters 57 57 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents based on a distribution function -# 58-59 Reserved 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 62-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/16/4.1.0.table b/definitions/grib2/tables/16/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/16/4.1.0.table +++ b/definitions/grib2/tables/16/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.1.1.table b/definitions/grib2/tables/16/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/16/4.1.1.table +++ b/definitions/grib2/tables/16/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.1.10.table b/definitions/grib2/tables/16/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/16/4.1.10.table +++ b/definitions/grib2/tables/16/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.1.2.table b/definitions/grib2/tables/16/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/16/4.1.2.table +++ b/definitions/grib2/tables/16/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.1.3.table b/definitions/grib2/tables/16/4.1.3.table index 210b39fd5..9760aa388 100644 --- a/definitions/grib2/tables/16/4.1.3.table +++ b/definitions/grib2/tables/16/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.10.table b/definitions/grib2/tables/16/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/16/4.10.table +++ b/definitions/grib2/tables/16/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/16/4.11.table b/definitions/grib2/tables/16/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/16/4.11.table +++ b/definitions/grib2/tables/16/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.12.table b/definitions/grib2/tables/16/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/16/4.12.table +++ b/definitions/grib2/tables/16/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.13.table b/definitions/grib2/tables/16/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/16/4.13.table +++ b/definitions/grib2/tables/16/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.14.table b/definitions/grib2/tables/16/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/16/4.14.table +++ b/definitions/grib2/tables/16/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.15.table b/definitions/grib2/tables/16/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/16/4.15.table +++ b/definitions/grib2/tables/16/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.0.table b/definitions/grib2/tables/16/4.2.0.0.table index 3a285255f..2cafe98fa 100644 --- a/definitions/grib2/tables/16/4.2.0.0.table +++ b/definitions/grib2/tables/16/4.2.0.0.table @@ -27,6 +27,4 @@ 25 25 Temperature tendency due to long-wave radiation, clear sky (K s-1) 26 26 Temperature tendency due to parameterizations (K s-1) 27 27 Wet bulb temperature (K) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.1.table b/definitions/grib2/tables/16/4.2.0.1.table index 1ecbf240a..a4bc9adbf 100644 --- a/definitions/grib2/tables/16/4.2.0.1.table +++ b/definitions/grib2/tables/16/4.2.0.1.table @@ -86,7 +86,6 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rainwater content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -106,6 +105,4 @@ 106 106 Number density of graupel (m-3) 107 107 Number density of hail (m-3) 108 108 Specific humidity tendency due to parameterizations (kg kg-1 s-1) -# 109-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.13.table b/definitions/grib2/tables/16/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/16/4.2.0.13.table +++ b/definitions/grib2/tables/16/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.14.table b/definitions/grib2/tables/16/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/16/4.2.0.14.table +++ b/definitions/grib2/tables/16/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.15.table b/definitions/grib2/tables/16/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/16/4.2.0.15.table +++ b/definitions/grib2/tables/16/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.16.table b/definitions/grib2/tables/16/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/16/4.2.0.16.table +++ b/definitions/grib2/tables/16/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.18.table b/definitions/grib2/tables/16/4.2.0.18.table index 7e0a736eb..8a8bbc46a 100644 --- a/definitions/grib2/tables/16/4.2.0.18.table +++ b/definitions/grib2/tables/16/4.2.0.18.table @@ -13,6 +13,4 @@ 11 11 Wet deposition (Bq m-2) 12 12 Dry deposition (Bq m-2) 13 13 Total deposition (wet + dry) (Bq m-2) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.19.table b/definitions/grib2/tables/16/4.2.0.19.table index e51b670a0..9b085a4ca 100644 --- a/definitions/grib2/tables/16/4.2.0.19.table +++ b/definitions/grib2/tables/16/4.2.0.19.table @@ -28,6 +28,4 @@ 26 26 Convective outlook (Code table 4.224) 27 27 Icing scenario (Code table 4.227) 28 28 Mountain wave turbulence (eddy dissipation rate) (m2/3 s-1) -# 29-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.190.table b/definitions/grib2/tables/16/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/16/4.2.0.190.table +++ b/definitions/grib2/tables/16/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.191.table b/definitions/grib2/tables/16/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/16/4.2.0.191.table +++ b/definitions/grib2/tables/16/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.2.table b/definitions/grib2/tables/16/4.2.0.2.table index 906cf6205..be445b68d 100644 --- a/definitions/grib2/tables/16/4.2.0.2.table +++ b/definitions/grib2/tables/16/4.2.0.2.table @@ -44,6 +44,4 @@ 42 42 v-component of geostrophic wind (m s-1) 43 43 Geostrophic wind direction (degree true) 44 44 Geostrophic wind speed (m s-1) -# 45-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.20.table b/definitions/grib2/tables/16/4.2.0.20.table index df9ccc184..697e8e2d3 100644 --- a/definitions/grib2/tables/16/4.2.0.20.table +++ b/definitions/grib2/tables/16/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -25,7 +24,6 @@ 57 57 Total yearly average burden of the atmosphere (mol) 58 58 Total yearly averaged atmospheric loss (mol/s) 59 59 Aerosol number concentration (m-3) -# 60-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -37,6 +35,4 @@ 108 108 Aerosol lidar backscatter from the ground (m-1 sr-1) 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.3.table b/definitions/grib2/tables/16/4.2.0.3.table index 17e7f204f..6d397ebdb 100644 --- a/definitions/grib2/tables/16/4.2.0.3.table +++ b/definitions/grib2/tables/16/4.2.0.3.table @@ -30,6 +30,4 @@ 28 28 Downdraught mass flux (kg m-2 s-1) 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) -# 31-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.4.table b/definitions/grib2/tables/16/4.2.0.4.table index da327a450..7612473a1 100644 --- a/definitions/grib2/tables/16/4.2.0.4.table +++ b/definitions/grib2/tables/16/4.2.0.4.table @@ -14,9 +14,6 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short wave radiation flux (W m-2) 14 14 Diffuse short wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.5.table b/definitions/grib2/tables/16/4.2.0.5.table index b9084509a..1cb655f94 100644 --- a/definitions/grib2/tables/16/4.2.0.5.table +++ b/definitions/grib2/tables/16/4.2.0.5.table @@ -7,6 +7,4 @@ 5 5 Net long-wave radiation flux (W m-2) 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.6.table b/definitions/grib2/tables/16/4.2.0.6.table index 0450ec194..4e5d7ee4c 100644 --- a/definitions/grib2/tables/16/4.2.0.6.table +++ b/definitions/grib2/tables/16/4.2.0.6.table @@ -40,10 +40,7 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.0.7.table b/definitions/grib2/tables/16/4.2.0.7.table index 2bf21255d..91d09569f 100644 --- a/definitions/grib2/tables/16/4.2.0.7.table +++ b/definitions/grib2/tables/16/4.2.0.7.table @@ -18,6 +18,4 @@ 16 16 Bulk Richardson number (Numeric) 17 17 Gradient Richardson number (Numeric) 18 18 Flux Richardson number (Numeric) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.1.0.table b/definitions/grib2/tables/16/4.2.1.0.table index e6f23655a..e731779b9 100644 --- a/definitions/grib2/tables/16/4.2.1.0.table +++ b/definitions/grib2/tables/16/4.2.1.0.table @@ -15,6 +15,4 @@ 13 13 Depth of water on soil surface (kg m-2) 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.1.1.table b/definitions/grib2/tables/16/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/16/4.2.1.1.table +++ b/definitions/grib2/tables/16/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.10.0.table b/definitions/grib2/tables/16/4.2.10.0.table index 3611abd9a..5014980aa 100644 --- a/definitions/grib2/tables/16/4.2.10.0.table +++ b/definitions/grib2/tables/16/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (/s) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.10.1.table b/definitions/grib2/tables/16/4.2.10.1.table index f0a073c00..c172554a9 100644 --- a/definitions/grib2/tables/16/4.2.10.1.table +++ b/definitions/grib2/tables/16/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.10.191.table b/definitions/grib2/tables/16/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/16/4.2.10.191.table +++ b/definitions/grib2/tables/16/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.10.2.table b/definitions/grib2/tables/16/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/16/4.2.10.2.table +++ b/definitions/grib2/tables/16/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.10.3.table b/definitions/grib2/tables/16/4.2.10.3.table index 937720c93..71f0770e8 100644 --- a/definitions/grib2/tables/16/4.2.10.3.table +++ b/definitions/grib2/tables/16/4.2.10.3.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.10.4.table b/definitions/grib2/tables/16/4.2.10.4.table index d5615ae26..15cc8b4b3 100644 --- a/definitions/grib2/tables/16/4.2.10.4.table +++ b/definitions/grib2/tables/16/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.2.0.table b/definitions/grib2/tables/16/4.2.2.0.table index b253cac22..090bbb64a 100644 --- a/definitions/grib2/tables/16/4.2.2.0.table +++ b/definitions/grib2/tables/16/4.2.2.0.table @@ -38,6 +38,4 @@ 36 36 Tile fraction (Proportion) 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.2.3.table b/definitions/grib2/tables/16/4.2.2.3.table index 6cb8eb7af..9ae874aac 100644 --- a/definitions/grib2/tables/16/4.2.2.3.table +++ b/definitions/grib2/tables/16/4.2.2.3.table @@ -25,6 +25,4 @@ 23 23 Liquid water in snow pack (kg m-2) 24 24 Frost index (K day-1) 25 25 Snow depth at elevation bands (kg m-2) -# 26-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.2.4.table b/definitions/grib2/tables/16/4.2.2.4.table index cb3db6f78..285b056b9 100644 --- a/definitions/grib2/tables/16/4.2.2.4.table +++ b/definitions/grib2/tables/16/4.2.2.4.table @@ -11,6 +11,4 @@ 9 9 Initial fire spread index (Canadian forest service) (Numeric) 10 10 Fire build up index (Canadian forest service) (Numeric) 11 11 Fire daily severity rating (Canadian forest service) (Numeric) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.3.0.table b/definitions/grib2/tables/16/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/16/4.2.3.0.table +++ b/definitions/grib2/tables/16/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.2.3.1.table b/definitions/grib2/tables/16/4.2.3.1.table index 04cdde1f1..9ce359f2e 100644 --- a/definitions/grib2/tables/16/4.2.3.1.table +++ b/definitions/grib2/tables/16/4.2.3.1.table @@ -23,10 +23,7 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (Numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (Numeric) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.201.table b/definitions/grib2/tables/16/4.201.table index fa173c4e0..7787ce735 100644 --- a/definitions/grib2/tables/16/4.201.table +++ b/definitions/grib2/tables/16/4.201.table @@ -10,6 +10,4 @@ 8 8 Ice pellets 9 9 Graupel 10 10 Hail -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.202.table b/definitions/grib2/tables/16/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/16/4.202.table +++ b/definitions/grib2/tables/16/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.203.table b/definitions/grib2/tables/16/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/16/4.203.table +++ b/definitions/grib2/tables/16/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.204.table b/definitions/grib2/tables/16/4.204.table index ffbd89502..2084e77dc 100644 --- a/definitions/grib2/tables/16/4.204.table +++ b/definitions/grib2/tables/16/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (16-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.205.table b/definitions/grib2/tables/16/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/16/4.205.table +++ b/definitions/grib2/tables/16/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.206.table b/definitions/grib2/tables/16/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/16/4.206.table +++ b/definitions/grib2/tables/16/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.207.table b/definitions/grib2/tables/16/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/16/4.207.table +++ b/definitions/grib2/tables/16/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.208.table b/definitions/grib2/tables/16/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/16/4.208.table +++ b/definitions/grib2/tables/16/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.209.table b/definitions/grib2/tables/16/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/16/4.209.table +++ b/definitions/grib2/tables/16/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.210.table b/definitions/grib2/tables/16/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/16/4.210.table +++ b/definitions/grib2/tables/16/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.211.table b/definitions/grib2/tables/16/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/16/4.211.table +++ b/definitions/grib2/tables/16/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.212.table b/definitions/grib2/tables/16/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/16/4.212.table +++ b/definitions/grib2/tables/16/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.213.table b/definitions/grib2/tables/16/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/16/4.213.table +++ b/definitions/grib2/tables/16/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.215.table b/definitions/grib2/tables/16/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/16/4.215.table +++ b/definitions/grib2/tables/16/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.216.table b/definitions/grib2/tables/16/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/16/4.216.table +++ b/definitions/grib2/tables/16/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/16/4.217.table b/definitions/grib2/tables/16/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/16/4.217.table +++ b/definitions/grib2/tables/16/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.218.table b/definitions/grib2/tables/16/4.218.table index 0ad5f49ee..3765ee64d 100644 --- a/definitions/grib2/tables/16/4.218.table +++ b/definitions/grib2/tables/16/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multi-layered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -39,6 +38,4 @@ 108 108 High cloud/Cirrus 109 109 High cloud/unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.219.table b/definitions/grib2/tables/16/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/16/4.219.table +++ b/definitions/grib2/tables/16/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.220.table b/definitions/grib2/tables/16/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/16/4.220.table +++ b/definitions/grib2/tables/16/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.221.table b/definitions/grib2/tables/16/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/16/4.221.table +++ b/definitions/grib2/tables/16/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.222.table b/definitions/grib2/tables/16/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/16/4.222.table +++ b/definitions/grib2/tables/16/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.224.table b/definitions/grib2/tables/16/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/16/4.224.table +++ b/definitions/grib2/tables/16/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/16/4.227.table b/definitions/grib2/tables/16/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/16/4.227.table +++ b/definitions/grib2/tables/16/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/16/4.240.table b/definitions/grib2/tables/16/4.240.table index 1838acfc0..11711251d 100644 --- a/definitions/grib2/tables/16/4.240.table +++ b/definitions/grib2/tables/16/4.240.table @@ -7,6 +7,4 @@ 5 5 Log-normal distribution with spatially variable number density, mean diameter and variance 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) -# 8-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/16/4.241.table b/definitions/grib2/tables/16/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/16/4.241.table +++ b/definitions/grib2/tables/16/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/16/4.242.table b/definitions/grib2/tables/16/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/16/4.242.table +++ b/definitions/grib2/tables/16/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/16/4.243.table b/definitions/grib2/tables/16/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/16/4.243.table +++ b/definitions/grib2/tables/16/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/16/4.3.table b/definitions/grib2/tables/16/4.3.table index bcf8102a1..4c439e5e7 100644 --- a/definitions/grib2/tables/16/4.3.table +++ b/definitions/grib2/tables/16/4.3.table @@ -17,6 +17,4 @@ 15 15 Hindcast 16 16 Physical retrieval 17 17 Regression analysis -# 18-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.4.table b/definitions/grib2/tables/16/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/16/4.4.table +++ b/definitions/grib2/tables/16/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.5.table b/definitions/grib2/tables/16/4.5.table index 8d4ae8d1a..7479325f4 100644 --- a/definitions/grib2/tables/16/4.5.table +++ b/definitions/grib2/tables/16/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere (-) 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -# 21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -30,13 +28,10 @@ 112 112 Reserved 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) -# 115-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate -# 151-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -45,7 +40,6 @@ 165 165 Bottom of sediment layer penetrated by thermal wave (-) 166 sfc Mixing layer (-) 167 167 Bottom of root zone (-) -# 168-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river @@ -57,6 +51,4 @@ 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.6.table b/definitions/grib2/tables/16/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/16/4.6.table +++ b/definitions/grib2/tables/16/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.7.table b/definitions/grib2/tables/16/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/16/4.7.table +++ b/definitions/grib2/tables/16/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.8.table b/definitions/grib2/tables/16/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/16/4.8.table +++ b/definitions/grib2/tables/16/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.9.table b/definitions/grib2/tables/16/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/16/4.9.table +++ b/definitions/grib2/tables/16/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/4.91.table b/definitions/grib2/tables/16/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/16/4.91.table +++ b/definitions/grib2/tables/16/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/16/5.0.table b/definitions/grib2/tables/16/5.0.table index 2795336df..7d9a25c37 100644 --- a/definitions/grib2/tables/16/5.0.table +++ b/definitions/grib2/tables/16/5.0.table @@ -6,15 +6,10 @@ 4 4 Grid point data - IEEE floating point data 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) -# 42-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/16/5.1.table b/definitions/grib2/tables/16/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/16/5.1.table +++ b/definitions/grib2/tables/16/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/5.2.table b/definitions/grib2/tables/16/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/16/5.2.table +++ b/definitions/grib2/tables/16/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/5.3.table b/definitions/grib2/tables/16/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/16/5.3.table +++ b/definitions/grib2/tables/16/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/5.4.table b/definitions/grib2/tables/16/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/16/5.4.table +++ b/definitions/grib2/tables/16/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/5.40.table b/definitions/grib2/tables/16/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/16/5.40.table +++ b/definitions/grib2/tables/16/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/16/5.5.table b/definitions/grib2/tables/16/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/16/5.5.table +++ b/definitions/grib2/tables/16/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/5.6.table b/definitions/grib2/tables/16/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/16/5.6.table +++ b/definitions/grib2/tables/16/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/16/5.7.table b/definitions/grib2/tables/16/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/16/5.7.table +++ b/definitions/grib2/tables/16/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/17/0.0.table b/definitions/grib2/tables/17/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/17/0.0.table +++ b/definitions/grib2/tables/17/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/1.2.table b/definitions/grib2/tables/17/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/17/1.2.table +++ b/definitions/grib2/tables/17/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/1.3.table b/definitions/grib2/tables/17/1.3.table index c1a9a7b9d..7b5690caa 100644 --- a/definitions/grib2/tables/17/1.3.table +++ b/definitions/grib2/tables/17/1.3.table @@ -9,6 +9,4 @@ 7 7 S2S test products 8 8 Uncertainties in Ensembles of Regional ReAnalyses project (UERRA) 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/1.4.table b/definitions/grib2/tables/17/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/17/1.4.table +++ b/definitions/grib2/tables/17/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/17/1.5.table b/definitions/grib2/tables/17/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/17/1.5.table +++ b/definitions/grib2/tables/17/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/17/1.6.table b/definitions/grib2/tables/17/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/17/1.6.table +++ b/definitions/grib2/tables/17/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/3.0.table b/definitions/grib2/tables/17/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/17/3.0.table +++ b/definitions/grib2/tables/17/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/17/3.1.table b/definitions/grib2/tables/17/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/17/3.1.table +++ b/definitions/grib2/tables/17/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/17/3.10.table b/definitions/grib2/tables/17/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/17/3.10.table +++ b/definitions/grib2/tables/17/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/17/3.11.table b/definitions/grib2/tables/17/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/17/3.11.table +++ b/definitions/grib2/tables/17/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/17/3.15.table b/definitions/grib2/tables/17/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/17/3.15.table +++ b/definitions/grib2/tables/17/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/3.2.table b/definitions/grib2/tables/17/3.2.table index b9574a424..ed8eb276c 100644 --- a/definitions/grib2/tables/17/3.2.table +++ b/definitions/grib2/tables/17/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/3.20.table b/definitions/grib2/tables/17/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/17/3.20.table +++ b/definitions/grib2/tables/17/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/3.21.table b/definitions/grib2/tables/17/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/17/3.21.table +++ b/definitions/grib2/tables/17/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/3.3.table b/definitions/grib2/tables/17/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/17/3.3.table +++ b/definitions/grib2/tables/17/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/17/3.7.table b/definitions/grib2/tables/17/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/17/3.7.table +++ b/definitions/grib2/tables/17/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/17/3.8.table b/definitions/grib2/tables/17/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/17/3.8.table +++ b/definitions/grib2/tables/17/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/3.9.table b/definitions/grib2/tables/17/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/17/3.9.table +++ b/definitions/grib2/tables/17/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/17/4.0.table b/definitions/grib2/tables/17/4.0.table index ff8a54b04..73504e55a 100644 --- a/definitions/grib2/tables/17/4.0.table +++ b/definitions/grib2/tables/17/4.0.table @@ -15,15 +15,12 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data -# 35-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -34,7 +31,6 @@ 46 46 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 49-50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time 52 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time @@ -42,24 +38,17 @@ 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 56 56 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters 57 57 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents based on a distribution function -# 58-59 Reserved 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 62-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/17/4.1.0.table b/definitions/grib2/tables/17/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/17/4.1.0.table +++ b/definitions/grib2/tables/17/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.1.1.table b/definitions/grib2/tables/17/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/17/4.1.1.table +++ b/definitions/grib2/tables/17/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.1.10.table b/definitions/grib2/tables/17/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/17/4.1.10.table +++ b/definitions/grib2/tables/17/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.1.2.table b/definitions/grib2/tables/17/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/17/4.1.2.table +++ b/definitions/grib2/tables/17/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.1.3.table b/definitions/grib2/tables/17/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/17/4.1.3.table +++ b/definitions/grib2/tables/17/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.10.table b/definitions/grib2/tables/17/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/17/4.10.table +++ b/definitions/grib2/tables/17/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/17/4.11.table b/definitions/grib2/tables/17/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/17/4.11.table +++ b/definitions/grib2/tables/17/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.12.table b/definitions/grib2/tables/17/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/17/4.12.table +++ b/definitions/grib2/tables/17/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.13.table b/definitions/grib2/tables/17/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/17/4.13.table +++ b/definitions/grib2/tables/17/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.14.table b/definitions/grib2/tables/17/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/17/4.14.table +++ b/definitions/grib2/tables/17/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.15.table b/definitions/grib2/tables/17/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/17/4.15.table +++ b/definitions/grib2/tables/17/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.0.table b/definitions/grib2/tables/17/4.2.0.0.table index 4e2cf578e..f683ddfea 100644 --- a/definitions/grib2/tables/17/4.2.0.0.table +++ b/definitions/grib2/tables/17/4.2.0.0.table @@ -27,6 +27,4 @@ 25 25 Temperature tendency due to long-wave radiation, clear sky (K s-1) 26 26 Temperature tendency due to parameterization (K s-1) 27 27 Wet-bulb temperature (K) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.1.table b/definitions/grib2/tables/17/4.2.0.1.table index 004d11d25..5c85d4647 100644 --- a/definitions/grib2/tables/17/4.2.0.1.table +++ b/definitions/grib2/tables/17/4.2.0.1.table @@ -86,7 +86,6 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rainwater content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -115,6 +114,4 @@ 115 115 Mass density of liquid water coating on snow expressed as mass of liquid water per unit volume of air (kg m-3) 116 116 Specific mass of liquid water coating on snow expressed as mass of liquid water per unit mass of moist air (kg kg-1) 117 117 Mass mixing ratio of liquid water coating on snow expressed as mass of liquid water per unit mass of dry air (kg kg-1) -# 118-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.13.table b/definitions/grib2/tables/17/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/17/4.2.0.13.table +++ b/definitions/grib2/tables/17/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.14.table b/definitions/grib2/tables/17/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/17/4.2.0.14.table +++ b/definitions/grib2/tables/17/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.15.table b/definitions/grib2/tables/17/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/17/4.2.0.15.table +++ b/definitions/grib2/tables/17/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.16.table b/definitions/grib2/tables/17/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/17/4.2.0.16.table +++ b/definitions/grib2/tables/17/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.18.table b/definitions/grib2/tables/17/4.2.0.18.table index 16cfa489d..c2489183c 100644 --- a/definitions/grib2/tables/17/4.2.0.18.table +++ b/definitions/grib2/tables/17/4.2.0.18.table @@ -16,6 +16,4 @@ 14 14 Specific activity concentration (Bq kg-1) 15 15 Maximum of air concentration in layer (Bq m-3) 16 16 Height of maximum air concentration (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.19.table b/definitions/grib2/tables/17/4.2.0.19.table index e4db36249..12b5de271 100644 --- a/definitions/grib2/tables/17/4.2.0.19.table +++ b/definitions/grib2/tables/17/4.2.0.19.table @@ -31,6 +31,4 @@ 29 29 Clear air turbulence (CAT) (m2/3 s-1) 30 30 Eddy dissipation parameter (m2/3 s-1) 31 31 Maximum of Eddy dissipation parameter in layer (m2/3 s-1) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.190.table b/definitions/grib2/tables/17/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/17/4.2.0.190.table +++ b/definitions/grib2/tables/17/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.191.table b/definitions/grib2/tables/17/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/17/4.2.0.191.table +++ b/definitions/grib2/tables/17/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.2.table b/definitions/grib2/tables/17/4.2.0.2.table index 7967bf7bf..0b7d78a5f 100644 --- a/definitions/grib2/tables/17/4.2.0.2.table +++ b/definitions/grib2/tables/17/4.2.0.2.table @@ -44,6 +44,4 @@ 42 42 v-component of geostrophic wind (m s-1) 43 43 Geostrophic wind direction (degree true) 44 44 Geostrophic wind speed (m s-1) -# 45-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.20.table b/definitions/grib2/tables/17/4.2.0.20.table index 38479b834..43dfac9a8 100644 --- a/definitions/grib2/tables/17/4.2.0.20.table +++ b/definitions/grib2/tables/17/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -28,7 +27,6 @@ 60 60 Aerosol specific number concentration (kg-1) 61 61 Maximum of mass density in layer (kg m-3) 62 62 Height of maximum mass density (m) -# 63-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -41,6 +39,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.3.table b/definitions/grib2/tables/17/4.2.0.3.table index 17e7f204f..6d397ebdb 100644 --- a/definitions/grib2/tables/17/4.2.0.3.table +++ b/definitions/grib2/tables/17/4.2.0.3.table @@ -30,6 +30,4 @@ 28 28 Downdraught mass flux (kg m-2 s-1) 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) -# 31-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.4.table b/definitions/grib2/tables/17/4.2.0.4.table index f97270456..d5024628b 100644 --- a/definitions/grib2/tables/17/4.2.0.4.table +++ b/definitions/grib2/tables/17/4.2.0.4.table @@ -14,11 +14,8 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) -# 54-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.5.table b/definitions/grib2/tables/17/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/17/4.2.0.5.table +++ b/definitions/grib2/tables/17/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.6.table b/definitions/grib2/tables/17/4.2.0.6.table index 0450ec194..4e5d7ee4c 100644 --- a/definitions/grib2/tables/17/4.2.0.6.table +++ b/definitions/grib2/tables/17/4.2.0.6.table @@ -40,10 +40,7 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.0.7.table b/definitions/grib2/tables/17/4.2.0.7.table index 3e653431f..971410000 100644 --- a/definitions/grib2/tables/17/4.2.0.7.table +++ b/definitions/grib2/tables/17/4.2.0.7.table @@ -18,6 +18,4 @@ 16 16 Bulk Richardson number (Numeric) 17 17 Gradient Richardson number (Numeric) 18 18 Flux Richardson number (Numeric) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.1.0.table b/definitions/grib2/tables/17/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/17/4.2.1.0.table +++ b/definitions/grib2/tables/17/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.1.1.table b/definitions/grib2/tables/17/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/17/4.2.1.1.table +++ b/definitions/grib2/tables/17/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.10.0.table b/definitions/grib2/tables/17/4.2.10.0.table index 3611abd9a..5014980aa 100644 --- a/definitions/grib2/tables/17/4.2.10.0.table +++ b/definitions/grib2/tables/17/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (/s) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.10.1.table b/definitions/grib2/tables/17/4.2.10.1.table index f0a073c00..c172554a9 100644 --- a/definitions/grib2/tables/17/4.2.10.1.table +++ b/definitions/grib2/tables/17/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.10.191.table b/definitions/grib2/tables/17/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/17/4.2.10.191.table +++ b/definitions/grib2/tables/17/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.10.2.table b/definitions/grib2/tables/17/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/17/4.2.10.2.table +++ b/definitions/grib2/tables/17/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.10.3.table b/definitions/grib2/tables/17/4.2.10.3.table index 937720c93..71f0770e8 100644 --- a/definitions/grib2/tables/17/4.2.10.3.table +++ b/definitions/grib2/tables/17/4.2.10.3.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.10.4.table b/definitions/grib2/tables/17/4.2.10.4.table index d5615ae26..15cc8b4b3 100644 --- a/definitions/grib2/tables/17/4.2.10.4.table +++ b/definitions/grib2/tables/17/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.2.0.table b/definitions/grib2/tables/17/4.2.2.0.table index b253cac22..090bbb64a 100644 --- a/definitions/grib2/tables/17/4.2.2.0.table +++ b/definitions/grib2/tables/17/4.2.2.0.table @@ -38,6 +38,4 @@ 36 36 Tile fraction (Proportion) 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.2.3.table b/definitions/grib2/tables/17/4.2.2.3.table index 2674e9f42..9699073e8 100644 --- a/definitions/grib2/tables/17/4.2.2.3.table +++ b/definitions/grib2/tables/17/4.2.2.3.table @@ -27,6 +27,4 @@ 25 25 Snow depth at elevation bands (kg m-2) 26 26 Soil heat flux (W m-2) 27 27 Soil depth (m) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.2.4.table b/definitions/grib2/tables/17/4.2.2.4.table index ceb761557..3ee2176f6 100644 --- a/definitions/grib2/tables/17/4.2.2.4.table +++ b/definitions/grib2/tables/17/4.2.2.4.table @@ -11,6 +11,4 @@ 9 9 Initial Fire Spread Index (Canadian Forest Service) (Numeric) 10 10 Fire Buildup Index (Canadian Forest Service) (Numeric) 11 11 Fire Daily Severity Rating (Canadian Forest Service) (Numeric) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.3.0.table b/definitions/grib2/tables/17/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/17/4.2.3.0.table +++ b/definitions/grib2/tables/17/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.2.3.1.table b/definitions/grib2/tables/17/4.2.3.1.table index 04cdde1f1..9ce359f2e 100644 --- a/definitions/grib2/tables/17/4.2.3.1.table +++ b/definitions/grib2/tables/17/4.2.3.1.table @@ -23,10 +23,7 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (Numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (Numeric) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.201.table b/definitions/grib2/tables/17/4.201.table index fa173c4e0..7787ce735 100644 --- a/definitions/grib2/tables/17/4.201.table +++ b/definitions/grib2/tables/17/4.201.table @@ -10,6 +10,4 @@ 8 8 Ice pellets 9 9 Graupel 10 10 Hail -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.202.table b/definitions/grib2/tables/17/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/17/4.202.table +++ b/definitions/grib2/tables/17/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.203.table b/definitions/grib2/tables/17/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/17/4.203.table +++ b/definitions/grib2/tables/17/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.204.table b/definitions/grib2/tables/17/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/17/4.204.table +++ b/definitions/grib2/tables/17/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.205.table b/definitions/grib2/tables/17/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/17/4.205.table +++ b/definitions/grib2/tables/17/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.206.table b/definitions/grib2/tables/17/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/17/4.206.table +++ b/definitions/grib2/tables/17/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.207.table b/definitions/grib2/tables/17/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/17/4.207.table +++ b/definitions/grib2/tables/17/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.208.table b/definitions/grib2/tables/17/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/17/4.208.table +++ b/definitions/grib2/tables/17/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.209.table b/definitions/grib2/tables/17/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/17/4.209.table +++ b/definitions/grib2/tables/17/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.210.table b/definitions/grib2/tables/17/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/17/4.210.table +++ b/definitions/grib2/tables/17/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.211.table b/definitions/grib2/tables/17/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/17/4.211.table +++ b/definitions/grib2/tables/17/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.212.table b/definitions/grib2/tables/17/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/17/4.212.table +++ b/definitions/grib2/tables/17/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.213.table b/definitions/grib2/tables/17/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/17/4.213.table +++ b/definitions/grib2/tables/17/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.215.table b/definitions/grib2/tables/17/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/17/4.215.table +++ b/definitions/grib2/tables/17/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.216.table b/definitions/grib2/tables/17/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/17/4.216.table +++ b/definitions/grib2/tables/17/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/17/4.217.table b/definitions/grib2/tables/17/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/17/4.217.table +++ b/definitions/grib2/tables/17/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.218.table b/definitions/grib2/tables/17/4.218.table index b5b15150b..d899242fd 100644 --- a/definitions/grib2/tables/17/4.218.table +++ b/definitions/grib2/tables/17/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -39,6 +38,4 @@ 108 108 High cloud/Cirrus 109 109 High cloud/unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.219.table b/definitions/grib2/tables/17/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/17/4.219.table +++ b/definitions/grib2/tables/17/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.220.table b/definitions/grib2/tables/17/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/17/4.220.table +++ b/definitions/grib2/tables/17/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.221.table b/definitions/grib2/tables/17/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/17/4.221.table +++ b/definitions/grib2/tables/17/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.222.table b/definitions/grib2/tables/17/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/17/4.222.table +++ b/definitions/grib2/tables/17/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.224.table b/definitions/grib2/tables/17/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/17/4.224.table +++ b/definitions/grib2/tables/17/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/17/4.227.table b/definitions/grib2/tables/17/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/17/4.227.table +++ b/definitions/grib2/tables/17/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/17/4.240.table b/definitions/grib2/tables/17/4.240.table index 986557483..88b7d8cdb 100644 --- a/definitions/grib2/tables/17/4.240.table +++ b/definitions/grib2/tables/17/4.240.table @@ -7,6 +7,4 @@ 5 5 Log-normal distribution with spatially variable number density, mean diameter and variance 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) -# 8-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/17/4.241.table b/definitions/grib2/tables/17/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/17/4.241.table +++ b/definitions/grib2/tables/17/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/17/4.242.table b/definitions/grib2/tables/17/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/17/4.242.table +++ b/definitions/grib2/tables/17/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/17/4.243.table b/definitions/grib2/tables/17/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/17/4.243.table +++ b/definitions/grib2/tables/17/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/17/4.3.table b/definitions/grib2/tables/17/4.3.table index bcf8102a1..4c439e5e7 100644 --- a/definitions/grib2/tables/17/4.3.table +++ b/definitions/grib2/tables/17/4.3.table @@ -17,6 +17,4 @@ 15 15 Hindcast 16 16 Physical retrieval 17 17 Regression analysis -# 18-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.4.table b/definitions/grib2/tables/17/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/17/4.4.table +++ b/definitions/grib2/tables/17/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.5.table b/definitions/grib2/tables/17/4.5.table index c2771c9c6..4454f848f 100644 --- a/definitions/grib2/tables/17/4.5.table +++ b/definitions/grib2/tables/17/4.5.table @@ -16,9 +16,7 @@ 14 14 Level of free convection (LFC) 15 15 Convective condensation level (CCL) 16 16 Level of neutral buoyancy or equilibrium level (LNB) -# 17-19 Reserved 20 20 Isothermal level (K) -# 21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -34,14 +32,11 @@ 112 112 Reserved 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) -# 115-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) -# 152-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -50,18 +45,14 @@ 165 165 Bottom of sediment layer penetrated by thermal wave (-) 166 sfc Mixing layer (-) 167 167 Bottom of root zone (-) -# 168-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.6.table b/definitions/grib2/tables/17/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/17/4.6.table +++ b/definitions/grib2/tables/17/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.7.table b/definitions/grib2/tables/17/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/17/4.7.table +++ b/definitions/grib2/tables/17/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.8.table b/definitions/grib2/tables/17/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/17/4.8.table +++ b/definitions/grib2/tables/17/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.9.table b/definitions/grib2/tables/17/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/17/4.9.table +++ b/definitions/grib2/tables/17/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/4.91.table b/definitions/grib2/tables/17/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/17/4.91.table +++ b/definitions/grib2/tables/17/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/17/5.0.table b/definitions/grib2/tables/17/5.0.table index 2795336df..7d9a25c37 100644 --- a/definitions/grib2/tables/17/5.0.table +++ b/definitions/grib2/tables/17/5.0.table @@ -6,15 +6,10 @@ 4 4 Grid point data - IEEE floating point data 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) -# 42-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/17/5.1.table b/definitions/grib2/tables/17/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/17/5.1.table +++ b/definitions/grib2/tables/17/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/5.2.table b/definitions/grib2/tables/17/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/17/5.2.table +++ b/definitions/grib2/tables/17/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/5.3.table b/definitions/grib2/tables/17/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/17/5.3.table +++ b/definitions/grib2/tables/17/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/5.4.table b/definitions/grib2/tables/17/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/17/5.4.table +++ b/definitions/grib2/tables/17/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/5.40.table b/definitions/grib2/tables/17/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/17/5.40.table +++ b/definitions/grib2/tables/17/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/17/5.5.table b/definitions/grib2/tables/17/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/17/5.5.table +++ b/definitions/grib2/tables/17/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/5.6.table b/definitions/grib2/tables/17/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/17/5.6.table +++ b/definitions/grib2/tables/17/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/17/5.7.table b/definitions/grib2/tables/17/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/17/5.7.table +++ b/definitions/grib2/tables/17/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/18/0.0.table b/definitions/grib2/tables/18/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/18/0.0.table +++ b/definitions/grib2/tables/18/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/1.2.table b/definitions/grib2/tables/18/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/18/1.2.table +++ b/definitions/grib2/tables/18/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/1.3.table b/definitions/grib2/tables/18/1.3.table index c1a9a7b9d..7b5690caa 100644 --- a/definitions/grib2/tables/18/1.3.table +++ b/definitions/grib2/tables/18/1.3.table @@ -9,6 +9,4 @@ 7 7 S2S test products 8 8 Uncertainties in Ensembles of Regional ReAnalyses project (UERRA) 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/1.4.table b/definitions/grib2/tables/18/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/18/1.4.table +++ b/definitions/grib2/tables/18/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/18/1.5.table b/definitions/grib2/tables/18/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/18/1.5.table +++ b/definitions/grib2/tables/18/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/18/1.6.table b/definitions/grib2/tables/18/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/18/1.6.table +++ b/definitions/grib2/tables/18/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/3.0.table b/definitions/grib2/tables/18/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/18/3.0.table +++ b/definitions/grib2/tables/18/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/18/3.1.table b/definitions/grib2/tables/18/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/18/3.1.table +++ b/definitions/grib2/tables/18/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/18/3.10.table b/definitions/grib2/tables/18/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/18/3.10.table +++ b/definitions/grib2/tables/18/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/18/3.11.table b/definitions/grib2/tables/18/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/18/3.11.table +++ b/definitions/grib2/tables/18/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/18/3.15.table b/definitions/grib2/tables/18/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/18/3.15.table +++ b/definitions/grib2/tables/18/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/3.2.table b/definitions/grib2/tables/18/3.2.table index b9574a424..ed8eb276c 100644 --- a/definitions/grib2/tables/18/3.2.table +++ b/definitions/grib2/tables/18/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/3.20.table b/definitions/grib2/tables/18/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/18/3.20.table +++ b/definitions/grib2/tables/18/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/3.21.table b/definitions/grib2/tables/18/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/18/3.21.table +++ b/definitions/grib2/tables/18/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/3.3.table b/definitions/grib2/tables/18/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/18/3.3.table +++ b/definitions/grib2/tables/18/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/18/3.7.table b/definitions/grib2/tables/18/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/18/3.7.table +++ b/definitions/grib2/tables/18/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/18/3.8.table b/definitions/grib2/tables/18/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/18/3.8.table +++ b/definitions/grib2/tables/18/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/3.9.table b/definitions/grib2/tables/18/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/18/3.9.table +++ b/definitions/grib2/tables/18/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/18/4.0.table b/definitions/grib2/tables/18/4.0.table index aceff01af..c7f1c5106 100644 --- a/definitions/grib2/tables/18/4.0.table +++ b/definitions/grib2/tables/18/4.0.table @@ -15,15 +15,12 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data -# 35-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -47,26 +42,19 @@ 59 59 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters (corrected version of template 4.56) 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 62-69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/18/4.1.0.table b/definitions/grib2/tables/18/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/18/4.1.0.table +++ b/definitions/grib2/tables/18/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.1.1.table b/definitions/grib2/tables/18/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/18/4.1.1.table +++ b/definitions/grib2/tables/18/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.1.10.table b/definitions/grib2/tables/18/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/18/4.1.10.table +++ b/definitions/grib2/tables/18/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.1.2.table b/definitions/grib2/tables/18/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/18/4.1.2.table +++ b/definitions/grib2/tables/18/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.1.3.table b/definitions/grib2/tables/18/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/18/4.1.3.table +++ b/definitions/grib2/tables/18/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.10.table b/definitions/grib2/tables/18/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/18/4.10.table +++ b/definitions/grib2/tables/18/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/18/4.11.table b/definitions/grib2/tables/18/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/18/4.11.table +++ b/definitions/grib2/tables/18/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.12.table b/definitions/grib2/tables/18/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/18/4.12.table +++ b/definitions/grib2/tables/18/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.13.table b/definitions/grib2/tables/18/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/18/4.13.table +++ b/definitions/grib2/tables/18/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.14.table b/definitions/grib2/tables/18/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/18/4.14.table +++ b/definitions/grib2/tables/18/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.15.table b/definitions/grib2/tables/18/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/18/4.15.table +++ b/definitions/grib2/tables/18/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.0.table b/definitions/grib2/tables/18/4.2.0.0.table index 83b3e8ef1..3cd04f347 100644 --- a/definitions/grib2/tables/18/4.2.0.0.table +++ b/definitions/grib2/tables/18/4.2.0.0.table @@ -29,6 +29,4 @@ 27 27 Wet-bulb temperature (K) 28 28 Unbalanced component of temperature (K) 29 29 Temperature advection (K s-1) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.1.table b/definitions/grib2/tables/18/4.2.0.1.table index 7d43684d3..6a4eb9a2e 100644 --- a/definitions/grib2/tables/18/4.2.0.1.table +++ b/definitions/grib2/tables/18/4.2.0.1.table @@ -86,7 +86,6 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rainwater content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -118,6 +117,4 @@ 118 118 Unbalanced component of specific humidity (kg kg-1) 119 119 Unbalanced component of specific cloud liquid water content (kg kg-1) 120 120 Unbalanced component of specific cloud ice water content (kg kg-1) -# 121-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.13.table b/definitions/grib2/tables/18/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/18/4.2.0.13.table +++ b/definitions/grib2/tables/18/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.14.table b/definitions/grib2/tables/18/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/18/4.2.0.14.table +++ b/definitions/grib2/tables/18/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.15.table b/definitions/grib2/tables/18/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/18/4.2.0.15.table +++ b/definitions/grib2/tables/18/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.16.table b/definitions/grib2/tables/18/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/18/4.2.0.16.table +++ b/definitions/grib2/tables/18/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.18.table b/definitions/grib2/tables/18/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/18/4.2.0.18.table +++ b/definitions/grib2/tables/18/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.19.table b/definitions/grib2/tables/18/4.2.0.19.table index e4db36249..12b5de271 100644 --- a/definitions/grib2/tables/18/4.2.0.19.table +++ b/definitions/grib2/tables/18/4.2.0.19.table @@ -31,6 +31,4 @@ 29 29 Clear air turbulence (CAT) (m2/3 s-1) 30 30 Eddy dissipation parameter (m2/3 s-1) 31 31 Maximum of Eddy dissipation parameter in layer (m2/3 s-1) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.190.table b/definitions/grib2/tables/18/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/18/4.2.0.190.table +++ b/definitions/grib2/tables/18/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.191.table b/definitions/grib2/tables/18/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/18/4.2.0.191.table +++ b/definitions/grib2/tables/18/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.2.table b/definitions/grib2/tables/18/4.2.0.2.table index 8a70b2591..8651adc7c 100644 --- a/definitions/grib2/tables/18/4.2.0.2.table +++ b/definitions/grib2/tables/18/4.2.0.2.table @@ -46,6 +46,4 @@ 44 44 Geostrophic wind speed (m s-1) 45 45 Unbalanced component of divergence (s-1) 46 46 Vorticity advection (s-2) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.20.table b/definitions/grib2/tables/18/4.2.0.20.table index bbdeef5b1..4392e7b76 100644 --- a/definitions/grib2/tables/18/4.2.0.20.table +++ b/definitions/grib2/tables/18/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -29,7 +28,6 @@ 61 61 Maximum of mass density in layer (kg m-3) 62 62 Height of maximum mass density (m) 63 63 Column-averaged mass density in layer (kg m-3) -# 64-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -42,6 +40,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.3.table b/definitions/grib2/tables/18/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/18/4.2.0.3.table +++ b/definitions/grib2/tables/18/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.4.table b/definitions/grib2/tables/18/4.2.0.4.table index f97270456..d5024628b 100644 --- a/definitions/grib2/tables/18/4.2.0.4.table +++ b/definitions/grib2/tables/18/4.2.0.4.table @@ -14,11 +14,8 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) -# 54-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.5.table b/definitions/grib2/tables/18/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/18/4.2.0.5.table +++ b/definitions/grib2/tables/18/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.6.table b/definitions/grib2/tables/18/4.2.0.6.table index 0450ec194..4e5d7ee4c 100644 --- a/definitions/grib2/tables/18/4.2.0.6.table +++ b/definitions/grib2/tables/18/4.2.0.6.table @@ -40,10 +40,7 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.0.7.table b/definitions/grib2/tables/18/4.2.0.7.table index 3e653431f..971410000 100644 --- a/definitions/grib2/tables/18/4.2.0.7.table +++ b/definitions/grib2/tables/18/4.2.0.7.table @@ -18,6 +18,4 @@ 16 16 Bulk Richardson number (Numeric) 17 17 Gradient Richardson number (Numeric) 18 18 Flux Richardson number (Numeric) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.1.0.table b/definitions/grib2/tables/18/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/18/4.2.1.0.table +++ b/definitions/grib2/tables/18/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.1.1.table b/definitions/grib2/tables/18/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/18/4.2.1.1.table +++ b/definitions/grib2/tables/18/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.10.0.table b/definitions/grib2/tables/18/4.2.10.0.table index 3611abd9a..5014980aa 100644 --- a/definitions/grib2/tables/18/4.2.10.0.table +++ b/definitions/grib2/tables/18/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (/s) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.10.1.table b/definitions/grib2/tables/18/4.2.10.1.table index f0a073c00..c172554a9 100644 --- a/definitions/grib2/tables/18/4.2.10.1.table +++ b/definitions/grib2/tables/18/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.10.191.table b/definitions/grib2/tables/18/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/18/4.2.10.191.table +++ b/definitions/grib2/tables/18/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.10.2.table b/definitions/grib2/tables/18/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/18/4.2.10.2.table +++ b/definitions/grib2/tables/18/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.10.3.table b/definitions/grib2/tables/18/4.2.10.3.table index b01d7ae46..f6229ac12 100644 --- a/definitions/grib2/tables/18/4.2.10.3.table +++ b/definitions/grib2/tables/18/4.2.10.3.table @@ -2,6 +2,4 @@ 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) 2 2 Heat exchange coefficient (-) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.10.4.table b/definitions/grib2/tables/18/4.2.10.4.table index d5615ae26..15cc8b4b3 100644 --- a/definitions/grib2/tables/18/4.2.10.4.table +++ b/definitions/grib2/tables/18/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.2.0.table b/definitions/grib2/tables/18/4.2.2.0.table index b253cac22..090bbb64a 100644 --- a/definitions/grib2/tables/18/4.2.2.0.table +++ b/definitions/grib2/tables/18/4.2.2.0.table @@ -38,6 +38,4 @@ 36 36 Tile fraction (Proportion) 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.2.3.table b/definitions/grib2/tables/18/4.2.2.3.table index 2674e9f42..9699073e8 100644 --- a/definitions/grib2/tables/18/4.2.2.3.table +++ b/definitions/grib2/tables/18/4.2.2.3.table @@ -27,6 +27,4 @@ 25 25 Snow depth at elevation bands (kg m-2) 26 26 Soil heat flux (W m-2) 27 27 Soil depth (m) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.2.4.table b/definitions/grib2/tables/18/4.2.2.4.table index ceb761557..3ee2176f6 100644 --- a/definitions/grib2/tables/18/4.2.2.4.table +++ b/definitions/grib2/tables/18/4.2.2.4.table @@ -11,6 +11,4 @@ 9 9 Initial Fire Spread Index (Canadian Forest Service) (Numeric) 10 10 Fire Buildup Index (Canadian Forest Service) (Numeric) 11 11 Fire Daily Severity Rating (Canadian Forest Service) (Numeric) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.3.0.table b/definitions/grib2/tables/18/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/18/4.2.3.0.table +++ b/definitions/grib2/tables/18/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.2.3.1.table b/definitions/grib2/tables/18/4.2.3.1.table index 04cdde1f1..9ce359f2e 100644 --- a/definitions/grib2/tables/18/4.2.3.1.table +++ b/definitions/grib2/tables/18/4.2.3.1.table @@ -23,10 +23,7 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (Numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (Numeric) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.201.table b/definitions/grib2/tables/18/4.201.table index fa173c4e0..7787ce735 100644 --- a/definitions/grib2/tables/18/4.201.table +++ b/definitions/grib2/tables/18/4.201.table @@ -10,6 +10,4 @@ 8 8 Ice pellets 9 9 Graupel 10 10 Hail -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.202.table b/definitions/grib2/tables/18/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/18/4.202.table +++ b/definitions/grib2/tables/18/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.203.table b/definitions/grib2/tables/18/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/18/4.203.table +++ b/definitions/grib2/tables/18/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.204.table b/definitions/grib2/tables/18/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/18/4.204.table +++ b/definitions/grib2/tables/18/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.205.table b/definitions/grib2/tables/18/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/18/4.205.table +++ b/definitions/grib2/tables/18/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.206.table b/definitions/grib2/tables/18/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/18/4.206.table +++ b/definitions/grib2/tables/18/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.207.table b/definitions/grib2/tables/18/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/18/4.207.table +++ b/definitions/grib2/tables/18/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.208.table b/definitions/grib2/tables/18/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/18/4.208.table +++ b/definitions/grib2/tables/18/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.209.table b/definitions/grib2/tables/18/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/18/4.209.table +++ b/definitions/grib2/tables/18/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.210.table b/definitions/grib2/tables/18/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/18/4.210.table +++ b/definitions/grib2/tables/18/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.211.table b/definitions/grib2/tables/18/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/18/4.211.table +++ b/definitions/grib2/tables/18/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.212.table b/definitions/grib2/tables/18/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/18/4.212.table +++ b/definitions/grib2/tables/18/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.213.table b/definitions/grib2/tables/18/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/18/4.213.table +++ b/definitions/grib2/tables/18/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.215.table b/definitions/grib2/tables/18/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/18/4.215.table +++ b/definitions/grib2/tables/18/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.216.table b/definitions/grib2/tables/18/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/18/4.216.table +++ b/definitions/grib2/tables/18/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/18/4.217.table b/definitions/grib2/tables/18/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/18/4.217.table +++ b/definitions/grib2/tables/18/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.218.table b/definitions/grib2/tables/18/4.218.table index b5b15150b..d899242fd 100644 --- a/definitions/grib2/tables/18/4.218.table +++ b/definitions/grib2/tables/18/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -39,6 +38,4 @@ 108 108 High cloud/Cirrus 109 109 High cloud/unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.219.table b/definitions/grib2/tables/18/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/18/4.219.table +++ b/definitions/grib2/tables/18/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.220.table b/definitions/grib2/tables/18/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/18/4.220.table +++ b/definitions/grib2/tables/18/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.221.table b/definitions/grib2/tables/18/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/18/4.221.table +++ b/definitions/grib2/tables/18/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.222.table b/definitions/grib2/tables/18/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/18/4.222.table +++ b/definitions/grib2/tables/18/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.224.table b/definitions/grib2/tables/18/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/18/4.224.table +++ b/definitions/grib2/tables/18/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/18/4.227.table b/definitions/grib2/tables/18/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/18/4.227.table +++ b/definitions/grib2/tables/18/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/18/4.240.table b/definitions/grib2/tables/18/4.240.table index 986557483..88b7d8cdb 100644 --- a/definitions/grib2/tables/18/4.240.table +++ b/definitions/grib2/tables/18/4.240.table @@ -7,6 +7,4 @@ 5 5 Log-normal distribution with spatially variable number density, mean diameter and variance 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) -# 8-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/18/4.241.table b/definitions/grib2/tables/18/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/18/4.241.table +++ b/definitions/grib2/tables/18/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/18/4.242.table b/definitions/grib2/tables/18/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/18/4.242.table +++ b/definitions/grib2/tables/18/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/18/4.243.table b/definitions/grib2/tables/18/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/18/4.243.table +++ b/definitions/grib2/tables/18/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/18/4.3.table b/definitions/grib2/tables/18/4.3.table index cea1bef4f..8338bbd67 100644 --- a/definitions/grib2/tables/18/4.3.table +++ b/definitions/grib2/tables/18/4.3.table @@ -18,6 +18,4 @@ 16 16 Physical retrieval 17 17 Regression analysis 18 18 Difference between two forecasts -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.4.table b/definitions/grib2/tables/18/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/18/4.4.table +++ b/definitions/grib2/tables/18/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.5.table b/definitions/grib2/tables/18/4.5.table index 33abd6293..5de5a7be7 100644 --- a/definitions/grib2/tables/18/4.5.table +++ b/definitions/grib2/tables/18/4.5.table @@ -16,13 +16,11 @@ 14 14 Level of free convection (LFC) 15 15 Convective condensation level (CCL) 16 16 Level of neutral buoyancy or equilibrium level (LNB) -# 17-19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) -# 25-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -39,14 +37,11 @@ 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) -# 152-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -55,18 +50,14 @@ 165 165 Bottom of sediment layer penetrated by thermal wave (-) 166 sfc Mixing layer (-) 167 167 Bottom of root zone (-) -# 168-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.6.table b/definitions/grib2/tables/18/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/18/4.6.table +++ b/definitions/grib2/tables/18/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.7.table b/definitions/grib2/tables/18/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/18/4.7.table +++ b/definitions/grib2/tables/18/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.8.table b/definitions/grib2/tables/18/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/18/4.8.table +++ b/definitions/grib2/tables/18/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.9.table b/definitions/grib2/tables/18/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/18/4.9.table +++ b/definitions/grib2/tables/18/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/4.91.table b/definitions/grib2/tables/18/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/18/4.91.table +++ b/definitions/grib2/tables/18/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/18/5.0.table b/definitions/grib2/tables/18/5.0.table index 4d6cc68c8..5447eb3c8 100644 --- a/definitions/grib2/tables/18/5.0.table +++ b/definitions/grib2/tables/18/5.0.table @@ -7,15 +7,10 @@ 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/18/5.1.table b/definitions/grib2/tables/18/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/18/5.1.table +++ b/definitions/grib2/tables/18/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/5.2.table b/definitions/grib2/tables/18/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/18/5.2.table +++ b/definitions/grib2/tables/18/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/5.3.table b/definitions/grib2/tables/18/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/18/5.3.table +++ b/definitions/grib2/tables/18/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/5.4.table b/definitions/grib2/tables/18/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/18/5.4.table +++ b/definitions/grib2/tables/18/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/5.40.table b/definitions/grib2/tables/18/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/18/5.40.table +++ b/definitions/grib2/tables/18/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/18/5.5.table b/definitions/grib2/tables/18/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/18/5.5.table +++ b/definitions/grib2/tables/18/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/5.6.table b/definitions/grib2/tables/18/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/18/5.6.table +++ b/definitions/grib2/tables/18/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/18/5.7.table b/definitions/grib2/tables/18/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/18/5.7.table +++ b/definitions/grib2/tables/18/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/19/0.0.table b/definitions/grib2/tables/19/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/19/0.0.table +++ b/definitions/grib2/tables/19/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/1.2.table b/definitions/grib2/tables/19/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/19/1.2.table +++ b/definitions/grib2/tables/19/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/1.3.table b/definitions/grib2/tables/19/1.3.table index c1a9a7b9d..7b5690caa 100644 --- a/definitions/grib2/tables/19/1.3.table +++ b/definitions/grib2/tables/19/1.3.table @@ -9,6 +9,4 @@ 7 7 S2S test products 8 8 Uncertainties in Ensembles of Regional ReAnalyses project (UERRA) 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/1.4.table b/definitions/grib2/tables/19/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/19/1.4.table +++ b/definitions/grib2/tables/19/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/19/1.5.table b/definitions/grib2/tables/19/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/19/1.5.table +++ b/definitions/grib2/tables/19/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/19/1.6.table b/definitions/grib2/tables/19/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/19/1.6.table +++ b/definitions/grib2/tables/19/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/3.0.table b/definitions/grib2/tables/19/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/19/3.0.table +++ b/definitions/grib2/tables/19/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/19/3.1.table b/definitions/grib2/tables/19/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/19/3.1.table +++ b/definitions/grib2/tables/19/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/19/3.10.table b/definitions/grib2/tables/19/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/19/3.10.table +++ b/definitions/grib2/tables/19/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/19/3.11.table b/definitions/grib2/tables/19/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/19/3.11.table +++ b/definitions/grib2/tables/19/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/19/3.15.table b/definitions/grib2/tables/19/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/19/3.15.table +++ b/definitions/grib2/tables/19/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/3.2.table b/definitions/grib2/tables/19/3.2.table index 56ffdc08e..3d47cc431 100644 --- a/definitions/grib2/tables/19/3.2.table +++ b/definitions/grib2/tables/19/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS-84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/3.20.table b/definitions/grib2/tables/19/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/19/3.20.table +++ b/definitions/grib2/tables/19/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/3.21.table b/definitions/grib2/tables/19/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/19/3.21.table +++ b/definitions/grib2/tables/19/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/3.3.table b/definitions/grib2/tables/19/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/19/3.3.table +++ b/definitions/grib2/tables/19/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/19/3.7.table b/definitions/grib2/tables/19/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/19/3.7.table +++ b/definitions/grib2/tables/19/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/19/3.8.table b/definitions/grib2/tables/19/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/19/3.8.table +++ b/definitions/grib2/tables/19/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/3.9.table b/definitions/grib2/tables/19/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/19/3.9.table +++ b/definitions/grib2/tables/19/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/19/4.0.table b/definitions/grib2/tables/19/4.0.table index a37b59d09..f8a1863f0 100644 --- a/definitions/grib2/tables/19/4.0.table +++ b/definitions/grib2/tables/19/4.0.table @@ -15,15 +15,12 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data -# 35-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -47,29 +42,21 @@ 59 59 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters (corrected version of template 4.56) 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 62-66 Reserved 67 67 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/19/4.1.0.table b/definitions/grib2/tables/19/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/19/4.1.0.table +++ b/definitions/grib2/tables/19/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.1.1.table b/definitions/grib2/tables/19/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/19/4.1.1.table +++ b/definitions/grib2/tables/19/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.1.10.table b/definitions/grib2/tables/19/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/19/4.1.10.table +++ b/definitions/grib2/tables/19/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.1.2.table b/definitions/grib2/tables/19/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/19/4.1.2.table +++ b/definitions/grib2/tables/19/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.1.3.table b/definitions/grib2/tables/19/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/19/4.1.3.table +++ b/definitions/grib2/tables/19/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.10.table b/definitions/grib2/tables/19/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/19/4.10.table +++ b/definitions/grib2/tables/19/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/19/4.11.table b/definitions/grib2/tables/19/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/19/4.11.table +++ b/definitions/grib2/tables/19/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.12.table b/definitions/grib2/tables/19/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/19/4.12.table +++ b/definitions/grib2/tables/19/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.13.table b/definitions/grib2/tables/19/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/19/4.13.table +++ b/definitions/grib2/tables/19/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.14.table b/definitions/grib2/tables/19/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/19/4.14.table +++ b/definitions/grib2/tables/19/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.15.table b/definitions/grib2/tables/19/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/19/4.15.table +++ b/definitions/grib2/tables/19/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.0.table b/definitions/grib2/tables/19/4.2.0.0.table index 83b3e8ef1..3cd04f347 100644 --- a/definitions/grib2/tables/19/4.2.0.0.table +++ b/definitions/grib2/tables/19/4.2.0.0.table @@ -29,6 +29,4 @@ 27 27 Wet-bulb temperature (K) 28 28 Unbalanced component of temperature (K) 29 29 Temperature advection (K s-1) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.1.table b/definitions/grib2/tables/19/4.2.0.1.table index 7d43684d3..6a4eb9a2e 100644 --- a/definitions/grib2/tables/19/4.2.0.1.table +++ b/definitions/grib2/tables/19/4.2.0.1.table @@ -86,7 +86,6 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rainwater content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -118,6 +117,4 @@ 118 118 Unbalanced component of specific humidity (kg kg-1) 119 119 Unbalanced component of specific cloud liquid water content (kg kg-1) 120 120 Unbalanced component of specific cloud ice water content (kg kg-1) -# 121-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.13.table b/definitions/grib2/tables/19/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/19/4.2.0.13.table +++ b/definitions/grib2/tables/19/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.14.table b/definitions/grib2/tables/19/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/19/4.2.0.14.table +++ b/definitions/grib2/tables/19/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.15.table b/definitions/grib2/tables/19/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/19/4.2.0.15.table +++ b/definitions/grib2/tables/19/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.16.table b/definitions/grib2/tables/19/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/19/4.2.0.16.table +++ b/definitions/grib2/tables/19/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.18.table b/definitions/grib2/tables/19/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/19/4.2.0.18.table +++ b/definitions/grib2/tables/19/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.19.table b/definitions/grib2/tables/19/4.2.0.19.table index b27eb2dbe..bd9ebe5c7 100644 --- a/definitions/grib2/tables/19/4.2.0.19.table +++ b/definitions/grib2/tables/19/4.2.0.19.table @@ -31,6 +31,4 @@ 29 29 Clear air turbulence (CAT) (m2/3 s-1) 30 30 Eddy dissipation parameter (m2/3 s-1) 31 31 Maximum of eddy dissipation parameter in layer (m2/3 s-1) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.190.table b/definitions/grib2/tables/19/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/19/4.2.0.190.table +++ b/definitions/grib2/tables/19/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.191.table b/definitions/grib2/tables/19/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/19/4.2.0.191.table +++ b/definitions/grib2/tables/19/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.2.table b/definitions/grib2/tables/19/4.2.0.2.table index 8a70b2591..8651adc7c 100644 --- a/definitions/grib2/tables/19/4.2.0.2.table +++ b/definitions/grib2/tables/19/4.2.0.2.table @@ -46,6 +46,4 @@ 44 44 Geostrophic wind speed (m s-1) 45 45 Unbalanced component of divergence (s-1) 46 46 Vorticity advection (s-2) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.20.table b/definitions/grib2/tables/19/4.2.0.20.table index 0f95689f8..af088ddfe 100644 --- a/definitions/grib2/tables/19/4.2.0.20.table +++ b/definitions/grib2/tables/19/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -29,7 +28,6 @@ 61 61 Maximum of mass density in layer (kg m-3) 62 62 Height of maximum mass density (m) 63 63 Column-averaged mass density in layer (kg m-3) -# 64-99 Reserved 100 100 Surface area density (aerosol) (m-1) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -42,6 +40,4 @@ 109 109 Aerosol lidar extinction from satellite (m-1) 110 110 Aerosol lidar extinction from the ground (m-1) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.3.table b/definitions/grib2/tables/19/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/19/4.2.0.3.table +++ b/definitions/grib2/tables/19/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.4.table b/definitions/grib2/tables/19/4.2.0.4.table index f97270456..d5024628b 100644 --- a/definitions/grib2/tables/19/4.2.0.4.table +++ b/definitions/grib2/tables/19/4.2.0.4.table @@ -14,11 +14,8 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) -# 54-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.5.table b/definitions/grib2/tables/19/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/19/4.2.0.5.table +++ b/definitions/grib2/tables/19/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.6.table b/definitions/grib2/tables/19/4.2.0.6.table index 0450ec194..4e5d7ee4c 100644 --- a/definitions/grib2/tables/19/4.2.0.6.table +++ b/definitions/grib2/tables/19/4.2.0.6.table @@ -40,10 +40,7 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.0.7.table b/definitions/grib2/tables/19/4.2.0.7.table index 6289d8b20..2c5b697db 100644 --- a/definitions/grib2/tables/19/4.2.0.7.table +++ b/definitions/grib2/tables/19/4.2.0.7.table @@ -19,6 +19,4 @@ 17 17 Gradient Richardson number (Numeric) 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.1.0.table b/definitions/grib2/tables/19/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/19/4.2.1.0.table +++ b/definitions/grib2/tables/19/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.1.1.table b/definitions/grib2/tables/19/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/19/4.2.1.1.table +++ b/definitions/grib2/tables/19/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.10.0.table b/definitions/grib2/tables/19/4.2.10.0.table index 3611abd9a..5014980aa 100644 --- a/definitions/grib2/tables/19/4.2.10.0.table +++ b/definitions/grib2/tables/19/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (/s) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.10.1.table b/definitions/grib2/tables/19/4.2.10.1.table index f0a073c00..c172554a9 100644 --- a/definitions/grib2/tables/19/4.2.10.1.table +++ b/definitions/grib2/tables/19/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.10.191.table b/definitions/grib2/tables/19/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/19/4.2.10.191.table +++ b/definitions/grib2/tables/19/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.10.2.table b/definitions/grib2/tables/19/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/19/4.2.10.2.table +++ b/definitions/grib2/tables/19/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.10.3.table b/definitions/grib2/tables/19/4.2.10.3.table index b01d7ae46..f6229ac12 100644 --- a/definitions/grib2/tables/19/4.2.10.3.table +++ b/definitions/grib2/tables/19/4.2.10.3.table @@ -2,6 +2,4 @@ 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) 2 2 Heat exchange coefficient (-) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.10.4.table b/definitions/grib2/tables/19/4.2.10.4.table index d5615ae26..15cc8b4b3 100644 --- a/definitions/grib2/tables/19/4.2.10.4.table +++ b/definitions/grib2/tables/19/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.2.0.table b/definitions/grib2/tables/19/4.2.2.0.table index b253cac22..090bbb64a 100644 --- a/definitions/grib2/tables/19/4.2.2.0.table +++ b/definitions/grib2/tables/19/4.2.2.0.table @@ -38,6 +38,4 @@ 36 36 Tile fraction (Proportion) 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.2.3.table b/definitions/grib2/tables/19/4.2.2.3.table index 2674e9f42..9699073e8 100644 --- a/definitions/grib2/tables/19/4.2.2.3.table +++ b/definitions/grib2/tables/19/4.2.2.3.table @@ -27,6 +27,4 @@ 25 25 Snow depth at elevation bands (kg m-2) 26 26 Soil heat flux (W m-2) 27 27 Soil depth (m) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.2.4.table b/definitions/grib2/tables/19/4.2.2.4.table index ceb761557..3ee2176f6 100644 --- a/definitions/grib2/tables/19/4.2.2.4.table +++ b/definitions/grib2/tables/19/4.2.2.4.table @@ -11,6 +11,4 @@ 9 9 Initial Fire Spread Index (Canadian Forest Service) (Numeric) 10 10 Fire Buildup Index (Canadian Forest Service) (Numeric) 11 11 Fire Daily Severity Rating (Canadian Forest Service) (Numeric) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.3.0.table b/definitions/grib2/tables/19/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/19/4.2.3.0.table +++ b/definitions/grib2/tables/19/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.2.3.1.table b/definitions/grib2/tables/19/4.2.3.1.table index 04cdde1f1..9ce359f2e 100644 --- a/definitions/grib2/tables/19/4.2.3.1.table +++ b/definitions/grib2/tables/19/4.2.3.1.table @@ -23,10 +23,7 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (Numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (Numeric) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.201.table b/definitions/grib2/tables/19/4.201.table index fa173c4e0..7787ce735 100644 --- a/definitions/grib2/tables/19/4.201.table +++ b/definitions/grib2/tables/19/4.201.table @@ -10,6 +10,4 @@ 8 8 Ice pellets 9 9 Graupel 10 10 Hail -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.202.table b/definitions/grib2/tables/19/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/19/4.202.table +++ b/definitions/grib2/tables/19/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.203.table b/definitions/grib2/tables/19/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/19/4.203.table +++ b/definitions/grib2/tables/19/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.204.table b/definitions/grib2/tables/19/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/19/4.204.table +++ b/definitions/grib2/tables/19/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.205.table b/definitions/grib2/tables/19/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/19/4.205.table +++ b/definitions/grib2/tables/19/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.206.table b/definitions/grib2/tables/19/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/19/4.206.table +++ b/definitions/grib2/tables/19/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.207.table b/definitions/grib2/tables/19/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/19/4.207.table +++ b/definitions/grib2/tables/19/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.208.table b/definitions/grib2/tables/19/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/19/4.208.table +++ b/definitions/grib2/tables/19/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.209.table b/definitions/grib2/tables/19/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/19/4.209.table +++ b/definitions/grib2/tables/19/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.210.table b/definitions/grib2/tables/19/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/19/4.210.table +++ b/definitions/grib2/tables/19/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.211.table b/definitions/grib2/tables/19/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/19/4.211.table +++ b/definitions/grib2/tables/19/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.212.table b/definitions/grib2/tables/19/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/19/4.212.table +++ b/definitions/grib2/tables/19/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.213.table b/definitions/grib2/tables/19/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/19/4.213.table +++ b/definitions/grib2/tables/19/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.215.table b/definitions/grib2/tables/19/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/19/4.215.table +++ b/definitions/grib2/tables/19/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.216.table b/definitions/grib2/tables/19/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/19/4.216.table +++ b/definitions/grib2/tables/19/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/19/4.217.table b/definitions/grib2/tables/19/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/19/4.217.table +++ b/definitions/grib2/tables/19/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.218.table b/definitions/grib2/tables/19/4.218.table index b5b15150b..d899242fd 100644 --- a/definitions/grib2/tables/19/4.218.table +++ b/definitions/grib2/tables/19/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -39,6 +38,4 @@ 108 108 High cloud/Cirrus 109 109 High cloud/unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.219.table b/definitions/grib2/tables/19/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/19/4.219.table +++ b/definitions/grib2/tables/19/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.220.table b/definitions/grib2/tables/19/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/19/4.220.table +++ b/definitions/grib2/tables/19/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.221.table b/definitions/grib2/tables/19/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/19/4.221.table +++ b/definitions/grib2/tables/19/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.222.table b/definitions/grib2/tables/19/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/19/4.222.table +++ b/definitions/grib2/tables/19/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.224.table b/definitions/grib2/tables/19/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/19/4.224.table +++ b/definitions/grib2/tables/19/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/19/4.227.table b/definitions/grib2/tables/19/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/19/4.227.table +++ b/definitions/grib2/tables/19/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/19/4.240.table b/definitions/grib2/tables/19/4.240.table index 400a13e26..38ae11671 100644 --- a/definitions/grib2/tables/19/4.240.table +++ b/definitions/grib2/tables/19/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type no. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/19/4.241.table b/definitions/grib2/tables/19/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/19/4.241.table +++ b/definitions/grib2/tables/19/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/19/4.242.table b/definitions/grib2/tables/19/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/19/4.242.table +++ b/definitions/grib2/tables/19/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/19/4.243.table b/definitions/grib2/tables/19/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/19/4.243.table +++ b/definitions/grib2/tables/19/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/19/4.3.table b/definitions/grib2/tables/19/4.3.table index cea1bef4f..8338bbd67 100644 --- a/definitions/grib2/tables/19/4.3.table +++ b/definitions/grib2/tables/19/4.3.table @@ -18,6 +18,4 @@ 16 16 Physical retrieval 17 17 Regression analysis 18 18 Difference between two forecasts -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.4.table b/definitions/grib2/tables/19/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/19/4.4.table +++ b/definitions/grib2/tables/19/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.5.table b/definitions/grib2/tables/19/4.5.table index 33abd6293..5de5a7be7 100644 --- a/definitions/grib2/tables/19/4.5.table +++ b/definitions/grib2/tables/19/4.5.table @@ -16,13 +16,11 @@ 14 14 Level of free convection (LFC) 15 15 Convective condensation level (CCL) 16 16 Level of neutral buoyancy or equilibrium level (LNB) -# 17-19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) -# 25-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -39,14 +37,11 @@ 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) -# 152-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -55,18 +50,14 @@ 165 165 Bottom of sediment layer penetrated by thermal wave (-) 166 sfc Mixing layer (-) 167 167 Bottom of root zone (-) -# 168-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.6.table b/definitions/grib2/tables/19/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/19/4.6.table +++ b/definitions/grib2/tables/19/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.7.table b/definitions/grib2/tables/19/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/19/4.7.table +++ b/definitions/grib2/tables/19/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.8.table b/definitions/grib2/tables/19/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/19/4.8.table +++ b/definitions/grib2/tables/19/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.9.table b/definitions/grib2/tables/19/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/19/4.9.table +++ b/definitions/grib2/tables/19/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/4.91.table b/definitions/grib2/tables/19/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/19/4.91.table +++ b/definitions/grib2/tables/19/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/19/5.0.table b/definitions/grib2/tables/19/5.0.table index 4d6cc68c8..5447eb3c8 100644 --- a/definitions/grib2/tables/19/5.0.table +++ b/definitions/grib2/tables/19/5.0.table @@ -7,15 +7,10 @@ 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/19/5.1.table b/definitions/grib2/tables/19/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/19/5.1.table +++ b/definitions/grib2/tables/19/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/5.2.table b/definitions/grib2/tables/19/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/19/5.2.table +++ b/definitions/grib2/tables/19/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/5.3.table b/definitions/grib2/tables/19/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/19/5.3.table +++ b/definitions/grib2/tables/19/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/5.4.table b/definitions/grib2/tables/19/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/19/5.4.table +++ b/definitions/grib2/tables/19/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/5.40.table b/definitions/grib2/tables/19/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/19/5.40.table +++ b/definitions/grib2/tables/19/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/19/5.5.table b/definitions/grib2/tables/19/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/19/5.5.table +++ b/definitions/grib2/tables/19/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/5.6.table b/definitions/grib2/tables/19/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/19/5.6.table +++ b/definitions/grib2/tables/19/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/19/5.7.table b/definitions/grib2/tables/19/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/19/5.7.table +++ b/definitions/grib2/tables/19/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/2/0.0.table b/definitions/grib2/tables/2/0.0.table index fd2056350..39475306e 100644 --- a/definitions/grib2/tables/2/0.0.table +++ b/definitions/grib2/tables/2/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/1.2.table b/definitions/grib2/tables/2/1.2.table index eb8755209..65b1aca9a 100644 --- a/definitions/grib2/tables/2/1.2.table +++ b/definitions/grib2/tables/2/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -#4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/1.3.table b/definitions/grib2/tables/2/1.3.table index d4ed48c63..d2a1c2770 100644 --- a/definitions/grib2/tables/2/1.3.table +++ b/definitions/grib2/tables/2/1.3.table @@ -5,6 +5,4 @@ 3 3 Re-analysis products 4 4 TIGGE Operational products 5 5 TIGGE test products -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/1.4.table b/definitions/grib2/tables/2/1.4.table index ac21f5c4c..8fa9b6b41 100644 --- a/definitions/grib2/tables/2/1.4.table +++ b/definitions/grib2/tables/2/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event Probability -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/3.0.table b/definitions/grib2/tables/2/3.0.table index 6030a5132..4f4fd7be4 100644 --- a/definitions/grib2/tables/2/3.0.table +++ b/definitions/grib2/tables/2/3.0.table @@ -1,6 +1,4 @@ # CODE TABLE 3.0, Source of Grid Definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition Defined by originating centre -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/2/3.1.table b/definitions/grib2/tables/2/3.1.table index 235fb8bd3..6ad006cb0 100644 --- a/definitions/grib2/tables/2/3.1.table +++ b/definitions/grib2/tables/2/3.1.table @@ -3,41 +3,25 @@ 1 1 Rotated latitude/longitude 2 2 Stretched latitude/longitude 3 3 Stretched and rotated latitude/longitude -# 4-9 Reserved 10 10 Mercator -# 11-19 Reserved 20 20 Polar stereographic can be south or north -# 21-29 Reserved 30 30 Lambert Conformal can be secant or tangent, conical or bipolar 31 31 Albers equal-area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron -# 101-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-129 Reserved 130 130 Irregular latitude/longitude grid -# 131-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid, with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid, with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/2/3.2.table b/definitions/grib2/tables/2/3.2.table index d037ee120..2bf054512 100644 --- a/definitions/grib2/tables/2/3.2.table +++ b/definitions/grib2/tables/2/3.2.table @@ -6,6 +6,4 @@ 4 4 Earth assumed oblate spheroid as defined in IAG-GRS80 model (major axis = 6,378,137.0 m, minor axis = 6,356,752.314 m, f = 1/298.257222101) 5 5 Earth assumed represented by WGS84 (as used by ICAO since 1998) 6 6 Earth assumed spherical with radius of 6,371,229.0 m -# 7-191 Reserved -# 192- 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/3.20.table b/definitions/grib2/tables/2/3.20.table index cfa35ae38..f79d193b6 100644 --- a/definitions/grib2/tables/2/3.20.table +++ b/definitions/grib2/tables/2/3.20.table @@ -1,6 +1,4 @@ # CODE TABLE 3.20, Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/3.21.table b/definitions/grib2/tables/2/3.21.table index c2fd94586..d42c900cb 100644 --- a/definitions/grib2/tables/2/3.21.table +++ b/definitions/grib2/tables/2/3.21.table @@ -1,8 +1,5 @@ # CODE TABLE 3.21, Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates -# 2-10 Reserved 11 11 Geometric coordinates -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/3.8.table b/definitions/grib2/tables/2/3.8.table index 0d9b7d001..a6b503617 100644 --- a/definitions/grib2/tables/2/3.8.table +++ b/definitions/grib2/tables/2/3.8.table @@ -2,7 +2,5 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -#3-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.1.0.table b/definitions/grib2/tables/2/4.1.0.table index 33d1c3984..d9660f77e 100644 --- a/definitions/grib2/tables/2/4.1.0.table +++ b/definitions/grib2/tables/2/4.1.0.table @@ -21,10 +21,8 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical or physical constituents -# 20-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.1.1.table b/definitions/grib2/tables/2/4.1.1.table index ebb7d9ea0..220c7fd5a 100644 --- a/definitions/grib2/tables/2/4.1.1.table +++ b/definitions/grib2/tables/2/4.1.1.table @@ -2,8 +2,6 @@ #Category Description 0 0 Hydrology basic products 1 1 Hydrology probabilities -#2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.1.10.table b/definitions/grib2/tables/2/4.1.10.table index 45b08caaa..5593171ac 100644 --- a/definitions/grib2/tables/2/4.1.10.table +++ b/definitions/grib2/tables/2/4.1.10.table @@ -5,8 +5,6 @@ 2 2 Ice 3 3 Surface Properties 4 4 Sub-surface Properties -# 5-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.1.2.table b/definitions/grib2/tables/2/4.1.2.table index f7f2ea2ba..0426852f0 100644 --- a/definitions/grib2/tables/2/4.1.2.table +++ b/definitions/grib2/tables/2/4.1.2.table @@ -4,8 +4,6 @@ 1 1 Agri-/aquacultural Special Products 2 2 Transportation-related Products 3 3 Soil Products -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.1.3.table b/definitions/grib2/tables/2/4.1.3.table index f7578e163..744f02eba 100644 --- a/definitions/grib2/tables/2/4.1.3.table +++ b/definitions/grib2/tables/2/4.1.3.table @@ -2,8 +2,6 @@ #Category Description 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.10.table b/definitions/grib2/tables/2/4.10.table index 9cf447b69..94bf593af 100644 --- a/definitions/grib2/tables/2/4.10.table +++ b/definitions/grib2/tables/2/4.10.table @@ -10,5 +10,4 @@ 7 cov Covariance (Temporal variance) 8 8 Difference (Value at the start of time range minus value at the end) 9 ratio Ratio -# 192 254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/2/4.11.table b/definitions/grib2/tables/2/4.11.table index 68901aac4..28c7ebbd3 100644 --- a/definitions/grib2/tables/2/4.11.table +++ b/definitions/grib2/tables/2/4.11.table @@ -5,5 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.12.table b/definitions/grib2/tables/2/4.12.table index a8dc4b1c7..f52f20c09 100644 --- a/definitions/grib2/tables/2/4.12.table +++ b/definitions/grib2/tables/2/4.12.table @@ -2,5 +2,4 @@ 0 0 Maintenance Mode 1 1 Clear air 2 2 Precipitation -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.13.table b/definitions/grib2/tables/2/4.13.table index 29ddf2a3c..255f90b78 100644 --- a/definitions/grib2/tables/2/4.13.table +++ b/definitions/grib2/tables/2/4.13.table @@ -1,5 +1,4 @@ # CODE TABLE 4.13, Quality Control Indicator 0 0 No quality control applied 1 1 Quality control applied -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.14.table b/definitions/grib2/tables/2/4.14.table index e19c14c2f..34b0931f7 100644 --- a/definitions/grib2/tables/2/4.14.table +++ b/definitions/grib2/tables/2/4.14.table @@ -1,5 +1,4 @@ # CODE TABLE 4.14, Clutter Filter Indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.15.table b/definitions/grib2/tables/2/4.15.table index e247693ad..d75d8823b 100644 --- a/definitions/grib2/tables/2/4.15.table +++ b/definitions/grib2/tables/2/4.15.table @@ -1,5 +1,4 @@ # CODE TABLE 4.15, Type of auxiliary information 0 0 Confidence level (4.151.table) 1 1 Delta time (seconds) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.151.table b/definitions/grib2/tables/2/4.151.table index 30487afb4..90a8c6ca0 100644 --- a/definitions/grib2/tables/2/4.151.table +++ b/definitions/grib2/tables/2/4.151.table @@ -3,5 +3,4 @@ 1 1 suspect 2 2 acceptable 3 3 excellent -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.0.table b/definitions/grib2/tables/2/4.2.0.0.table index 0386b8cd2..94841baa0 100644 --- a/definitions/grib2/tables/2/4.2.0.0.table +++ b/definitions/grib2/tables/2/4.2.0.0.table @@ -17,7 +17,5 @@ 15 15 Virtual potential temperature (K) 16 16 Snow phase change heat flux (W m-2) 17 17 Skin Temperature (K) -#17-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.1.table b/definitions/grib2/tables/2/4.2.0.1.table index 154f2d007..17bb7b4c5 100644 --- a/definitions/grib2/tables/2/4.2.0.1.table +++ b/definitions/grib2/tables/2/4.2.0.1.table @@ -56,7 +56,5 @@ 58 58 Convective snowfall rate (m s-1) 59 59 Large scale snowfall rate (m s-1) 60 60 Snow depth water equivalent (kg m-2) -#47-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.13.table b/definitions/grib2/tables/2/4.2.0.13.table index 8fc3425af..a8c8c8bce 100644 --- a/definitions/grib2/tables/2/4.2.0.13.table +++ b/definitions/grib2/tables/2/4.2.0.13.table @@ -1,6 +1,4 @@ # Product Discipline 0: Meteorological products, Parameter Category 13: Aerosols 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.14.table b/definitions/grib2/tables/2/4.2.0.14.table index 309c40d47..d3128ec55 100644 --- a/definitions/grib2/tables/2/4.2.0.14.table +++ b/definitions/grib2/tables/2/4.2.0.14.table @@ -1,7 +1,5 @@ # Product Discipline 0: Meteorological products, Parameter Category 14: Trace Gases 0 0 Total ozone (Dobson) 1 1 Ozone mixing ratio (kg kg-1) -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.15.table b/definitions/grib2/tables/2/4.2.0.15.table index bb419178b..e73f9eae7 100644 --- a/definitions/grib2/tables/2/4.2.0.15.table +++ b/definitions/grib2/tables/2/4.2.0.15.table @@ -8,7 +8,5 @@ 6 6 Radar spectra (1) (-) 7 7 Radar spectra (2) (-) 8 8 Radar spectra (3) (-) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.18.table b/definitions/grib2/tables/2/4.2.0.18.table index 5c0fd6e5d..1ee1cb17c 100644 --- a/definitions/grib2/tables/2/4.2.0.18.table +++ b/definitions/grib2/tables/2/4.2.0.18.table @@ -8,7 +8,5 @@ 6 6 Time-integrated air concentration of caesium pollutant (Bq s m-3) 7 7 Time-integrated air concentration of iodine pollutant (Bq s m-3) 8 8 Time-integrated air concentration of radioactive pollutant (Bq s m-3) -# 9-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.19.table b/definitions/grib2/tables/2/4.2.0.19.table index 369c3f657..d56c14505 100644 --- a/definitions/grib2/tables/2/4.2.0.19.table +++ b/definitions/grib2/tables/2/4.2.0.19.table @@ -18,7 +18,5 @@ 16 16 Contrail base (m) 17 17 Maximum snow albedo (%) 18 18 Snow free albedo (%) -# 19-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.190.table b/definitions/grib2/tables/2/4.2.0.190.table index b1f47bc02..b95b4ab90 100644 --- a/definitions/grib2/tables/2/4.2.0.190.table +++ b/definitions/grib2/tables/2/4.2.0.190.table @@ -1,6 +1,4 @@ # Product Discipline 0: Meteorological products, Parameter Category 190: CCITT IA5 string 0 0 Arbitrary text string (CCITTIA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.191.table b/definitions/grib2/tables/2/4.2.0.191.table index affb98f42..d095f705e 100644 --- a/definitions/grib2/tables/2/4.2.0.191.table +++ b/definitions/grib2/tables/2/4.2.0.191.table @@ -1,6 +1,4 @@ # Product Discipline 0: Meteorological products, Parameter Category 191: Miscellaneous 0 0 Seconds prior to initial reference time (defined in Section 1) (s) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.2.table b/definitions/grib2/tables/2/4.2.0.2.table index 1ec945102..75b6211aa 100644 --- a/definitions/grib2/tables/2/4.2.0.2.table +++ b/definitions/grib2/tables/2/4.2.0.2.table @@ -30,6 +30,4 @@ 28 28 V-component storm motion (m s-1) 29 29 Drag coefficient (Numeric) 30 30 Frictional velocity (m s-1) -# 31-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.20.table b/definitions/grib2/tables/2/4.2.0.20.table index 4e7f45db4..4e5938bb4 100644 --- a/definitions/grib2/tables/2/4.2.0.20.table +++ b/definitions/grib2/tables/2/4.2.0.20.table @@ -8,6 +8,4 @@ 7 7 Chemical gross production rate of mole concentration mole.m-3.s-1 8 8 Chemical gross destruction rate of mole concentration mole.m-3.s-1 9 9 Surface dry deposition mass flux into stomata kg.m-2.s-1 -#10-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.3.table b/definitions/grib2/tables/2/4.2.0.3.table index 5c7e8151d..fedd11abd 100644 --- a/definitions/grib2/tables/2/4.2.0.3.table +++ b/definitions/grib2/tables/2/4.2.0.3.table @@ -19,7 +19,5 @@ 17 17 Meridional flux of gravity wave stress (N m-2) 18 18 Planetary boundary layer height (m) 19 19 5-wave geopotential height anomaly (gpm) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.4.table b/definitions/grib2/tables/2/4.2.0.4.table index 815c184a2..06785fac6 100644 --- a/definitions/grib2/tables/2/4.2.0.4.table +++ b/definitions/grib2/tables/2/4.2.0.4.table @@ -8,7 +8,5 @@ 6 6 Radiance (with respect to wave length) (W m-3 sr-1) 7 7 Downward short-wave radiation flux (W m-2) 9 8 Upward short-wave radiation flux (W m-2) -# 9-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.5.table b/definitions/grib2/tables/2/4.2.0.5.table index 1b57fa301..e2749b5a6 100644 --- a/definitions/grib2/tables/2/4.2.0.5.table +++ b/definitions/grib2/tables/2/4.2.0.5.table @@ -5,7 +5,5 @@ 3 3 Downward long-wave radiation flux (W m-2) 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long wave radiation flux (W m-2) -# 5-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.6.table b/definitions/grib2/tables/2/4.2.0.6.table index 05cf72f57..de4e051f2 100644 --- a/definitions/grib2/tables/2/4.2.0.6.table +++ b/definitions/grib2/tables/2/4.2.0.6.table @@ -24,7 +24,5 @@ 22 22 Cloud cover (%) 23 23 Cloud ice mixing ratio (kg kg-1) 24 24 Sunshine (Numeric) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.0.7.table b/definitions/grib2/tables/2/4.2.0.7.table index 78374fde5..16458be11 100644 --- a/definitions/grib2/tables/2/4.2.0.7.table +++ b/definitions/grib2/tables/2/4.2.0.7.table @@ -12,7 +12,5 @@ 10 10 Surface lifted index (K) 11 11 Best (4-layer) lifted index (K) 12 12 Richardson number (Numeric) -#13-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.1.1.table b/definitions/grib2/tables/2/4.2.1.1.table index 2d3ecabf6..158d099c3 100644 --- a/definitions/grib2/tables/2/4.2.1.1.table +++ b/definitions/grib2/tables/2/4.2.1.1.table @@ -2,7 +2,5 @@ 0 0 Conditional percent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Percent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -#3-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.10.0.table b/definitions/grib2/tables/2/4.2.10.0.table index 479e26d51..5dc9bd64a 100644 --- a/definitions/grib2/tables/2/4.2.10.0.table +++ b/definitions/grib2/tables/2/4.2.10.0.table @@ -13,8 +13,6 @@ 11 11 Primary wave mean period (s) 12 12 Secondary wave direction (Degree true) 13 13 Secondary wave mean period (s) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.10.1.table b/definitions/grib2/tables/2/4.2.10.1.table index df18f31dd..b9b2bd024 100644 --- a/definitions/grib2/tables/2/4.2.10.1.table +++ b/definitions/grib2/tables/2/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m s-1) 2 2 u-component of current (m s-1) 3 3 v-component of current (m s-1) -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.10.2.table b/definitions/grib2/tables/2/4.2.10.2.table index cb73da46c..8e5a41949 100644 --- a/definitions/grib2/tables/2/4.2.10.2.table +++ b/definitions/grib2/tables/2/4.2.10.2.table @@ -7,6 +7,4 @@ 5 5 v-component of ice drift (m s-1) 6 6 Ice growth rate (m s-1) 7 7 Ice divergence (s-1) -# 8-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.10.3.table b/definitions/grib2/tables/2/4.2.10.3.table index a14ae22e3..5315b46c6 100644 --- a/definitions/grib2/tables/2/4.2.10.3.table +++ b/definitions/grib2/tables/2/4.2.10.3.table @@ -1,6 +1,4 @@ # Product Discipline 10: Oceanographic products, Parameter Category 3: Surface Properties 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.10.4.table b/definitions/grib2/tables/2/4.2.10.4.table index a24c3c8c4..c76136014 100644 --- a/definitions/grib2/tables/2/4.2.10.4.table +++ b/definitions/grib2/tables/2/4.2.10.4.table @@ -3,7 +3,5 @@ 1 1 Main thermocline anomaly (m) 2 2 Transient thermocline depth (m) 3 3 Salinity (kg kg-1) -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.2.0.table b/definitions/grib2/tables/2/4.2.2.0.table index fdc8ce0ef..ebca9dcb4 100644 --- a/definitions/grib2/tables/2/4.2.2.0.table +++ b/definitions/grib2/tables/2/4.2.2.0.table @@ -23,7 +23,5 @@ 21 21 Humidity parameter in canopy conductance (Proportion) 22 22 Soil moisture (kg m-3) 26 26 Wilting point (kg m-3) -# 23-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.2.3.table b/definitions/grib2/tables/2/4.2.2.3.table index d6376fecb..fcca2b27f 100644 --- a/definitions/grib2/tables/2/4.2.2.3.table +++ b/definitions/grib2/tables/2/4.2.2.3.table @@ -10,7 +10,5 @@ 8 8 Direct evaporation cease (soil moisture) (Proportion) 9 9 Soil porosity (Proportion) 12 12 Transpiration stress-onset (soil moisture) (kg m-3) -# 11-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.3.0.table b/definitions/grib2/tables/2/4.2.3.0.table index 944566388..209542d4e 100644 --- a/definitions/grib2/tables/2/4.2.3.0.table +++ b/definitions/grib2/tables/2/4.2.3.0.table @@ -8,7 +8,5 @@ 6 6 Scaled skin temperature (Numeric) 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) -# 9-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.2.3.1.table b/definitions/grib2/tables/2/4.2.3.1.table index 60d6e8420..2a34fc2c6 100644 --- a/definitions/grib2/tables/2/4.2.3.1.table +++ b/definitions/grib2/tables/2/4.2.3.1.table @@ -5,7 +5,5 @@ 3 3 Cloud top height quality indicator (Code table 4.219) 4 4 Estimated u component of wind (m s-1) 5 5 Estimated v component of wind (m s-1) -# 6-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.201.table b/definitions/grib2/tables/2/4.201.table index bd20dd356..d2da38501 100644 --- a/definitions/grib2/tables/2/4.201.table +++ b/definitions/grib2/tables/2/4.201.table @@ -4,5 +4,4 @@ 3 3 Freezing rain 4 4 Mixed/ice 5 5 Snow -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.202.table b/definitions/grib2/tables/2/4.202.table index 242f2d5af..8044d02aa 100644 --- a/definitions/grib2/tables/2/4.202.table +++ b/definitions/grib2/tables/2/4.202.table @@ -1,3 +1,2 @@ # CODE TABLE 4.202, Precipitable water category -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.203.table b/definitions/grib2/tables/2/4.203.table index 057f40910..d7a750534 100644 --- a/definitions/grib2/tables/2/4.203.table +++ b/definitions/grib2/tables/2/4.203.table @@ -21,5 +21,4 @@ 19 19 Cirrocumulus - ground based fog beneath the lowest layer 20 20 Cirrus - ground based fog beneath the lowest layer 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.204.table b/definitions/grib2/tables/2/4.204.table index 41b47ef7c..eebc517a6 100644 --- a/definitions/grib2/tables/2/4.204.table +++ b/definitions/grib2/tables/2/4.204.table @@ -4,5 +4,4 @@ 2 2 Few (3% - 15%) 3 3 Scattered (16% - 45%) 4 4 Numerous (> 45%) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.205.table b/definitions/grib2/tables/2/4.205.table index 179b09e08..10a1f5bbf 100644 --- a/definitions/grib2/tables/2/4.205.table +++ b/definitions/grib2/tables/2/4.205.table @@ -1,5 +1,4 @@ # CODE TABLE 4.205, Aerosol type 0 0 Aerosol not present 1 1 Aerosol present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.206.table b/definitions/grib2/tables/2/4.206.table index ea5bfcbc2..33353e74b 100644 --- a/definitions/grib2/tables/2/4.206.table +++ b/definitions/grib2/tables/2/4.206.table @@ -1,5 +1,4 @@ # CODE TABLE 4.206, Volcanic ash 0 0 Not present 1 1 Present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.207.table b/definitions/grib2/tables/2/4.207.table index 1fa48a194..d92a6b811 100644 --- a/definitions/grib2/tables/2/4.207.table +++ b/definitions/grib2/tables/2/4.207.table @@ -3,5 +3,4 @@ 1 1 Light 2 2 Moderate 3 3 Severe -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.208.table b/definitions/grib2/tables/2/4.208.table index 902d03a57..a14539b22 100644 --- a/definitions/grib2/tables/2/4.208.table +++ b/definitions/grib2/tables/2/4.208.table @@ -4,5 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.209.table b/definitions/grib2/tables/2/4.209.table index 7218049e4..e0c422325 100644 --- a/definitions/grib2/tables/2/4.209.table +++ b/definitions/grib2/tables/2/4.209.table @@ -3,5 +3,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.210.table b/definitions/grib2/tables/2/4.210.table index bdf3a3ee5..d80f75067 100644 --- a/definitions/grib2/tables/2/4.210.table +++ b/definitions/grib2/tables/2/4.210.table @@ -1,5 +1,4 @@ # CODE TABLE 4.210, Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.211.table b/definitions/grib2/tables/2/4.211.table index 56565001c..01bb27657 100644 --- a/definitions/grib2/tables/2/4.211.table +++ b/definitions/grib2/tables/2/4.211.table @@ -2,5 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non bypass -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.212.table b/definitions/grib2/tables/2/4.212.table index 10f38d1ef..e7274d600 100644 --- a/definitions/grib2/tables/2/4.212.table +++ b/definitions/grib2/tables/2/4.212.table @@ -12,5 +12,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.213.table b/definitions/grib2/tables/2/4.213.table index 199042325..4bf4f0ab0 100644 --- a/definitions/grib2/tables/2/4.213.table +++ b/definitions/grib2/tables/2/4.213.table @@ -10,5 +10,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.217.table b/definitions/grib2/tables/2/4.217.table index 2bd70f1d3..032b14964 100644 --- a/definitions/grib2/tables/2/4.217.table +++ b/definitions/grib2/tables/2/4.217.table @@ -3,5 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.220.table b/definitions/grib2/tables/2/4.220.table index ea7c55e48..d2efbaae3 100644 --- a/definitions/grib2/tables/2/4.220.table +++ b/definitions/grib2/tables/2/4.220.table @@ -1,5 +1,4 @@ # CODE TABLE 4.220, Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.221.table b/definitions/grib2/tables/2/4.221.table index d63c545c5..27775d7d0 100644 --- a/definitions/grib2/tables/2/4.221.table +++ b/definitions/grib2/tables/2/4.221.table @@ -1,5 +1,4 @@ # CODE TABLE 4.221, Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.230.table b/definitions/grib2/tables/2/4.230.table index 23e819b65..511b005e8 100644 --- a/definitions/grib2/tables/2/4.230.table +++ b/definitions/grib2/tables/2/4.230.table @@ -27,7 +27,6 @@ 25 25 Non-methane volatile organic compounds expressed as carbon 26 26 Anthropogenic non-methane volatile organic compounds expressed as carbon 27 27 Biogenic non-methane volatile organic compounds expressed as carbon -#28-39999 28-39999 Reserved 40000 40000 Sulphate dry aerosol 40001 40001 Black carbon dry aerosol 40002 40002 Particulate organic matter dry aerosol @@ -42,6 +41,4 @@ 40011 40011 Nitrate dry aerosol 40012 40012 Ammonium dry aerosol 40013 40013 Water in ambient aerosol -#40014-63999 40014-63999 Reserved -#64000-65534 64000-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/2/4.3.table b/definitions/grib2/tables/2/4.3.table index 84a72352b..c786df210 100644 --- a/definitions/grib2/tables/2/4.3.table +++ b/definitions/grib2/tables/2/4.3.table @@ -8,6 +8,4 @@ 6 6 Forecast error 7 7 Analysis error 8 8 Observation -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.4.table b/definitions/grib2/tables/2/4.4.table index 61aa20c5f..ae3c412b5 100644 --- a/definitions/grib2/tables/2/4.4.table +++ b/definitions/grib2/tables/2/4.4.table @@ -11,6 +11,4 @@ 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.5.table b/definitions/grib2/tables/2/4.5.table index 43d838be5..b6fb60538 100644 --- a/definitions/grib2/tables/2/4.5.table +++ b/definitions/grib2/tables/2/4.5.table @@ -9,9 +9,7 @@ 7 sfc Tropopause 8 sfc Nominal top of the atmosphere 9 9 Sea bottom -# 10-19 Reserved 20 20 Isothermal level (K) -#21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -24,10 +22,6 @@ 109 pv Potential vorticity surface (K m2 kg-1 s-1) 110 110 Reserved 111 111 Eta level -# 112-116 Reserved 117 117 Mixed layer depth (m) -# 118-159 Reserved 160 160 Depth below sea level (m) -#161-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.6.table b/definitions/grib2/tables/2/4.6.table index dc6d94c20..2147b6e13 100644 --- a/definitions/grib2/tables/2/4.6.table +++ b/definitions/grib2/tables/2/4.6.table @@ -4,5 +4,4 @@ 1 1 Unperturbed low-resolution control forecast 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.7.table b/definitions/grib2/tables/2/4.7.table index 118508672..1dfaf3f0e 100644 --- a/definitions/grib2/tables/2/4.7.table +++ b/definitions/grib2/tables/2/4.7.table @@ -6,5 +6,4 @@ 4 4 Spread of all members 5 5 Large anomaly index of all members (see Note) 6 6 Unweighted mean of the cluster members -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.8.table b/definitions/grib2/tables/2/4.8.table index bba75820a..47d463adf 100644 --- a/definitions/grib2/tables/2/4.8.table +++ b/definitions/grib2/tables/2/4.8.table @@ -1,5 +1,4 @@ # CODE TABLE 4.8, Clustering Method 0 0 Anomaly correlation 1 1 Root mean square -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.9.table b/definitions/grib2/tables/2/4.9.table index e6e03ba8f..9594a005d 100644 --- a/definitions/grib2/tables/2/4.9.table +++ b/definitions/grib2/tables/2/4.9.table @@ -4,5 +4,4 @@ 2 2 Probability of event between lower and upper limits. The range includes the lower limit but not the upper limit 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/4.91.table b/definitions/grib2/tables/2/4.91.table index 6e71a66d7..c612d0599 100644 --- a/definitions/grib2/tables/2/4.91.table +++ b/definitions/grib2/tables/2/4.91.table @@ -11,5 +11,4 @@ 9 9 Lower or equal upper limit 10 10 Between lower and upper limits. The range includes the upper limit but not the lower limit 11 11 Equal to first limit -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/2/5.0.table b/definitions/grib2/tables/2/5.0.table index b9b301151..7613820fc 100644 --- a/definitions/grib2/tables/2/5.0.table +++ b/definitions/grib2/tables/2/5.0.table @@ -9,7 +9,6 @@ 50 50 Spectral data -simple packing 51 51 Spherical harmonics data - complex packing 61 61 Grid point data - simple packing with logarithm pre-processing -# 192-254 Reserved for local use 255 255 Missing 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling diff --git a/definitions/grib2/tables/2/5.1.table b/definitions/grib2/tables/2/5.1.table index d7ca4bedc..52ac8d861 100644 --- a/definitions/grib2/tables/2/5.1.table +++ b/definitions/grib2/tables/2/5.1.table @@ -1,5 +1,4 @@ # CODE TABLE 5.1, Type of original field values 0 0 Floating point 1 1 Integer -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/5.2.table b/definitions/grib2/tables/2/5.2.table index a048d712e..040c7fd6d 100644 --- a/definitions/grib2/tables/2/5.2.table +++ b/definitions/grib2/tables/2/5.2.table @@ -2,5 +2,4 @@ 0 0 Explicit coordinate values set 1 1 Linear coordinates 11 11 Geometric coordinates -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/5.3.table b/definitions/grib2/tables/2/5.3.table index 4a673ef85..e92a2b74c 100644 --- a/definitions/grib2/tables/2/5.3.table +++ b/definitions/grib2/tables/2/5.3.table @@ -2,5 +2,4 @@ 1 1 Direction Degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/5.4.table b/definitions/grib2/tables/2/5.4.table index 1fd37966f..aed51082a 100644 --- a/definitions/grib2/tables/2/5.4.table +++ b/definitions/grib2/tables/2/5.4.table @@ -1,5 +1,4 @@ # CODE TABLE 5.4, Group Splitting Method 0 0 Row by row splitting 1 1 General group splitting -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/5.40.table b/definitions/grib2/tables/2/5.40.table index 1eef7c763..a31bebc59 100644 --- a/definitions/grib2/tables/2/5.40.table +++ b/definitions/grib2/tables/2/5.40.table @@ -1,5 +1,4 @@ # Code Table 5.40: Type of Compression 0 0 Lossless 1 1 Lossy -#2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/2/5.5.table b/definitions/grib2/tables/2/5.5.table index d1caac9e8..2143388cb 100644 --- a/definitions/grib2/tables/2/5.5.table +++ b/definitions/grib2/tables/2/5.5.table @@ -3,5 +3,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/2/5.6.table b/definitions/grib2/tables/2/5.6.table index 91b307829..7bfd6d83e 100644 --- a/definitions/grib2/tables/2/5.6.table +++ b/definitions/grib2/tables/2/5.6.table @@ -1,5 +1,4 @@ # CODE TABLE 5.6, Order of Spatial Differencing 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/0.0.table b/definitions/grib2/tables/20/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/20/0.0.table +++ b/definitions/grib2/tables/20/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/1.2.table b/definitions/grib2/tables/20/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/20/1.2.table +++ b/definitions/grib2/tables/20/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/1.3.table b/definitions/grib2/tables/20/1.3.table index c1a9a7b9d..7b5690caa 100644 --- a/definitions/grib2/tables/20/1.3.table +++ b/definitions/grib2/tables/20/1.3.table @@ -9,6 +9,4 @@ 7 7 S2S test products 8 8 Uncertainties in Ensembles of Regional ReAnalyses project (UERRA) 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/1.4.table b/definitions/grib2/tables/20/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/20/1.4.table +++ b/definitions/grib2/tables/20/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/20/1.5.table b/definitions/grib2/tables/20/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/20/1.5.table +++ b/definitions/grib2/tables/20/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/20/1.6.table b/definitions/grib2/tables/20/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/20/1.6.table +++ b/definitions/grib2/tables/20/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/3.0.table b/definitions/grib2/tables/20/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/20/3.0.table +++ b/definitions/grib2/tables/20/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/20/3.1.table b/definitions/grib2/tables/20/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/20/3.1.table +++ b/definitions/grib2/tables/20/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/20/3.10.table b/definitions/grib2/tables/20/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/20/3.10.table +++ b/definitions/grib2/tables/20/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/20/3.11.table b/definitions/grib2/tables/20/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/20/3.11.table +++ b/definitions/grib2/tables/20/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/20/3.15.table b/definitions/grib2/tables/20/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/20/3.15.table +++ b/definitions/grib2/tables/20/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/3.2.table b/definitions/grib2/tables/20/3.2.table index 56ffdc08e..3d47cc431 100644 --- a/definitions/grib2/tables/20/3.2.table +++ b/definitions/grib2/tables/20/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS-84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/3.20.table b/definitions/grib2/tables/20/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/20/3.20.table +++ b/definitions/grib2/tables/20/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/3.21.table b/definitions/grib2/tables/20/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/20/3.21.table +++ b/definitions/grib2/tables/20/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/3.3.table b/definitions/grib2/tables/20/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/20/3.3.table +++ b/definitions/grib2/tables/20/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/20/3.7.table b/definitions/grib2/tables/20/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/20/3.7.table +++ b/definitions/grib2/tables/20/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/20/3.8.table b/definitions/grib2/tables/20/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/20/3.8.table +++ b/definitions/grib2/tables/20/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/3.9.table b/definitions/grib2/tables/20/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/20/3.9.table +++ b/definitions/grib2/tables/20/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/20/4.0.table b/definitions/grib2/tables/20/4.0.table index a37b59d09..f8a1863f0 100644 --- a/definitions/grib2/tables/20/4.0.table +++ b/definitions/grib2/tables/20/4.0.table @@ -15,15 +15,12 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data -# 35-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -47,29 +42,21 @@ 59 59 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters (corrected version of template 4.56) 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 62-66 Reserved 67 67 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/20/4.1.0.table b/definitions/grib2/tables/20/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/20/4.1.0.table +++ b/definitions/grib2/tables/20/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.1.1.table b/definitions/grib2/tables/20/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/20/4.1.1.table +++ b/definitions/grib2/tables/20/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.1.10.table b/definitions/grib2/tables/20/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/20/4.1.10.table +++ b/definitions/grib2/tables/20/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.1.2.table b/definitions/grib2/tables/20/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/20/4.1.2.table +++ b/definitions/grib2/tables/20/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.1.3.table b/definitions/grib2/tables/20/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/20/4.1.3.table +++ b/definitions/grib2/tables/20/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.10.table b/definitions/grib2/tables/20/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/20/4.10.table +++ b/definitions/grib2/tables/20/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/20/4.11.table b/definitions/grib2/tables/20/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/20/4.11.table +++ b/definitions/grib2/tables/20/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.12.table b/definitions/grib2/tables/20/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/20/4.12.table +++ b/definitions/grib2/tables/20/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.13.table b/definitions/grib2/tables/20/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/20/4.13.table +++ b/definitions/grib2/tables/20/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.14.table b/definitions/grib2/tables/20/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/20/4.14.table +++ b/definitions/grib2/tables/20/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.15.table b/definitions/grib2/tables/20/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/20/4.15.table +++ b/definitions/grib2/tables/20/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.0.table b/definitions/grib2/tables/20/4.2.0.0.table index 83b3e8ef1..3cd04f347 100644 --- a/definitions/grib2/tables/20/4.2.0.0.table +++ b/definitions/grib2/tables/20/4.2.0.0.table @@ -29,6 +29,4 @@ 27 27 Wet-bulb temperature (K) 28 28 Unbalanced component of temperature (K) 29 29 Temperature advection (K s-1) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.1.table b/definitions/grib2/tables/20/4.2.0.1.table index b4c1e8ba3..1a661773a 100644 --- a/definitions/grib2/tables/20/4.2.0.1.table +++ b/definitions/grib2/tables/20/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -121,6 +120,4 @@ 119 119 Unbalanced component of specific cloud liquid water content (kg kg-1) 120 120 Unbalanced component of specific cloud ice water content (kg kg-1) 121 121 Fraction of snow cover (Proportion) -# 122-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.13.table b/definitions/grib2/tables/20/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/20/4.2.0.13.table +++ b/definitions/grib2/tables/20/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.14.table b/definitions/grib2/tables/20/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/20/4.2.0.14.table +++ b/definitions/grib2/tables/20/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.15.table b/definitions/grib2/tables/20/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/20/4.2.0.15.table +++ b/definitions/grib2/tables/20/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.16.table b/definitions/grib2/tables/20/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/20/4.2.0.16.table +++ b/definitions/grib2/tables/20/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.18.table b/definitions/grib2/tables/20/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/20/4.2.0.18.table +++ b/definitions/grib2/tables/20/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.19.table b/definitions/grib2/tables/20/4.2.0.19.table index af9648d43..90df2dec1 100644 --- a/definitions/grib2/tables/20/4.2.0.19.table +++ b/definitions/grib2/tables/20/4.2.0.19.table @@ -35,6 +35,4 @@ 33 33 Visibility through liquid fog (m) 34 34 Visibility through ice fog (m) 35 35 Visibility through blowing snow (m) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.190.table b/definitions/grib2/tables/20/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/20/4.2.0.190.table +++ b/definitions/grib2/tables/20/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.191.table b/definitions/grib2/tables/20/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/20/4.2.0.191.table +++ b/definitions/grib2/tables/20/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.2.table b/definitions/grib2/tables/20/4.2.0.2.table index 8a70b2591..8651adc7c 100644 --- a/definitions/grib2/tables/20/4.2.0.2.table +++ b/definitions/grib2/tables/20/4.2.0.2.table @@ -46,6 +46,4 @@ 44 44 Geostrophic wind speed (m s-1) 45 45 Unbalanced component of divergence (s-1) 46 46 Vorticity advection (s-2) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.20.table b/definitions/grib2/tables/20/4.2.0.20.table index bbdeef5b1..4392e7b76 100644 --- a/definitions/grib2/tables/20/4.2.0.20.table +++ b/definitions/grib2/tables/20/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -29,7 +28,6 @@ 61 61 Maximum of mass density in layer (kg m-3) 62 62 Height of maximum mass density (m) 63 63 Column-averaged mass density in layer (kg m-3) -# 64-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -42,6 +40,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.3.table b/definitions/grib2/tables/20/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/20/4.2.0.3.table +++ b/definitions/grib2/tables/20/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.4.table b/definitions/grib2/tables/20/4.2.0.4.table index f97270456..d5024628b 100644 --- a/definitions/grib2/tables/20/4.2.0.4.table +++ b/definitions/grib2/tables/20/4.2.0.4.table @@ -14,11 +14,8 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) -# 54-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.5.table b/definitions/grib2/tables/20/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/20/4.2.0.5.table +++ b/definitions/grib2/tables/20/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.6.table b/definitions/grib2/tables/20/4.2.0.6.table index 0450ec194..4e5d7ee4c 100644 --- a/definitions/grib2/tables/20/4.2.0.6.table +++ b/definitions/grib2/tables/20/4.2.0.6.table @@ -40,10 +40,7 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.0.7.table b/definitions/grib2/tables/20/4.2.0.7.table index 6289d8b20..2c5b697db 100644 --- a/definitions/grib2/tables/20/4.2.0.7.table +++ b/definitions/grib2/tables/20/4.2.0.7.table @@ -19,6 +19,4 @@ 17 17 Gradient Richardson number (Numeric) 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.1.0.table b/definitions/grib2/tables/20/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/20/4.2.1.0.table +++ b/definitions/grib2/tables/20/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.1.1.table b/definitions/grib2/tables/20/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/20/4.2.1.1.table +++ b/definitions/grib2/tables/20/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.10.0.table b/definitions/grib2/tables/20/4.2.10.0.table index 3611abd9a..5014980aa 100644 --- a/definitions/grib2/tables/20/4.2.10.0.table +++ b/definitions/grib2/tables/20/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (/s) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.10.1.table b/definitions/grib2/tables/20/4.2.10.1.table index 237e6865a..926267e52 100644 --- a/definitions/grib2/tables/20/4.2.10.1.table +++ b/definitions/grib2/tables/20/4.2.10.1.table @@ -4,6 +4,4 @@ 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) 4 4 Rip current occurrence probability (%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.10.191.table b/definitions/grib2/tables/20/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/20/4.2.10.191.table +++ b/definitions/grib2/tables/20/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.10.2.table b/definitions/grib2/tables/20/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/20/4.2.10.2.table +++ b/definitions/grib2/tables/20/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.10.3.table b/definitions/grib2/tables/20/4.2.10.3.table index b01d7ae46..f6229ac12 100644 --- a/definitions/grib2/tables/20/4.2.10.3.table +++ b/definitions/grib2/tables/20/4.2.10.3.table @@ -2,6 +2,4 @@ 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) 2 2 Heat exchange coefficient (-) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.10.4.table b/definitions/grib2/tables/20/4.2.10.4.table index d5615ae26..15cc8b4b3 100644 --- a/definitions/grib2/tables/20/4.2.10.4.table +++ b/definitions/grib2/tables/20/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.2.0.table b/definitions/grib2/tables/20/4.2.2.0.table index b253cac22..090bbb64a 100644 --- a/definitions/grib2/tables/20/4.2.2.0.table +++ b/definitions/grib2/tables/20/4.2.2.0.table @@ -38,6 +38,4 @@ 36 36 Tile fraction (Proportion) 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.2.3.table b/definitions/grib2/tables/20/4.2.2.3.table index 2674e9f42..9699073e8 100644 --- a/definitions/grib2/tables/20/4.2.2.3.table +++ b/definitions/grib2/tables/20/4.2.2.3.table @@ -27,6 +27,4 @@ 25 25 Snow depth at elevation bands (kg m-2) 26 26 Soil heat flux (W m-2) 27 27 Soil depth (m) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.2.4.table b/definitions/grib2/tables/20/4.2.2.4.table index ceb761557..3ee2176f6 100644 --- a/definitions/grib2/tables/20/4.2.2.4.table +++ b/definitions/grib2/tables/20/4.2.2.4.table @@ -11,6 +11,4 @@ 9 9 Initial Fire Spread Index (Canadian Forest Service) (Numeric) 10 10 Fire Buildup Index (Canadian Forest Service) (Numeric) 11 11 Fire Daily Severity Rating (Canadian Forest Service) (Numeric) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.3.0.table b/definitions/grib2/tables/20/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/20/4.2.3.0.table +++ b/definitions/grib2/tables/20/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.2.3.1.table b/definitions/grib2/tables/20/4.2.3.1.table index 04cdde1f1..9ce359f2e 100644 --- a/definitions/grib2/tables/20/4.2.3.1.table +++ b/definitions/grib2/tables/20/4.2.3.1.table @@ -23,10 +23,7 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (Numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (Numeric) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.201.table b/definitions/grib2/tables/20/4.201.table index fa173c4e0..7787ce735 100644 --- a/definitions/grib2/tables/20/4.201.table +++ b/definitions/grib2/tables/20/4.201.table @@ -10,6 +10,4 @@ 8 8 Ice pellets 9 9 Graupel 10 10 Hail -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.202.table b/definitions/grib2/tables/20/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/20/4.202.table +++ b/definitions/grib2/tables/20/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.203.table b/definitions/grib2/tables/20/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/20/4.203.table +++ b/definitions/grib2/tables/20/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.204.table b/definitions/grib2/tables/20/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/20/4.204.table +++ b/definitions/grib2/tables/20/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.205.table b/definitions/grib2/tables/20/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/20/4.205.table +++ b/definitions/grib2/tables/20/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.206.table b/definitions/grib2/tables/20/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/20/4.206.table +++ b/definitions/grib2/tables/20/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.207.table b/definitions/grib2/tables/20/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/20/4.207.table +++ b/definitions/grib2/tables/20/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.208.table b/definitions/grib2/tables/20/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/20/4.208.table +++ b/definitions/grib2/tables/20/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.209.table b/definitions/grib2/tables/20/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/20/4.209.table +++ b/definitions/grib2/tables/20/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.210.table b/definitions/grib2/tables/20/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/20/4.210.table +++ b/definitions/grib2/tables/20/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.211.table b/definitions/grib2/tables/20/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/20/4.211.table +++ b/definitions/grib2/tables/20/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.212.table b/definitions/grib2/tables/20/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/20/4.212.table +++ b/definitions/grib2/tables/20/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.213.table b/definitions/grib2/tables/20/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/20/4.213.table +++ b/definitions/grib2/tables/20/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.215.table b/definitions/grib2/tables/20/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/20/4.215.table +++ b/definitions/grib2/tables/20/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.216.table b/definitions/grib2/tables/20/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/20/4.216.table +++ b/definitions/grib2/tables/20/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/20/4.217.table b/definitions/grib2/tables/20/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/20/4.217.table +++ b/definitions/grib2/tables/20/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.218.table b/definitions/grib2/tables/20/4.218.table index b5b15150b..d899242fd 100644 --- a/definitions/grib2/tables/20/4.218.table +++ b/definitions/grib2/tables/20/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -39,6 +38,4 @@ 108 108 High cloud/Cirrus 109 109 High cloud/unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.219.table b/definitions/grib2/tables/20/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/20/4.219.table +++ b/definitions/grib2/tables/20/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.220.table b/definitions/grib2/tables/20/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/20/4.220.table +++ b/definitions/grib2/tables/20/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.221.table b/definitions/grib2/tables/20/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/20/4.221.table +++ b/definitions/grib2/tables/20/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.222.table b/definitions/grib2/tables/20/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/20/4.222.table +++ b/definitions/grib2/tables/20/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.224.table b/definitions/grib2/tables/20/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/20/4.224.table +++ b/definitions/grib2/tables/20/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/20/4.227.table b/definitions/grib2/tables/20/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/20/4.227.table +++ b/definitions/grib2/tables/20/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/20/4.230.table b/definitions/grib2/tables/20/4.230.table index 304955feb..d2e91fadb 100644 --- a/definitions/grib2/tables/20/4.230.table +++ b/definitions/grib2/tables/20/4.230.table @@ -38,7 +38,6 @@ 36 36 Hypobromous acid HBrO 37 37 Bromine nitrate BrONO2 38 38 Oxygen O2 -#39-9999 Reserved 10000 10000 Hydroxyl radical OH 10001 10001 Methyl peroxy radical CH3O2 10002 10002 Methyl hydroperoxide CH3O2H @@ -62,9 +61,7 @@ 10021 10021 Benzene C6H6 10022 10022 Toluene C7H8 10023 10023 Xylene C8H10 -#10024-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) -#10501-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 @@ -86,9 +83,7 @@ 20019 20019 Hexachlorocyclohexane (HCH) 20020 20020 Alpha hexachlorocyclohexane 20021 20021 Hexachlorobiphenyl (PCB-153) -#20022-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -#30001-30009 Reserved 30010 30010 Hydrogen H-3 30011 30011 Hydrogen organic bounded H-3o 30012 30012 Hydrogen inorganic H-3a @@ -374,7 +369,6 @@ 30292 30292 Sum noble gas SumNG 30293 30293 Activation gas ActGas 30294 30294 Cs-137 Equivalent EquCs137 -#30295-59999 Reserved 60000 60000 HOx radical (OH+HO2) 60001 60001 Total inorganic and organic peroxy radicals (HO2 + RO2) 60002 60002 Passive Ozone @@ -393,7 +387,6 @@ 60015 60015 Biogenic non-methane volatile organic compounds expressed as carbon 60016 60016 Lumped oxygenated hydrocarbons 60017 60017 NOx expressed as nitrogen dioxide (NO2) -#60018-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -413,14 +406,12 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -#62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027-62099 Reserved 62100 62100 Alnus (Alder) pollen 62101 62101 Betula (Birch) pollen 62102 62102 Castanea (Chestnut) pollen @@ -436,14 +427,11 @@ 62112 62112 Taxus (Yew) pollen 62113 62113 Tilia (Lime, Linden) pollen 62114 62114 Ulmus (Elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (Ragweed, Burr-ragweed ) pollen 62201 62201 Artemisia (Sagebrush, Wormwood, Mugwort) pollen 62202 62202 Brassica (Rape, Broccoli, Brussels Sprouts, Cabbage, Cauliflower, Collards, Kale, Kohlrabi, Mustard, Rutabaga) pollen 62203 62203 Plantago (Plantain) pollen 62204 62204 Rumex (Dock, Sorrel) pollen 62205 62205 Urtica (Nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (Grass family) pollen -# 62301-65534 Reserved 65535 65535 Missing diff --git a/definitions/grib2/tables/20/4.240.table b/definitions/grib2/tables/20/4.240.table index 400a13e26..38ae11671 100644 --- a/definitions/grib2/tables/20/4.240.table +++ b/definitions/grib2/tables/20/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type no. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/20/4.241.table b/definitions/grib2/tables/20/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/20/4.241.table +++ b/definitions/grib2/tables/20/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/20/4.242.table b/definitions/grib2/tables/20/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/20/4.242.table +++ b/definitions/grib2/tables/20/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/20/4.243.table b/definitions/grib2/tables/20/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/20/4.243.table +++ b/definitions/grib2/tables/20/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/20/4.3.table b/definitions/grib2/tables/20/4.3.table index cea1bef4f..8338bbd67 100644 --- a/definitions/grib2/tables/20/4.3.table +++ b/definitions/grib2/tables/20/4.3.table @@ -18,6 +18,4 @@ 16 16 Physical retrieval 17 17 Regression analysis 18 18 Difference between two forecasts -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.4.table b/definitions/grib2/tables/20/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/20/4.4.table +++ b/definitions/grib2/tables/20/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.5.table b/definitions/grib2/tables/20/4.5.table index 33abd6293..5de5a7be7 100644 --- a/definitions/grib2/tables/20/4.5.table +++ b/definitions/grib2/tables/20/4.5.table @@ -16,13 +16,11 @@ 14 14 Level of free convection (LFC) 15 15 Convective condensation level (CCL) 16 16 Level of neutral buoyancy or equilibrium level (LNB) -# 17-19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) -# 25-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -39,14 +37,11 @@ 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) -# 152-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -55,18 +50,14 @@ 165 165 Bottom of sediment layer penetrated by thermal wave (-) 166 sfc Mixing layer (-) 167 167 Bottom of root zone (-) -# 168-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.6.table b/definitions/grib2/tables/20/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/20/4.6.table +++ b/definitions/grib2/tables/20/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.7.table b/definitions/grib2/tables/20/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/20/4.7.table +++ b/definitions/grib2/tables/20/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.8.table b/definitions/grib2/tables/20/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/20/4.8.table +++ b/definitions/grib2/tables/20/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.9.table b/definitions/grib2/tables/20/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/20/4.9.table +++ b/definitions/grib2/tables/20/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/4.91.table b/definitions/grib2/tables/20/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/20/4.91.table +++ b/definitions/grib2/tables/20/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/20/5.0.table b/definitions/grib2/tables/20/5.0.table index 4d6cc68c8..5447eb3c8 100644 --- a/definitions/grib2/tables/20/5.0.table +++ b/definitions/grib2/tables/20/5.0.table @@ -7,15 +7,10 @@ 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/20/5.1.table b/definitions/grib2/tables/20/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/20/5.1.table +++ b/definitions/grib2/tables/20/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/5.2.table b/definitions/grib2/tables/20/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/20/5.2.table +++ b/definitions/grib2/tables/20/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/5.3.table b/definitions/grib2/tables/20/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/20/5.3.table +++ b/definitions/grib2/tables/20/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/5.4.table b/definitions/grib2/tables/20/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/20/5.4.table +++ b/definitions/grib2/tables/20/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/5.40.table b/definitions/grib2/tables/20/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/20/5.40.table +++ b/definitions/grib2/tables/20/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/20/5.5.table b/definitions/grib2/tables/20/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/20/5.5.table +++ b/definitions/grib2/tables/20/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/5.6.table b/definitions/grib2/tables/20/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/20/5.6.table +++ b/definitions/grib2/tables/20/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/20/5.7.table b/definitions/grib2/tables/20/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/20/5.7.table +++ b/definitions/grib2/tables/20/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/21/0.0.table b/definitions/grib2/tables/21/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/21/0.0.table +++ b/definitions/grib2/tables/21/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/1.2.table b/definitions/grib2/tables/21/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/21/1.2.table +++ b/definitions/grib2/tables/21/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/1.3.table b/definitions/grib2/tables/21/1.3.table index c1a9a7b9d..7b5690caa 100644 --- a/definitions/grib2/tables/21/1.3.table +++ b/definitions/grib2/tables/21/1.3.table @@ -9,6 +9,4 @@ 7 7 S2S test products 8 8 Uncertainties in Ensembles of Regional ReAnalyses project (UERRA) 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/1.4.table b/definitions/grib2/tables/21/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/21/1.4.table +++ b/definitions/grib2/tables/21/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/21/1.5.table b/definitions/grib2/tables/21/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/21/1.5.table +++ b/definitions/grib2/tables/21/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/21/1.6.table b/definitions/grib2/tables/21/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/21/1.6.table +++ b/definitions/grib2/tables/21/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/3.0.table b/definitions/grib2/tables/21/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/21/3.0.table +++ b/definitions/grib2/tables/21/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/21/3.1.table b/definitions/grib2/tables/21/3.1.table index dd85c0041..ad0efe7ac 100644 --- a/definitions/grib2/tables/21/3.1.table +++ b/definitions/grib2/tables/21/3.1.table @@ -5,41 +5,26 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator 12 12 Transverse Mercator -# 13-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/21/3.10.table b/definitions/grib2/tables/21/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/21/3.10.table +++ b/definitions/grib2/tables/21/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/21/3.11.table b/definitions/grib2/tables/21/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/21/3.11.table +++ b/definitions/grib2/tables/21/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/21/3.15.table b/definitions/grib2/tables/21/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/21/3.15.table +++ b/definitions/grib2/tables/21/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/3.2.table b/definitions/grib2/tables/21/3.2.table index 56ffdc08e..3d47cc431 100644 --- a/definitions/grib2/tables/21/3.2.table +++ b/definitions/grib2/tables/21/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS-84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/3.20.table b/definitions/grib2/tables/21/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/21/3.20.table +++ b/definitions/grib2/tables/21/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/3.21.table b/definitions/grib2/tables/21/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/21/3.21.table +++ b/definitions/grib2/tables/21/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/3.3.table b/definitions/grib2/tables/21/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/21/3.3.table +++ b/definitions/grib2/tables/21/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/21/3.7.table b/definitions/grib2/tables/21/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/21/3.7.table +++ b/definitions/grib2/tables/21/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/21/3.8.table b/definitions/grib2/tables/21/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/21/3.8.table +++ b/definitions/grib2/tables/21/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/3.9.table b/definitions/grib2/tables/21/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/21/3.9.table +++ b/definitions/grib2/tables/21/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/21/4.0.table b/definitions/grib2/tables/21/4.0.table index 4a10fe7a0..f38c9ac5c 100644 --- a/definitions/grib2/tables/21/4.0.table +++ b/definitions/grib2/tables/21/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -36,9 +33,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -48,10 +43,8 @@ 59 59 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters (corrected version of template 4.56) 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 62-66 Reserved 67 67 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval @@ -67,22 +60,16 @@ 82 82 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source/sink 83 83 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source/sink -# 74-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/21/4.1.0.table b/definitions/grib2/tables/21/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/21/4.1.0.table +++ b/definitions/grib2/tables/21/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.1.1.table b/definitions/grib2/tables/21/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/21/4.1.1.table +++ b/definitions/grib2/tables/21/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.1.10.table b/definitions/grib2/tables/21/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/21/4.1.10.table +++ b/definitions/grib2/tables/21/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.1.2.table b/definitions/grib2/tables/21/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/21/4.1.2.table +++ b/definitions/grib2/tables/21/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.1.3.table b/definitions/grib2/tables/21/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/21/4.1.3.table +++ b/definitions/grib2/tables/21/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.10.table b/definitions/grib2/tables/21/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/21/4.10.table +++ b/definitions/grib2/tables/21/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/21/4.11.table b/definitions/grib2/tables/21/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/21/4.11.table +++ b/definitions/grib2/tables/21/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.12.table b/definitions/grib2/tables/21/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/21/4.12.table +++ b/definitions/grib2/tables/21/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.13.table b/definitions/grib2/tables/21/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/21/4.13.table +++ b/definitions/grib2/tables/21/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.14.table b/definitions/grib2/tables/21/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/21/4.14.table +++ b/definitions/grib2/tables/21/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.15.table b/definitions/grib2/tables/21/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/21/4.15.table +++ b/definitions/grib2/tables/21/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.16.table b/definitions/grib2/tables/21/4.16.table index de3feccaf..7d6ae7eca 100644 --- a/definitions/grib2/tables/21/4.16.table +++ b/definitions/grib2/tables/21/4.16.table @@ -4,6 +4,4 @@ 2 2 Correlation of product with used calibration product 3 3 Standard deviation 4 4 Random error -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.0.table b/definitions/grib2/tables/21/4.2.0.0.table index 83b3e8ef1..3cd04f347 100644 --- a/definitions/grib2/tables/21/4.2.0.0.table +++ b/definitions/grib2/tables/21/4.2.0.0.table @@ -29,6 +29,4 @@ 27 27 Wet-bulb temperature (K) 28 28 Unbalanced component of temperature (K) 29 29 Temperature advection (K s-1) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.1.table b/definitions/grib2/tables/21/4.2.0.1.table index b4c1e8ba3..1a661773a 100644 --- a/definitions/grib2/tables/21/4.2.0.1.table +++ b/definitions/grib2/tables/21/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -121,6 +120,4 @@ 119 119 Unbalanced component of specific cloud liquid water content (kg kg-1) 120 120 Unbalanced component of specific cloud ice water content (kg kg-1) 121 121 Fraction of snow cover (Proportion) -# 122-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.13.table b/definitions/grib2/tables/21/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/21/4.2.0.13.table +++ b/definitions/grib2/tables/21/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.14.table b/definitions/grib2/tables/21/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/21/4.2.0.14.table +++ b/definitions/grib2/tables/21/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.15.table b/definitions/grib2/tables/21/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/21/4.2.0.15.table +++ b/definitions/grib2/tables/21/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.16.table b/definitions/grib2/tables/21/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/21/4.2.0.16.table +++ b/definitions/grib2/tables/21/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.18.table b/definitions/grib2/tables/21/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/21/4.2.0.18.table +++ b/definitions/grib2/tables/21/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.19.table b/definitions/grib2/tables/21/4.2.0.19.table index af9648d43..90df2dec1 100644 --- a/definitions/grib2/tables/21/4.2.0.19.table +++ b/definitions/grib2/tables/21/4.2.0.19.table @@ -35,6 +35,4 @@ 33 33 Visibility through liquid fog (m) 34 34 Visibility through ice fog (m) 35 35 Visibility through blowing snow (m) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.190.table b/definitions/grib2/tables/21/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/21/4.2.0.190.table +++ b/definitions/grib2/tables/21/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.191.table b/definitions/grib2/tables/21/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/21/4.2.0.191.table +++ b/definitions/grib2/tables/21/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.2.table b/definitions/grib2/tables/21/4.2.0.2.table index 8a70b2591..8651adc7c 100644 --- a/definitions/grib2/tables/21/4.2.0.2.table +++ b/definitions/grib2/tables/21/4.2.0.2.table @@ -46,6 +46,4 @@ 44 44 Geostrophic wind speed (m s-1) 45 45 Unbalanced component of divergence (s-1) 46 46 Vorticity advection (s-2) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.20.table b/definitions/grib2/tables/21/4.2.0.20.table index bbdeef5b1..4392e7b76 100644 --- a/definitions/grib2/tables/21/4.2.0.20.table +++ b/definitions/grib2/tables/21/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -29,7 +28,6 @@ 61 61 Maximum of mass density in layer (kg m-3) 62 62 Height of maximum mass density (m) 63 63 Column-averaged mass density in layer (kg m-3) -# 64-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -42,6 +40,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.3.table b/definitions/grib2/tables/21/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/21/4.2.0.3.table +++ b/definitions/grib2/tables/21/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.4.table b/definitions/grib2/tables/21/4.2.0.4.table index f97270456..d5024628b 100644 --- a/definitions/grib2/tables/21/4.2.0.4.table +++ b/definitions/grib2/tables/21/4.2.0.4.table @@ -14,11 +14,8 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) -# 54-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.5.table b/definitions/grib2/tables/21/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/21/4.2.0.5.table +++ b/definitions/grib2/tables/21/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.6.table b/definitions/grib2/tables/21/4.2.0.6.table index 0450ec194..4e5d7ee4c 100644 --- a/definitions/grib2/tables/21/4.2.0.6.table +++ b/definitions/grib2/tables/21/4.2.0.6.table @@ -40,10 +40,7 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.0.7.table b/definitions/grib2/tables/21/4.2.0.7.table index 6289d8b20..2c5b697db 100644 --- a/definitions/grib2/tables/21/4.2.0.7.table +++ b/definitions/grib2/tables/21/4.2.0.7.table @@ -19,6 +19,4 @@ 17 17 Gradient Richardson number (Numeric) 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.1.0.table b/definitions/grib2/tables/21/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/21/4.2.1.0.table +++ b/definitions/grib2/tables/21/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.1.1.table b/definitions/grib2/tables/21/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/21/4.2.1.1.table +++ b/definitions/grib2/tables/21/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.10.0.table b/definitions/grib2/tables/21/4.2.10.0.table index 3611abd9a..5014980aa 100644 --- a/definitions/grib2/tables/21/4.2.10.0.table +++ b/definitions/grib2/tables/21/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea-surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (/s) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.10.1.table b/definitions/grib2/tables/21/4.2.10.1.table index 237e6865a..926267e52 100644 --- a/definitions/grib2/tables/21/4.2.10.1.table +++ b/definitions/grib2/tables/21/4.2.10.1.table @@ -4,6 +4,4 @@ 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) 4 4 Rip current occurrence probability (%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.10.191.table b/definitions/grib2/tables/21/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/21/4.2.10.191.table +++ b/definitions/grib2/tables/21/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.10.2.table b/definitions/grib2/tables/21/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/21/4.2.10.2.table +++ b/definitions/grib2/tables/21/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.10.3.table b/definitions/grib2/tables/21/4.2.10.3.table index b01d7ae46..f6229ac12 100644 --- a/definitions/grib2/tables/21/4.2.10.3.table +++ b/definitions/grib2/tables/21/4.2.10.3.table @@ -2,6 +2,4 @@ 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) 2 2 Heat exchange coefficient (-) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.10.4.table b/definitions/grib2/tables/21/4.2.10.4.table index d5615ae26..15cc8b4b3 100644 --- a/definitions/grib2/tables/21/4.2.10.4.table +++ b/definitions/grib2/tables/21/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.2.0.table b/definitions/grib2/tables/21/4.2.2.0.table index b253cac22..090bbb64a 100644 --- a/definitions/grib2/tables/21/4.2.2.0.table +++ b/definitions/grib2/tables/21/4.2.2.0.table @@ -38,6 +38,4 @@ 36 36 Tile fraction (Proportion) 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.2.3.table b/definitions/grib2/tables/21/4.2.2.3.table index 2674e9f42..9699073e8 100644 --- a/definitions/grib2/tables/21/4.2.2.3.table +++ b/definitions/grib2/tables/21/4.2.2.3.table @@ -27,6 +27,4 @@ 25 25 Snow depth at elevation bands (kg m-2) 26 26 Soil heat flux (W m-2) 27 27 Soil depth (m) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.2.4.table b/definitions/grib2/tables/21/4.2.2.4.table index ceb761557..3ee2176f6 100644 --- a/definitions/grib2/tables/21/4.2.2.4.table +++ b/definitions/grib2/tables/21/4.2.2.4.table @@ -11,6 +11,4 @@ 9 9 Initial Fire Spread Index (Canadian Forest Service) (Numeric) 10 10 Fire Buildup Index (Canadian Forest Service) (Numeric) 11 11 Fire Daily Severity Rating (Canadian Forest Service) (Numeric) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.3.0.table b/definitions/grib2/tables/21/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/21/4.2.3.0.table +++ b/definitions/grib2/tables/21/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.2.3.1.table b/definitions/grib2/tables/21/4.2.3.1.table index 6f24b86ff..603828632 100644 --- a/definitions/grib2/tables/21/4.2.3.1.table +++ b/definitions/grib2/tables/21/4.2.3.1.table @@ -23,10 +23,7 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (numeric) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.201.table b/definitions/grib2/tables/21/4.201.table index fa173c4e0..7787ce735 100644 --- a/definitions/grib2/tables/21/4.201.table +++ b/definitions/grib2/tables/21/4.201.table @@ -10,6 +10,4 @@ 8 8 Ice pellets 9 9 Graupel 10 10 Hail -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.202.table b/definitions/grib2/tables/21/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/21/4.202.table +++ b/definitions/grib2/tables/21/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.203.table b/definitions/grib2/tables/21/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/21/4.203.table +++ b/definitions/grib2/tables/21/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.204.table b/definitions/grib2/tables/21/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/21/4.204.table +++ b/definitions/grib2/tables/21/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.205.table b/definitions/grib2/tables/21/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/21/4.205.table +++ b/definitions/grib2/tables/21/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.206.table b/definitions/grib2/tables/21/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/21/4.206.table +++ b/definitions/grib2/tables/21/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.207.table b/definitions/grib2/tables/21/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/21/4.207.table +++ b/definitions/grib2/tables/21/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.208.table b/definitions/grib2/tables/21/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/21/4.208.table +++ b/definitions/grib2/tables/21/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.209.table b/definitions/grib2/tables/21/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/21/4.209.table +++ b/definitions/grib2/tables/21/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.210.table b/definitions/grib2/tables/21/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/21/4.210.table +++ b/definitions/grib2/tables/21/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.211.table b/definitions/grib2/tables/21/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/21/4.211.table +++ b/definitions/grib2/tables/21/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.212.table b/definitions/grib2/tables/21/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/21/4.212.table +++ b/definitions/grib2/tables/21/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.213.table b/definitions/grib2/tables/21/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/21/4.213.table +++ b/definitions/grib2/tables/21/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.215.table b/definitions/grib2/tables/21/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/21/4.215.table +++ b/definitions/grib2/tables/21/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.216.table b/definitions/grib2/tables/21/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/21/4.216.table +++ b/definitions/grib2/tables/21/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/21/4.217.table b/definitions/grib2/tables/21/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/21/4.217.table +++ b/definitions/grib2/tables/21/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.218.table b/definitions/grib2/tables/21/4.218.table index b5b15150b..d899242fd 100644 --- a/definitions/grib2/tables/21/4.218.table +++ b/definitions/grib2/tables/21/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -39,6 +38,4 @@ 108 108 High cloud/Cirrus 109 109 High cloud/unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.219.table b/definitions/grib2/tables/21/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/21/4.219.table +++ b/definitions/grib2/tables/21/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.220.table b/definitions/grib2/tables/21/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/21/4.220.table +++ b/definitions/grib2/tables/21/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.221.table b/definitions/grib2/tables/21/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/21/4.221.table +++ b/definitions/grib2/tables/21/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.222.table b/definitions/grib2/tables/21/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/21/4.222.table +++ b/definitions/grib2/tables/21/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.224.table b/definitions/grib2/tables/21/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/21/4.224.table +++ b/definitions/grib2/tables/21/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/21/4.227.table b/definitions/grib2/tables/21/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/21/4.227.table +++ b/definitions/grib2/tables/21/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/21/4.230.table b/definitions/grib2/tables/21/4.230.table index 1602eab73..62cd3d888 100644 --- a/definitions/grib2/tables/21/4.230.table +++ b/definitions/grib2/tables/21/4.230.table @@ -38,7 +38,6 @@ 36 36 Hypobromous acid HBrO 37 37 Bromine nitrate BrONO2 38 38 Oxygen O2 -#39-9999 Reserved 10000 10000 Hydroxyl radical OH 10001 10001 Methyl peroxy radical CH3O2 10002 10002 Methyl hydroperoxide CH3O2H @@ -62,9 +61,7 @@ 10021 10021 Benzene C6H6 10022 10022 Toluene C7H8 10023 10023 Xylene C8H10 -#10024-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) -#10501-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 @@ -86,9 +83,7 @@ 20019 20019 Hexachlorocyclohexane (HCH) 20020 20020 Alpha hexachlorocyclohexane 20021 20021 Hexachlorobiphenyl (PCB-153) -#20022-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -#30001-30009 Reserved 30010 30010 Hydrogen H-3 30011 30011 Hydrogen organic bounded H-3o 30012 30012 Hydrogen inorganic H-3a @@ -374,7 +369,6 @@ 30292 30292 Sum noble gas SumNG 30293 30293 Activation gas ActGas 30294 30294 Cs-137 Equivalent EquCs137 -#30295-59999 Reserved 60000 60000 HOx radical (OH+HO2) 60001 60001 Total inorganic and organic peroxy radicals (HO2 + RO2) 60002 60002 Passive Ozone @@ -393,7 +387,6 @@ 60015 60015 Biogenic non-methane volatile organic compounds expressed as carbon 60016 60016 Lumped oxygenated hydrocarbons 60017 60017 NOx expressed as nitrogen dioxide (NO2) -#60018-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -413,14 +406,12 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -#62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027-62099 Reserved 62100 62100 Alnus (Alder) pollen 62101 62101 Betula (Birch) pollen 62102 62102 Castanea (Chestnut) pollen @@ -436,14 +427,11 @@ 62112 62112 Taxus (Yew) pollen 62113 62113 Tilia (Lime, Linden) pollen 62114 62114 Ulmus (Elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (Ragweed, Burr-ragweed ) pollen 62201 62201 Artemisia (Sagebrush, Wormwood, Mugwort) pollen 62202 62202 Brassica (Rape, Broccoli, Brussels Sprouts, Cabbage, Cauliflower, Collards, Kale, Kohlrabi, Mustard, Rutabaga) pollen 62203 62203 Plantago (Plantain) pollen 62204 62204 Rumex (Dock, Sorrel) pollen 62205 62205 Urtica (Nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (Grass family) pollen -# 62301-65534 Reserved 65535 65535 Missing diff --git a/definitions/grib2/tables/21/4.233.table b/definitions/grib2/tables/21/4.233.table index eb45c2280..e9d2ed275 100644 --- a/definitions/grib2/tables/21/4.233.table +++ b/definitions/grib2/tables/21/4.233.table @@ -38,7 +38,6 @@ 36 36 Hypobromous acid HBrO 37 37 Bromine nitrate BrONO2 38 38 Oxygen O2 -#39-9999 Reserved 10000 10000 Hydroxyl radical OH 10001 10001 Methyl peroxy radical CH3O2 10002 10002 Methyl hydroperoxide CH3O2H @@ -62,9 +61,7 @@ 10021 10021 Benzene C6H6 10022 10022 Toluene C7H8 10023 10023 Xylene C8H10 -#10024-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) -#10501-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 @@ -86,9 +83,7 @@ 20019 20019 Hexachlorocyclohexane (HCH) 20020 20020 Alpha hexachlorocyclohexane 20021 20021 Hexachlorobiphenyl (PCB-153) -#20022-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -#30001-30009 Reserved 30010 30010 Hydrogen H-3 30011 30011 Hydrogen organic bounded H-3o 30012 30012 Hydrogen inorganic H-3a @@ -374,7 +369,6 @@ 30292 30292 Sum noble gas SumNG 30293 30293 Activation gas ActGas 30294 30294 Cs-137 Equivalent EquCs137 -#30295-59999 Reserved 60000 60000 HOx radical (OH+HO2) 60001 60001 Total inorganic and organic peroxy radicals (HO2 + RO2) 60002 60002 Passive Ozone @@ -393,7 +387,6 @@ 60015 60015 Biogenic non-methane volatile organic compounds expressed as carbon 60016 60016 Lumped oxygenated hydrocarbons 60017 60017 NOx expressed as nitrogen dioxide (NO2) -#60018-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -413,14 +406,12 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -#62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027-62099 Reserved 62100 62100 Alnus (Alder) pollen 62101 62101 Betula (Birch) pollen 62102 62102 Castanea (Chestnut) pollen @@ -436,14 +427,11 @@ 62112 62112 Taxus (Yew) pollen 62113 62113 Tilia (Lime, Linden) pollen 62114 62114 Ulmus (Elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (Ragweed, Burr-ragweed ) pollen 62201 62201 Artemisia (Sagebrush, Wormwood, Mugwort) pollen 62202 62202 Brassica (Rape, Broccoli, Brussels Sprouts, Cabbage, Cauliflower, Collards, Kale, Kohlrabi, Mustard, Rutabaga) pollen 62203 62203 Plantago (Plantain) pollen 62204 62204 Rumex (Dock, Sorrel) pollen 62205 62205 Urtica (Nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (Grass family) pollen -# 62301-65534 Reserved 65535 65535 Missing diff --git a/definitions/grib2/tables/21/4.238.table b/definitions/grib2/tables/21/4.238.table index 6fbe5a08c..e5b6476c0 100644 --- a/definitions/grib2/tables/21/4.238.table +++ b/definitions/grib2/tables/21/4.238.table @@ -11,6 +11,4 @@ 9 9 Fossil-fuel 10 10 Wetlands 11 11 Oceans -# 12-191 Reserved -# 192-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/21/4.240.table b/definitions/grib2/tables/21/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/21/4.240.table +++ b/definitions/grib2/tables/21/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/21/4.241.table b/definitions/grib2/tables/21/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/21/4.241.table +++ b/definitions/grib2/tables/21/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/21/4.242.table b/definitions/grib2/tables/21/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/21/4.242.table +++ b/definitions/grib2/tables/21/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/21/4.243.table b/definitions/grib2/tables/21/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/21/4.243.table +++ b/definitions/grib2/tables/21/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/21/4.244.table b/definitions/grib2/tables/21/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/21/4.244.table +++ b/definitions/grib2/tables/21/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.3.table b/definitions/grib2/tables/21/4.3.table index cea1bef4f..8338bbd67 100644 --- a/definitions/grib2/tables/21/4.3.table +++ b/definitions/grib2/tables/21/4.3.table @@ -18,6 +18,4 @@ 16 16 Physical retrieval 17 17 Regression analysis 18 18 Difference between two forecasts -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.4.table b/definitions/grib2/tables/21/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/21/4.4.table +++ b/definitions/grib2/tables/21/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.5.table b/definitions/grib2/tables/21/4.5.table index 33abd6293..5de5a7be7 100644 --- a/definitions/grib2/tables/21/4.5.table +++ b/definitions/grib2/tables/21/4.5.table @@ -16,13 +16,11 @@ 14 14 Level of free convection (LFC) 15 15 Convective condensation level (CCL) 16 16 Level of neutral buoyancy or equilibrium level (LNB) -# 17-19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) -# 25-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -39,14 +37,11 @@ 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) -# 152-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -55,18 +50,14 @@ 165 165 Bottom of sediment layer penetrated by thermal wave (-) 166 sfc Mixing layer (-) 167 167 Bottom of root zone (-) -# 168-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.6.table b/definitions/grib2/tables/21/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/21/4.6.table +++ b/definitions/grib2/tables/21/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.7.table b/definitions/grib2/tables/21/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/21/4.7.table +++ b/definitions/grib2/tables/21/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.8.table b/definitions/grib2/tables/21/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/21/4.8.table +++ b/definitions/grib2/tables/21/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.9.table b/definitions/grib2/tables/21/4.9.table index 0ce312dd1..a42225b62 100644 --- a/definitions/grib2/tables/21/4.9.table +++ b/definitions/grib2/tables/21/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/4.91.table b/definitions/grib2/tables/21/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/21/4.91.table +++ b/definitions/grib2/tables/21/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/21/5.0.table b/definitions/grib2/tables/21/5.0.table index 4d6cc68c8..5447eb3c8 100644 --- a/definitions/grib2/tables/21/5.0.table +++ b/definitions/grib2/tables/21/5.0.table @@ -7,15 +7,10 @@ 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/21/5.1.table b/definitions/grib2/tables/21/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/21/5.1.table +++ b/definitions/grib2/tables/21/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/5.2.table b/definitions/grib2/tables/21/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/21/5.2.table +++ b/definitions/grib2/tables/21/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/5.3.table b/definitions/grib2/tables/21/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/21/5.3.table +++ b/definitions/grib2/tables/21/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/5.4.table b/definitions/grib2/tables/21/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/21/5.4.table +++ b/definitions/grib2/tables/21/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/5.40.table b/definitions/grib2/tables/21/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/21/5.40.table +++ b/definitions/grib2/tables/21/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/21/5.5.table b/definitions/grib2/tables/21/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/21/5.5.table +++ b/definitions/grib2/tables/21/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/5.6.table b/definitions/grib2/tables/21/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/21/5.6.table +++ b/definitions/grib2/tables/21/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/21/5.7.table b/definitions/grib2/tables/21/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/21/5.7.table +++ b/definitions/grib2/tables/21/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/22/0.0.table b/definitions/grib2/tables/22/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/22/0.0.table +++ b/definitions/grib2/tables/22/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/1.2.table b/definitions/grib2/tables/22/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/22/1.2.table +++ b/definitions/grib2/tables/22/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/1.3.table b/definitions/grib2/tables/22/1.3.table index 5e2e59087..f82841612 100644 --- a/definitions/grib2/tables/22/1.3.table +++ b/definitions/grib2/tables/22/1.3.table @@ -11,6 +11,4 @@ 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) 10 10 Copernicus regional reanalysis (CARRA/CERRA) 11 11 Copernicus regional reanalysis test (CARRA/CERRA) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/1.4.table b/definitions/grib2/tables/22/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/22/1.4.table +++ b/definitions/grib2/tables/22/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/22/1.5.table b/definitions/grib2/tables/22/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/22/1.5.table +++ b/definitions/grib2/tables/22/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/22/1.6.table b/definitions/grib2/tables/22/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/22/1.6.table +++ b/definitions/grib2/tables/22/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/3.0.table b/definitions/grib2/tables/22/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/22/3.0.table +++ b/definitions/grib2/tables/22/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/22/3.1.table b/definitions/grib2/tables/22/3.1.table index 41da4c59c..c33ecc3b4 100644 --- a/definitions/grib2/tables/22/3.1.table +++ b/definitions/grib2/tables/22/3.1.table @@ -5,50 +5,31 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11-12 Reserved 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/22/3.10.table b/definitions/grib2/tables/22/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/22/3.10.table +++ b/definitions/grib2/tables/22/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/22/3.11.table b/definitions/grib2/tables/22/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/22/3.11.table +++ b/definitions/grib2/tables/22/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/22/3.15.table b/definitions/grib2/tables/22/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/22/3.15.table +++ b/definitions/grib2/tables/22/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/3.2.table b/definitions/grib2/tables/22/3.2.table index 56ffdc08e..3d47cc431 100644 --- a/definitions/grib2/tables/22/3.2.table +++ b/definitions/grib2/tables/22/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS-84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/3.20.table b/definitions/grib2/tables/22/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/22/3.20.table +++ b/definitions/grib2/tables/22/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/3.21.table b/definitions/grib2/tables/22/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/22/3.21.table +++ b/definitions/grib2/tables/22/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/3.25.table b/definitions/grib2/tables/22/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/22/3.25.table +++ b/definitions/grib2/tables/22/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/3.3.table b/definitions/grib2/tables/22/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/22/3.3.table +++ b/definitions/grib2/tables/22/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/22/3.7.table b/definitions/grib2/tables/22/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/22/3.7.table +++ b/definitions/grib2/tables/22/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/22/3.8.table b/definitions/grib2/tables/22/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/22/3.8.table +++ b/definitions/grib2/tables/22/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/3.9.table b/definitions/grib2/tables/22/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/22/3.9.table +++ b/definitions/grib2/tables/22/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/22/4.0.table b/definitions/grib2/tables/22/4.0.table index fb919290d..83aaeeecf 100644 --- a/definitions/grib2/tables/22/4.0.table +++ b/definitions/grib2/tables/22/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -47,29 +42,21 @@ 59 59 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters (corrected version of template 4.56) 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 62-66 Reserved 67 67 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/22/4.1.0.table b/definitions/grib2/tables/22/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/22/4.1.0.table +++ b/definitions/grib2/tables/22/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.1.1.table b/definitions/grib2/tables/22/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/22/4.1.1.table +++ b/definitions/grib2/tables/22/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.1.10.table b/definitions/grib2/tables/22/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/22/4.1.10.table +++ b/definitions/grib2/tables/22/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.1.2.table b/definitions/grib2/tables/22/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/22/4.1.2.table +++ b/definitions/grib2/tables/22/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.1.3.table b/definitions/grib2/tables/22/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/22/4.1.3.table +++ b/definitions/grib2/tables/22/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.10.table b/definitions/grib2/tables/22/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/22/4.10.table +++ b/definitions/grib2/tables/22/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/22/4.11.table b/definitions/grib2/tables/22/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/22/4.11.table +++ b/definitions/grib2/tables/22/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.12.table b/definitions/grib2/tables/22/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/22/4.12.table +++ b/definitions/grib2/tables/22/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.13.table b/definitions/grib2/tables/22/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/22/4.13.table +++ b/definitions/grib2/tables/22/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.14.table b/definitions/grib2/tables/22/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/22/4.14.table +++ b/definitions/grib2/tables/22/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.15.table b/definitions/grib2/tables/22/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/22/4.15.table +++ b/definitions/grib2/tables/22/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.16.table b/definitions/grib2/tables/22/4.16.table index de3feccaf..7d6ae7eca 100644 --- a/definitions/grib2/tables/22/4.16.table +++ b/definitions/grib2/tables/22/4.16.table @@ -4,6 +4,4 @@ 2 2 Correlation of product with used calibration product 3 3 Standard deviation 4 4 Random error -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.0.table b/definitions/grib2/tables/22/4.2.0.0.table index 83b3e8ef1..3cd04f347 100644 --- a/definitions/grib2/tables/22/4.2.0.0.table +++ b/definitions/grib2/tables/22/4.2.0.0.table @@ -29,6 +29,4 @@ 27 27 Wet-bulb temperature (K) 28 28 Unbalanced component of temperature (K) 29 29 Temperature advection (K s-1) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.1.table b/definitions/grib2/tables/22/4.2.0.1.table index b4c1e8ba3..1a661773a 100644 --- a/definitions/grib2/tables/22/4.2.0.1.table +++ b/definitions/grib2/tables/22/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -121,6 +120,4 @@ 119 119 Unbalanced component of specific cloud liquid water content (kg kg-1) 120 120 Unbalanced component of specific cloud ice water content (kg kg-1) 121 121 Fraction of snow cover (Proportion) -# 122-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.13.table b/definitions/grib2/tables/22/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/22/4.2.0.13.table +++ b/definitions/grib2/tables/22/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.14.table b/definitions/grib2/tables/22/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/22/4.2.0.14.table +++ b/definitions/grib2/tables/22/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.15.table b/definitions/grib2/tables/22/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/22/4.2.0.15.table +++ b/definitions/grib2/tables/22/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.16.table b/definitions/grib2/tables/22/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/22/4.2.0.16.table +++ b/definitions/grib2/tables/22/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.18.table b/definitions/grib2/tables/22/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/22/4.2.0.18.table +++ b/definitions/grib2/tables/22/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.19.table b/definitions/grib2/tables/22/4.2.0.19.table index af9648d43..90df2dec1 100644 --- a/definitions/grib2/tables/22/4.2.0.19.table +++ b/definitions/grib2/tables/22/4.2.0.19.table @@ -35,6 +35,4 @@ 33 33 Visibility through liquid fog (m) 34 34 Visibility through ice fog (m) 35 35 Visibility through blowing snow (m) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.190.table b/definitions/grib2/tables/22/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/22/4.2.0.190.table +++ b/definitions/grib2/tables/22/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.191.table b/definitions/grib2/tables/22/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/22/4.2.0.191.table +++ b/definitions/grib2/tables/22/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.2.table b/definitions/grib2/tables/22/4.2.0.2.table index 8a70b2591..8651adc7c 100644 --- a/definitions/grib2/tables/22/4.2.0.2.table +++ b/definitions/grib2/tables/22/4.2.0.2.table @@ -46,6 +46,4 @@ 44 44 Geostrophic wind speed (m s-1) 45 45 Unbalanced component of divergence (s-1) 46 46 Vorticity advection (s-2) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.20.table b/definitions/grib2/tables/22/4.2.0.20.table index 214498114..4b311f5b7 100644 --- a/definitions/grib2/tables/22/4.2.0.20.table +++ b/definitions/grib2/tables/22/4.2.0.20.table @@ -17,7 +17,6 @@ 15 15 Dry deposition velocity (m/s) 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) -# 18-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -44,7 +43,6 @@ 73 73 Column-integrated below-cloud scavenging rate by convective precipitation (kg m-2 s-1) 74 74 Column-integrated release rate from evaporating convective precipitation (kg m-2 s-1) 75 75 Wildfire flux (kg m-2 s-1) -# 76-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -57,6 +55,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.3.table b/definitions/grib2/tables/22/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/22/4.2.0.3.table +++ b/definitions/grib2/tables/22/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.4.table b/definitions/grib2/tables/22/4.2.0.4.table index f97270456..d5024628b 100644 --- a/definitions/grib2/tables/22/4.2.0.4.table +++ b/definitions/grib2/tables/22/4.2.0.4.table @@ -14,11 +14,8 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) -# 54-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.5.table b/definitions/grib2/tables/22/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/22/4.2.0.5.table +++ b/definitions/grib2/tables/22/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.6.table b/definitions/grib2/tables/22/4.2.0.6.table index 0450ec194..4e5d7ee4c 100644 --- a/definitions/grib2/tables/22/4.2.0.6.table +++ b/definitions/grib2/tables/22/4.2.0.6.table @@ -40,10 +40,7 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.0.7.table b/definitions/grib2/tables/22/4.2.0.7.table index 6289d8b20..2c5b697db 100644 --- a/definitions/grib2/tables/22/4.2.0.7.table +++ b/definitions/grib2/tables/22/4.2.0.7.table @@ -19,6 +19,4 @@ 17 17 Gradient Richardson number (Numeric) 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.1.0.table b/definitions/grib2/tables/22/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/22/4.2.1.0.table +++ b/definitions/grib2/tables/22/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.1.1.table b/definitions/grib2/tables/22/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/22/4.2.1.1.table +++ b/definitions/grib2/tables/22/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.10.0.table b/definitions/grib2/tables/22/4.2.10.0.table index 41a8c1f41..15f6163cb 100644 --- a/definitions/grib2/tables/22/4.2.10.0.table +++ b/definitions/grib2/tables/22/4.2.10.0.table @@ -55,7 +55,6 @@ 53 53 Mean wave direction of first swell partition (deg) 54 54 Mean wave direction of second swell partition (deg) 55 55 Mean wave direction of third swell partition (deg) -# 56-191 Reserved 56 56 Wave directional width of first swell partition (-) 57 57 Wave directional width of second swell partition (-) 58 58 Wave directional width of third swell partition (-) @@ -65,6 +64,4 @@ 62 62 Wave frequency width (-) 63 63 Frequency width of wind waves (-) 64 64 Frequency width of total swell (-) -# 65-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.10.1.table b/definitions/grib2/tables/22/4.2.10.1.table index 237e6865a..926267e52 100644 --- a/definitions/grib2/tables/22/4.2.10.1.table +++ b/definitions/grib2/tables/22/4.2.10.1.table @@ -4,6 +4,4 @@ 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) 4 4 Rip current occurrence probability (%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.10.191.table b/definitions/grib2/tables/22/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/22/4.2.10.191.table +++ b/definitions/grib2/tables/22/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.10.2.table b/definitions/grib2/tables/22/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/22/4.2.10.2.table +++ b/definitions/grib2/tables/22/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.10.3.table b/definitions/grib2/tables/22/4.2.10.3.table index b01d7ae46..f6229ac12 100644 --- a/definitions/grib2/tables/22/4.2.10.3.table +++ b/definitions/grib2/tables/22/4.2.10.3.table @@ -2,6 +2,4 @@ 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) 2 2 Heat exchange coefficient (-) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.10.4.table b/definitions/grib2/tables/22/4.2.10.4.table index 66e9a323c..64c706b14 100644 --- a/definitions/grib2/tables/22/4.2.10.4.table +++ b/definitions/grib2/tables/22/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -19,6 +18,4 @@ 19 19 Water potential density (rho theta) (kg m-3) 20 20 Water potential density anomaly (sigma theta) (kg m-3) 21 21 Practical salinity (Numeric) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.2.0.table b/definitions/grib2/tables/22/4.2.2.0.table index b253cac22..090bbb64a 100644 --- a/definitions/grib2/tables/22/4.2.2.0.table +++ b/definitions/grib2/tables/22/4.2.2.0.table @@ -38,6 +38,4 @@ 36 36 Tile fraction (Proportion) 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.2.3.table b/definitions/grib2/tables/22/4.2.2.3.table index 2674e9f42..9699073e8 100644 --- a/definitions/grib2/tables/22/4.2.2.3.table +++ b/definitions/grib2/tables/22/4.2.2.3.table @@ -27,6 +27,4 @@ 25 25 Snow depth at elevation bands (kg m-2) 26 26 Soil heat flux (W m-2) 27 27 Soil depth (m) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.2.4.table b/definitions/grib2/tables/22/4.2.2.4.table index ceb761557..3ee2176f6 100644 --- a/definitions/grib2/tables/22/4.2.2.4.table +++ b/definitions/grib2/tables/22/4.2.2.4.table @@ -11,6 +11,4 @@ 9 9 Initial Fire Spread Index (Canadian Forest Service) (Numeric) 10 10 Fire Buildup Index (Canadian Forest Service) (Numeric) 11 11 Fire Daily Severity Rating (Canadian Forest Service) (Numeric) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.3.0.table b/definitions/grib2/tables/22/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/22/4.2.3.0.table +++ b/definitions/grib2/tables/22/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.2.3.1.table b/definitions/grib2/tables/22/4.2.3.1.table index 365e59a22..a46651ebe 100644 --- a/definitions/grib2/tables/22/4.2.3.1.table +++ b/definitions/grib2/tables/22/4.2.3.1.table @@ -23,13 +23,9 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (numeric) -# 30-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.201.table b/definitions/grib2/tables/22/4.201.table index 0dca20884..a902d6083 100644 --- a/definitions/grib2/tables/22/4.201.table +++ b/definitions/grib2/tables/22/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.202.table b/definitions/grib2/tables/22/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/22/4.202.table +++ b/definitions/grib2/tables/22/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.203.table b/definitions/grib2/tables/22/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/22/4.203.table +++ b/definitions/grib2/tables/22/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.204.table b/definitions/grib2/tables/22/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/22/4.204.table +++ b/definitions/grib2/tables/22/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.205.table b/definitions/grib2/tables/22/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/22/4.205.table +++ b/definitions/grib2/tables/22/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.206.table b/definitions/grib2/tables/22/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/22/4.206.table +++ b/definitions/grib2/tables/22/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.207.table b/definitions/grib2/tables/22/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/22/4.207.table +++ b/definitions/grib2/tables/22/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.208.table b/definitions/grib2/tables/22/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/22/4.208.table +++ b/definitions/grib2/tables/22/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.209.table b/definitions/grib2/tables/22/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/22/4.209.table +++ b/definitions/grib2/tables/22/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.210.table b/definitions/grib2/tables/22/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/22/4.210.table +++ b/definitions/grib2/tables/22/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.211.table b/definitions/grib2/tables/22/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/22/4.211.table +++ b/definitions/grib2/tables/22/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.212.table b/definitions/grib2/tables/22/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/22/4.212.table +++ b/definitions/grib2/tables/22/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.213.table b/definitions/grib2/tables/22/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/22/4.213.table +++ b/definitions/grib2/tables/22/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.215.table b/definitions/grib2/tables/22/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/22/4.215.table +++ b/definitions/grib2/tables/22/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.216.table b/definitions/grib2/tables/22/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/22/4.216.table +++ b/definitions/grib2/tables/22/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/22/4.217.table b/definitions/grib2/tables/22/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/22/4.217.table +++ b/definitions/grib2/tables/22/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.218.table b/definitions/grib2/tables/22/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/22/4.218.table +++ b/definitions/grib2/tables/22/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.219.table b/definitions/grib2/tables/22/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/22/4.219.table +++ b/definitions/grib2/tables/22/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.220.table b/definitions/grib2/tables/22/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/22/4.220.table +++ b/definitions/grib2/tables/22/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.221.table b/definitions/grib2/tables/22/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/22/4.221.table +++ b/definitions/grib2/tables/22/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.222.table b/definitions/grib2/tables/22/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/22/4.222.table +++ b/definitions/grib2/tables/22/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.224.table b/definitions/grib2/tables/22/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/22/4.224.table +++ b/definitions/grib2/tables/22/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/22/4.227.table b/definitions/grib2/tables/22/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/22/4.227.table +++ b/definitions/grib2/tables/22/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/22/4.230.table b/definitions/grib2/tables/22/4.230.table index 183dff8cb..753454a2e 100644 --- a/definitions/grib2/tables/22/4.230.table +++ b/definitions/grib2/tables/22/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical OH 10001 10001 Methyl peroxy radical CH3O2 10002 10002 Methyl hydroperoxide CH3O2H @@ -101,10 +100,8 @@ 10052 10052 Ethyl hydroperoxide CH3CH2OOH 10053 10053 3-hydroxypropyl dioxidanyl radical HOCH2CH2CH2OO 10054 10054 3-hydroxypropyl hydroperoxide HOCH2CH2CH2OOH -# 10055-10499 Reserved for other simple organic molecules(e.g. higher aldehydes, alcohols, peroxides, ...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -#10502-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 @@ -127,9 +124,7 @@ 20020 20020 Alpha hexachlorocyclohexane 20021 20021 Hexachlorobiphenyl (PCB-153) 20022 20022 HCFC 141a (1,1-dichloro-2-fluoro-ethane) CH3CClF2 -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -#3000-30009 Reserved 30010 30010 Hydrogen H-3 30011 30011 Hydrogen organic bounded H-3o 30012 30012 Hydrogen inorganic H-3a @@ -417,12 +412,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -#30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(D) 40003 40003 Triplet ground state oxygen atom O(P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) 60001 60001 Total inorganic and organic peroxy radicals (HO2 + RO2) RO2 60002 60002 Passive Ozone @@ -451,7 +444,6 @@ 60025 60025 Hydroxy dicarbonyls unsaturated RC(O)CHOHC(O)R 60026 60026 Hydroxy ketones RC(OH)C(O)R 60027 60027 Oxides Ox -# 60028-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -471,18 +463,14 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -#62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -#62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -#62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic -#62030-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -498,14 +486,11 @@ 62112 62112 Taxus (yew) pollen 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale,kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -#6230-65534 Reserved 65535 65535 Missing diff --git a/definitions/grib2/tables/22/4.233.table b/definitions/grib2/tables/22/4.233.table index 48a9fc4dc..edf262e8d 100644 --- a/definitions/grib2/tables/22/4.233.table +++ b/definitions/grib2/tables/22/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical OH 10001 10001 Methyl peroxy radical CH3O2 10002 10002 Methyl hydroperoxide CH3O2H @@ -101,10 +100,8 @@ 10052 10052 Ethyl hydroperoxide CH3CH2OOH 10053 10053 3-hydroxypropyl dioxidanyl radical HOCH2CH2CH2OO 10054 10054 3-hydroxypropyl hydroperoxide HOCH2CH2CH2OOH -# 10055-10499 Reserved for other simple organic molecules(e.g. higher aldehydes, alcohols, peroxides, ...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -#10502-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 @@ -127,9 +124,7 @@ 20020 20020 Alpha hexachlorocyclohexane 20021 20021 Hexachlorobiphenyl (PCB-153) 20022 20022 HCFC 141a (1,1-dichloro-2-fluoro-ethane) CH3CClF2 -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -#3000-30009 Reserved 30010 30010 Hydrogen H-3 30011 30011 Hydrogen organic bounded H-3o 30012 30012 Hydrogen inorganic H-3a @@ -417,12 +412,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -#30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(D) 40003 40003 Triplet ground state oxygen atom O(P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) 60001 60001 Total inorganic and organic peroxy radicals (HO2 + RO2) RO2 60002 60002 Passive Ozone @@ -451,7 +444,6 @@ 60025 60025 Hydroxy dicarbonyls unsaturated RC(O)CHOHC(O)R 60026 60026 Hydroxy ketones RC(OH)C(O)R 60027 60027 Oxides Ox -# 60028-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -471,18 +463,14 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -#62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -#62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -#62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic -#62030-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -498,14 +486,11 @@ 62112 62112 Taxus (yew) pollen 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale,kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -#6230-65534 Reserved 65535 65535 Missing diff --git a/definitions/grib2/tables/22/4.240.table b/definitions/grib2/tables/22/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/22/4.240.table +++ b/definitions/grib2/tables/22/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/22/4.241.table b/definitions/grib2/tables/22/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/22/4.241.table +++ b/definitions/grib2/tables/22/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/22/4.242.table b/definitions/grib2/tables/22/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/22/4.242.table +++ b/definitions/grib2/tables/22/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/22/4.243.table b/definitions/grib2/tables/22/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/22/4.243.table +++ b/definitions/grib2/tables/22/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/22/4.244.table b/definitions/grib2/tables/22/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/22/4.244.table +++ b/definitions/grib2/tables/22/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.3.table b/definitions/grib2/tables/22/4.3.table index cea1bef4f..8338bbd67 100644 --- a/definitions/grib2/tables/22/4.3.table +++ b/definitions/grib2/tables/22/4.3.table @@ -18,6 +18,4 @@ 16 16 Physical retrieval 17 17 Regression analysis 18 18 Difference between two forecasts -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.4.table b/definitions/grib2/tables/22/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/22/4.4.table +++ b/definitions/grib2/tables/22/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.5.table b/definitions/grib2/tables/22/4.5.table index 33abd6293..5de5a7be7 100644 --- a/definitions/grib2/tables/22/4.5.table +++ b/definitions/grib2/tables/22/4.5.table @@ -16,13 +16,11 @@ 14 14 Level of free convection (LFC) 15 15 Convective condensation level (CCL) 16 16 Level of neutral buoyancy or equilibrium level (LNB) -# 17-19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) -# 25-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -39,14 +37,11 @@ 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) -# 152-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -55,18 +50,14 @@ 165 165 Bottom of sediment layer penetrated by thermal wave (-) 166 sfc Mixing layer (-) 167 167 Bottom of root zone (-) -# 168-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.6.table b/definitions/grib2/tables/22/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/22/4.6.table +++ b/definitions/grib2/tables/22/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.7.table b/definitions/grib2/tables/22/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/22/4.7.table +++ b/definitions/grib2/tables/22/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.8.table b/definitions/grib2/tables/22/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/22/4.8.table +++ b/definitions/grib2/tables/22/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.9.table b/definitions/grib2/tables/22/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/22/4.9.table +++ b/definitions/grib2/tables/22/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/4.91.table b/definitions/grib2/tables/22/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/22/4.91.table +++ b/definitions/grib2/tables/22/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/22/5.0.table b/definitions/grib2/tables/22/5.0.table index 7fa534a0f..9f412db60 100644 --- a/definitions/grib2/tables/22/5.0.table +++ b/definitions/grib2/tables/22/5.0.table @@ -4,21 +4,14 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/22/5.1.table b/definitions/grib2/tables/22/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/22/5.1.table +++ b/definitions/grib2/tables/22/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/5.2.table b/definitions/grib2/tables/22/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/22/5.2.table +++ b/definitions/grib2/tables/22/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/5.25.table b/definitions/grib2/tables/22/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/22/5.25.table +++ b/definitions/grib2/tables/22/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/22/5.26.table b/definitions/grib2/tables/22/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/22/5.26.table +++ b/definitions/grib2/tables/22/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/22/5.3.table b/definitions/grib2/tables/22/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/22/5.3.table +++ b/definitions/grib2/tables/22/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/5.4.table b/definitions/grib2/tables/22/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/22/5.4.table +++ b/definitions/grib2/tables/22/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/5.40.table b/definitions/grib2/tables/22/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/22/5.40.table +++ b/definitions/grib2/tables/22/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/22/5.5.table b/definitions/grib2/tables/22/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/22/5.5.table +++ b/definitions/grib2/tables/22/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/5.6.table b/definitions/grib2/tables/22/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/22/5.6.table +++ b/definitions/grib2/tables/22/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/22/5.7.table b/definitions/grib2/tables/22/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/22/5.7.table +++ b/definitions/grib2/tables/22/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/23/0.0.table b/definitions/grib2/tables/23/0.0.table index 2c5afceb4..be7284feb 100644 --- a/definitions/grib2/tables/23/0.0.table +++ b/definitions/grib2/tables/23/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/1.2.table b/definitions/grib2/tables/23/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/23/1.2.table +++ b/definitions/grib2/tables/23/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/1.3.table b/definitions/grib2/tables/23/1.3.table index 5e2e59087..f82841612 100644 --- a/definitions/grib2/tables/23/1.3.table +++ b/definitions/grib2/tables/23/1.3.table @@ -11,6 +11,4 @@ 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) 10 10 Copernicus regional reanalysis (CARRA/CERRA) 11 11 Copernicus regional reanalysis test (CARRA/CERRA) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/1.4.table b/definitions/grib2/tables/23/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/23/1.4.table +++ b/definitions/grib2/tables/23/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/23/1.5.table b/definitions/grib2/tables/23/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/23/1.5.table +++ b/definitions/grib2/tables/23/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/23/1.6.table b/definitions/grib2/tables/23/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/23/1.6.table +++ b/definitions/grib2/tables/23/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/3.0.table b/definitions/grib2/tables/23/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/23/3.0.table +++ b/definitions/grib2/tables/23/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/23/3.1.table b/definitions/grib2/tables/23/3.1.table index 41da4c59c..c33ecc3b4 100644 --- a/definitions/grib2/tables/23/3.1.table +++ b/definitions/grib2/tables/23/3.1.table @@ -5,50 +5,31 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11-12 Reserved 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/23/3.10.table b/definitions/grib2/tables/23/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/23/3.10.table +++ b/definitions/grib2/tables/23/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/23/3.11.table b/definitions/grib2/tables/23/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/23/3.11.table +++ b/definitions/grib2/tables/23/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/23/3.15.table b/definitions/grib2/tables/23/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/23/3.15.table +++ b/definitions/grib2/tables/23/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/3.2.table b/definitions/grib2/tables/23/3.2.table index 56ffdc08e..3d47cc431 100644 --- a/definitions/grib2/tables/23/3.2.table +++ b/definitions/grib2/tables/23/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS-84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/3.20.table b/definitions/grib2/tables/23/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/23/3.20.table +++ b/definitions/grib2/tables/23/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/3.21.table b/definitions/grib2/tables/23/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/23/3.21.table +++ b/definitions/grib2/tables/23/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/3.25.table b/definitions/grib2/tables/23/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/23/3.25.table +++ b/definitions/grib2/tables/23/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/3.3.table b/definitions/grib2/tables/23/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/23/3.3.table +++ b/definitions/grib2/tables/23/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/23/3.7.table b/definitions/grib2/tables/23/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/23/3.7.table +++ b/definitions/grib2/tables/23/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/23/3.8.table b/definitions/grib2/tables/23/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/23/3.8.table +++ b/definitions/grib2/tables/23/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/3.9.table b/definitions/grib2/tables/23/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/23/3.9.table +++ b/definitions/grib2/tables/23/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/23/4.0.table b/definitions/grib2/tables/23/4.0.table index fb919290d..83aaeeecf 100644 --- a/definitions/grib2/tables/23/4.0.table +++ b/definitions/grib2/tables/23/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -47,29 +42,21 @@ 59 59 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters (corrected version of template 4.56) 60 60 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 62-66 Reserved 67 67 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/23/4.1.0.table b/definitions/grib2/tables/23/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/23/4.1.0.table +++ b/definitions/grib2/tables/23/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.1.1.table b/definitions/grib2/tables/23/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/23/4.1.1.table +++ b/definitions/grib2/tables/23/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.1.10.table b/definitions/grib2/tables/23/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/23/4.1.10.table +++ b/definitions/grib2/tables/23/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.1.2.table b/definitions/grib2/tables/23/4.1.2.table index e74126645..4444f8d72 100644 --- a/definitions/grib2/tables/23/4.1.2.table +++ b/definitions/grib2/tables/23/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.1.3.table b/definitions/grib2/tables/23/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/23/4.1.3.table +++ b/definitions/grib2/tables/23/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.10.table b/definitions/grib2/tables/23/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/23/4.10.table +++ b/definitions/grib2/tables/23/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/23/4.11.table b/definitions/grib2/tables/23/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/23/4.11.table +++ b/definitions/grib2/tables/23/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.12.table b/definitions/grib2/tables/23/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/23/4.12.table +++ b/definitions/grib2/tables/23/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.13.table b/definitions/grib2/tables/23/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/23/4.13.table +++ b/definitions/grib2/tables/23/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.14.table b/definitions/grib2/tables/23/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/23/4.14.table +++ b/definitions/grib2/tables/23/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.15.table b/definitions/grib2/tables/23/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/23/4.15.table +++ b/definitions/grib2/tables/23/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.16.table b/definitions/grib2/tables/23/4.16.table index de3feccaf..7d6ae7eca 100644 --- a/definitions/grib2/tables/23/4.16.table +++ b/definitions/grib2/tables/23/4.16.table @@ -4,6 +4,4 @@ 2 2 Correlation of product with used calibration product 3 3 Standard deviation 4 4 Random error -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.0.table b/definitions/grib2/tables/23/4.2.0.0.table index 83b3e8ef1..3cd04f347 100644 --- a/definitions/grib2/tables/23/4.2.0.0.table +++ b/definitions/grib2/tables/23/4.2.0.0.table @@ -29,6 +29,4 @@ 27 27 Wet-bulb temperature (K) 28 28 Unbalanced component of temperature (K) 29 29 Temperature advection (K s-1) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.1.table b/definitions/grib2/tables/23/4.2.0.1.table index b4c1e8ba3..1a661773a 100644 --- a/definitions/grib2/tables/23/4.2.0.1.table +++ b/definitions/grib2/tables/23/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -121,6 +120,4 @@ 119 119 Unbalanced component of specific cloud liquid water content (kg kg-1) 120 120 Unbalanced component of specific cloud ice water content (kg kg-1) 121 121 Fraction of snow cover (Proportion) -# 122-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.13.table b/definitions/grib2/tables/23/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/23/4.2.0.13.table +++ b/definitions/grib2/tables/23/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.14.table b/definitions/grib2/tables/23/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/23/4.2.0.14.table +++ b/definitions/grib2/tables/23/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.15.table b/definitions/grib2/tables/23/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/23/4.2.0.15.table +++ b/definitions/grib2/tables/23/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.16.table b/definitions/grib2/tables/23/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/23/4.2.0.16.table +++ b/definitions/grib2/tables/23/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.18.table b/definitions/grib2/tables/23/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/23/4.2.0.18.table +++ b/definitions/grib2/tables/23/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.19.table b/definitions/grib2/tables/23/4.2.0.19.table index af9648d43..90df2dec1 100644 --- a/definitions/grib2/tables/23/4.2.0.19.table +++ b/definitions/grib2/tables/23/4.2.0.19.table @@ -35,6 +35,4 @@ 33 33 Visibility through liquid fog (m) 34 34 Visibility through ice fog (m) 35 35 Visibility through blowing snow (m) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.190.table b/definitions/grib2/tables/23/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/23/4.2.0.190.table +++ b/definitions/grib2/tables/23/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.191.table b/definitions/grib2/tables/23/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/23/4.2.0.191.table +++ b/definitions/grib2/tables/23/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.2.table b/definitions/grib2/tables/23/4.2.0.2.table index 8a70b2591..8651adc7c 100644 --- a/definitions/grib2/tables/23/4.2.0.2.table +++ b/definitions/grib2/tables/23/4.2.0.2.table @@ -46,6 +46,4 @@ 44 44 Geostrophic wind speed (m s-1) 45 45 Unbalanced component of divergence (s-1) 46 46 Vorticity advection (s-2) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.20.table b/definitions/grib2/tables/23/4.2.0.20.table index 214498114..4b311f5b7 100644 --- a/definitions/grib2/tables/23/4.2.0.20.table +++ b/definitions/grib2/tables/23/4.2.0.20.table @@ -17,7 +17,6 @@ 15 15 Dry deposition velocity (m/s) 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) -# 18-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -44,7 +43,6 @@ 73 73 Column-integrated below-cloud scavenging rate by convective precipitation (kg m-2 s-1) 74 74 Column-integrated release rate from evaporating convective precipitation (kg m-2 s-1) 75 75 Wildfire flux (kg m-2 s-1) -# 76-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -57,6 +55,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.3.table b/definitions/grib2/tables/23/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/23/4.2.0.3.table +++ b/definitions/grib2/tables/23/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.4.table b/definitions/grib2/tables/23/4.2.0.4.table index f97270456..d5024628b 100644 --- a/definitions/grib2/tables/23/4.2.0.4.table +++ b/definitions/grib2/tables/23/4.2.0.4.table @@ -14,11 +14,8 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) -# 54-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.5.table b/definitions/grib2/tables/23/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/23/4.2.0.5.table +++ b/definitions/grib2/tables/23/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.6.table b/definitions/grib2/tables/23/4.2.0.6.table index 0450ec194..4e5d7ee4c 100644 --- a/definitions/grib2/tables/23/4.2.0.6.table +++ b/definitions/grib2/tables/23/4.2.0.6.table @@ -40,10 +40,7 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.0.7.table b/definitions/grib2/tables/23/4.2.0.7.table index 6289d8b20..2c5b697db 100644 --- a/definitions/grib2/tables/23/4.2.0.7.table +++ b/definitions/grib2/tables/23/4.2.0.7.table @@ -19,6 +19,4 @@ 17 17 Gradient Richardson number (Numeric) 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.1.0.table b/definitions/grib2/tables/23/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/23/4.2.1.0.table +++ b/definitions/grib2/tables/23/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.1.1.table b/definitions/grib2/tables/23/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/23/4.2.1.1.table +++ b/definitions/grib2/tables/23/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.10.0.table b/definitions/grib2/tables/23/4.2.10.0.table index 41a8c1f41..15f6163cb 100644 --- a/definitions/grib2/tables/23/4.2.10.0.table +++ b/definitions/grib2/tables/23/4.2.10.0.table @@ -55,7 +55,6 @@ 53 53 Mean wave direction of first swell partition (deg) 54 54 Mean wave direction of second swell partition (deg) 55 55 Mean wave direction of third swell partition (deg) -# 56-191 Reserved 56 56 Wave directional width of first swell partition (-) 57 57 Wave directional width of second swell partition (-) 58 58 Wave directional width of third swell partition (-) @@ -65,6 +64,4 @@ 62 62 Wave frequency width (-) 63 63 Frequency width of wind waves (-) 64 64 Frequency width of total swell (-) -# 65-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.10.1.table b/definitions/grib2/tables/23/4.2.10.1.table index 237e6865a..926267e52 100644 --- a/definitions/grib2/tables/23/4.2.10.1.table +++ b/definitions/grib2/tables/23/4.2.10.1.table @@ -4,6 +4,4 @@ 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) 4 4 Rip current occurrence probability (%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.10.191.table b/definitions/grib2/tables/23/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/23/4.2.10.191.table +++ b/definitions/grib2/tables/23/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.10.2.table b/definitions/grib2/tables/23/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/23/4.2.10.2.table +++ b/definitions/grib2/tables/23/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.10.3.table b/definitions/grib2/tables/23/4.2.10.3.table index b01d7ae46..f6229ac12 100644 --- a/definitions/grib2/tables/23/4.2.10.3.table +++ b/definitions/grib2/tables/23/4.2.10.3.table @@ -2,6 +2,4 @@ 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) 2 2 Heat exchange coefficient (-) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.10.4.table b/definitions/grib2/tables/23/4.2.10.4.table index 66e9a323c..64c706b14 100644 --- a/definitions/grib2/tables/23/4.2.10.4.table +++ b/definitions/grib2/tables/23/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -19,6 +18,4 @@ 19 19 Water potential density (rho theta) (kg m-3) 20 20 Water potential density anomaly (sigma theta) (kg m-3) 21 21 Practical salinity (Numeric) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.2.0.table b/definitions/grib2/tables/23/4.2.2.0.table index b253cac22..090bbb64a 100644 --- a/definitions/grib2/tables/23/4.2.2.0.table +++ b/definitions/grib2/tables/23/4.2.2.0.table @@ -38,6 +38,4 @@ 36 36 Tile fraction (Proportion) 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) -# 39-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.2.3.table b/definitions/grib2/tables/23/4.2.2.3.table index 2674e9f42..9699073e8 100644 --- a/definitions/grib2/tables/23/4.2.2.3.table +++ b/definitions/grib2/tables/23/4.2.2.3.table @@ -27,6 +27,4 @@ 25 25 Snow depth at elevation bands (kg m-2) 26 26 Soil heat flux (W m-2) 27 27 Soil depth (m) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.2.4.table b/definitions/grib2/tables/23/4.2.2.4.table index ceb761557..3ee2176f6 100644 --- a/definitions/grib2/tables/23/4.2.2.4.table +++ b/definitions/grib2/tables/23/4.2.2.4.table @@ -11,6 +11,4 @@ 9 9 Initial Fire Spread Index (Canadian Forest Service) (Numeric) 10 10 Fire Buildup Index (Canadian Forest Service) (Numeric) 11 11 Fire Daily Severity Rating (Canadian Forest Service) (Numeric) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.3.0.table b/definitions/grib2/tables/23/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/23/4.2.3.0.table +++ b/definitions/grib2/tables/23/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.2.3.1.table b/definitions/grib2/tables/23/4.2.3.1.table index 365e59a22..a46651ebe 100644 --- a/definitions/grib2/tables/23/4.2.3.1.table +++ b/definitions/grib2/tables/23/4.2.3.1.table @@ -23,13 +23,9 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (numeric) -# 30-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.201.table b/definitions/grib2/tables/23/4.201.table index 0dca20884..a902d6083 100644 --- a/definitions/grib2/tables/23/4.201.table +++ b/definitions/grib2/tables/23/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.202.table b/definitions/grib2/tables/23/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/23/4.202.table +++ b/definitions/grib2/tables/23/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.203.table b/definitions/grib2/tables/23/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/23/4.203.table +++ b/definitions/grib2/tables/23/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.204.table b/definitions/grib2/tables/23/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/23/4.204.table +++ b/definitions/grib2/tables/23/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.205.table b/definitions/grib2/tables/23/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/23/4.205.table +++ b/definitions/grib2/tables/23/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.206.table b/definitions/grib2/tables/23/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/23/4.206.table +++ b/definitions/grib2/tables/23/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.207.table b/definitions/grib2/tables/23/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/23/4.207.table +++ b/definitions/grib2/tables/23/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.208.table b/definitions/grib2/tables/23/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/23/4.208.table +++ b/definitions/grib2/tables/23/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.209.table b/definitions/grib2/tables/23/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/23/4.209.table +++ b/definitions/grib2/tables/23/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.210.table b/definitions/grib2/tables/23/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/23/4.210.table +++ b/definitions/grib2/tables/23/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.211.table b/definitions/grib2/tables/23/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/23/4.211.table +++ b/definitions/grib2/tables/23/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.212.table b/definitions/grib2/tables/23/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/23/4.212.table +++ b/definitions/grib2/tables/23/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.213.table b/definitions/grib2/tables/23/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/23/4.213.table +++ b/definitions/grib2/tables/23/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.215.table b/definitions/grib2/tables/23/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/23/4.215.table +++ b/definitions/grib2/tables/23/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.216.table b/definitions/grib2/tables/23/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/23/4.216.table +++ b/definitions/grib2/tables/23/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/23/4.217.table b/definitions/grib2/tables/23/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/23/4.217.table +++ b/definitions/grib2/tables/23/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.218.table b/definitions/grib2/tables/23/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/23/4.218.table +++ b/definitions/grib2/tables/23/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.219.table b/definitions/grib2/tables/23/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/23/4.219.table +++ b/definitions/grib2/tables/23/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.220.table b/definitions/grib2/tables/23/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/23/4.220.table +++ b/definitions/grib2/tables/23/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.221.table b/definitions/grib2/tables/23/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/23/4.221.table +++ b/definitions/grib2/tables/23/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.222.table b/definitions/grib2/tables/23/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/23/4.222.table +++ b/definitions/grib2/tables/23/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.224.table b/definitions/grib2/tables/23/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/23/4.224.table +++ b/definitions/grib2/tables/23/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/23/4.227.table b/definitions/grib2/tables/23/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/23/4.227.table +++ b/definitions/grib2/tables/23/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/23/4.230.table b/definitions/grib2/tables/23/4.230.table index 94f24dc6a..26a988fbf 100644 --- a/definitions/grib2/tables/23/4.230.table +++ b/definitions/grib2/tables/23/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical OH 10001 10001 Methyl peroxy radical CH3O2 10002 10002 Methyl hydroperoxide CH3O2H @@ -101,10 +100,8 @@ 10052 10052 Ethyl hydroperoxide CH3CH2OOH 10053 10053 3-hydroxypropyl dioxidanyl radical HOCH2CH2CH2OO 10054 10054 3-hydroxypropyl hydroperoxide HOCH2CH2CH2OOH -# 10055-10499 Reserved for other simple organic molecules(e.g. higher aldehydes, alcohols, peroxides, ...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 @@ -127,9 +124,7 @@ 20020 20020 Alpha hexachlorocyclohexane 20021 20021 Hexachlorobiphenyl (PCB-153) 20022 20022 HCFC 141a (1,1-dichloro-2-fluoro-ethane) CH3CClF2 -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 3000-30009 Reserved 30010 30010 Hydrogen H-3 30011 30011 Hydrogen organic bounded H-3o 30012 30012 Hydrogen inorganic H-3a @@ -417,12 +412,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(D) 40003 40003 Triplet ground state oxygen atom O(P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) 60001 60001 Total inorganic and organic peroxy radicals (HO2 + RO2) RO2 60002 60002 Passive Ozone @@ -451,7 +444,6 @@ 60025 60025 Hydroxy dicarbonyls unsaturated RC(O)CHOHC(O)R 60026 60026 Hydroxy ketones RC(OH)C(O)R 60027 60027 Oxides Ox -# 60028-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -471,18 +463,14 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic -# 62030-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -498,14 +486,11 @@ 62112 62112 Taxus (yew) pollen 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale,kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 6230-65534 Reserved 65535 65535 Missing diff --git a/definitions/grib2/tables/23/4.233.table b/definitions/grib2/tables/23/4.233.table index 6c30833ac..1f3bc4048 100644 --- a/definitions/grib2/tables/23/4.233.table +++ b/definitions/grib2/tables/23/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical OH 10001 10001 Methyl peroxy radical CH3O2 10002 10002 Methyl hydroperoxide CH3O2H @@ -101,10 +100,8 @@ 10052 10052 Ethyl hydroperoxide CH3CH2OOH 10053 10053 3-hydroxypropyl dioxidanyl radical HOCH2CH2CH2OO 10054 10054 3-hydroxypropyl hydroperoxide HOCH2CH2CH2OOH -# 10055-10499 Reserved for other simple organic molecules(e.g. higher aldehydes, alcohols, peroxides, ...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -#10502-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 @@ -127,9 +124,7 @@ 20020 20020 Alpha hexachlorocyclohexane 20021 20021 Hexachlorobiphenyl (PCB-153) 20022 20022 HCFC 141a (1,1-dichloro-2-fluoro-ethane) CH3CClF2 -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -#3000-30009 Reserved 30010 30010 Hydrogen H-3 30011 30011 Hydrogen organic bounded H-3o 30012 30012 Hydrogen inorganic H-3a @@ -417,12 +412,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -#30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(D) 40003 40003 Triplet ground state oxygen atom O(P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) 60001 60001 Total inorganic and organic peroxy radicals (HO2 + RO2) RO2 60002 60002 Passive Ozone @@ -451,7 +444,6 @@ 60025 60025 Hydroxy dicarbonyls unsaturated RC(O)CHOHC(O)R 60026 60026 Hydroxy ketones RC(OH)C(O)R 60027 60027 Oxides Ox -# 60028-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -471,18 +463,14 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -#62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -#62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -#62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic -#62030-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -498,14 +486,11 @@ 62112 62112 Taxus (yew) pollen 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale,kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -#62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -#6230-65534 Reserved 65535 65535 Missing diff --git a/definitions/grib2/tables/23/4.240.table b/definitions/grib2/tables/23/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/23/4.240.table +++ b/definitions/grib2/tables/23/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/23/4.241.table b/definitions/grib2/tables/23/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/23/4.241.table +++ b/definitions/grib2/tables/23/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/23/4.242.table b/definitions/grib2/tables/23/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/23/4.242.table +++ b/definitions/grib2/tables/23/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/23/4.243.table b/definitions/grib2/tables/23/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/23/4.243.table +++ b/definitions/grib2/tables/23/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/23/4.244.table b/definitions/grib2/tables/23/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/23/4.244.table +++ b/definitions/grib2/tables/23/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.3.table b/definitions/grib2/tables/23/4.3.table index cea1bef4f..8338bbd67 100644 --- a/definitions/grib2/tables/23/4.3.table +++ b/definitions/grib2/tables/23/4.3.table @@ -18,6 +18,4 @@ 16 16 Physical retrieval 17 17 Regression analysis 18 18 Difference between two forecasts -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.4.table b/definitions/grib2/tables/23/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/23/4.4.table +++ b/definitions/grib2/tables/23/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.5.table b/definitions/grib2/tables/23/4.5.table index 638258422..318270c10 100644 --- a/definitions/grib2/tables/23/4.5.table +++ b/definitions/grib2/tables/23/4.5.table @@ -16,14 +16,12 @@ 14 14 Level of free convection (LFC) 15 15 Convective condensation level (CCL) 16 16 Level of neutral buoyancy or equilibrium level (LNB) -# 17-19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) 25 25 Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity) (dBZ) -# 26-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -40,14 +38,11 @@ 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) -# 152-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -56,18 +51,14 @@ 165 165 Bottom of sediment layer penetrated by thermal wave (-) 166 sfc Mixing layer (-) 167 167 Bottom of root zone (-) -# 168-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.6.table b/definitions/grib2/tables/23/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/23/4.6.table +++ b/definitions/grib2/tables/23/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.7.table b/definitions/grib2/tables/23/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/23/4.7.table +++ b/definitions/grib2/tables/23/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.8.table b/definitions/grib2/tables/23/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/23/4.8.table +++ b/definitions/grib2/tables/23/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.9.table b/definitions/grib2/tables/23/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/23/4.9.table +++ b/definitions/grib2/tables/23/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/4.91.table b/definitions/grib2/tables/23/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/23/4.91.table +++ b/definitions/grib2/tables/23/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/23/5.0.table b/definitions/grib2/tables/23/5.0.table index 7fa534a0f..9f412db60 100644 --- a/definitions/grib2/tables/23/5.0.table +++ b/definitions/grib2/tables/23/5.0.table @@ -4,21 +4,14 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/23/5.1.table b/definitions/grib2/tables/23/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/23/5.1.table +++ b/definitions/grib2/tables/23/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/5.2.table b/definitions/grib2/tables/23/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/23/5.2.table +++ b/definitions/grib2/tables/23/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/5.25.table b/definitions/grib2/tables/23/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/23/5.25.table +++ b/definitions/grib2/tables/23/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/23/5.26.table b/definitions/grib2/tables/23/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/23/5.26.table +++ b/definitions/grib2/tables/23/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/23/5.3.table b/definitions/grib2/tables/23/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/23/5.3.table +++ b/definitions/grib2/tables/23/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/5.4.table b/definitions/grib2/tables/23/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/23/5.4.table +++ b/definitions/grib2/tables/23/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/5.40.table b/definitions/grib2/tables/23/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/23/5.40.table +++ b/definitions/grib2/tables/23/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/23/5.5.table b/definitions/grib2/tables/23/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/23/5.5.table +++ b/definitions/grib2/tables/23/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/5.6.table b/definitions/grib2/tables/23/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/23/5.6.table +++ b/definitions/grib2/tables/23/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/23/5.7.table b/definitions/grib2/tables/23/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/23/5.7.table +++ b/definitions/grib2/tables/23/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/24/0.0.table b/definitions/grib2/tables/24/0.0.table index cb9de8e80..8ddfa4380 100644 --- a/definitions/grib2/tables/24/0.0.table +++ b/definitions/grib2/tables/24/0.0.table @@ -4,8 +4,5 @@ 2 2 Land surface products 3 3 Satellite remote sensing products (formerly Space products) 4 4 Space weather products -# 5-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/1.2.table b/definitions/grib2/tables/24/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/24/1.2.table +++ b/definitions/grib2/tables/24/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/1.3.table b/definitions/grib2/tables/24/1.3.table index 5e2e59087..f82841612 100644 --- a/definitions/grib2/tables/24/1.3.table +++ b/definitions/grib2/tables/24/1.3.table @@ -11,6 +11,4 @@ 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) 10 10 Copernicus regional reanalysis (CARRA/CERRA) 11 11 Copernicus regional reanalysis test (CARRA/CERRA) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/1.4.table b/definitions/grib2/tables/24/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/24/1.4.table +++ b/definitions/grib2/tables/24/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/24/1.5.table b/definitions/grib2/tables/24/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/24/1.5.table +++ b/definitions/grib2/tables/24/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/24/1.6.table b/definitions/grib2/tables/24/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/24/1.6.table +++ b/definitions/grib2/tables/24/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/3.0.table b/definitions/grib2/tables/24/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/24/3.0.table +++ b/definitions/grib2/tables/24/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/24/3.1.table b/definitions/grib2/tables/24/3.1.table index 41da4c59c..c33ecc3b4 100644 --- a/definitions/grib2/tables/24/3.1.table +++ b/definitions/grib2/tables/24/3.1.table @@ -5,50 +5,31 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11-12 Reserved 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/24/3.10.table b/definitions/grib2/tables/24/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/24/3.10.table +++ b/definitions/grib2/tables/24/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/24/3.11.table b/definitions/grib2/tables/24/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/24/3.11.table +++ b/definitions/grib2/tables/24/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/24/3.15.table b/definitions/grib2/tables/24/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/24/3.15.table +++ b/definitions/grib2/tables/24/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/3.2.table b/definitions/grib2/tables/24/3.2.table index 56ffdc08e..3d47cc431 100644 --- a/definitions/grib2/tables/24/3.2.table +++ b/definitions/grib2/tables/24/3.2.table @@ -9,6 +9,4 @@ 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS-84 reference frame 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/3.20.table b/definitions/grib2/tables/24/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/24/3.20.table +++ b/definitions/grib2/tables/24/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/3.21.table b/definitions/grib2/tables/24/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/24/3.21.table +++ b/definitions/grib2/tables/24/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/3.25.table b/definitions/grib2/tables/24/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/24/3.25.table +++ b/definitions/grib2/tables/24/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/3.3.table b/definitions/grib2/tables/24/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/24/3.3.table +++ b/definitions/grib2/tables/24/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/24/3.7.table b/definitions/grib2/tables/24/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/24/3.7.table +++ b/definitions/grib2/tables/24/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/24/3.8.table b/definitions/grib2/tables/24/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/24/3.8.table +++ b/definitions/grib2/tables/24/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/3.9.table b/definitions/grib2/tables/24/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/24/3.9.table +++ b/definitions/grib2/tables/24/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/24/4.0.table b/definitions/grib2/tables/24/4.0.table index 0ea0af4ec..fc4d5172a 100644 --- a/definitions/grib2/tables/24/4.0.table +++ b/definitions/grib2/tables/24/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -49,15 +44,12 @@ 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval 62 62 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 63 63 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles -# 64-66 Reserved 67 67 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-75 Reserved 76 76 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source/sink 77 77 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source/sink 78 78 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source/sink @@ -66,21 +58,15 @@ 81 81 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol with source/sink 82 82 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source/sink 83 83 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source/sink -# 84-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/24/4.1.0.table b/definitions/grib2/tables/24/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/24/4.1.0.table +++ b/definitions/grib2/tables/24/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.1.1.table b/definitions/grib2/tables/24/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/24/4.1.1.table +++ b/definitions/grib2/tables/24/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.1.10.table b/definitions/grib2/tables/24/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/24/4.1.10.table +++ b/definitions/grib2/tables/24/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.1.2.table b/definitions/grib2/tables/24/4.1.2.table index 046689b83..52d43c5d3 100644 --- a/definitions/grib2/tables/24/4.1.2.table +++ b/definitions/grib2/tables/24/4.1.2.table @@ -5,6 +5,4 @@ 3 3 Soil products 4 4 Fire weather products 5 5 Glaciers and inland ice -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.1.3.table b/definitions/grib2/tables/24/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/24/4.1.3.table +++ b/definitions/grib2/tables/24/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.10.table b/definitions/grib2/tables/24/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/24/4.10.table +++ b/definitions/grib2/tables/24/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/24/4.11.table b/definitions/grib2/tables/24/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/24/4.11.table +++ b/definitions/grib2/tables/24/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.12.table b/definitions/grib2/tables/24/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/24/4.12.table +++ b/definitions/grib2/tables/24/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.13.table b/definitions/grib2/tables/24/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/24/4.13.table +++ b/definitions/grib2/tables/24/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.14.table b/definitions/grib2/tables/24/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/24/4.14.table +++ b/definitions/grib2/tables/24/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.15.table b/definitions/grib2/tables/24/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/24/4.15.table +++ b/definitions/grib2/tables/24/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.16.table b/definitions/grib2/tables/24/4.16.table index de3feccaf..7d6ae7eca 100644 --- a/definitions/grib2/tables/24/4.16.table +++ b/definitions/grib2/tables/24/4.16.table @@ -4,6 +4,4 @@ 2 2 Correlation of product with used calibration product 3 3 Standard deviation 4 4 Random error -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.0.table b/definitions/grib2/tables/24/4.2.0.0.table index 83b3e8ef1..3cd04f347 100644 --- a/definitions/grib2/tables/24/4.2.0.0.table +++ b/definitions/grib2/tables/24/4.2.0.0.table @@ -29,6 +29,4 @@ 27 27 Wet-bulb temperature (K) 28 28 Unbalanced component of temperature (K) 29 29 Temperature advection (K s-1) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.1.table b/definitions/grib2/tables/24/4.2.0.1.table index 46f83bce9..c13590bab 100644 --- a/definitions/grib2/tables/24/4.2.0.1.table +++ b/definitions/grib2/tables/24/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -121,7 +120,6 @@ 119 119 Unbalanced component of specific cloud liquid water content (kg kg-1) 120 120 Unbalanced component of specific cloud ice water content (kg kg-1) 121 121 Fraction of snow cover (Proportion) -# 122-128 Reserved 129 129 Effective radius of cloud water (m) 130 130 Effective radius of rain (m) 131 131 Effective radius of cloud ice (m) @@ -136,6 +134,4 @@ 140 140 Effective aspect ratio of graupel (-) 141 141 Effective aspect ratio of hail (-) 142 142 Effective aspect ratio of subgrid ice clouds (-) -# 143-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.13.table b/definitions/grib2/tables/24/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/24/4.2.0.13.table +++ b/definitions/grib2/tables/24/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.14.table b/definitions/grib2/tables/24/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/24/4.2.0.14.table +++ b/definitions/grib2/tables/24/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.15.table b/definitions/grib2/tables/24/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/24/4.2.0.15.table +++ b/definitions/grib2/tables/24/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.16.table b/definitions/grib2/tables/24/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/24/4.2.0.16.table +++ b/definitions/grib2/tables/24/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.18.table b/definitions/grib2/tables/24/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/24/4.2.0.18.table +++ b/definitions/grib2/tables/24/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.19.table b/definitions/grib2/tables/24/4.2.0.19.table index ac03c2f37..76e3f102f 100644 --- a/definitions/grib2/tables/24/4.2.0.19.table +++ b/definitions/grib2/tables/24/4.2.0.19.table @@ -36,6 +36,4 @@ 34 34 Visibility through ice fog (m) 35 35 Visibility through blowing snow (m) 36 36 Presence of snow squalls (Code table 4.222) -# 37-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.190.table b/definitions/grib2/tables/24/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/24/4.2.0.190.table +++ b/definitions/grib2/tables/24/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.191.table b/definitions/grib2/tables/24/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/24/4.2.0.191.table +++ b/definitions/grib2/tables/24/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.2.table b/definitions/grib2/tables/24/4.2.0.2.table index 8a70b2591..8651adc7c 100644 --- a/definitions/grib2/tables/24/4.2.0.2.table +++ b/definitions/grib2/tables/24/4.2.0.2.table @@ -46,6 +46,4 @@ 44 44 Geostrophic wind speed (m s-1) 45 45 Unbalanced component of divergence (s-1) 46 46 Vorticity advection (s-2) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.20.table b/definitions/grib2/tables/24/4.2.0.20.table index 9b0170f5c..d799ca11e 100644 --- a/definitions/grib2/tables/24/4.2.0.20.table +++ b/definitions/grib2/tables/24/4.2.0.20.table @@ -17,7 +17,6 @@ 15 15 Dry deposition velocity (m/s) 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) -# 18-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -46,7 +45,6 @@ 75 75 Wildfire flux (kg m-2 s-1) 76 76 Emission rate (kg kg-1 s-1) 77 77 Surface emission flux (kg m-2 s-1) -# 78-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -59,6 +57,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.3.table b/definitions/grib2/tables/24/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/24/4.2.0.3.table +++ b/definitions/grib2/tables/24/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.4.table b/definitions/grib2/tables/24/4.2.0.4.table index f97270456..d5024628b 100644 --- a/definitions/grib2/tables/24/4.2.0.4.table +++ b/definitions/grib2/tables/24/4.2.0.4.table @@ -14,11 +14,8 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) -# 54-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.5.table b/definitions/grib2/tables/24/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/24/4.2.0.5.table +++ b/definitions/grib2/tables/24/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.6.table b/definitions/grib2/tables/24/4.2.0.6.table index 0450ec194..4e5d7ee4c 100644 --- a/definitions/grib2/tables/24/4.2.0.6.table +++ b/definitions/grib2/tables/24/4.2.0.6.table @@ -40,10 +40,7 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.0.7.table b/definitions/grib2/tables/24/4.2.0.7.table index 6289d8b20..2c5b697db 100644 --- a/definitions/grib2/tables/24/4.2.0.7.table +++ b/definitions/grib2/tables/24/4.2.0.7.table @@ -19,6 +19,4 @@ 17 17 Gradient Richardson number (Numeric) 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.1.0.table b/definitions/grib2/tables/24/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/24/4.2.1.0.table +++ b/definitions/grib2/tables/24/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.1.1.table b/definitions/grib2/tables/24/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/24/4.2.1.1.table +++ b/definitions/grib2/tables/24/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.10.0.table b/definitions/grib2/tables/24/4.2.10.0.table index c35e2abfd..15f6163cb 100644 --- a/definitions/grib2/tables/24/4.2.10.0.table +++ b/definitions/grib2/tables/24/4.2.10.0.table @@ -64,6 +64,4 @@ 62 62 Wave frequency width (-) 63 63 Frequency width of wind waves (-) 64 64 Frequency width of total swell (-) -# 65-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.10.1.table b/definitions/grib2/tables/24/4.2.10.1.table index 237e6865a..926267e52 100644 --- a/definitions/grib2/tables/24/4.2.10.1.table +++ b/definitions/grib2/tables/24/4.2.10.1.table @@ -4,6 +4,4 @@ 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) 4 4 Rip current occurrence probability (%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.10.191.table b/definitions/grib2/tables/24/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/24/4.2.10.191.table +++ b/definitions/grib2/tables/24/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.10.2.table b/definitions/grib2/tables/24/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/24/4.2.10.2.table +++ b/definitions/grib2/tables/24/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.10.3.table b/definitions/grib2/tables/24/4.2.10.3.table index ac1603ecc..ba65a71f8 100644 --- a/definitions/grib2/tables/24/4.2.10.3.table +++ b/definitions/grib2/tables/24/4.2.10.3.table @@ -3,6 +3,4 @@ 1 1 Deviation of sea level from mean (m) 2 2 Heat exchange coefficient (-) 3 3 Practical salinity (Numeric) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.10.4.table b/definitions/grib2/tables/24/4.2.10.4.table index 66e9a323c..64c706b14 100644 --- a/definitions/grib2/tables/24/4.2.10.4.table +++ b/definitions/grib2/tables/24/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -19,6 +18,4 @@ 19 19 Water potential density (rho theta) (kg m-3) 20 20 Water potential density anomaly (sigma theta) (kg m-3) 21 21 Practical salinity (Numeric) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.2.0.table b/definitions/grib2/tables/24/4.2.2.0.table index bcfc982b7..137c8deb2 100644 --- a/definitions/grib2/tables/24/4.2.2.0.table +++ b/definitions/grib2/tables/24/4.2.2.0.table @@ -39,6 +39,4 @@ 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) 39 39 Evapotranspiration rate (kg m-2 s-1) -# 40-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.2.3.table b/definitions/grib2/tables/24/4.2.2.3.table index 2674e9f42..9699073e8 100644 --- a/definitions/grib2/tables/24/4.2.2.3.table +++ b/definitions/grib2/tables/24/4.2.2.3.table @@ -27,6 +27,4 @@ 25 25 Snow depth at elevation bands (kg m-2) 26 26 Soil heat flux (W m-2) 27 27 Soil depth (m) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.2.4.table b/definitions/grib2/tables/24/4.2.2.4.table index ceb761557..3ee2176f6 100644 --- a/definitions/grib2/tables/24/4.2.2.4.table +++ b/definitions/grib2/tables/24/4.2.2.4.table @@ -11,6 +11,4 @@ 9 9 Initial Fire Spread Index (Canadian Forest Service) (Numeric) 10 10 Fire Buildup Index (Canadian Forest Service) (Numeric) 11 11 Fire Daily Severity Rating (Canadian Forest Service) (Numeric) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.3.0.table b/definitions/grib2/tables/24/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/24/4.2.3.0.table +++ b/definitions/grib2/tables/24/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.2.3.1.table b/definitions/grib2/tables/24/4.2.3.1.table index 365e59a22..a46651ebe 100644 --- a/definitions/grib2/tables/24/4.2.3.1.table +++ b/definitions/grib2/tables/24/4.2.3.1.table @@ -23,13 +23,9 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (numeric) -# 30-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.201.table b/definitions/grib2/tables/24/4.201.table index 0dca20884..a902d6083 100644 --- a/definitions/grib2/tables/24/4.201.table +++ b/definitions/grib2/tables/24/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.202.table b/definitions/grib2/tables/24/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/24/4.202.table +++ b/definitions/grib2/tables/24/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.203.table b/definitions/grib2/tables/24/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/24/4.203.table +++ b/definitions/grib2/tables/24/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.204.table b/definitions/grib2/tables/24/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/24/4.204.table +++ b/definitions/grib2/tables/24/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.205.table b/definitions/grib2/tables/24/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/24/4.205.table +++ b/definitions/grib2/tables/24/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.206.table b/definitions/grib2/tables/24/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/24/4.206.table +++ b/definitions/grib2/tables/24/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.207.table b/definitions/grib2/tables/24/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/24/4.207.table +++ b/definitions/grib2/tables/24/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.208.table b/definitions/grib2/tables/24/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/24/4.208.table +++ b/definitions/grib2/tables/24/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.209.table b/definitions/grib2/tables/24/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/24/4.209.table +++ b/definitions/grib2/tables/24/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.210.table b/definitions/grib2/tables/24/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/24/4.210.table +++ b/definitions/grib2/tables/24/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.211.table b/definitions/grib2/tables/24/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/24/4.211.table +++ b/definitions/grib2/tables/24/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.212.table b/definitions/grib2/tables/24/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/24/4.212.table +++ b/definitions/grib2/tables/24/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.213.table b/definitions/grib2/tables/24/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/24/4.213.table +++ b/definitions/grib2/tables/24/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.215.table b/definitions/grib2/tables/24/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/24/4.215.table +++ b/definitions/grib2/tables/24/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.216.table b/definitions/grib2/tables/24/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/24/4.216.table +++ b/definitions/grib2/tables/24/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/24/4.217.table b/definitions/grib2/tables/24/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/24/4.217.table +++ b/definitions/grib2/tables/24/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.218.table b/definitions/grib2/tables/24/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/24/4.218.table +++ b/definitions/grib2/tables/24/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.219.table b/definitions/grib2/tables/24/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/24/4.219.table +++ b/definitions/grib2/tables/24/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.220.table b/definitions/grib2/tables/24/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/24/4.220.table +++ b/definitions/grib2/tables/24/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.221.table b/definitions/grib2/tables/24/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/24/4.221.table +++ b/definitions/grib2/tables/24/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.222.table b/definitions/grib2/tables/24/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/24/4.222.table +++ b/definitions/grib2/tables/24/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.224.table b/definitions/grib2/tables/24/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/24/4.224.table +++ b/definitions/grib2/tables/24/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/24/4.227.table b/definitions/grib2/tables/24/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/24/4.227.table +++ b/definitions/grib2/tables/24/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/24/4.230.table b/definitions/grib2/tables/24/4.230.table index 6159d2aad..e89e48f82 100644 --- a/definitions/grib2/tables/24/4.230.table +++ b/definitions/grib2/tables/24/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO 10001 10001 Methyl peroxy radical CH3OO 10002 10002 Methyl hydroperoxide CH3O2H @@ -101,10 +100,8 @@ 10052 10052 Ethyl hydroperoxide CH3CH2OOH 10053 10053 3-hydroxypropyl dioxidanyl radical HOCH2CH2CH2OO 10054 10054 3-hydroxypropyl hydroperoxide HOCH2CH2CH2OOH -# 10055-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, ...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -127,9 +124,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -417,12 +412,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx 60001 60001 Total inorganic and organic peroxy radicals (HOO + ROO) ROO 60002 60002 Passive Ozone @@ -451,7 +444,6 @@ 60025 60025 Hydroxy dicarbonyls unsaturated RC(O)CHOHC(O)R 60026 60026 Hydroxy ketones RC(OH)C(O)R 60027 60027 Oxides Ox -# 60028-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -471,18 +463,14 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic -# 62030-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -498,15 +486,12 @@ 62112 62112 Taxus (yew) pollen 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale,kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/24/4.233.table b/definitions/grib2/tables/24/4.233.table index d60790f5a..9995155e3 100644 --- a/definitions/grib2/tables/24/4.233.table +++ b/definitions/grib2/tables/24/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO 10001 10001 Methyl peroxy radical CH3OO 10002 10002 Methyl hydroperoxide CH3O2H @@ -101,10 +100,8 @@ 10052 10052 Ethyl hydroperoxide CH3CH2OOH 10053 10053 3-hydroxypropyl dioxidanyl radical HOCH2CH2CH2OO 10054 10054 3-hydroxypropyl hydroperoxide HOCH2CH2CH2OOH -# 10055-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, ...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -127,9 +124,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -417,12 +412,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx 60001 60001 Total inorganic and organic peroxy radicals (HOO + ROO) ROO 60002 60002 Passive Ozone @@ -451,7 +444,6 @@ 60025 60025 Hydroxy dicarbonyls unsaturated RC(O)CHOHC(O)R 60026 60026 Hydroxy ketones RC(OH)C(O)R 60027 60027 Oxides Ox -# 60028-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -471,18 +463,14 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic -# 62030-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -498,15 +486,12 @@ 62112 62112 Taxus (yew) pollen 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale,kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/24/4.238.table b/definitions/grib2/tables/24/4.238.table index 84ae04c80..b5f56d292 100644 --- a/definitions/grib2/tables/24/4.238.table +++ b/definitions/grib2/tables/24/4.238.table @@ -11,6 +11,4 @@ 9 9 Fossil-fuel 10 10 Wetlands 11 11 Oceans -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.240.table b/definitions/grib2/tables/24/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/24/4.240.table +++ b/definitions/grib2/tables/24/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/24/4.241.table b/definitions/grib2/tables/24/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/24/4.241.table +++ b/definitions/grib2/tables/24/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/24/4.242.table b/definitions/grib2/tables/24/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/24/4.242.table +++ b/definitions/grib2/tables/24/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/24/4.243.table b/definitions/grib2/tables/24/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/24/4.243.table +++ b/definitions/grib2/tables/24/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/24/4.244.table b/definitions/grib2/tables/24/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/24/4.244.table +++ b/definitions/grib2/tables/24/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.3.table b/definitions/grib2/tables/24/4.3.table index cea1bef4f..8338bbd67 100644 --- a/definitions/grib2/tables/24/4.3.table +++ b/definitions/grib2/tables/24/4.3.table @@ -18,6 +18,4 @@ 16 16 Physical retrieval 17 17 Regression analysis 18 18 Difference between two forecasts -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.4.table b/definitions/grib2/tables/24/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/24/4.4.table +++ b/definitions/grib2/tables/24/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.5.table b/definitions/grib2/tables/24/4.5.table index 338a39b6a..fca425eba 100644 --- a/definitions/grib2/tables/24/4.5.table +++ b/definitions/grib2/tables/24/4.5.table @@ -16,14 +16,12 @@ 14 14 Level of free convection (LFC) 15 15 Convective condensation level (CCL) 16 16 Level of neutral buoyancy or equilibrium level (LNB) -# 17-19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) 25 25 Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity) (dBZ) -# 26-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -40,14 +38,11 @@ 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) -# 152-159 Reserved 160 o2d Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -59,18 +54,14 @@ 168 168 Ocean model level (Numeric) 169 169 Ocean level defined by water density (sigma-theta) difference from near-surface to level (kg m-3) 170 170 Ocean level defined by water potential temperature difference from near-surface to level (K) -# 171-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.6.table b/definitions/grib2/tables/24/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/24/4.6.table +++ b/definitions/grib2/tables/24/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.7.table b/definitions/grib2/tables/24/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/24/4.7.table +++ b/definitions/grib2/tables/24/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.8.table b/definitions/grib2/tables/24/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/24/4.8.table +++ b/definitions/grib2/tables/24/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.9.table b/definitions/grib2/tables/24/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/24/4.9.table +++ b/definitions/grib2/tables/24/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/4.91.table b/definitions/grib2/tables/24/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/24/4.91.table +++ b/definitions/grib2/tables/24/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/24/5.0.table b/definitions/grib2/tables/24/5.0.table index 7fa534a0f..9f412db60 100644 --- a/definitions/grib2/tables/24/5.0.table +++ b/definitions/grib2/tables/24/5.0.table @@ -4,21 +4,14 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/24/5.1.table b/definitions/grib2/tables/24/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/24/5.1.table +++ b/definitions/grib2/tables/24/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/5.2.table b/definitions/grib2/tables/24/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/24/5.2.table +++ b/definitions/grib2/tables/24/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/5.25.table b/definitions/grib2/tables/24/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/24/5.25.table +++ b/definitions/grib2/tables/24/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/24/5.26.table b/definitions/grib2/tables/24/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/24/5.26.table +++ b/definitions/grib2/tables/24/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/24/5.3.table b/definitions/grib2/tables/24/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/24/5.3.table +++ b/definitions/grib2/tables/24/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/5.4.table b/definitions/grib2/tables/24/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/24/5.4.table +++ b/definitions/grib2/tables/24/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/5.40.table b/definitions/grib2/tables/24/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/24/5.40.table +++ b/definitions/grib2/tables/24/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/24/5.5.table b/definitions/grib2/tables/24/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/24/5.5.table +++ b/definitions/grib2/tables/24/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/5.6.table b/definitions/grib2/tables/24/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/24/5.6.table +++ b/definitions/grib2/tables/24/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/24/5.7.table b/definitions/grib2/tables/24/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/24/5.7.table +++ b/definitions/grib2/tables/24/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/25/0.0.table b/definitions/grib2/tables/25/0.0.table index a8542e94f..a54c35af2 100644 --- a/definitions/grib2/tables/25/0.0.table +++ b/definitions/grib2/tables/25/0.0.table @@ -4,10 +4,6 @@ 2 2 Land surface products 3 3 Satellite remote sensing products (formerly Space products) 4 4 Space weather products -# 5-9 Reserved 10 10 Oceanographic products -# 11-19 Reserved 20 20 Health and socioeconomic impacts -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/1.2.table b/definitions/grib2/tables/25/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/25/1.2.table +++ b/definitions/grib2/tables/25/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/1.3.table b/definitions/grib2/tables/25/1.3.table index 5e2e59087..f82841612 100644 --- a/definitions/grib2/tables/25/1.3.table +++ b/definitions/grib2/tables/25/1.3.table @@ -11,6 +11,4 @@ 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) 10 10 Copernicus regional reanalysis (CARRA/CERRA) 11 11 Copernicus regional reanalysis test (CARRA/CERRA) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/1.4.table b/definitions/grib2/tables/25/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/25/1.4.table +++ b/definitions/grib2/tables/25/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/25/1.5.table b/definitions/grib2/tables/25/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/25/1.5.table +++ b/definitions/grib2/tables/25/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/25/1.6.table b/definitions/grib2/tables/25/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/25/1.6.table +++ b/definitions/grib2/tables/25/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/3.0.table b/definitions/grib2/tables/25/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/25/3.0.table +++ b/definitions/grib2/tables/25/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/25/3.1.table b/definitions/grib2/tables/25/3.1.table index 41da4c59c..c33ecc3b4 100644 --- a/definitions/grib2/tables/25/3.1.table +++ b/definitions/grib2/tables/25/3.1.table @@ -5,50 +5,31 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11-12 Reserved 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/25/3.10.table b/definitions/grib2/tables/25/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/25/3.10.table +++ b/definitions/grib2/tables/25/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/25/3.11.table b/definitions/grib2/tables/25/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/25/3.11.table +++ b/definitions/grib2/tables/25/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/25/3.15.table b/definitions/grib2/tables/25/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/25/3.15.table +++ b/definitions/grib2/tables/25/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/3.2.table b/definitions/grib2/tables/25/3.2.table index 3b6046969..d4ff95174 100644 --- a/definitions/grib2/tables/25/3.2.table +++ b/definitions/grib2/tables/25/3.2.table @@ -11,6 +11,4 @@ 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height 10 10 Earth model assumed WGS84 with corrected geomagnetic coordinates (latitude and longitude) defined by Gustafsson et al., 1992 11 11 Sun assumed spherical with radius = 695,990,000 m (Allen, C.W., 1976 Astrophysical Quantities (3rd Ed.; London: Athlone) and Stonyhurst latitude and longitude system with origin at the intersection of the solar central meridian (as seen from Earth) and the solar equator (Thompson, W, Coordinate systems for solar image data, A&A 449, 791-803 (2006)) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/3.20.table b/definitions/grib2/tables/25/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/25/3.20.table +++ b/definitions/grib2/tables/25/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/3.21.table b/definitions/grib2/tables/25/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/25/3.21.table +++ b/definitions/grib2/tables/25/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/3.25.table b/definitions/grib2/tables/25/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/25/3.25.table +++ b/definitions/grib2/tables/25/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/3.3.table b/definitions/grib2/tables/25/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/25/3.3.table +++ b/definitions/grib2/tables/25/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/25/3.7.table b/definitions/grib2/tables/25/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/25/3.7.table +++ b/definitions/grib2/tables/25/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/25/3.8.table b/definitions/grib2/tables/25/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/25/3.8.table +++ b/definitions/grib2/tables/25/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/3.9.table b/definitions/grib2/tables/25/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/25/3.9.table +++ b/definitions/grib2/tables/25/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/25/4.0.table b/definitions/grib2/tables/25/4.0.table index 0ea0af4ec..fc4d5172a 100644 --- a/definitions/grib2/tables/25/4.0.table +++ b/definitions/grib2/tables/25/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -49,15 +44,12 @@ 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval 62 62 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 63 63 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles -# 64-66 Reserved 67 67 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-75 Reserved 76 76 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source/sink 77 77 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source/sink 78 78 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source/sink @@ -66,21 +58,15 @@ 81 81 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol with source/sink 82 82 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source/sink 83 83 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source/sink -# 84-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/25/4.1.0.table b/definitions/grib2/tables/25/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/25/4.1.0.table +++ b/definitions/grib2/tables/25/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.1.1.table b/definitions/grib2/tables/25/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/25/4.1.1.table +++ b/definitions/grib2/tables/25/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.1.10.table b/definitions/grib2/tables/25/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/25/4.1.10.table +++ b/definitions/grib2/tables/25/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.1.2.table b/definitions/grib2/tables/25/4.1.2.table index 046689b83..52d43c5d3 100644 --- a/definitions/grib2/tables/25/4.1.2.table +++ b/definitions/grib2/tables/25/4.1.2.table @@ -5,6 +5,4 @@ 3 3 Soil products 4 4 Fire weather products 5 5 Glaciers and inland ice -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.1.20.table b/definitions/grib2/tables/25/4.1.20.table index fe4362b3c..e896462dc 100644 --- a/definitions/grib2/tables/25/4.1.20.table +++ b/definitions/grib2/tables/25/4.1.20.table @@ -2,6 +2,4 @@ 0 0 Health indicators 1 1 Epidemiology 2 2 Socioeconomic indicators -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.1.3.table b/definitions/grib2/tables/25/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/25/4.1.3.table +++ b/definitions/grib2/tables/25/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.1.4.table b/definitions/grib2/tables/25/4.1.4.table index 792feca5b..ba580bad0 100644 --- a/definitions/grib2/tables/25/4.1.4.table +++ b/definitions/grib2/tables/25/4.1.4.table @@ -10,6 +10,4 @@ 8 8 Imagery 9 9 Ion-neutral coupling 10 10 Space weather indices -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.10.table b/definitions/grib2/tables/25/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/25/4.10.table +++ b/definitions/grib2/tables/25/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/25/4.11.table b/definitions/grib2/tables/25/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/25/4.11.table +++ b/definitions/grib2/tables/25/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.12.table b/definitions/grib2/tables/25/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/25/4.12.table +++ b/definitions/grib2/tables/25/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.13.table b/definitions/grib2/tables/25/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/25/4.13.table +++ b/definitions/grib2/tables/25/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.14.table b/definitions/grib2/tables/25/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/25/4.14.table +++ b/definitions/grib2/tables/25/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.15.table b/definitions/grib2/tables/25/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/25/4.15.table +++ b/definitions/grib2/tables/25/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.16.table b/definitions/grib2/tables/25/4.16.table index de3feccaf..7d6ae7eca 100644 --- a/definitions/grib2/tables/25/4.16.table +++ b/definitions/grib2/tables/25/4.16.table @@ -4,6 +4,4 @@ 2 2 Correlation of product with used calibration product 3 3 Standard deviation 4 4 Random error -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.0.table b/definitions/grib2/tables/25/4.2.0.0.table index 83b3e8ef1..3cd04f347 100644 --- a/definitions/grib2/tables/25/4.2.0.0.table +++ b/definitions/grib2/tables/25/4.2.0.0.table @@ -29,6 +29,4 @@ 27 27 Wet-bulb temperature (K) 28 28 Unbalanced component of temperature (K) 29 29 Temperature advection (K s-1) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.1.table b/definitions/grib2/tables/25/4.2.0.1.table index 46f83bce9..c13590bab 100644 --- a/definitions/grib2/tables/25/4.2.0.1.table +++ b/definitions/grib2/tables/25/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -121,7 +120,6 @@ 119 119 Unbalanced component of specific cloud liquid water content (kg kg-1) 120 120 Unbalanced component of specific cloud ice water content (kg kg-1) 121 121 Fraction of snow cover (Proportion) -# 122-128 Reserved 129 129 Effective radius of cloud water (m) 130 130 Effective radius of rain (m) 131 131 Effective radius of cloud ice (m) @@ -136,6 +134,4 @@ 140 140 Effective aspect ratio of graupel (-) 141 141 Effective aspect ratio of hail (-) 142 142 Effective aspect ratio of subgrid ice clouds (-) -# 143-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.13.table b/definitions/grib2/tables/25/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/25/4.2.0.13.table +++ b/definitions/grib2/tables/25/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.14.table b/definitions/grib2/tables/25/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/25/4.2.0.14.table +++ b/definitions/grib2/tables/25/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.15.table b/definitions/grib2/tables/25/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/25/4.2.0.15.table +++ b/definitions/grib2/tables/25/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.16.table b/definitions/grib2/tables/25/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/25/4.2.0.16.table +++ b/definitions/grib2/tables/25/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.18.table b/definitions/grib2/tables/25/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/25/4.2.0.18.table +++ b/definitions/grib2/tables/25/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.19.table b/definitions/grib2/tables/25/4.2.0.19.table index d06ffc13b..d583f720f 100644 --- a/definitions/grib2/tables/25/4.2.0.19.table +++ b/definitions/grib2/tables/25/4.2.0.19.table @@ -37,6 +37,4 @@ 35 35 Visibility through blowing snow (m) 36 36 Presence of snow squalls (Code table 4.222) 37 37 Icing severity (Code table 4.228) -# 38-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.190.table b/definitions/grib2/tables/25/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/25/4.2.0.190.table +++ b/definitions/grib2/tables/25/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.191.table b/definitions/grib2/tables/25/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/25/4.2.0.191.table +++ b/definitions/grib2/tables/25/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.2.table b/definitions/grib2/tables/25/4.2.0.2.table index 8a70b2591..8651adc7c 100644 --- a/definitions/grib2/tables/25/4.2.0.2.table +++ b/definitions/grib2/tables/25/4.2.0.2.table @@ -46,6 +46,4 @@ 44 44 Geostrophic wind speed (m s-1) 45 45 Unbalanced component of divergence (s-1) 46 46 Vorticity advection (s-2) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.20.table b/definitions/grib2/tables/25/4.2.0.20.table index 9b0170f5c..d799ca11e 100644 --- a/definitions/grib2/tables/25/4.2.0.20.table +++ b/definitions/grib2/tables/25/4.2.0.20.table @@ -17,7 +17,6 @@ 15 15 Dry deposition velocity (m/s) 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) -# 18-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -46,7 +45,6 @@ 75 75 Wildfire flux (kg m-2 s-1) 76 76 Emission rate (kg kg-1 s-1) 77 77 Surface emission flux (kg m-2 s-1) -# 78-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -59,6 +57,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.3.table b/definitions/grib2/tables/25/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/25/4.2.0.3.table +++ b/definitions/grib2/tables/25/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.4.table b/definitions/grib2/tables/25/4.2.0.4.table index f97270456..d5024628b 100644 --- a/definitions/grib2/tables/25/4.2.0.4.table +++ b/definitions/grib2/tables/25/4.2.0.4.table @@ -14,11 +14,8 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) -# 54-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.5.table b/definitions/grib2/tables/25/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/25/4.2.0.5.table +++ b/definitions/grib2/tables/25/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.6.table b/definitions/grib2/tables/25/4.2.0.6.table index 0450ec194..4e5d7ee4c 100644 --- a/definitions/grib2/tables/25/4.2.0.6.table +++ b/definitions/grib2/tables/25/4.2.0.6.table @@ -40,10 +40,7 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.0.7.table b/definitions/grib2/tables/25/4.2.0.7.table index 6289d8b20..2c5b697db 100644 --- a/definitions/grib2/tables/25/4.2.0.7.table +++ b/definitions/grib2/tables/25/4.2.0.7.table @@ -19,6 +19,4 @@ 17 17 Gradient Richardson number (Numeric) 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.1.0.table b/definitions/grib2/tables/25/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/25/4.2.1.0.table +++ b/definitions/grib2/tables/25/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.1.1.table b/definitions/grib2/tables/25/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/25/4.2.1.1.table +++ b/definitions/grib2/tables/25/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.10.0.table b/definitions/grib2/tables/25/4.2.10.0.table index c35e2abfd..15f6163cb 100644 --- a/definitions/grib2/tables/25/4.2.10.0.table +++ b/definitions/grib2/tables/25/4.2.10.0.table @@ -64,6 +64,4 @@ 62 62 Wave frequency width (-) 63 63 Frequency width of wind waves (-) 64 64 Frequency width of total swell (-) -# 65-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.10.1.table b/definitions/grib2/tables/25/4.2.10.1.table index 237e6865a..926267e52 100644 --- a/definitions/grib2/tables/25/4.2.10.1.table +++ b/definitions/grib2/tables/25/4.2.10.1.table @@ -4,6 +4,4 @@ 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) 4 4 Rip current occurrence probability (%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.10.191.table b/definitions/grib2/tables/25/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/25/4.2.10.191.table +++ b/definitions/grib2/tables/25/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.10.2.table b/definitions/grib2/tables/25/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/25/4.2.10.2.table +++ b/definitions/grib2/tables/25/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.10.3.table b/definitions/grib2/tables/25/4.2.10.3.table index ac1603ecc..ba65a71f8 100644 --- a/definitions/grib2/tables/25/4.2.10.3.table +++ b/definitions/grib2/tables/25/4.2.10.3.table @@ -3,6 +3,4 @@ 1 1 Deviation of sea level from mean (m) 2 2 Heat exchange coefficient (-) 3 3 Practical salinity (Numeric) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.10.4.table b/definitions/grib2/tables/25/4.2.10.4.table index 66e9a323c..64c706b14 100644 --- a/definitions/grib2/tables/25/4.2.10.4.table +++ b/definitions/grib2/tables/25/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -19,6 +18,4 @@ 19 19 Water potential density (rho theta) (kg m-3) 20 20 Water potential density anomaly (sigma theta) (kg m-3) 21 21 Practical salinity (Numeric) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.2.0.table b/definitions/grib2/tables/25/4.2.2.0.table index bcfc982b7..137c8deb2 100644 --- a/definitions/grib2/tables/25/4.2.2.0.table +++ b/definitions/grib2/tables/25/4.2.2.0.table @@ -39,6 +39,4 @@ 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) 39 39 Evapotranspiration rate (kg m-2 s-1) -# 40-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.2.3.table b/definitions/grib2/tables/25/4.2.2.3.table index cb2cb71d0..45db96b6e 100644 --- a/definitions/grib2/tables/25/4.2.2.3.table +++ b/definitions/grib2/tables/25/4.2.2.3.table @@ -28,6 +28,4 @@ 26 26 Soil heat flux (W m-2) 27 27 Soil depth (m) 28 28 Snow temperature (K) -# 29-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.2.4.table b/definitions/grib2/tables/25/4.2.2.4.table index 8dcaa509a..68c492ed6 100644 --- a/definitions/grib2/tables/25/4.2.2.4.table +++ b/definitions/grib2/tables/25/4.2.2.4.table @@ -11,6 +11,4 @@ 9 9 Initial Fire Spread Index (as defined by the Canadian Forest Service) (Numeric) 10 10 Fire Buildup Index (as defined by the Canadian Forest Service) (Numeric) 11 11 Fire Daily Severity Rating (as defined by the Canadian Forest Service) (Numeric) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.2.5.table b/definitions/grib2/tables/25/4.2.2.5.table index a5a71dcd1..476893691 100644 --- a/definitions/grib2/tables/25/4.2.2.5.table +++ b/definitions/grib2/tables/25/4.2.2.5.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Glacier cover (Proportion) 1 1 Glacier temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.20.0.table b/definitions/grib2/tables/25/4.2.20.0.table index cf842f6ea..5ba472f7d 100644 --- a/definitions/grib2/tables/25/4.2.20.0.table +++ b/definitions/grib2/tables/25/4.2.20.0.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Universal thermal climate index (K) 1 1 Mean radiant temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.20.1.table b/definitions/grib2/tables/25/4.2.20.1.table index 3c94cdf17..130e49bd2 100644 --- a/definitions/grib2/tables/25/4.2.20.1.table +++ b/definitions/grib2/tables/25/4.2.20.1.table @@ -9,6 +9,4 @@ 7 7 Anopheles vector to host ratio (Fraction) 8 8 Anopheles vector number (Number m-2) 9 9 Fraction of malarial vector reproductive habitat (Fraction) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.20.2.table b/definitions/grib2/tables/25/4.2.20.2.table index 8a937c0d1..cc0ec086d 100644 --- a/definitions/grib2/tables/25/4.2.20.2.table +++ b/definitions/grib2/tables/25/4.2.20.2.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Population density (Person m-2) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.3.0.table b/definitions/grib2/tables/25/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/25/4.2.3.0.table +++ b/definitions/grib2/tables/25/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.3.1.table b/definitions/grib2/tables/25/4.2.3.1.table index 365e59a22..a46651ebe 100644 --- a/definitions/grib2/tables/25/4.2.3.1.table +++ b/definitions/grib2/tables/25/4.2.3.1.table @@ -23,13 +23,9 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (numeric) -# 30-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.0.table b/definitions/grib2/tables/25/4.2.4.0.table index f89f1fee8..9799f20e7 100644 --- a/definitions/grib2/tables/25/4.2.4.0.table +++ b/definitions/grib2/tables/25/4.2.4.0.table @@ -5,6 +5,4 @@ 3 3 Ion temperature (K) 4 4 Parallel temperature (K) 5 5 Perpendicular temperature (K) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.1.table b/definitions/grib2/tables/25/4.2.4.1.table index de1bb48b1..4a40748fd 100644 --- a/definitions/grib2/tables/25/4.2.4.1.table +++ b/definitions/grib2/tables/25/4.2.4.1.table @@ -3,6 +3,4 @@ 1 1 1st vector component of velocity (coordinate system dependent) (m s-1) 2 2 2nd vector component of velocity (coordinate system dependent) (m s-1) 3 3 3rd vector component of velocity (coordinate system dependent) (m s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.10.table b/definitions/grib2/tables/25/4.2.4.10.table index dade20fca..60e6de862 100644 --- a/definitions/grib2/tables/25/4.2.4.10.table +++ b/definitions/grib2/tables/25/4.2.4.10.table @@ -7,6 +7,4 @@ 5 5 Kp (Numeric) 6 6 Equatorial disturbance storm time index (Dst) (nT) 7 7 Auroral Electrojet (AE) (nT) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.2.table b/definitions/grib2/tables/25/4.2.4.2.table index 0ab69cf2c..9016955af 100644 --- a/definitions/grib2/tables/25/4.2.4.2.table +++ b/definitions/grib2/tables/25/4.2.4.2.table @@ -13,6 +13,4 @@ 11 11 Peak height (hm) (m) 12 12 Peak density (Nm) (m-3) 13 13 Equivalent slab thickness (tau) (km) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.3.table b/definitions/grib2/tables/25/4.2.4.3.table index 943251fca..127ecebd8 100644 --- a/definitions/grib2/tables/25/4.2.4.3.table +++ b/definitions/grib2/tables/25/4.2.4.3.table @@ -7,6 +7,4 @@ 5 5 1st vector component of electric field (V m-1) 6 6 2nd vector component of electric field (V m-1) 7 7 3rd vector component of electric field (V m-1) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.4.table b/definitions/grib2/tables/25/4.2.4.4.table index 991faa417..049cfb8b3 100644 --- a/definitions/grib2/tables/25/4.2.4.4.table +++ b/definitions/grib2/tables/25/4.2.4.4.table @@ -6,6 +6,4 @@ 4 4 Heavy ion flux (differential) ((m2 s sr eV/nuc)-1) 5 5 Heavy ion flux (integral) ((m2 s sr)-1) 6 6 Cosmic ray neutron flux (/h) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.5.table b/definitions/grib2/tables/25/4.2.4.5.table index e4aae61da..83b377187 100644 --- a/definitions/grib2/tables/25/4.2.4.5.table +++ b/definitions/grib2/tables/25/4.2.4.5.table @@ -3,6 +3,4 @@ 1 1 Phase (rad) 2 2 Frequency (Hz) 3 3 Wave length (m) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.6.table b/definitions/grib2/tables/25/4.2.4.6.table index 64dccb947..298ef881f 100644 --- a/definitions/grib2/tables/25/4.2.4.6.table +++ b/definitions/grib2/tables/25/4.2.4.6.table @@ -6,6 +6,4 @@ 4 4 Solar spectral irradiance (W m-2 nm-1) 5 5 F10.7 (W m-2 Hz-1) 6 6 Solar radio emissions (W m-2 Hz-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.7.table b/definitions/grib2/tables/25/4.2.4.7.table index 98dd1d649..bd90b12b5 100644 --- a/definitions/grib2/tables/25/4.2.4.7.table +++ b/definitions/grib2/tables/25/4.2.4.7.table @@ -3,6 +3,4 @@ 1 1 Disk intensity (J m-2 s-1) 2 2 Disk intensity day (J m-2 s-1) 3 3 Disk intensity night (J m-2 s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.8.table b/definitions/grib2/tables/25/4.2.4.8.table index 3c7834a9a..c6ab1f271 100644 --- a/definitions/grib2/tables/25/4.2.4.8.table +++ b/definitions/grib2/tables/25/4.2.4.8.table @@ -7,6 +7,4 @@ 5 5 White light coronagraph radiance (W sr-1 m-2) 6 6 Heliospheric radiance (W sr-1 m-2) 7 7 Thematic mask (Numeric) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.2.4.9.table b/definitions/grib2/tables/25/4.2.4.9.table index df8ceaac2..148c54692 100644 --- a/definitions/grib2/tables/25/4.2.4.9.table +++ b/definitions/grib2/tables/25/4.2.4.9.table @@ -2,6 +2,4 @@ 0 0 Pedersen conductivity (S m-1) 1 1 Hall conductivity (S m-1) 2 2 Parallel conductivity (S m-1) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.201.table b/definitions/grib2/tables/25/4.201.table index 0dca20884..a902d6083 100644 --- a/definitions/grib2/tables/25/4.201.table +++ b/definitions/grib2/tables/25/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.202.table b/definitions/grib2/tables/25/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/25/4.202.table +++ b/definitions/grib2/tables/25/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.203.table b/definitions/grib2/tables/25/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/25/4.203.table +++ b/definitions/grib2/tables/25/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.204.table b/definitions/grib2/tables/25/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/25/4.204.table +++ b/definitions/grib2/tables/25/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.205.table b/definitions/grib2/tables/25/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/25/4.205.table +++ b/definitions/grib2/tables/25/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.206.table b/definitions/grib2/tables/25/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/25/4.206.table +++ b/definitions/grib2/tables/25/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.207.table b/definitions/grib2/tables/25/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/25/4.207.table +++ b/definitions/grib2/tables/25/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.208.table b/definitions/grib2/tables/25/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/25/4.208.table +++ b/definitions/grib2/tables/25/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.209.table b/definitions/grib2/tables/25/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/25/4.209.table +++ b/definitions/grib2/tables/25/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.210.table b/definitions/grib2/tables/25/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/25/4.210.table +++ b/definitions/grib2/tables/25/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.211.table b/definitions/grib2/tables/25/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/25/4.211.table +++ b/definitions/grib2/tables/25/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.212.table b/definitions/grib2/tables/25/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/25/4.212.table +++ b/definitions/grib2/tables/25/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.213.table b/definitions/grib2/tables/25/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/25/4.213.table +++ b/definitions/grib2/tables/25/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.215.table b/definitions/grib2/tables/25/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/25/4.215.table +++ b/definitions/grib2/tables/25/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.216.table b/definitions/grib2/tables/25/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/25/4.216.table +++ b/definitions/grib2/tables/25/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/25/4.217.table b/definitions/grib2/tables/25/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/25/4.217.table +++ b/definitions/grib2/tables/25/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.218.table b/definitions/grib2/tables/25/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/25/4.218.table +++ b/definitions/grib2/tables/25/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.219.table b/definitions/grib2/tables/25/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/25/4.219.table +++ b/definitions/grib2/tables/25/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.220.table b/definitions/grib2/tables/25/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/25/4.220.table +++ b/definitions/grib2/tables/25/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.221.table b/definitions/grib2/tables/25/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/25/4.221.table +++ b/definitions/grib2/tables/25/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.222.table b/definitions/grib2/tables/25/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/25/4.222.table +++ b/definitions/grib2/tables/25/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.224.table b/definitions/grib2/tables/25/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/25/4.224.table +++ b/definitions/grib2/tables/25/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/25/4.227.table b/definitions/grib2/tables/25/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/25/4.227.table +++ b/definitions/grib2/tables/25/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/25/4.228.table b/definitions/grib2/tables/25/4.228.table index 048a69f0b..88c3dd87c 100644 --- a/definitions/grib2/tables/25/4.228.table +++ b/definitions/grib2/tables/25/4.228.table @@ -4,5 +4,4 @@ 2 2 Light 3 3 Moderate 4 4 Severe -# 5-254 Reserved 255 255 Missing value diff --git a/definitions/grib2/tables/25/4.230.table b/definitions/grib2/tables/25/4.230.table index 6159d2aad..e89e48f82 100644 --- a/definitions/grib2/tables/25/4.230.table +++ b/definitions/grib2/tables/25/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO 10001 10001 Methyl peroxy radical CH3OO 10002 10002 Methyl hydroperoxide CH3O2H @@ -101,10 +100,8 @@ 10052 10052 Ethyl hydroperoxide CH3CH2OOH 10053 10053 3-hydroxypropyl dioxidanyl radical HOCH2CH2CH2OO 10054 10054 3-hydroxypropyl hydroperoxide HOCH2CH2CH2OOH -# 10055-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, ...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -127,9 +124,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -417,12 +412,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx 60001 60001 Total inorganic and organic peroxy radicals (HOO + ROO) ROO 60002 60002 Passive Ozone @@ -451,7 +444,6 @@ 60025 60025 Hydroxy dicarbonyls unsaturated RC(O)CHOHC(O)R 60026 60026 Hydroxy ketones RC(OH)C(O)R 60027 60027 Oxides Ox -# 60028-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -471,18 +463,14 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic -# 62030-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -498,15 +486,12 @@ 62112 62112 Taxus (yew) pollen 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale,kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/25/4.233.table b/definitions/grib2/tables/25/4.233.table index d60790f5a..9995155e3 100644 --- a/definitions/grib2/tables/25/4.233.table +++ b/definitions/grib2/tables/25/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO 10001 10001 Methyl peroxy radical CH3OO 10002 10002 Methyl hydroperoxide CH3O2H @@ -101,10 +100,8 @@ 10052 10052 Ethyl hydroperoxide CH3CH2OOH 10053 10053 3-hydroxypropyl dioxidanyl radical HOCH2CH2CH2OO 10054 10054 3-hydroxypropyl hydroperoxide HOCH2CH2CH2OOH -# 10055-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, ...) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -127,9 +124,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -417,12 +412,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx 60001 60001 Total inorganic and organic peroxy radicals (HOO + ROO) ROO 60002 60002 Passive Ozone @@ -451,7 +444,6 @@ 60025 60025 Hydroxy dicarbonyls unsaturated RC(O)CHOHC(O)R 60026 60026 Hydroxy ketones RC(OH)C(O)R 60027 60027 Oxides Ox -# 60028-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -471,18 +463,14 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic -# 62030-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -498,15 +486,12 @@ 62112 62112 Taxus (yew) pollen 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen -# 62115-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale,kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/25/4.238.table b/definitions/grib2/tables/25/4.238.table index 84ae04c80..b5f56d292 100644 --- a/definitions/grib2/tables/25/4.238.table +++ b/definitions/grib2/tables/25/4.238.table @@ -11,6 +11,4 @@ 9 9 Fossil-fuel 10 10 Wetlands 11 11 Oceans -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.240.table b/definitions/grib2/tables/25/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/25/4.240.table +++ b/definitions/grib2/tables/25/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/25/4.241.table b/definitions/grib2/tables/25/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/25/4.241.table +++ b/definitions/grib2/tables/25/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/25/4.242.table b/definitions/grib2/tables/25/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/25/4.242.table +++ b/definitions/grib2/tables/25/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/25/4.243.table b/definitions/grib2/tables/25/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/25/4.243.table +++ b/definitions/grib2/tables/25/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/25/4.244.table b/definitions/grib2/tables/25/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/25/4.244.table +++ b/definitions/grib2/tables/25/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.3.table b/definitions/grib2/tables/25/4.3.table index cea1bef4f..8338bbd67 100644 --- a/definitions/grib2/tables/25/4.3.table +++ b/definitions/grib2/tables/25/4.3.table @@ -18,6 +18,4 @@ 16 16 Physical retrieval 17 17 Regression analysis 18 18 Difference between two forecasts -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.4.table b/definitions/grib2/tables/25/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/25/4.4.table +++ b/definitions/grib2/tables/25/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.5.table b/definitions/grib2/tables/25/4.5.table index 9813bf777..4ce5f3178 100644 --- a/definitions/grib2/tables/25/4.5.table +++ b/definitions/grib2/tables/25/4.5.table @@ -16,21 +16,18 @@ 14 14 Level of free convection (LFC) (-) 15 15 Convective condensation level (CCL) (-) 16 16 Level of neutral buoyancy or equilibrium level (LNB) (-) -# 17-19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) 25 25 Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity) (dBZ) -# 26-29 Reserved 30 30 Specified radius from the center of the Sun (m) 31 31 Solar photosphere 32 32 Ionospheric D-region level 33 33 Ionospheric E-region level 34 34 Ionospheric F1-region level 35 35 Ionospheric F2-region level -# 36-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -47,15 +44,12 @@ 113 113 Logarithmic hybrid level 114 sol Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) 152 sol Sea ice level (Numeric) -# 153-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -67,18 +61,14 @@ 168 168 Ocean model level (Numeric) 169 169 Ocean level defined by water density (sigma-theta) difference from near-surface to level (kg m-3) 170 170 Ocean level defined by water potential temperature difference from near-surface to level (K) -# 171-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.6.table b/definitions/grib2/tables/25/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/25/4.6.table +++ b/definitions/grib2/tables/25/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.7.table b/definitions/grib2/tables/25/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/25/4.7.table +++ b/definitions/grib2/tables/25/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.8.table b/definitions/grib2/tables/25/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/25/4.8.table +++ b/definitions/grib2/tables/25/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.9.table b/definitions/grib2/tables/25/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/25/4.9.table +++ b/definitions/grib2/tables/25/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/4.91.table b/definitions/grib2/tables/25/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/25/4.91.table +++ b/definitions/grib2/tables/25/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/25/5.0.table b/definitions/grib2/tables/25/5.0.table index bf17dd722..be5eb0dbb 100644 --- a/definitions/grib2/tables/25/5.0.table +++ b/definitions/grib2/tables/25/5.0.table @@ -4,21 +4,14 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG packing 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/25/5.1.table b/definitions/grib2/tables/25/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/25/5.1.table +++ b/definitions/grib2/tables/25/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/5.2.table b/definitions/grib2/tables/25/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/25/5.2.table +++ b/definitions/grib2/tables/25/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/5.25.table b/definitions/grib2/tables/25/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/25/5.25.table +++ b/definitions/grib2/tables/25/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/25/5.26.table b/definitions/grib2/tables/25/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/25/5.26.table +++ b/definitions/grib2/tables/25/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/25/5.3.table b/definitions/grib2/tables/25/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/25/5.3.table +++ b/definitions/grib2/tables/25/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/5.4.table b/definitions/grib2/tables/25/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/25/5.4.table +++ b/definitions/grib2/tables/25/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/5.40.table b/definitions/grib2/tables/25/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/25/5.40.table +++ b/definitions/grib2/tables/25/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/25/5.5.table b/definitions/grib2/tables/25/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/25/5.5.table +++ b/definitions/grib2/tables/25/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/5.6.table b/definitions/grib2/tables/25/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/25/5.6.table +++ b/definitions/grib2/tables/25/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/25/5.7.table b/definitions/grib2/tables/25/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/25/5.7.table +++ b/definitions/grib2/tables/25/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/26/0.0.table b/definitions/grib2/tables/26/0.0.table index a8542e94f..a54c35af2 100644 --- a/definitions/grib2/tables/26/0.0.table +++ b/definitions/grib2/tables/26/0.0.table @@ -4,10 +4,6 @@ 2 2 Land surface products 3 3 Satellite remote sensing products (formerly Space products) 4 4 Space weather products -# 5-9 Reserved 10 10 Oceanographic products -# 11-19 Reserved 20 20 Health and socioeconomic impacts -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/1.2.table b/definitions/grib2/tables/26/1.2.table index 638f1efbb..116bad779 100644 --- a/definitions/grib2/tables/26/1.2.table +++ b/definitions/grib2/tables/26/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/1.3.table b/definitions/grib2/tables/26/1.3.table index 5e2e59087..f82841612 100644 --- a/definitions/grib2/tables/26/1.3.table +++ b/definitions/grib2/tables/26/1.3.table @@ -11,6 +11,4 @@ 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) 10 10 Copernicus regional reanalysis (CARRA/CERRA) 11 11 Copernicus regional reanalysis test (CARRA/CERRA) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/1.4.table b/definitions/grib2/tables/26/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/26/1.4.table +++ b/definitions/grib2/tables/26/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/26/1.5.table b/definitions/grib2/tables/26/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/26/1.5.table +++ b/definitions/grib2/tables/26/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/26/1.6.table b/definitions/grib2/tables/26/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/26/1.6.table +++ b/definitions/grib2/tables/26/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/3.0.table b/definitions/grib2/tables/26/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/26/3.0.table +++ b/definitions/grib2/tables/26/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/26/3.1.table b/definitions/grib2/tables/26/3.1.table index 41da4c59c..c33ecc3b4 100644 --- a/definitions/grib2/tables/26/3.1.table +++ b/definitions/grib2/tables/26/3.1.table @@ -5,50 +5,31 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11-12 Reserved 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/26/3.10.table b/definitions/grib2/tables/26/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/26/3.10.table +++ b/definitions/grib2/tables/26/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/26/3.11.table b/definitions/grib2/tables/26/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/26/3.11.table +++ b/definitions/grib2/tables/26/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/26/3.15.table b/definitions/grib2/tables/26/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/26/3.15.table +++ b/definitions/grib2/tables/26/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/3.2.table b/definitions/grib2/tables/26/3.2.table index 3b6046969..d4ff95174 100644 --- a/definitions/grib2/tables/26/3.2.table +++ b/definitions/grib2/tables/26/3.2.table @@ -11,6 +11,4 @@ 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height 10 10 Earth model assumed WGS84 with corrected geomagnetic coordinates (latitude and longitude) defined by Gustafsson et al., 1992 11 11 Sun assumed spherical with radius = 695,990,000 m (Allen, C.W., 1976 Astrophysical Quantities (3rd Ed.; London: Athlone) and Stonyhurst latitude and longitude system with origin at the intersection of the solar central meridian (as seen from Earth) and the solar equator (Thompson, W, Coordinate systems for solar image data, A&A 449, 791-803 (2006)) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/3.20.table b/definitions/grib2/tables/26/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/26/3.20.table +++ b/definitions/grib2/tables/26/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/3.21.table b/definitions/grib2/tables/26/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/26/3.21.table +++ b/definitions/grib2/tables/26/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/3.25.table b/definitions/grib2/tables/26/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/26/3.25.table +++ b/definitions/grib2/tables/26/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/3.3.table b/definitions/grib2/tables/26/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/26/3.3.table +++ b/definitions/grib2/tables/26/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/26/3.7.table b/definitions/grib2/tables/26/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/26/3.7.table +++ b/definitions/grib2/tables/26/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/26/3.8.table b/definitions/grib2/tables/26/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/26/3.8.table +++ b/definitions/grib2/tables/26/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/3.9.table b/definitions/grib2/tables/26/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/26/3.9.table +++ b/definitions/grib2/tables/26/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/26/4.0.table b/definitions/grib2/tables/26/4.0.table index f364b851b..3c01a7476 100644 --- a/definitions/grib2/tables/26/4.0.table +++ b/definitions/grib2/tables/26/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -49,15 +44,12 @@ 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval 62 62 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 63 63 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles -# 64-66 Reserved 67 67 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-75 Reserved 76 76 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 77 77 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 78 78 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink @@ -68,17 +60,11 @@ 83 83 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink 84 84 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink 85 85 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol -# 86-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/26/4.1.0.table b/definitions/grib2/tables/26/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/26/4.1.0.table +++ b/definitions/grib2/tables/26/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.1.1.table b/definitions/grib2/tables/26/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/26/4.1.1.table +++ b/definitions/grib2/tables/26/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.1.10.table b/definitions/grib2/tables/26/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/26/4.1.10.table +++ b/definitions/grib2/tables/26/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.1.2.table b/definitions/grib2/tables/26/4.1.2.table index 046689b83..52d43c5d3 100644 --- a/definitions/grib2/tables/26/4.1.2.table +++ b/definitions/grib2/tables/26/4.1.2.table @@ -5,6 +5,4 @@ 3 3 Soil products 4 4 Fire weather products 5 5 Glaciers and inland ice -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.1.20.table b/definitions/grib2/tables/26/4.1.20.table index fe4362b3c..e896462dc 100644 --- a/definitions/grib2/tables/26/4.1.20.table +++ b/definitions/grib2/tables/26/4.1.20.table @@ -2,6 +2,4 @@ 0 0 Health indicators 1 1 Epidemiology 2 2 Socioeconomic indicators -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.1.3.table b/definitions/grib2/tables/26/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/26/4.1.3.table +++ b/definitions/grib2/tables/26/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.1.4.table b/definitions/grib2/tables/26/4.1.4.table index 792feca5b..ba580bad0 100644 --- a/definitions/grib2/tables/26/4.1.4.table +++ b/definitions/grib2/tables/26/4.1.4.table @@ -10,6 +10,4 @@ 8 8 Imagery 9 9 Ion-neutral coupling 10 10 Space weather indices -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.10.table b/definitions/grib2/tables/26/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/26/4.10.table +++ b/definitions/grib2/tables/26/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/26/4.11.table b/definitions/grib2/tables/26/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/26/4.11.table +++ b/definitions/grib2/tables/26/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.12.table b/definitions/grib2/tables/26/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/26/4.12.table +++ b/definitions/grib2/tables/26/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.13.table b/definitions/grib2/tables/26/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/26/4.13.table +++ b/definitions/grib2/tables/26/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.14.table b/definitions/grib2/tables/26/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/26/4.14.table +++ b/definitions/grib2/tables/26/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.15.table b/definitions/grib2/tables/26/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/26/4.15.table +++ b/definitions/grib2/tables/26/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.16.table b/definitions/grib2/tables/26/4.16.table index 5b9f6fd73..2e0c69752 100644 --- a/definitions/grib2/tables/26/4.16.table +++ b/definitions/grib2/tables/26/4.16.table @@ -5,6 +5,4 @@ 3 3 Standard deviation 4 4 Random error 5 5 Probability -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.0.table b/definitions/grib2/tables/26/4.2.0.0.table index ec0a88ce8..abcc6952f 100644 --- a/definitions/grib2/tables/26/4.2.0.0.table +++ b/definitions/grib2/tables/26/4.2.0.0.table @@ -31,6 +31,4 @@ 29 29 Temperature advection (K s-1) 30 30 Latent heat net flux due to evaporation (W m-2) 31 31 Latent heat net flux due to sublimation (W m-2) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.1.table b/definitions/grib2/tables/26/4.2.0.1.table index 7e35d7d3c..f366a053c 100644 --- a/definitions/grib2/tables/26/4.2.0.1.table +++ b/definitions/grib2/tables/26/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -145,6 +144,4 @@ 143 143 Potential evaporation rate (kg m-2 s-1) 144 144 specific rain water content (convective) (kg kg-1) 145 145 specific snow water content (convective) (kg kg-1) -# 146-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.13.table b/definitions/grib2/tables/26/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/26/4.2.0.13.table +++ b/definitions/grib2/tables/26/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.14.table b/definitions/grib2/tables/26/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/26/4.2.0.14.table +++ b/definitions/grib2/tables/26/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.15.table b/definitions/grib2/tables/26/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/26/4.2.0.15.table +++ b/definitions/grib2/tables/26/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.16.table b/definitions/grib2/tables/26/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/26/4.2.0.16.table +++ b/definitions/grib2/tables/26/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.18.table b/definitions/grib2/tables/26/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/26/4.2.0.18.table +++ b/definitions/grib2/tables/26/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.19.table b/definitions/grib2/tables/26/4.2.0.19.table index a20afbfdc..9d0706c79 100644 --- a/definitions/grib2/tables/26/4.2.0.19.table +++ b/definitions/grib2/tables/26/4.2.0.19.table @@ -40,6 +40,4 @@ 38 38 Sky transparency index (Code Table 4.214) 39 39 Seeing index (Code Table 4.214) 40 40 Snow level (m) -# 41-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.190.table b/definitions/grib2/tables/26/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/26/4.2.0.190.table +++ b/definitions/grib2/tables/26/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.191.table b/definitions/grib2/tables/26/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/26/4.2.0.191.table +++ b/definitions/grib2/tables/26/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.2.table b/definitions/grib2/tables/26/4.2.0.2.table index 8a70b2591..8651adc7c 100644 --- a/definitions/grib2/tables/26/4.2.0.2.table +++ b/definitions/grib2/tables/26/4.2.0.2.table @@ -46,6 +46,4 @@ 44 44 Geostrophic wind speed (m s-1) 45 45 Unbalanced component of divergence (s-1) 46 46 Vorticity advection (s-2) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.20.table b/definitions/grib2/tables/26/4.2.0.20.table index 9b0170f5c..d799ca11e 100644 --- a/definitions/grib2/tables/26/4.2.0.20.table +++ b/definitions/grib2/tables/26/4.2.0.20.table @@ -17,7 +17,6 @@ 15 15 Dry deposition velocity (m/s) 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) -# 18-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -46,7 +45,6 @@ 75 75 Wildfire flux (kg m-2 s-1) 76 76 Emission rate (kg kg-1 s-1) 77 77 Surface emission flux (kg m-2 s-1) -# 78-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -59,6 +57,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.3.table b/definitions/grib2/tables/26/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/26/4.2.0.3.table +++ b/definitions/grib2/tables/26/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.4.table b/definitions/grib2/tables/26/4.2.0.4.table index 226b1e23b..d852be811 100644 --- a/definitions/grib2/tables/26/4.2.0.4.table +++ b/definitions/grib2/tables/26/4.2.0.4.table @@ -14,12 +14,9 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) 54 54 Direct normal short-wave radiation flux (W m-2) -# 55-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.5.table b/definitions/grib2/tables/26/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/26/4.2.0.5.table +++ b/definitions/grib2/tables/26/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.6.table b/definitions/grib2/tables/26/4.2.0.6.table index 35f7b5dca..df9eca404 100644 --- a/definitions/grib2/tables/26/4.2.0.6.table +++ b/definitions/grib2/tables/26/4.2.0.6.table @@ -40,11 +40,8 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) 50 50 Fog (%) -# 51-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.0.7.table b/definitions/grib2/tables/26/4.2.0.7.table index e9aa4e39b..312885ef6 100644 --- a/definitions/grib2/tables/26/4.2.0.7.table +++ b/definitions/grib2/tables/26/4.2.0.7.table @@ -20,6 +20,4 @@ 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) 20 20 Thunderstorm intensity index (Code table 4.246) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.1.0.table b/definitions/grib2/tables/26/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/26/4.2.1.0.table +++ b/definitions/grib2/tables/26/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.1.1.table b/definitions/grib2/tables/26/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/26/4.2.1.1.table +++ b/definitions/grib2/tables/26/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.10.0.table b/definitions/grib2/tables/26/4.2.10.0.table index 0ddb10c2b..3b946f594 100644 --- a/definitions/grib2/tables/26/4.2.10.0.table +++ b/definitions/grib2/tables/26/4.2.10.0.table @@ -64,6 +64,4 @@ 62 62 Wave frequency width (-) 63 63 Frequency width of wind waves (-) 64 64 Frequency width of total swell (-) -# 65-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.10.1.table b/definitions/grib2/tables/26/4.2.10.1.table index 237e6865a..926267e52 100644 --- a/definitions/grib2/tables/26/4.2.10.1.table +++ b/definitions/grib2/tables/26/4.2.10.1.table @@ -4,6 +4,4 @@ 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) 4 4 Rip current occurrence probability (%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.10.191.table b/definitions/grib2/tables/26/4.2.10.191.table index 1ebf85006..042104fec 100644 --- a/definitions/grib2/tables/26/4.2.10.191.table +++ b/definitions/grib2/tables/26/4.2.10.191.table @@ -3,6 +3,4 @@ 1 1 Meridional overturning stream function (m3/s) 2 2 Reserved 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.10.2.table b/definitions/grib2/tables/26/4.2.10.2.table index 4633bad4f..d293c3cbb 100644 --- a/definitions/grib2/tables/26/4.2.10.2.table +++ b/definitions/grib2/tables/26/4.2.10.2.table @@ -12,6 +12,4 @@ 10 10 Zonal vector component of vertically integrated ice internal pressure (Pa m) 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.10.3.table b/definitions/grib2/tables/26/4.2.10.3.table index ac1603ecc..ba65a71f8 100644 --- a/definitions/grib2/tables/26/4.2.10.3.table +++ b/definitions/grib2/tables/26/4.2.10.3.table @@ -3,6 +3,4 @@ 1 1 Deviation of sea level from mean (m) 2 2 Heat exchange coefficient (-) 3 3 Practical salinity (Numeric) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.10.4.table b/definitions/grib2/tables/26/4.2.10.4.table index 66e9a323c..64c706b14 100644 --- a/definitions/grib2/tables/26/4.2.10.4.table +++ b/definitions/grib2/tables/26/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -19,6 +18,4 @@ 19 19 Water potential density (rho theta) (kg m-3) 20 20 Water potential density anomaly (sigma theta) (kg m-3) 21 21 Practical salinity (Numeric) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.2.0.table b/definitions/grib2/tables/26/4.2.2.0.table index bcfc982b7..137c8deb2 100644 --- a/definitions/grib2/tables/26/4.2.2.0.table +++ b/definitions/grib2/tables/26/4.2.2.0.table @@ -39,6 +39,4 @@ 37 37 Tile percentage (%) 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) 39 39 Evapotranspiration rate (kg m-2 s-1) -# 40-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.2.3.table b/definitions/grib2/tables/26/4.2.2.3.table index cb2cb71d0..45db96b6e 100644 --- a/definitions/grib2/tables/26/4.2.2.3.table +++ b/definitions/grib2/tables/26/4.2.2.3.table @@ -28,6 +28,4 @@ 26 26 Soil heat flux (W m-2) 27 27 Soil depth (m) 28 28 Snow temperature (K) -# 29-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.2.4.table b/definitions/grib2/tables/26/4.2.2.4.table index 5598e5775..4cabab901 100644 --- a/definitions/grib2/tables/26/4.2.2.4.table +++ b/definitions/grib2/tables/26/4.2.2.4.table @@ -19,6 +19,4 @@ 17 17 Burning index (as defined by the U.S Forest Service National Fire-Danger Rating System) (Numeric) 18 18 Ignition component (as defined by the U.S Forest Service National Fire-Danger Rating System) (%) 19 19 Energy release component (as defined by the U.S Forest Service National Fire-Danger Rating System) (Joule/m2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.2.5.table b/definitions/grib2/tables/26/4.2.2.5.table index a5a71dcd1..476893691 100644 --- a/definitions/grib2/tables/26/4.2.2.5.table +++ b/definitions/grib2/tables/26/4.2.2.5.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Glacier cover (Proportion) 1 1 Glacier temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.20.0.table b/definitions/grib2/tables/26/4.2.20.0.table index cf842f6ea..5ba472f7d 100644 --- a/definitions/grib2/tables/26/4.2.20.0.table +++ b/definitions/grib2/tables/26/4.2.20.0.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Universal thermal climate index (K) 1 1 Mean radiant temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.20.1.table b/definitions/grib2/tables/26/4.2.20.1.table index 3c94cdf17..130e49bd2 100644 --- a/definitions/grib2/tables/26/4.2.20.1.table +++ b/definitions/grib2/tables/26/4.2.20.1.table @@ -9,6 +9,4 @@ 7 7 Anopheles vector to host ratio (Fraction) 8 8 Anopheles vector number (Number m-2) 9 9 Fraction of malarial vector reproductive habitat (Fraction) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.20.2.table b/definitions/grib2/tables/26/4.2.20.2.table index 8a937c0d1..cc0ec086d 100644 --- a/definitions/grib2/tables/26/4.2.20.2.table +++ b/definitions/grib2/tables/26/4.2.20.2.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Population density (Person m-2) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.3.0.table b/definitions/grib2/tables/26/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/26/4.2.3.0.table +++ b/definitions/grib2/tables/26/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.3.1.table b/definitions/grib2/tables/26/4.2.3.1.table index 365e59a22..a46651ebe 100644 --- a/definitions/grib2/tables/26/4.2.3.1.table +++ b/definitions/grib2/tables/26/4.2.3.1.table @@ -23,13 +23,9 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (numeric) -# 30-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.0.table b/definitions/grib2/tables/26/4.2.4.0.table index f89f1fee8..9799f20e7 100644 --- a/definitions/grib2/tables/26/4.2.4.0.table +++ b/definitions/grib2/tables/26/4.2.4.0.table @@ -5,6 +5,4 @@ 3 3 Ion temperature (K) 4 4 Parallel temperature (K) 5 5 Perpendicular temperature (K) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.1.table b/definitions/grib2/tables/26/4.2.4.1.table index de1bb48b1..4a40748fd 100644 --- a/definitions/grib2/tables/26/4.2.4.1.table +++ b/definitions/grib2/tables/26/4.2.4.1.table @@ -3,6 +3,4 @@ 1 1 1st vector component of velocity (coordinate system dependent) (m s-1) 2 2 2nd vector component of velocity (coordinate system dependent) (m s-1) 3 3 3rd vector component of velocity (coordinate system dependent) (m s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.10.table b/definitions/grib2/tables/26/4.2.4.10.table index dade20fca..60e6de862 100644 --- a/definitions/grib2/tables/26/4.2.4.10.table +++ b/definitions/grib2/tables/26/4.2.4.10.table @@ -7,6 +7,4 @@ 5 5 Kp (Numeric) 6 6 Equatorial disturbance storm time index (Dst) (nT) 7 7 Auroral Electrojet (AE) (nT) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.2.table b/definitions/grib2/tables/26/4.2.4.2.table index 0ab69cf2c..9016955af 100644 --- a/definitions/grib2/tables/26/4.2.4.2.table +++ b/definitions/grib2/tables/26/4.2.4.2.table @@ -13,6 +13,4 @@ 11 11 Peak height (hm) (m) 12 12 Peak density (Nm) (m-3) 13 13 Equivalent slab thickness (tau) (km) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.3.table b/definitions/grib2/tables/26/4.2.4.3.table index 943251fca..127ecebd8 100644 --- a/definitions/grib2/tables/26/4.2.4.3.table +++ b/definitions/grib2/tables/26/4.2.4.3.table @@ -7,6 +7,4 @@ 5 5 1st vector component of electric field (V m-1) 6 6 2nd vector component of electric field (V m-1) 7 7 3rd vector component of electric field (V m-1) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.4.table b/definitions/grib2/tables/26/4.2.4.4.table index 991faa417..049cfb8b3 100644 --- a/definitions/grib2/tables/26/4.2.4.4.table +++ b/definitions/grib2/tables/26/4.2.4.4.table @@ -6,6 +6,4 @@ 4 4 Heavy ion flux (differential) ((m2 s sr eV/nuc)-1) 5 5 Heavy ion flux (integral) ((m2 s sr)-1) 6 6 Cosmic ray neutron flux (/h) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.5.table b/definitions/grib2/tables/26/4.2.4.5.table index e4aae61da..83b377187 100644 --- a/definitions/grib2/tables/26/4.2.4.5.table +++ b/definitions/grib2/tables/26/4.2.4.5.table @@ -3,6 +3,4 @@ 1 1 Phase (rad) 2 2 Frequency (Hz) 3 3 Wave length (m) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.6.table b/definitions/grib2/tables/26/4.2.4.6.table index 64dccb947..298ef881f 100644 --- a/definitions/grib2/tables/26/4.2.4.6.table +++ b/definitions/grib2/tables/26/4.2.4.6.table @@ -6,6 +6,4 @@ 4 4 Solar spectral irradiance (W m-2 nm-1) 5 5 F10.7 (W m-2 Hz-1) 6 6 Solar radio emissions (W m-2 Hz-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.7.table b/definitions/grib2/tables/26/4.2.4.7.table index 98dd1d649..bd90b12b5 100644 --- a/definitions/grib2/tables/26/4.2.4.7.table +++ b/definitions/grib2/tables/26/4.2.4.7.table @@ -3,6 +3,4 @@ 1 1 Disk intensity (J m-2 s-1) 2 2 Disk intensity day (J m-2 s-1) 3 3 Disk intensity night (J m-2 s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.8.table b/definitions/grib2/tables/26/4.2.4.8.table index 3c7834a9a..c6ab1f271 100644 --- a/definitions/grib2/tables/26/4.2.4.8.table +++ b/definitions/grib2/tables/26/4.2.4.8.table @@ -7,6 +7,4 @@ 5 5 White light coronagraph radiance (W sr-1 m-2) 6 6 Heliospheric radiance (W sr-1 m-2) 7 7 Thematic mask (Numeric) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.2.4.9.table b/definitions/grib2/tables/26/4.2.4.9.table index df8ceaac2..148c54692 100644 --- a/definitions/grib2/tables/26/4.2.4.9.table +++ b/definitions/grib2/tables/26/4.2.4.9.table @@ -2,6 +2,4 @@ 0 0 Pedersen conductivity (S m-1) 1 1 Hall conductivity (S m-1) 2 2 Parallel conductivity (S m-1) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.201.table b/definitions/grib2/tables/26/4.201.table index 0dca20884..a902d6083 100644 --- a/definitions/grib2/tables/26/4.201.table +++ b/definitions/grib2/tables/26/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.202.table b/definitions/grib2/tables/26/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/26/4.202.table +++ b/definitions/grib2/tables/26/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.203.table b/definitions/grib2/tables/26/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/26/4.203.table +++ b/definitions/grib2/tables/26/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.204.table b/definitions/grib2/tables/26/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/26/4.204.table +++ b/definitions/grib2/tables/26/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.205.table b/definitions/grib2/tables/26/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/26/4.205.table +++ b/definitions/grib2/tables/26/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.206.table b/definitions/grib2/tables/26/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/26/4.206.table +++ b/definitions/grib2/tables/26/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.207.table b/definitions/grib2/tables/26/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/26/4.207.table +++ b/definitions/grib2/tables/26/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.208.table b/definitions/grib2/tables/26/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/26/4.208.table +++ b/definitions/grib2/tables/26/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.209.table b/definitions/grib2/tables/26/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/26/4.209.table +++ b/definitions/grib2/tables/26/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.210.table b/definitions/grib2/tables/26/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/26/4.210.table +++ b/definitions/grib2/tables/26/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.211.table b/definitions/grib2/tables/26/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/26/4.211.table +++ b/definitions/grib2/tables/26/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.212.table b/definitions/grib2/tables/26/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/26/4.212.table +++ b/definitions/grib2/tables/26/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.213.table b/definitions/grib2/tables/26/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/26/4.213.table +++ b/definitions/grib2/tables/26/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.214.table b/definitions/grib2/tables/26/4.214.table index b08860ce0..c0eaeda75 100644 --- a/definitions/grib2/tables/26/4.214.table +++ b/definitions/grib2/tables/26/4.214.table @@ -5,7 +5,5 @@ 3 3 Average 4 4 Good 5 5 Excellent -# 6-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.215.table b/definitions/grib2/tables/26/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/26/4.215.table +++ b/definitions/grib2/tables/26/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.216.table b/definitions/grib2/tables/26/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/26/4.216.table +++ b/definitions/grib2/tables/26/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/26/4.217.table b/definitions/grib2/tables/26/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/26/4.217.table +++ b/definitions/grib2/tables/26/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.218.table b/definitions/grib2/tables/26/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/26/4.218.table +++ b/definitions/grib2/tables/26/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.219.table b/definitions/grib2/tables/26/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/26/4.219.table +++ b/definitions/grib2/tables/26/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.220.table b/definitions/grib2/tables/26/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/26/4.220.table +++ b/definitions/grib2/tables/26/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.221.table b/definitions/grib2/tables/26/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/26/4.221.table +++ b/definitions/grib2/tables/26/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.222.table b/definitions/grib2/tables/26/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/26/4.222.table +++ b/definitions/grib2/tables/26/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.224.table b/definitions/grib2/tables/26/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/26/4.224.table +++ b/definitions/grib2/tables/26/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/26/4.227.table b/definitions/grib2/tables/26/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/26/4.227.table +++ b/definitions/grib2/tables/26/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/26/4.228.table b/definitions/grib2/tables/26/4.228.table index 048a69f0b..88c3dd87c 100644 --- a/definitions/grib2/tables/26/4.228.table +++ b/definitions/grib2/tables/26/4.228.table @@ -4,5 +4,4 @@ 2 2 Light 3 3 Moderate 4 4 Severe -# 5-254 Reserved 255 255 Missing value diff --git a/definitions/grib2/tables/26/4.230.table b/definitions/grib2/tables/26/4.230.table index ebeec9e62..c26de613f 100644 --- a/definitions/grib2/tables/26/4.230.table +++ b/definitions/grib2/tables/26/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO 10001 10001 Methyl peroxy radical CH3OO 10002 10002 Methyl hydroperoxide CH3O2H @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-Oxidanyloxy-3-methylbut-3-en-1-ol (2-Hydroxy-1-isopropenylethylperoxy radical) HOCH_2CH(OO)C(CH_3)CH_2 10058 10058 (Z)-4-Hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH_3)CHO 10059 10059 (Z)-4-Hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH_3)CHCHO -# 10060-10499 Reserved for other simple organic molecules e.g. higher aldehydes alcohols 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -422,12 +417,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx 60001 60001 Total inorganic and organic peroxy radicals (HOO + ROO) ROO 60002 60002 Passive Ozone @@ -461,7 +454,6 @@ 60030 60030 Biogenic Secondary Organic Compound 60031 60031 Anthropogenic Secondary Organic Compound 60032 60032 all hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O_2 ISOPOOH -# 60033-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -481,22 +473,18 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry 62031 62031 Secondary particulate Inorganic matter dry 62032 62032 Biogenic Secondary Organic aerosol 62033 62033 Anthropogenic Secondary Organic aerosol -# 62034-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -513,15 +501,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/26/4.233.table b/definitions/grib2/tables/26/4.233.table index 7d8c2ec2f..3c421212e 100644 --- a/definitions/grib2/tables/26/4.233.table +++ b/definitions/grib2/tables/26/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO 10001 10001 Methyl peroxy radical CH3OO 10002 10002 Methyl hydroperoxide CH3O2H @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-Oxidanyloxy-3-methylbut-3-en-1-ol (2-Hydroxy-1-isopropenylethylperoxy radical) HOCH_2CH(OO)C(CH_3)CH_2 10058 10058 (Z)-4-Hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH_3)CHO 10059 10059 (Z)-4-Hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH_3)CHCHO -# 10060-10499 Reserved for other simple organic molecules e.g. higher aldehydes alcohols 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -422,12 +417,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx 60001 60001 Total inorganic and organic peroxy radicals (HOO + ROO) ROO 60002 60002 Passive Ozone @@ -461,7 +454,6 @@ 60030 60030 Biogenic Secondary Organic Compound 60031 60031 Anthropogenic Secondary Organic Compound 60032 60032 all hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O_2 ISOPOOH -# 60033-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -481,22 +473,18 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry 62031 62031 Secondary particulate Inorganic matter dry 62032 62032 Biogenic Secondary Organic aerosol 62033 62033 Anthropogenic Secondary Organic aerosol -# 62034-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -513,15 +501,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/26/4.238.table b/definitions/grib2/tables/26/4.238.table index be5be3a90..abd570100 100644 --- a/definitions/grib2/tables/26/4.238.table +++ b/definitions/grib2/tables/26/4.238.table @@ -27,6 +27,4 @@ 25 25 Wastes (solid and water) 26 26 Road transportation 27 27 Off-road transportation -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.240.table b/definitions/grib2/tables/26/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/26/4.240.table +++ b/definitions/grib2/tables/26/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/26/4.241.table b/definitions/grib2/tables/26/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/26/4.241.table +++ b/definitions/grib2/tables/26/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/26/4.242.table b/definitions/grib2/tables/26/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/26/4.242.table +++ b/definitions/grib2/tables/26/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/26/4.243.table b/definitions/grib2/tables/26/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/26/4.243.table +++ b/definitions/grib2/tables/26/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/26/4.244.table b/definitions/grib2/tables/26/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/26/4.244.table +++ b/definitions/grib2/tables/26/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.246.table b/definitions/grib2/tables/26/4.246.table index 0ca9c0c98..74c16312c 100644 --- a/definitions/grib2/tables/26/4.246.table +++ b/definitions/grib2/tables/26/4.246.table @@ -3,5 +3,4 @@ 1 1 Weak thunderstorm 2 2 Moderate thunderstorm 3 3 Severe thunderstorm -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/26/4.247.table b/definitions/grib2/tables/26/4.247.table index 6da16e396..5a55bf127 100644 --- a/definitions/grib2/tables/26/4.247.table +++ b/definitions/grib2/tables/26/4.247.table @@ -3,5 +3,4 @@ 1 1 Light precipitation 2 2 Moderate precipitation 3 3 Heavy precipitation -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/26/4.3.table b/definitions/grib2/tables/26/4.3.table index cea1bef4f..8338bbd67 100644 --- a/definitions/grib2/tables/26/4.3.table +++ b/definitions/grib2/tables/26/4.3.table @@ -18,6 +18,4 @@ 16 16 Physical retrieval 17 17 Regression analysis 18 18 Difference between two forecasts -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.4.table b/definitions/grib2/tables/26/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/26/4.4.table +++ b/definitions/grib2/tables/26/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.5.table b/definitions/grib2/tables/26/4.5.table index 4ecc8e6a6..9d247e599 100644 --- a/definitions/grib2/tables/26/4.5.table +++ b/definitions/grib2/tables/26/4.5.table @@ -18,21 +18,18 @@ 16 16 Level of neutral buoyancy or equilibrium level (LNB) (-) 17 sfc Departure level of the most unstable parcel of air (MUDL) 18 sfc Departure level of a mixed layer parcel of air with specified layer depth (Pa) -# 19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) 25 25 Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity) (dBZ) -# 26-29 Reserved 30 30 Specified radius from the center of the Sun (m) 31 31 Solar photosphere 32 32 Ionospheric D-region level 33 33 Ionospheric E-region level 34 34 Ionospheric F1-region level 35 35 Ionospheric F2-region level -# 36-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -49,15 +46,12 @@ 113 113 Logarithmic hybrid level 114 sol Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) 152 sol Sea ice level (Numeric) -# 153-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -69,18 +63,14 @@ 168 168 Ocean model level (Numeric) 169 169 Ocean level defined by water density (sigma-theta) difference from near-surface to level (kg m-3) 170 170 Ocean level defined by water potential temperature difference from near-surface to level (K) -# 171-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.6.table b/definitions/grib2/tables/26/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/26/4.6.table +++ b/definitions/grib2/tables/26/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.7.table b/definitions/grib2/tables/26/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/26/4.7.table +++ b/definitions/grib2/tables/26/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.8.table b/definitions/grib2/tables/26/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/26/4.8.table +++ b/definitions/grib2/tables/26/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.9.table b/definitions/grib2/tables/26/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/26/4.9.table +++ b/definitions/grib2/tables/26/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/4.91.table b/definitions/grib2/tables/26/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/26/4.91.table +++ b/definitions/grib2/tables/26/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/26/5.0.table b/definitions/grib2/tables/26/5.0.table index 5e00004b0..115b708f2 100644 --- a/definitions/grib2/tables/26/5.0.table +++ b/definitions/grib2/tables/26/5.0.table @@ -4,19 +4,12 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/26/5.1.table b/definitions/grib2/tables/26/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/26/5.1.table +++ b/definitions/grib2/tables/26/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/5.2.table b/definitions/grib2/tables/26/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/26/5.2.table +++ b/definitions/grib2/tables/26/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/5.25.table b/definitions/grib2/tables/26/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/26/5.25.table +++ b/definitions/grib2/tables/26/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/26/5.26.table b/definitions/grib2/tables/26/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/26/5.26.table +++ b/definitions/grib2/tables/26/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/26/5.3.table b/definitions/grib2/tables/26/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/26/5.3.table +++ b/definitions/grib2/tables/26/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/5.4.table b/definitions/grib2/tables/26/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/26/5.4.table +++ b/definitions/grib2/tables/26/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/5.40.table b/definitions/grib2/tables/26/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/26/5.40.table +++ b/definitions/grib2/tables/26/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/26/5.5.table b/definitions/grib2/tables/26/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/26/5.5.table +++ b/definitions/grib2/tables/26/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/5.6.table b/definitions/grib2/tables/26/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/26/5.6.table +++ b/definitions/grib2/tables/26/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/26/5.7.table b/definitions/grib2/tables/26/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/26/5.7.table +++ b/definitions/grib2/tables/26/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/27/0.0.table b/definitions/grib2/tables/27/0.0.table index a8542e94f..a54c35af2 100644 --- a/definitions/grib2/tables/27/0.0.table +++ b/definitions/grib2/tables/27/0.0.table @@ -4,10 +4,6 @@ 2 2 Land surface products 3 3 Satellite remote sensing products (formerly Space products) 4 4 Space weather products -# 5-9 Reserved 10 10 Oceanographic products -# 11-19 Reserved 20 20 Health and socioeconomic impacts -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/1.2.table b/definitions/grib2/tables/27/1.2.table index 77f96637a..5371406eb 100644 --- a/definitions/grib2/tables/27/1.2.table +++ b/definitions/grib2/tables/27/1.2.table @@ -4,6 +4,4 @@ 2 2 Verifying time of forecast 3 3 Observation time 4 4 Local time -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/1.3.table b/definitions/grib2/tables/27/1.3.table index 5e2e59087..f82841612 100644 --- a/definitions/grib2/tables/27/1.3.table +++ b/definitions/grib2/tables/27/1.3.table @@ -11,6 +11,4 @@ 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) 10 10 Copernicus regional reanalysis (CARRA/CERRA) 11 11 Copernicus regional reanalysis test (CARRA/CERRA) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/1.4.table b/definitions/grib2/tables/27/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/27/1.4.table +++ b/definitions/grib2/tables/27/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/27/1.5.table b/definitions/grib2/tables/27/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/27/1.5.table +++ b/definitions/grib2/tables/27/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/27/1.6.table b/definitions/grib2/tables/27/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/27/1.6.table +++ b/definitions/grib2/tables/27/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/3.0.table b/definitions/grib2/tables/27/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/27/3.0.table +++ b/definitions/grib2/tables/27/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/27/3.1.table b/definitions/grib2/tables/27/3.1.table index 41da4c59c..c33ecc3b4 100644 --- a/definitions/grib2/tables/27/3.1.table +++ b/definitions/grib2/tables/27/3.1.table @@ -5,50 +5,31 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11-12 Reserved 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/27/3.10.table b/definitions/grib2/tables/27/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/27/3.10.table +++ b/definitions/grib2/tables/27/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/27/3.11.table b/definitions/grib2/tables/27/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/27/3.11.table +++ b/definitions/grib2/tables/27/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/27/3.15.table b/definitions/grib2/tables/27/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/27/3.15.table +++ b/definitions/grib2/tables/27/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/3.2.table b/definitions/grib2/tables/27/3.2.table index 3b6046969..d4ff95174 100644 --- a/definitions/grib2/tables/27/3.2.table +++ b/definitions/grib2/tables/27/3.2.table @@ -11,6 +11,4 @@ 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height 10 10 Earth model assumed WGS84 with corrected geomagnetic coordinates (latitude and longitude) defined by Gustafsson et al., 1992 11 11 Sun assumed spherical with radius = 695,990,000 m (Allen, C.W., 1976 Astrophysical Quantities (3rd Ed.; London: Athlone) and Stonyhurst latitude and longitude system with origin at the intersection of the solar central meridian (as seen from Earth) and the solar equator (Thompson, W, Coordinate systems for solar image data, A&A 449, 791-803 (2006)) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/3.20.table b/definitions/grib2/tables/27/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/27/3.20.table +++ b/definitions/grib2/tables/27/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/3.21.table b/definitions/grib2/tables/27/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/27/3.21.table +++ b/definitions/grib2/tables/27/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/3.25.table b/definitions/grib2/tables/27/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/27/3.25.table +++ b/definitions/grib2/tables/27/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/3.3.table b/definitions/grib2/tables/27/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/27/3.3.table +++ b/definitions/grib2/tables/27/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/27/3.7.table b/definitions/grib2/tables/27/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/27/3.7.table +++ b/definitions/grib2/tables/27/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/27/3.8.table b/definitions/grib2/tables/27/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/27/3.8.table +++ b/definitions/grib2/tables/27/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/3.9.table b/definitions/grib2/tables/27/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/27/3.9.table +++ b/definitions/grib2/tables/27/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/27/4.0.table b/definitions/grib2/tables/27/4.0.table index 480c65e95..7020470b2 100644 --- a/definitions/grib2/tables/27/4.0.table +++ b/definitions/grib2/tables/27/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -49,15 +44,12 @@ 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval 62 62 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 63 63 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles -# 64-66 Reserved 67 67 Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-75 Reserved 76 76 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 77 77 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 78 78 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink @@ -71,17 +63,11 @@ 86 86 Quantile forecasts at a horizontal level or in a horizontal layer at a point in time 87 87 Quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 88 88 Analysis or forecast at a horizontal level or in a horizontal layer at a specified local time -# 89-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/27/4.1.0.table b/definitions/grib2/tables/27/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/27/4.1.0.table +++ b/definitions/grib2/tables/27/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.1.1.table b/definitions/grib2/tables/27/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/27/4.1.1.table +++ b/definitions/grib2/tables/27/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.1.10.table b/definitions/grib2/tables/27/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/27/4.1.10.table +++ b/definitions/grib2/tables/27/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.1.2.table b/definitions/grib2/tables/27/4.1.2.table index 046689b83..52d43c5d3 100644 --- a/definitions/grib2/tables/27/4.1.2.table +++ b/definitions/grib2/tables/27/4.1.2.table @@ -5,6 +5,4 @@ 3 3 Soil products 4 4 Fire weather products 5 5 Glaciers and inland ice -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.1.20.table b/definitions/grib2/tables/27/4.1.20.table index fe4362b3c..e896462dc 100644 --- a/definitions/grib2/tables/27/4.1.20.table +++ b/definitions/grib2/tables/27/4.1.20.table @@ -2,6 +2,4 @@ 0 0 Health indicators 1 1 Epidemiology 2 2 Socioeconomic indicators -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.1.3.table b/definitions/grib2/tables/27/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/27/4.1.3.table +++ b/definitions/grib2/tables/27/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.1.4.table b/definitions/grib2/tables/27/4.1.4.table index 792feca5b..ba580bad0 100644 --- a/definitions/grib2/tables/27/4.1.4.table +++ b/definitions/grib2/tables/27/4.1.4.table @@ -10,6 +10,4 @@ 8 8 Imagery 9 9 Ion-neutral coupling 10 10 Space weather indices -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.10.table b/definitions/grib2/tables/27/4.10.table index 8a390e4be..66119b866 100644 --- a/definitions/grib2/tables/27/4.10.table +++ b/definitions/grib2/tables/27/4.10.table @@ -11,6 +11,4 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/27/4.11.table b/definitions/grib2/tables/27/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/27/4.11.table +++ b/definitions/grib2/tables/27/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.12.table b/definitions/grib2/tables/27/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/27/4.12.table +++ b/definitions/grib2/tables/27/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.13.table b/definitions/grib2/tables/27/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/27/4.13.table +++ b/definitions/grib2/tables/27/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.14.table b/definitions/grib2/tables/27/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/27/4.14.table +++ b/definitions/grib2/tables/27/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.15.table b/definitions/grib2/tables/27/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/27/4.15.table +++ b/definitions/grib2/tables/27/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.16.table b/definitions/grib2/tables/27/4.16.table index 5b9f6fd73..2e0c69752 100644 --- a/definitions/grib2/tables/27/4.16.table +++ b/definitions/grib2/tables/27/4.16.table @@ -5,6 +5,4 @@ 3 3 Standard deviation 4 4 Random error 5 5 Probability -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.0.table b/definitions/grib2/tables/27/4.2.0.0.table index ec0a88ce8..abcc6952f 100644 --- a/definitions/grib2/tables/27/4.2.0.0.table +++ b/definitions/grib2/tables/27/4.2.0.0.table @@ -31,6 +31,4 @@ 29 29 Temperature advection (K s-1) 30 30 Latent heat net flux due to evaporation (W m-2) 31 31 Latent heat net flux due to sublimation (W m-2) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.1.table b/definitions/grib2/tables/27/4.2.0.1.table index 146ec4124..02da5aaa2 100644 --- a/definitions/grib2/tables/27/4.2.0.1.table +++ b/definitions/grib2/tables/27/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -146,6 +145,4 @@ 144 144 Specific rain water content (convective) (kg kg-1) 145 145 Specific snow water content (convective) (kg kg-1) 146 146 Cloud ice precipitation rate (kg m-2 s-1) -# 147-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.13.table b/definitions/grib2/tables/27/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/27/4.2.0.13.table +++ b/definitions/grib2/tables/27/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.14.table b/definitions/grib2/tables/27/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/27/4.2.0.14.table +++ b/definitions/grib2/tables/27/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.15.table b/definitions/grib2/tables/27/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/27/4.2.0.15.table +++ b/definitions/grib2/tables/27/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.16.table b/definitions/grib2/tables/27/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/27/4.2.0.16.table +++ b/definitions/grib2/tables/27/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.18.table b/definitions/grib2/tables/27/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/27/4.2.0.18.table +++ b/definitions/grib2/tables/27/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.19.table b/definitions/grib2/tables/27/4.2.0.19.table index 1ae94c6e6..a602d20e3 100644 --- a/definitions/grib2/tables/27/4.2.0.19.table +++ b/definitions/grib2/tables/27/4.2.0.19.table @@ -40,6 +40,4 @@ 38 38 Sky transparency index (Code table 4.214) 39 39 Seeing index (Code table 4.214) 40 40 Snow level (m) -# 41-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.190.table b/definitions/grib2/tables/27/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/27/4.2.0.190.table +++ b/definitions/grib2/tables/27/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.191.table b/definitions/grib2/tables/27/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/27/4.2.0.191.table +++ b/definitions/grib2/tables/27/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.2.table b/definitions/grib2/tables/27/4.2.0.2.table index 8a70b2591..8651adc7c 100644 --- a/definitions/grib2/tables/27/4.2.0.2.table +++ b/definitions/grib2/tables/27/4.2.0.2.table @@ -46,6 +46,4 @@ 44 44 Geostrophic wind speed (m s-1) 45 45 Unbalanced component of divergence (s-1) 46 46 Vorticity advection (s-2) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.20.table b/definitions/grib2/tables/27/4.2.0.20.table index 9b0170f5c..d799ca11e 100644 --- a/definitions/grib2/tables/27/4.2.0.20.table +++ b/definitions/grib2/tables/27/4.2.0.20.table @@ -17,7 +17,6 @@ 15 15 Dry deposition velocity (m/s) 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) -# 18-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -46,7 +45,6 @@ 75 75 Wildfire flux (kg m-2 s-1) 76 76 Emission rate (kg kg-1 s-1) 77 77 Surface emission flux (kg m-2 s-1) -# 78-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -59,6 +57,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.3.table b/definitions/grib2/tables/27/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/27/4.2.0.3.table +++ b/definitions/grib2/tables/27/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.4.table b/definitions/grib2/tables/27/4.2.0.4.table index 226b1e23b..d852be811 100644 --- a/definitions/grib2/tables/27/4.2.0.4.table +++ b/definitions/grib2/tables/27/4.2.0.4.table @@ -14,12 +14,9 @@ 12 12 Downward UV radiation (W m-2) 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) -# 15-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) 54 54 Direct normal short-wave radiation flux (W m-2) -# 55-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.5.table b/definitions/grib2/tables/27/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/27/4.2.0.5.table +++ b/definitions/grib2/tables/27/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.6.table b/definitions/grib2/tables/27/4.2.0.6.table index 35f7b5dca..df9eca404 100644 --- a/definitions/grib2/tables/27/4.2.0.6.table +++ b/definitions/grib2/tables/27/4.2.0.6.table @@ -40,11 +40,8 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) 50 50 Fog (%) -# 51-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.0.7.table b/definitions/grib2/tables/27/4.2.0.7.table index e9aa4e39b..312885ef6 100644 --- a/definitions/grib2/tables/27/4.2.0.7.table +++ b/definitions/grib2/tables/27/4.2.0.7.table @@ -20,6 +20,4 @@ 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) 20 20 Thunderstorm intensity index (Code table 4.246) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.1.0.table b/definitions/grib2/tables/27/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/27/4.2.1.0.table +++ b/definitions/grib2/tables/27/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.1.1.table b/definitions/grib2/tables/27/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/27/4.2.1.1.table +++ b/definitions/grib2/tables/27/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.1.2.table b/definitions/grib2/tables/27/4.2.1.2.table index 84844b25a..5990036cb 100644 --- a/definitions/grib2/tables/27/4.2.1.2.table +++ b/definitions/grib2/tables/27/4.2.1.2.table @@ -14,6 +14,4 @@ 12 12 Salinity (kg/kg) 13 13 Cross-sectional area of flow in channel (m2) 14 14 Snow temperature (K) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.10.0.table b/definitions/grib2/tables/27/4.2.10.0.table index db25b251f..cb0363b6d 100644 --- a/definitions/grib2/tables/27/4.2.10.0.table +++ b/definitions/grib2/tables/27/4.2.10.0.table @@ -71,6 +71,4 @@ 69 69 Peak wave direction of second swell partition (degree true) 70 70 Peak wave direction of third swell partition (degree true) 71 71 Peak direction of wind waves (degree true) -# 72-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.10.1.table b/definitions/grib2/tables/27/4.2.10.1.table index 237e6865a..926267e52 100644 --- a/definitions/grib2/tables/27/4.2.10.1.table +++ b/definitions/grib2/tables/27/4.2.10.1.table @@ -4,6 +4,4 @@ 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) 4 4 Rip current occurrence probability (%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.10.191.table b/definitions/grib2/tables/27/4.2.10.191.table index fe90ab6aa..a38a452bd 100644 --- a/definitions/grib2/tables/27/4.2.10.191.table +++ b/definitions/grib2/tables/27/4.2.10.191.table @@ -4,6 +4,4 @@ 2 2 Reserved 3 3 Days since last observation (d) 4 4 Barotropic stream function (m3 s-1) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.10.2.table b/definitions/grib2/tables/27/4.2.10.2.table index 6fbb95a65..2fa06dc3c 100644 --- a/definitions/grib2/tables/27/4.2.10.2.table +++ b/definitions/grib2/tables/27/4.2.10.2.table @@ -13,6 +13,4 @@ 11 11 Meridional vector component of vertically integrated ice internal pressure (Pa m) 12 12 Compressive ice strength (N/m) 13 13 Snow temperature (over sea ice) (K) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.10.3.table b/definitions/grib2/tables/27/4.2.10.3.table index a922ee799..8c360ba0a 100644 --- a/definitions/grib2/tables/27/4.2.10.3.table +++ b/definitions/grib2/tables/27/4.2.10.3.table @@ -11,6 +11,4 @@ 9 9 Thermosteric change in sea surface height (m) 10 10 Halosteric change in sea surface height (m) 11 11 Steric change in sea surface height (m) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.10.4.table b/definitions/grib2/tables/27/4.2.10.4.table index 677cbbcb0..1904b97c4 100644 --- a/definitions/grib2/tables/27/4.2.10.4.table +++ b/definitions/grib2/tables/27/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -25,6 +24,4 @@ 25 25 x-component water velocity (m s-1) 26 26 y-component water velocity (m s-1) 27 27 Upward water velocity (m s-1) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.2.0.table b/definitions/grib2/tables/27/4.2.2.0.table index 4ffd25ae9..214227958 100644 --- a/definitions/grib2/tables/27/4.2.2.0.table +++ b/definitions/grib2/tables/27/4.2.2.0.table @@ -40,6 +40,4 @@ 38 38 Soil volumetric ice content (water equivalent) (m3 m-3) 39 39 Evapotranspiration rate (kg m-2 s-1) 40 40 Potential evapotranspiration rate (kg m-2 s-1) -# 41-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.2.3.table b/definitions/grib2/tables/27/4.2.2.3.table index d5540f48b..a2f48a7d9 100644 --- a/definitions/grib2/tables/27/4.2.2.3.table +++ b/definitions/grib2/tables/27/4.2.2.3.table @@ -29,6 +29,4 @@ 27 27 Soil depth (m) 28 28 Snow temperature (K) 29 29 Ice temperature (K) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.2.4.table b/definitions/grib2/tables/27/4.2.2.4.table index 5bc0b0b70..a7ff17739 100644 --- a/definitions/grib2/tables/27/4.2.2.4.table +++ b/definitions/grib2/tables/27/4.2.2.4.table @@ -19,6 +19,4 @@ 17 17 Burning index (as defined by the US Forest Service National Fire Danger Rating System) (Numeric) 18 18 Ignition component (as defined by the US Forest Service National Fire Danger Rating System) (%) 19 19 Energy release component (as defined by the US Forest Service National Fire Danger Rating System) (Joule/m2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.2.5.table b/definitions/grib2/tables/27/4.2.2.5.table index a5a71dcd1..476893691 100644 --- a/definitions/grib2/tables/27/4.2.2.5.table +++ b/definitions/grib2/tables/27/4.2.2.5.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Glacier cover (Proportion) 1 1 Glacier temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.20.0.table b/definitions/grib2/tables/27/4.2.20.0.table index cf842f6ea..5ba472f7d 100644 --- a/definitions/grib2/tables/27/4.2.20.0.table +++ b/definitions/grib2/tables/27/4.2.20.0.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Universal thermal climate index (K) 1 1 Mean radiant temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.20.1.table b/definitions/grib2/tables/27/4.2.20.1.table index 3c94cdf17..130e49bd2 100644 --- a/definitions/grib2/tables/27/4.2.20.1.table +++ b/definitions/grib2/tables/27/4.2.20.1.table @@ -9,6 +9,4 @@ 7 7 Anopheles vector to host ratio (Fraction) 8 8 Anopheles vector number (Number m-2) 9 9 Fraction of malarial vector reproductive habitat (Fraction) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.20.2.table b/definitions/grib2/tables/27/4.2.20.2.table index 8a937c0d1..cc0ec086d 100644 --- a/definitions/grib2/tables/27/4.2.20.2.table +++ b/definitions/grib2/tables/27/4.2.20.2.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Population density (Person m-2) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.3.0.table b/definitions/grib2/tables/27/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/27/4.2.3.0.table +++ b/definitions/grib2/tables/27/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.3.1.table b/definitions/grib2/tables/27/4.2.3.1.table index 365e59a22..a46651ebe 100644 --- a/definitions/grib2/tables/27/4.2.3.1.table +++ b/definitions/grib2/tables/27/4.2.3.1.table @@ -23,13 +23,9 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (numeric) -# 30-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.0.table b/definitions/grib2/tables/27/4.2.4.0.table index f89f1fee8..9799f20e7 100644 --- a/definitions/grib2/tables/27/4.2.4.0.table +++ b/definitions/grib2/tables/27/4.2.4.0.table @@ -5,6 +5,4 @@ 3 3 Ion temperature (K) 4 4 Parallel temperature (K) 5 5 Perpendicular temperature (K) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.1.table b/definitions/grib2/tables/27/4.2.4.1.table index de1bb48b1..4a40748fd 100644 --- a/definitions/grib2/tables/27/4.2.4.1.table +++ b/definitions/grib2/tables/27/4.2.4.1.table @@ -3,6 +3,4 @@ 1 1 1st vector component of velocity (coordinate system dependent) (m s-1) 2 2 2nd vector component of velocity (coordinate system dependent) (m s-1) 3 3 3rd vector component of velocity (coordinate system dependent) (m s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.10.table b/definitions/grib2/tables/27/4.2.4.10.table index dade20fca..60e6de862 100644 --- a/definitions/grib2/tables/27/4.2.4.10.table +++ b/definitions/grib2/tables/27/4.2.4.10.table @@ -7,6 +7,4 @@ 5 5 Kp (Numeric) 6 6 Equatorial disturbance storm time index (Dst) (nT) 7 7 Auroral Electrojet (AE) (nT) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.2.table b/definitions/grib2/tables/27/4.2.4.2.table index 0ab69cf2c..9016955af 100644 --- a/definitions/grib2/tables/27/4.2.4.2.table +++ b/definitions/grib2/tables/27/4.2.4.2.table @@ -13,6 +13,4 @@ 11 11 Peak height (hm) (m) 12 12 Peak density (Nm) (m-3) 13 13 Equivalent slab thickness (tau) (km) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.3.table b/definitions/grib2/tables/27/4.2.4.3.table index 943251fca..127ecebd8 100644 --- a/definitions/grib2/tables/27/4.2.4.3.table +++ b/definitions/grib2/tables/27/4.2.4.3.table @@ -7,6 +7,4 @@ 5 5 1st vector component of electric field (V m-1) 6 6 2nd vector component of electric field (V m-1) 7 7 3rd vector component of electric field (V m-1) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.4.table b/definitions/grib2/tables/27/4.2.4.4.table index 991faa417..049cfb8b3 100644 --- a/definitions/grib2/tables/27/4.2.4.4.table +++ b/definitions/grib2/tables/27/4.2.4.4.table @@ -6,6 +6,4 @@ 4 4 Heavy ion flux (differential) ((m2 s sr eV/nuc)-1) 5 5 Heavy ion flux (integral) ((m2 s sr)-1) 6 6 Cosmic ray neutron flux (/h) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.5.table b/definitions/grib2/tables/27/4.2.4.5.table index e4aae61da..83b377187 100644 --- a/definitions/grib2/tables/27/4.2.4.5.table +++ b/definitions/grib2/tables/27/4.2.4.5.table @@ -3,6 +3,4 @@ 1 1 Phase (rad) 2 2 Frequency (Hz) 3 3 Wave length (m) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.6.table b/definitions/grib2/tables/27/4.2.4.6.table index 64dccb947..298ef881f 100644 --- a/definitions/grib2/tables/27/4.2.4.6.table +++ b/definitions/grib2/tables/27/4.2.4.6.table @@ -6,6 +6,4 @@ 4 4 Solar spectral irradiance (W m-2 nm-1) 5 5 F10.7 (W m-2 Hz-1) 6 6 Solar radio emissions (W m-2 Hz-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.7.table b/definitions/grib2/tables/27/4.2.4.7.table index 98dd1d649..bd90b12b5 100644 --- a/definitions/grib2/tables/27/4.2.4.7.table +++ b/definitions/grib2/tables/27/4.2.4.7.table @@ -3,6 +3,4 @@ 1 1 Disk intensity (J m-2 s-1) 2 2 Disk intensity day (J m-2 s-1) 3 3 Disk intensity night (J m-2 s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.8.table b/definitions/grib2/tables/27/4.2.4.8.table index 3c7834a9a..c6ab1f271 100644 --- a/definitions/grib2/tables/27/4.2.4.8.table +++ b/definitions/grib2/tables/27/4.2.4.8.table @@ -7,6 +7,4 @@ 5 5 White light coronagraph radiance (W sr-1 m-2) 6 6 Heliospheric radiance (W sr-1 m-2) 7 7 Thematic mask (Numeric) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.2.4.9.table b/definitions/grib2/tables/27/4.2.4.9.table index df8ceaac2..148c54692 100644 --- a/definitions/grib2/tables/27/4.2.4.9.table +++ b/definitions/grib2/tables/27/4.2.4.9.table @@ -2,6 +2,4 @@ 0 0 Pedersen conductivity (S m-1) 1 1 Hall conductivity (S m-1) 2 2 Parallel conductivity (S m-1) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.201.table b/definitions/grib2/tables/27/4.201.table index 0dca20884..a902d6083 100644 --- a/definitions/grib2/tables/27/4.201.table +++ b/definitions/grib2/tables/27/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.202.table b/definitions/grib2/tables/27/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/27/4.202.table +++ b/definitions/grib2/tables/27/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.203.table b/definitions/grib2/tables/27/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/27/4.203.table +++ b/definitions/grib2/tables/27/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.204.table b/definitions/grib2/tables/27/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/27/4.204.table +++ b/definitions/grib2/tables/27/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.205.table b/definitions/grib2/tables/27/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/27/4.205.table +++ b/definitions/grib2/tables/27/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.206.table b/definitions/grib2/tables/27/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/27/4.206.table +++ b/definitions/grib2/tables/27/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.207.table b/definitions/grib2/tables/27/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/27/4.207.table +++ b/definitions/grib2/tables/27/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.208.table b/definitions/grib2/tables/27/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/27/4.208.table +++ b/definitions/grib2/tables/27/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.209.table b/definitions/grib2/tables/27/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/27/4.209.table +++ b/definitions/grib2/tables/27/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.210.table b/definitions/grib2/tables/27/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/27/4.210.table +++ b/definitions/grib2/tables/27/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.211.table b/definitions/grib2/tables/27/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/27/4.211.table +++ b/definitions/grib2/tables/27/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.212.table b/definitions/grib2/tables/27/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/27/4.212.table +++ b/definitions/grib2/tables/27/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.213.table b/definitions/grib2/tables/27/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/27/4.213.table +++ b/definitions/grib2/tables/27/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.214.table b/definitions/grib2/tables/27/4.214.table index b08860ce0..c0eaeda75 100644 --- a/definitions/grib2/tables/27/4.214.table +++ b/definitions/grib2/tables/27/4.214.table @@ -5,7 +5,5 @@ 3 3 Average 4 4 Good 5 5 Excellent -# 6-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.215.table b/definitions/grib2/tables/27/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/27/4.215.table +++ b/definitions/grib2/tables/27/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.216.table b/definitions/grib2/tables/27/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/27/4.216.table +++ b/definitions/grib2/tables/27/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/27/4.217.table b/definitions/grib2/tables/27/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/27/4.217.table +++ b/definitions/grib2/tables/27/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.218.table b/definitions/grib2/tables/27/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/27/4.218.table +++ b/definitions/grib2/tables/27/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.219.table b/definitions/grib2/tables/27/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/27/4.219.table +++ b/definitions/grib2/tables/27/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.220.table b/definitions/grib2/tables/27/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/27/4.220.table +++ b/definitions/grib2/tables/27/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.221.table b/definitions/grib2/tables/27/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/27/4.221.table +++ b/definitions/grib2/tables/27/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.222.table b/definitions/grib2/tables/27/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/27/4.222.table +++ b/definitions/grib2/tables/27/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.224.table b/definitions/grib2/tables/27/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/27/4.224.table +++ b/definitions/grib2/tables/27/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/27/4.227.table b/definitions/grib2/tables/27/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/27/4.227.table +++ b/definitions/grib2/tables/27/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/27/4.228.table b/definitions/grib2/tables/27/4.228.table index 048a69f0b..88c3dd87c 100644 --- a/definitions/grib2/tables/27/4.228.table +++ b/definitions/grib2/tables/27/4.228.table @@ -4,5 +4,4 @@ 2 2 Light 3 3 Moderate 4 4 Severe -# 5-254 Reserved 255 255 Missing value diff --git a/definitions/grib2/tables/27/4.230.table b/definitions/grib2/tables/27/4.230.table index ebeec9e62..c26de613f 100644 --- a/definitions/grib2/tables/27/4.230.table +++ b/definitions/grib2/tables/27/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO 10001 10001 Methyl peroxy radical CH3OO 10002 10002 Methyl hydroperoxide CH3O2H @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-Oxidanyloxy-3-methylbut-3-en-1-ol (2-Hydroxy-1-isopropenylethylperoxy radical) HOCH_2CH(OO)C(CH_3)CH_2 10058 10058 (Z)-4-Hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH_3)CHO 10059 10059 (Z)-4-Hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH_3)CHCHO -# 10060-10499 Reserved for other simple organic molecules e.g. higher aldehydes alcohols 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -422,12 +417,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx 60001 60001 Total inorganic and organic peroxy radicals (HOO + ROO) ROO 60002 60002 Passive Ozone @@ -461,7 +454,6 @@ 60030 60030 Biogenic Secondary Organic Compound 60031 60031 Anthropogenic Secondary Organic Compound 60032 60032 all hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O_2 ISOPOOH -# 60033-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -481,22 +473,18 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry 62031 62031 Secondary particulate Inorganic matter dry 62032 62032 Biogenic Secondary Organic aerosol 62033 62033 Anthropogenic Secondary Organic aerosol -# 62034-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -513,15 +501,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/27/4.233.table b/definitions/grib2/tables/27/4.233.table index 7d8c2ec2f..3c421212e 100644 --- a/definitions/grib2/tables/27/4.233.table +++ b/definitions/grib2/tables/27/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO 10001 10001 Methyl peroxy radical CH3OO 10002 10002 Methyl hydroperoxide CH3O2H @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-Oxidanyloxy-3-methylbut-3-en-1-ol (2-Hydroxy-1-isopropenylethylperoxy radical) HOCH_2CH(OO)C(CH_3)CH_2 10058 10058 (Z)-4-Hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH_3)CHO 10059 10059 (Z)-4-Hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH_3)CHCHO -# 10060-10499 Reserved for other simple organic molecules e.g. higher aldehydes alcohols 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -422,12 +417,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx 60001 60001 Total inorganic and organic peroxy radicals (HOO + ROO) ROO 60002 60002 Passive Ozone @@ -461,7 +454,6 @@ 60030 60030 Biogenic Secondary Organic Compound 60031 60031 Anthropogenic Secondary Organic Compound 60032 60032 all hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O_2 ISOPOOH -# 60033-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -481,22 +473,18 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry 62031 62031 Secondary particulate Inorganic matter dry 62032 62032 Biogenic Secondary Organic aerosol 62033 62033 Anthropogenic Secondary Organic aerosol -# 62034-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -513,15 +501,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/27/4.238.table b/definitions/grib2/tables/27/4.238.table index be5be3a90..abd570100 100644 --- a/definitions/grib2/tables/27/4.238.table +++ b/definitions/grib2/tables/27/4.238.table @@ -27,6 +27,4 @@ 25 25 Wastes (solid and water) 26 26 Road transportation 27 27 Off-road transportation -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.240.table b/definitions/grib2/tables/27/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/27/4.240.table +++ b/definitions/grib2/tables/27/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/27/4.241.table b/definitions/grib2/tables/27/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/27/4.241.table +++ b/definitions/grib2/tables/27/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/27/4.242.table b/definitions/grib2/tables/27/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/27/4.242.table +++ b/definitions/grib2/tables/27/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/27/4.243.table b/definitions/grib2/tables/27/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/27/4.243.table +++ b/definitions/grib2/tables/27/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/27/4.244.table b/definitions/grib2/tables/27/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/27/4.244.table +++ b/definitions/grib2/tables/27/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.246.table b/definitions/grib2/tables/27/4.246.table index 0ca9c0c98..74c16312c 100644 --- a/definitions/grib2/tables/27/4.246.table +++ b/definitions/grib2/tables/27/4.246.table @@ -3,5 +3,4 @@ 1 1 Weak thunderstorm 2 2 Moderate thunderstorm 3 3 Severe thunderstorm -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/27/4.247.table b/definitions/grib2/tables/27/4.247.table index 6da16e396..5a55bf127 100644 --- a/definitions/grib2/tables/27/4.247.table +++ b/definitions/grib2/tables/27/4.247.table @@ -3,5 +3,4 @@ 1 1 Light precipitation 2 2 Moderate precipitation 3 3 Heavy precipitation -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/27/4.248.table b/definitions/grib2/tables/27/4.248.table index 04e365c97..ae4965d8d 100644 --- a/definitions/grib2/tables/27/4.248.table +++ b/definitions/grib2/tables/27/4.248.table @@ -1,6 +1,4 @@ # Code table 4.248 - Method used to derive data values for a given local time 0 0 Nearest forecast or analysis time to specified local time 1 1 Interpolated to be valid at the specified local time -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.3.table b/definitions/grib2/tables/27/4.3.table index 8ae36efc3..5d9191ff8 100644 --- a/definitions/grib2/tables/27/4.3.table +++ b/definitions/grib2/tables/27/4.3.table @@ -21,6 +21,4 @@ 19 19 First guess 20 20 Analysis increment 21 21 Initialization increment for analysis -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.4.table b/definitions/grib2/tables/27/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/27/4.4.table +++ b/definitions/grib2/tables/27/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.5.table b/definitions/grib2/tables/27/4.5.table index a1084729a..e22d353fe 100644 --- a/definitions/grib2/tables/27/4.5.table +++ b/definitions/grib2/tables/27/4.5.table @@ -18,21 +18,18 @@ 16 16 Level of neutral buoyancy or equilibrium level (LNB) (-) 17 sfc Departure level of the most unstable parcel of air (MUDL) 18 sfc Departure level of a mixed layer parcel of air with specified layer depth (Pa) -# 19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) 25 25 Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity) (dBZ) -# 26-29 Reserved 30 30 Specified radius from the center of the Sun (m) 31 31 Solar photosphere 32 32 Ionospheric D-region level 33 33 Ionospheric E-region level 34 34 Ionospheric F1-region level 35 35 Ionospheric F2-region level -# 36-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -49,15 +46,12 @@ 113 113 Logarithmic hybrid level 114 sol Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) 152 sol Sea-ice level (Numeric) -# 153-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -69,18 +63,14 @@ 168 168 Ocean model level (Numeric) 169 169 Ocean level defined by water density (sigma-theta) difference from near-surface to level (kg m-3) 170 170 Ocean level defined by water potential temperature difference from near-surface to level (K) -# 171-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.6.table b/definitions/grib2/tables/27/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/27/4.6.table +++ b/definitions/grib2/tables/27/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.7.table b/definitions/grib2/tables/27/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/27/4.7.table +++ b/definitions/grib2/tables/27/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.8.table b/definitions/grib2/tables/27/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/27/4.8.table +++ b/definitions/grib2/tables/27/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.9.table b/definitions/grib2/tables/27/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/27/4.9.table +++ b/definitions/grib2/tables/27/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/4.91.table b/definitions/grib2/tables/27/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/27/4.91.table +++ b/definitions/grib2/tables/27/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/27/5.0.table b/definitions/grib2/tables/27/5.0.table index 5e00004b0..115b708f2 100644 --- a/definitions/grib2/tables/27/5.0.table +++ b/definitions/grib2/tables/27/5.0.table @@ -4,19 +4,12 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/27/5.1.table b/definitions/grib2/tables/27/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/27/5.1.table +++ b/definitions/grib2/tables/27/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/5.2.table b/definitions/grib2/tables/27/5.2.table index d77fdf4e7..0f51965f3 100644 --- a/definitions/grib2/tables/27/5.2.table +++ b/definitions/grib2/tables/27/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/5.25.table b/definitions/grib2/tables/27/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/27/5.25.table +++ b/definitions/grib2/tables/27/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/27/5.26.table b/definitions/grib2/tables/27/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/27/5.26.table +++ b/definitions/grib2/tables/27/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/27/5.3.table b/definitions/grib2/tables/27/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/27/5.3.table +++ b/definitions/grib2/tables/27/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/5.4.table b/definitions/grib2/tables/27/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/27/5.4.table +++ b/definitions/grib2/tables/27/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/5.40.table b/definitions/grib2/tables/27/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/27/5.40.table +++ b/definitions/grib2/tables/27/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/27/5.5.table b/definitions/grib2/tables/27/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/27/5.5.table +++ b/definitions/grib2/tables/27/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/5.6.table b/definitions/grib2/tables/27/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/27/5.6.table +++ b/definitions/grib2/tables/27/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/27/5.7.table b/definitions/grib2/tables/27/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/27/5.7.table +++ b/definitions/grib2/tables/27/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/28/0.0.table b/definitions/grib2/tables/28/0.0.table index a8542e94f..a54c35af2 100644 --- a/definitions/grib2/tables/28/0.0.table +++ b/definitions/grib2/tables/28/0.0.table @@ -4,10 +4,6 @@ 2 2 Land surface products 3 3 Satellite remote sensing products (formerly Space products) 4 4 Space weather products -# 5-9 Reserved 10 10 Oceanographic products -# 11-19 Reserved 20 20 Health and socioeconomic impacts -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/1.2.table b/definitions/grib2/tables/28/1.2.table index 77f96637a..5371406eb 100644 --- a/definitions/grib2/tables/28/1.2.table +++ b/definitions/grib2/tables/28/1.2.table @@ -4,6 +4,4 @@ 2 2 Verifying time of forecast 3 3 Observation time 4 4 Local time -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/1.3.table b/definitions/grib2/tables/28/1.3.table index 5e2e59087..f82841612 100644 --- a/definitions/grib2/tables/28/1.3.table +++ b/definitions/grib2/tables/28/1.3.table @@ -11,6 +11,4 @@ 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) 10 10 Copernicus regional reanalysis (CARRA/CERRA) 11 11 Copernicus regional reanalysis test (CARRA/CERRA) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/1.4.table b/definitions/grib2/tables/28/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/28/1.4.table +++ b/definitions/grib2/tables/28/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/28/1.5.table b/definitions/grib2/tables/28/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/28/1.5.table +++ b/definitions/grib2/tables/28/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/28/1.6.table b/definitions/grib2/tables/28/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/28/1.6.table +++ b/definitions/grib2/tables/28/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/3.0.table b/definitions/grib2/tables/28/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/28/3.0.table +++ b/definitions/grib2/tables/28/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/28/3.1.table b/definitions/grib2/tables/28/3.1.table index 7d372ddaf..2d50f176a 100644 --- a/definitions/grib2/tables/28/3.1.table +++ b/definitions/grib2/tables/28/3.1.table @@ -5,51 +5,32 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11 Reserved 12 12 Transverse Mercator 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/28/3.10.table b/definitions/grib2/tables/28/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/28/3.10.table +++ b/definitions/grib2/tables/28/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/28/3.11.table b/definitions/grib2/tables/28/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/28/3.11.table +++ b/definitions/grib2/tables/28/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/28/3.15.table b/definitions/grib2/tables/28/3.15.table index 6087902a3..e9722738a 100644 --- a/definitions/grib2/tables/28/3.15.table +++ b/definitions/grib2/tables/28/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/3.2.table b/definitions/grib2/tables/28/3.2.table index 3b6046969..d4ff95174 100644 --- a/definitions/grib2/tables/28/3.2.table +++ b/definitions/grib2/tables/28/3.2.table @@ -11,6 +11,4 @@ 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height 10 10 Earth model assumed WGS84 with corrected geomagnetic coordinates (latitude and longitude) defined by Gustafsson et al., 1992 11 11 Sun assumed spherical with radius = 695,990,000 m (Allen, C.W., 1976 Astrophysical Quantities (3rd Ed.; London: Athlone) and Stonyhurst latitude and longitude system with origin at the intersection of the solar central meridian (as seen from Earth) and the solar equator (Thompson, W, Coordinate systems for solar image data, A&A 449, 791-803 (2006)) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/3.20.table b/definitions/grib2/tables/28/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/28/3.20.table +++ b/definitions/grib2/tables/28/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/3.21.table b/definitions/grib2/tables/28/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/28/3.21.table +++ b/definitions/grib2/tables/28/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/3.25.table b/definitions/grib2/tables/28/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/28/3.25.table +++ b/definitions/grib2/tables/28/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/3.3.table b/definitions/grib2/tables/28/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/28/3.3.table +++ b/definitions/grib2/tables/28/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/28/3.7.table b/definitions/grib2/tables/28/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/28/3.7.table +++ b/definitions/grib2/tables/28/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/28/3.8.table b/definitions/grib2/tables/28/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/28/3.8.table +++ b/definitions/grib2/tables/28/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/3.9.table b/definitions/grib2/tables/28/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/28/3.9.table +++ b/definitions/grib2/tables/28/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/28/4.0.table b/definitions/grib2/tables/28/4.0.table index 47aa74902..fcd070c9a 100644 --- a/definitions/grib2/tables/28/4.0.table +++ b/definitions/grib2/tables/28/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -49,15 +44,12 @@ 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval 62 62 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 63 63 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles -# 64-66 Reserved 67 67 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-75 Reserved 76 76 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 77 77 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 78 78 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink @@ -71,7 +63,6 @@ 86 86 Quantile forecasts at a horizontal level or in a horizontal layer at a point in time 87 87 Quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 88 88 Analysis or forecast at a horizontal level or in a horizontal layer at a specified local time -# 89-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 92 92 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time 93 93 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time @@ -80,15 +71,10 @@ 96 96 Average, accumulation, extreme values or other statistically processed values of an individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time 97 97 Average, accumulation, extreme values or other statistically processed values of post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time 98 98 Average, accumulation, extreme values or other statistically processed values of a post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time -# 99-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/28/4.1.0.table b/definitions/grib2/tables/28/4.1.0.table index df58636d6..0a30461d4 100644 --- a/definitions/grib2/tables/28/4.1.0.table +++ b/definitions/grib2/tables/28/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.1.1.table b/definitions/grib2/tables/28/4.1.1.table index 05a854da0..fb2b93fea 100644 --- a/definitions/grib2/tables/28/4.1.1.table +++ b/definitions/grib2/tables/28/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.1.10.table b/definitions/grib2/tables/28/4.1.10.table index 88d3c8743..d0df7ab1c 100644 --- a/definitions/grib2/tables/28/4.1.10.table +++ b/definitions/grib2/tables/28/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.1.2.table b/definitions/grib2/tables/28/4.1.2.table index 046689b83..52d43c5d3 100644 --- a/definitions/grib2/tables/28/4.1.2.table +++ b/definitions/grib2/tables/28/4.1.2.table @@ -5,6 +5,4 @@ 3 3 Soil products 4 4 Fire weather products 5 5 Glaciers and inland ice -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.1.20.table b/definitions/grib2/tables/28/4.1.20.table index fe4362b3c..e896462dc 100644 --- a/definitions/grib2/tables/28/4.1.20.table +++ b/definitions/grib2/tables/28/4.1.20.table @@ -2,6 +2,4 @@ 0 0 Health indicators 1 1 Epidemiology 2 2 Socioeconomic indicators -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.1.3.table b/definitions/grib2/tables/28/4.1.3.table index ba38c9301..0eb4d28ce 100644 --- a/definitions/grib2/tables/28/4.1.3.table +++ b/definitions/grib2/tables/28/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.1.4.table b/definitions/grib2/tables/28/4.1.4.table index 792feca5b..ba580bad0 100644 --- a/definitions/grib2/tables/28/4.1.4.table +++ b/definitions/grib2/tables/28/4.1.4.table @@ -10,6 +10,4 @@ 8 8 Imagery 9 9 Ion-neutral coupling 10 10 Space weather indices -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.10.table b/definitions/grib2/tables/28/4.10.table index 593b052a5..1bc4b2d4c 100644 --- a/definitions/grib2/tables/28/4.10.table +++ b/definitions/grib2/tables/28/4.10.table @@ -11,9 +11,6 @@ 9 ratio Ratio 10 10 Standardized anomaly 11 11 Summation -# 12-99 Reserved 100 100 Severity 101 101 Mode -# 102-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/28/4.11.table b/definitions/grib2/tables/28/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/28/4.11.table +++ b/definitions/grib2/tables/28/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.12.table b/definitions/grib2/tables/28/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/28/4.12.table +++ b/definitions/grib2/tables/28/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.13.table b/definitions/grib2/tables/28/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/28/4.13.table +++ b/definitions/grib2/tables/28/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.14.table b/definitions/grib2/tables/28/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/28/4.14.table +++ b/definitions/grib2/tables/28/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.15.table b/definitions/grib2/tables/28/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/28/4.15.table +++ b/definitions/grib2/tables/28/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.16.table b/definitions/grib2/tables/28/4.16.table index 5b9f6fd73..2e0c69752 100644 --- a/definitions/grib2/tables/28/4.16.table +++ b/definitions/grib2/tables/28/4.16.table @@ -5,6 +5,4 @@ 3 3 Standard deviation 4 4 Random error 5 5 Probability -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.0.table b/definitions/grib2/tables/28/4.2.0.0.table index aed766618..08929dcfe 100644 --- a/definitions/grib2/tables/28/4.2.0.0.table +++ b/definitions/grib2/tables/28/4.2.0.0.table @@ -32,6 +32,4 @@ 30 30 Latent heat net flux due to evaporation (W m-2) 31 31 Latent heat net flux due to sublimation (W m-2) 32 32 Wet-bulb potential temperature (K) -# 33-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.1.table b/definitions/grib2/tables/28/4.2.0.1.table index 4336975e6..cfee58d6e 100644 --- a/definitions/grib2/tables/28/4.2.0.1.table +++ b/definitions/grib2/tables/28/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -149,6 +148,4 @@ 147 147 Character of precipitation (Code table 4.249) 148 148 Snow evaporation rate (kg m-2 s-1) 149 149 Cloud water mixing ratio (kg kg-1) -# 149-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.13.table b/definitions/grib2/tables/28/4.2.0.13.table index 3f5c30675..6310baaf2 100644 --- a/definitions/grib2/tables/28/4.2.0.13.table +++ b/definitions/grib2/tables/28/4.2.0.13.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.14.table b/definitions/grib2/tables/28/4.2.0.14.table index 97fb38c8b..1bbc63297 100644 --- a/definitions/grib2/tables/28/4.2.0.14.table +++ b/definitions/grib2/tables/28/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.15.table b/definitions/grib2/tables/28/4.2.0.15.table index 8df082466..b2d09f714 100644 --- a/definitions/grib2/tables/28/4.2.0.15.table +++ b/definitions/grib2/tables/28/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.16.table b/definitions/grib2/tables/28/4.2.0.16.table index 9499d9333..40e76d3f3 100644 --- a/definitions/grib2/tables/28/4.2.0.16.table +++ b/definitions/grib2/tables/28/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.18.table b/definitions/grib2/tables/28/4.2.0.18.table index 9ca6db61e..6672fc465 100644 --- a/definitions/grib2/tables/28/4.2.0.18.table +++ b/definitions/grib2/tables/28/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.19.table b/definitions/grib2/tables/28/4.2.0.19.table index 1ae94c6e6..a602d20e3 100644 --- a/definitions/grib2/tables/28/4.2.0.19.table +++ b/definitions/grib2/tables/28/4.2.0.19.table @@ -40,6 +40,4 @@ 38 38 Sky transparency index (Code table 4.214) 39 39 Seeing index (Code table 4.214) 40 40 Snow level (m) -# 41-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.190.table b/definitions/grib2/tables/28/4.2.0.190.table index a0d6ba0ac..961c8e9b2 100644 --- a/definitions/grib2/tables/28/4.2.0.190.table +++ b/definitions/grib2/tables/28/4.2.0.190.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.191.table b/definitions/grib2/tables/28/4.2.0.191.table index b3a7092ea..76ea0abf0 100644 --- a/definitions/grib2/tables/28/4.2.0.191.table +++ b/definitions/grib2/tables/28/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.2.table b/definitions/grib2/tables/28/4.2.0.2.table index 0edea5399..6ca652ea2 100644 --- a/definitions/grib2/tables/28/4.2.0.2.table +++ b/definitions/grib2/tables/28/4.2.0.2.table @@ -48,6 +48,4 @@ 46 46 Vorticity advection (s-2) 47 47 Surface roughness for heat (m) 48 48 Surface roughness for moisture (m) -# 49-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.20.table b/definitions/grib2/tables/28/4.2.0.20.table index 9b0170f5c..d799ca11e 100644 --- a/definitions/grib2/tables/28/4.2.0.20.table +++ b/definitions/grib2/tables/28/4.2.0.20.table @@ -17,7 +17,6 @@ 15 15 Dry deposition velocity (m/s) 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) -# 18-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -46,7 +45,6 @@ 75 75 Wildfire flux (kg m-2 s-1) 76 76 Emission rate (kg kg-1 s-1) 77 77 Surface emission flux (kg m-2 s-1) -# 78-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -59,6 +57,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.3.table b/definitions/grib2/tables/28/4.2.0.3.table index 52c421b97..ee642b144 100644 --- a/definitions/grib2/tables/28/4.2.0.3.table +++ b/definitions/grib2/tables/28/4.2.0.3.table @@ -31,6 +31,4 @@ 29 29 Updraught detrainment rate (kg m-3 s-1) 30 30 Downdraught detrainment rate (kg m-3 s-1) 31 31 Unbalanced component of logarithm of surface pressure (-) -# 32-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.4.table b/definitions/grib2/tables/28/4.2.0.4.table index 6880f659b..596a9b8bf 100644 --- a/definitions/grib2/tables/28/4.2.0.4.table +++ b/definitions/grib2/tables/28/4.2.0.4.table @@ -15,12 +15,9 @@ 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) 15 15 Upward UV radiation emitted / reflected from the Earth surface (W m-2) -# 16-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) 54 54 Direct normal short-wave radiation flux (W m-2) -# 55-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.5.table b/definitions/grib2/tables/28/4.2.0.5.table index ddfa634ce..5cc04f2c5 100644 --- a/definitions/grib2/tables/28/4.2.0.5.table +++ b/definitions/grib2/tables/28/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.6.table b/definitions/grib2/tables/28/4.2.0.6.table index 35f7b5dca..df9eca404 100644 --- a/definitions/grib2/tables/28/4.2.0.6.table +++ b/definitions/grib2/tables/28/4.2.0.6.table @@ -40,11 +40,8 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) 50 50 Fog (%) -# 51-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.0.7.table b/definitions/grib2/tables/28/4.2.0.7.table index e9aa4e39b..312885ef6 100644 --- a/definitions/grib2/tables/28/4.2.0.7.table +++ b/definitions/grib2/tables/28/4.2.0.7.table @@ -20,6 +20,4 @@ 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) 20 20 Thunderstorm intensity index (Code table 4.246) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.1.0.table b/definitions/grib2/tables/28/4.2.1.0.table index a2660f4f3..f9cc7bb8e 100644 --- a/definitions/grib2/tables/28/4.2.1.0.table +++ b/definitions/grib2/tables/28/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.1.1.table b/definitions/grib2/tables/28/4.2.1.1.table index 171da3958..adc57ef8b 100644 --- a/definitions/grib2/tables/28/4.2.1.1.table +++ b/definitions/grib2/tables/28/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.1.2.table b/definitions/grib2/tables/28/4.2.1.2.table index 84844b25a..5990036cb 100644 --- a/definitions/grib2/tables/28/4.2.1.2.table +++ b/definitions/grib2/tables/28/4.2.1.2.table @@ -14,6 +14,4 @@ 12 12 Salinity (kg/kg) 13 13 Cross-sectional area of flow in channel (m2) 14 14 Snow temperature (K) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.10.0.table b/definitions/grib2/tables/28/4.2.10.0.table index db25b251f..cb0363b6d 100644 --- a/definitions/grib2/tables/28/4.2.10.0.table +++ b/definitions/grib2/tables/28/4.2.10.0.table @@ -71,6 +71,4 @@ 69 69 Peak wave direction of second swell partition (degree true) 70 70 Peak wave direction of third swell partition (degree true) 71 71 Peak direction of wind waves (degree true) -# 72-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.10.1.table b/definitions/grib2/tables/28/4.2.10.1.table index 237e6865a..926267e52 100644 --- a/definitions/grib2/tables/28/4.2.10.1.table +++ b/definitions/grib2/tables/28/4.2.10.1.table @@ -4,6 +4,4 @@ 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) 4 4 Rip current occurrence probability (%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.10.191.table b/definitions/grib2/tables/28/4.2.10.191.table index fe90ab6aa..a38a452bd 100644 --- a/definitions/grib2/tables/28/4.2.10.191.table +++ b/definitions/grib2/tables/28/4.2.10.191.table @@ -4,6 +4,4 @@ 2 2 Reserved 3 3 Days since last observation (d) 4 4 Barotropic stream function (m3 s-1) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.10.2.table b/definitions/grib2/tables/28/4.2.10.2.table index b3278eb93..e7074cf97 100644 --- a/definitions/grib2/tables/28/4.2.10.2.table +++ b/definitions/grib2/tables/28/4.2.10.2.table @@ -14,6 +14,4 @@ 12 12 Compressive ice strength (N/m) 13 13 Snow temperature (over sea ice) (K) 14 14 Albedo (Numeric) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.10.3.table b/definitions/grib2/tables/28/4.2.10.3.table index 55dfcc3ed..8876ad0db 100644 --- a/definitions/grib2/tables/28/4.2.10.3.table +++ b/definitions/grib2/tables/28/4.2.10.3.table @@ -12,6 +12,4 @@ 10 10 Halosteric change in sea surface height (m) 11 11 Steric change in sea surface height (m) 12 12 Sea salt flux (kg m-2 s-1) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.10.4.table b/definitions/grib2/tables/28/4.2.10.4.table index 029d20d07..7d1e1a435 100644 --- a/definitions/grib2/tables/28/4.2.10.4.table +++ b/definitions/grib2/tables/28/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -26,6 +25,4 @@ 26 26 y-component water velocity (m s-1) 27 27 Upward water velocity (m s-1) 28 28 Vertical eddy diffusivity (m2 s-1) -# 29-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.2.0.table b/definitions/grib2/tables/28/4.2.2.0.table index dee2ed824..9eccadfd2 100644 --- a/definitions/grib2/tables/28/4.2.2.0.table +++ b/definitions/grib2/tables/28/4.2.2.0.table @@ -42,6 +42,4 @@ 40 40 Potential evapotranspiration rate (kg m-2 s-1) 41 41 Snow melt rate (kg m-2 s-1) 42 42 Water runoff and drainage rate (kg m-2 s-1) -# 43-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.2.3.table b/definitions/grib2/tables/28/4.2.2.3.table index d5540f48b..a2f48a7d9 100644 --- a/definitions/grib2/tables/28/4.2.2.3.table +++ b/definitions/grib2/tables/28/4.2.2.3.table @@ -29,6 +29,4 @@ 27 27 Soil depth (m) 28 28 Snow temperature (K) 29 29 Ice temperature (K) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.2.4.table b/definitions/grib2/tables/28/4.2.2.4.table index 5bc0b0b70..a7ff17739 100644 --- a/definitions/grib2/tables/28/4.2.2.4.table +++ b/definitions/grib2/tables/28/4.2.2.4.table @@ -19,6 +19,4 @@ 17 17 Burning index (as defined by the US Forest Service National Fire Danger Rating System) (Numeric) 18 18 Ignition component (as defined by the US Forest Service National Fire Danger Rating System) (%) 19 19 Energy release component (as defined by the US Forest Service National Fire Danger Rating System) (Joule/m2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.2.5.table b/definitions/grib2/tables/28/4.2.2.5.table index a5a71dcd1..476893691 100644 --- a/definitions/grib2/tables/28/4.2.2.5.table +++ b/definitions/grib2/tables/28/4.2.2.5.table @@ -1,6 +1,4 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Glacier cover (Proportion) 1 1 Glacier temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.20.0.table b/definitions/grib2/tables/28/4.2.20.0.table index d2010755e..8d7d8792d 100644 --- a/definitions/grib2/tables/28/4.2.20.0.table +++ b/definitions/grib2/tables/28/4.2.20.0.table @@ -2,6 +2,4 @@ 0 0 Universal thermal climate index (K) 1 1 Mean radiant temperature (K) 2 2 Wet-bulb globe temperature (K) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.20.1.table b/definitions/grib2/tables/28/4.2.20.1.table index 3c94cdf17..130e49bd2 100644 --- a/definitions/grib2/tables/28/4.2.20.1.table +++ b/definitions/grib2/tables/28/4.2.20.1.table @@ -9,6 +9,4 @@ 7 7 Anopheles vector to host ratio (Fraction) 8 8 Anopheles vector number (Number m-2) 9 9 Fraction of malarial vector reproductive habitat (Fraction) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.20.2.table b/definitions/grib2/tables/28/4.2.20.2.table index 8a937c0d1..cc0ec086d 100644 --- a/definitions/grib2/tables/28/4.2.20.2.table +++ b/definitions/grib2/tables/28/4.2.20.2.table @@ -1,5 +1,3 @@ # Code table 4.2 - Parameter number by product discipline and parameter category 0 0 Population density (Person m-2) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.3.0.table b/definitions/grib2/tables/28/4.2.3.0.table index 80a829673..f63a000ae 100644 --- a/definitions/grib2/tables/28/4.2.3.0.table +++ b/definitions/grib2/tables/28/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.3.1.table b/definitions/grib2/tables/28/4.2.3.1.table index 365e59a22..a46651ebe 100644 --- a/definitions/grib2/tables/28/4.2.3.1.table +++ b/definitions/grib2/tables/28/4.2.3.1.table @@ -23,13 +23,9 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (numeric) -# 30-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.0.table b/definitions/grib2/tables/28/4.2.4.0.table index f89f1fee8..9799f20e7 100644 --- a/definitions/grib2/tables/28/4.2.4.0.table +++ b/definitions/grib2/tables/28/4.2.4.0.table @@ -5,6 +5,4 @@ 3 3 Ion temperature (K) 4 4 Parallel temperature (K) 5 5 Perpendicular temperature (K) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.1.table b/definitions/grib2/tables/28/4.2.4.1.table index de1bb48b1..4a40748fd 100644 --- a/definitions/grib2/tables/28/4.2.4.1.table +++ b/definitions/grib2/tables/28/4.2.4.1.table @@ -3,6 +3,4 @@ 1 1 1st vector component of velocity (coordinate system dependent) (m s-1) 2 2 2nd vector component of velocity (coordinate system dependent) (m s-1) 3 3 3rd vector component of velocity (coordinate system dependent) (m s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.10.table b/definitions/grib2/tables/28/4.2.4.10.table index dade20fca..60e6de862 100644 --- a/definitions/grib2/tables/28/4.2.4.10.table +++ b/definitions/grib2/tables/28/4.2.4.10.table @@ -7,6 +7,4 @@ 5 5 Kp (Numeric) 6 6 Equatorial disturbance storm time index (Dst) (nT) 7 7 Auroral Electrojet (AE) (nT) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.2.table b/definitions/grib2/tables/28/4.2.4.2.table index 0ab69cf2c..9016955af 100644 --- a/definitions/grib2/tables/28/4.2.4.2.table +++ b/definitions/grib2/tables/28/4.2.4.2.table @@ -13,6 +13,4 @@ 11 11 Peak height (hm) (m) 12 12 Peak density (Nm) (m-3) 13 13 Equivalent slab thickness (tau) (km) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.3.table b/definitions/grib2/tables/28/4.2.4.3.table index 943251fca..127ecebd8 100644 --- a/definitions/grib2/tables/28/4.2.4.3.table +++ b/definitions/grib2/tables/28/4.2.4.3.table @@ -7,6 +7,4 @@ 5 5 1st vector component of electric field (V m-1) 6 6 2nd vector component of electric field (V m-1) 7 7 3rd vector component of electric field (V m-1) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.4.table b/definitions/grib2/tables/28/4.2.4.4.table index 991faa417..049cfb8b3 100644 --- a/definitions/grib2/tables/28/4.2.4.4.table +++ b/definitions/grib2/tables/28/4.2.4.4.table @@ -6,6 +6,4 @@ 4 4 Heavy ion flux (differential) ((m2 s sr eV/nuc)-1) 5 5 Heavy ion flux (integral) ((m2 s sr)-1) 6 6 Cosmic ray neutron flux (/h) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.5.table b/definitions/grib2/tables/28/4.2.4.5.table index e4aae61da..83b377187 100644 --- a/definitions/grib2/tables/28/4.2.4.5.table +++ b/definitions/grib2/tables/28/4.2.4.5.table @@ -3,6 +3,4 @@ 1 1 Phase (rad) 2 2 Frequency (Hz) 3 3 Wave length (m) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.6.table b/definitions/grib2/tables/28/4.2.4.6.table index 64dccb947..298ef881f 100644 --- a/definitions/grib2/tables/28/4.2.4.6.table +++ b/definitions/grib2/tables/28/4.2.4.6.table @@ -6,6 +6,4 @@ 4 4 Solar spectral irradiance (W m-2 nm-1) 5 5 F10.7 (W m-2 Hz-1) 6 6 Solar radio emissions (W m-2 Hz-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.7.table b/definitions/grib2/tables/28/4.2.4.7.table index 98dd1d649..bd90b12b5 100644 --- a/definitions/grib2/tables/28/4.2.4.7.table +++ b/definitions/grib2/tables/28/4.2.4.7.table @@ -3,6 +3,4 @@ 1 1 Disk intensity (J m-2 s-1) 2 2 Disk intensity day (J m-2 s-1) 3 3 Disk intensity night (J m-2 s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.8.table b/definitions/grib2/tables/28/4.2.4.8.table index 3d6e81e60..6e970f6af 100644 --- a/definitions/grib2/tables/28/4.2.4.8.table +++ b/definitions/grib2/tables/28/4.2.4.8.table @@ -8,6 +8,4 @@ 6 6 Heliospheric radiance (W sr-1 m-2) 7 7 Thematic mask (Numeric) 8 8 Solar induced chlorophyll fluorescence (W m-2 sr-1 m-1) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.2.4.9.table b/definitions/grib2/tables/28/4.2.4.9.table index df8ceaac2..148c54692 100644 --- a/definitions/grib2/tables/28/4.2.4.9.table +++ b/definitions/grib2/tables/28/4.2.4.9.table @@ -2,6 +2,4 @@ 0 0 Pedersen conductivity (S m-1) 1 1 Hall conductivity (S m-1) 2 2 Parallel conductivity (S m-1) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.201.table b/definitions/grib2/tables/28/4.201.table index 0dca20884..a902d6083 100644 --- a/definitions/grib2/tables/28/4.201.table +++ b/definitions/grib2/tables/28/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.202.table b/definitions/grib2/tables/28/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/28/4.202.table +++ b/definitions/grib2/tables/28/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.203.table b/definitions/grib2/tables/28/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/28/4.203.table +++ b/definitions/grib2/tables/28/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.204.table b/definitions/grib2/tables/28/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/28/4.204.table +++ b/definitions/grib2/tables/28/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.205.table b/definitions/grib2/tables/28/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/28/4.205.table +++ b/definitions/grib2/tables/28/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.206.table b/definitions/grib2/tables/28/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/28/4.206.table +++ b/definitions/grib2/tables/28/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.207.table b/definitions/grib2/tables/28/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/28/4.207.table +++ b/definitions/grib2/tables/28/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.208.table b/definitions/grib2/tables/28/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/28/4.208.table +++ b/definitions/grib2/tables/28/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.209.table b/definitions/grib2/tables/28/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/28/4.209.table +++ b/definitions/grib2/tables/28/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.210.table b/definitions/grib2/tables/28/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/28/4.210.table +++ b/definitions/grib2/tables/28/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.211.table b/definitions/grib2/tables/28/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/28/4.211.table +++ b/definitions/grib2/tables/28/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.212.table b/definitions/grib2/tables/28/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/28/4.212.table +++ b/definitions/grib2/tables/28/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.213.table b/definitions/grib2/tables/28/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/28/4.213.table +++ b/definitions/grib2/tables/28/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.214.table b/definitions/grib2/tables/28/4.214.table index b08860ce0..c0eaeda75 100644 --- a/definitions/grib2/tables/28/4.214.table +++ b/definitions/grib2/tables/28/4.214.table @@ -5,7 +5,5 @@ 3 3 Average 4 4 Good 5 5 Excellent -# 6-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.215.table b/definitions/grib2/tables/28/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/28/4.215.table +++ b/definitions/grib2/tables/28/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.216.table b/definitions/grib2/tables/28/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/28/4.216.table +++ b/definitions/grib2/tables/28/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/28/4.217.table b/definitions/grib2/tables/28/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/28/4.217.table +++ b/definitions/grib2/tables/28/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.218.table b/definitions/grib2/tables/28/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/28/4.218.table +++ b/definitions/grib2/tables/28/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.219.table b/definitions/grib2/tables/28/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/28/4.219.table +++ b/definitions/grib2/tables/28/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.220.table b/definitions/grib2/tables/28/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/28/4.220.table +++ b/definitions/grib2/tables/28/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.221.table b/definitions/grib2/tables/28/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/28/4.221.table +++ b/definitions/grib2/tables/28/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.222.table b/definitions/grib2/tables/28/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/28/4.222.table +++ b/definitions/grib2/tables/28/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.224.table b/definitions/grib2/tables/28/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/28/4.224.table +++ b/definitions/grib2/tables/28/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/28/4.227.table b/definitions/grib2/tables/28/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/28/4.227.table +++ b/definitions/grib2/tables/28/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/28/4.228.table b/definitions/grib2/tables/28/4.228.table index 048a69f0b..88c3dd87c 100644 --- a/definitions/grib2/tables/28/4.228.table +++ b/definitions/grib2/tables/28/4.228.table @@ -4,5 +4,4 @@ 2 2 Light 3 3 Moderate 4 4 Severe -# 5-254 Reserved 255 255 Missing value diff --git a/definitions/grib2/tables/28/4.230.table b/definitions/grib2/tables/28/4.230.table index d872ebbec..e5d8ba229 100644 --- a/definitions/grib2/tables/28/4.230.table +++ b/definitions/grib2/tables/28/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO* 10001 10001 Methyl peroxy radical CH3OO* 10002 10002 Methyl hydroperoxide CH3O2H @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-oxidanyloxy-3-methylbut-3-en-1-ol (2-hydroxy-1-isopropenylethylperoxy radical) HOCH2CH(OO*)C(CH3)CH2 10058 10058 (Z)-4-hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH3)CHO 10059 10059 (Z)-4-hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH3)CHCHO -# 10060-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, etc.) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -422,12 +417,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx* 60001 60001 Total inorganic and organic peroxy radicals (HOO* + ROO*) ROO* 60002 60002 Passive Ozone @@ -463,7 +456,6 @@ 60032 60032 All hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 ISOPOOH 60033 60033 Anthropogenic volatile organic compounds aVOC 60034 60034 Biomass burning volatile organic compounds bbVOC -# 60035-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -483,22 +475,18 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry 62031 62031 Secondary particulate inorganic matter dry 62032 62032 Biogenic secondary organic aerosol 62033 62033 Anthropogenic secondary organic aerosol -# 62034-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -515,15 +503,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/28/4.233.table b/definitions/grib2/tables/28/4.233.table index 7c19bbac0..076194957 100644 --- a/definitions/grib2/tables/28/4.233.table +++ b/definitions/grib2/tables/28/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO* 10001 10001 Methyl peroxy radical CH3OO* 10002 10002 Methyl hydroperoxide CH3O2H @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-oxidanyloxy-3-methylbut-3-en-1-ol (2-hydroxy-1-isopropenylethylperoxy radical) HOCH2CH(OO*)C(CH3)CH2 10058 10058 (Z)-4-hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH3)CHO 10059 10059 (Z)-4-hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH3)CHCHO -# 10060-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, etc.) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -422,12 +417,10 @@ 30294 30294 Cs-137 Equivalent EquCs137 30295 30295 Carbon-13 C-13 30296 30296 Lead Pb -# 30297-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx* 60001 60001 Total inorganic and organic peroxy radicals (HOO* + ROO*) ROO* 60002 60002 Passive Ozone @@ -463,7 +456,6 @@ 60032 60032 All hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 ISOPOOH 60033 60033 Anthropogenic volatile organic compounds aVOC 60034 60034 Biomass burning volatile organic compounds bbVOC -# 60035-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -483,22 +475,18 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry 62031 62031 Secondary particulate inorganic matter dry 62032 62032 Biogenic secondary organic aerosol 62033 62033 Anthropogenic secondary organic aerosol -# 62034-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -515,15 +503,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/28/4.238.table b/definitions/grib2/tables/28/4.238.table index be5be3a90..abd570100 100644 --- a/definitions/grib2/tables/28/4.238.table +++ b/definitions/grib2/tables/28/4.238.table @@ -27,6 +27,4 @@ 25 25 Wastes (solid and water) 26 26 Road transportation 27 27 Off-road transportation -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.240.table b/definitions/grib2/tables/28/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/28/4.240.table +++ b/definitions/grib2/tables/28/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/28/4.241.table b/definitions/grib2/tables/28/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/28/4.241.table +++ b/definitions/grib2/tables/28/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/28/4.242.table b/definitions/grib2/tables/28/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/28/4.242.table +++ b/definitions/grib2/tables/28/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/28/4.243.table b/definitions/grib2/tables/28/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/28/4.243.table +++ b/definitions/grib2/tables/28/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/28/4.244.table b/definitions/grib2/tables/28/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/28/4.244.table +++ b/definitions/grib2/tables/28/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.246.table b/definitions/grib2/tables/28/4.246.table index 0ca9c0c98..74c16312c 100644 --- a/definitions/grib2/tables/28/4.246.table +++ b/definitions/grib2/tables/28/4.246.table @@ -3,5 +3,4 @@ 1 1 Weak thunderstorm 2 2 Moderate thunderstorm 3 3 Severe thunderstorm -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/28/4.247.table b/definitions/grib2/tables/28/4.247.table index 6da16e396..5a55bf127 100644 --- a/definitions/grib2/tables/28/4.247.table +++ b/definitions/grib2/tables/28/4.247.table @@ -3,5 +3,4 @@ 1 1 Light precipitation 2 2 Moderate precipitation 3 3 Heavy precipitation -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/28/4.248.table b/definitions/grib2/tables/28/4.248.table index 04e365c97..ae4965d8d 100644 --- a/definitions/grib2/tables/28/4.248.table +++ b/definitions/grib2/tables/28/4.248.table @@ -1,6 +1,4 @@ # Code table 4.248 - Method used to derive data values for a given local time 0 0 Nearest forecast or analysis time to specified local time 1 1 Interpolated to be valid at the specified local time -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.249.table b/definitions/grib2/tables/28/4.249.table index bd1c944c4..93137b15b 100644 --- a/definitions/grib2/tables/28/4.249.table +++ b/definitions/grib2/tables/28/4.249.table @@ -3,5 +3,4 @@ 1 1 Showers 2 2 Intermittent 3 3 Continuous -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/28/4.3.table b/definitions/grib2/tables/28/4.3.table index 8ae36efc3..5d9191ff8 100644 --- a/definitions/grib2/tables/28/4.3.table +++ b/definitions/grib2/tables/28/4.3.table @@ -21,6 +21,4 @@ 19 19 First guess 20 20 Analysis increment 21 21 Initialization increment for analysis -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.4.table b/definitions/grib2/tables/28/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/28/4.4.table +++ b/definitions/grib2/tables/28/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.5.table b/definitions/grib2/tables/28/4.5.table index 5eaa05d69..4669e248e 100644 --- a/definitions/grib2/tables/28/4.5.table +++ b/definitions/grib2/tables/28/4.5.table @@ -18,7 +18,6 @@ 16 16 Level of neutral buoyancy or equilibrium level (LNB) (-) 17 sfc Departure level of the most unstable parcel of air (MUDL) 18 sfc Departure level of a mixed layer parcel of air with specified layer depth (Pa) -# 19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) @@ -27,14 +26,12 @@ 25 25 Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity) (dBZ) 26 26 Convective cloud layer base (m) 27 27 Convective cloud layer top (m) -# 28-29 Reserved 30 30 Specified radius from the center of the Sun (m) 31 31 Solar photosphere 32 32 Ionospheric D-region level 33 33 Ionospheric E-region level 34 34 Ionospheric F1-region level 35 35 Ionospheric F2-region level -# 36-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -51,15 +48,12 @@ 113 113 Logarithmic hybrid level 114 sol Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) 152 sol Sea-ice level (Numeric) -# 153-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -72,18 +66,14 @@ 169 169 Ocean level defined by water density (sigma-theta) difference from near-surface to level (kg m-3) 170 170 Ocean level defined by water potential temperature difference from near-surface to level (K) 171 171 Ocean level defined by vertical eddy diffusivity difference from near-surface to level (m2 s-1) -# 172-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.6.table b/definitions/grib2/tables/28/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/28/4.6.table +++ b/definitions/grib2/tables/28/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.7.table b/definitions/grib2/tables/28/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/28/4.7.table +++ b/definitions/grib2/tables/28/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.8.table b/definitions/grib2/tables/28/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/28/4.8.table +++ b/definitions/grib2/tables/28/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.9.table b/definitions/grib2/tables/28/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/28/4.9.table +++ b/definitions/grib2/tables/28/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/4.91.table b/definitions/grib2/tables/28/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/28/4.91.table +++ b/definitions/grib2/tables/28/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/28/5.0.table b/definitions/grib2/tables/28/5.0.table index 5e00004b0..115b708f2 100644 --- a/definitions/grib2/tables/28/5.0.table +++ b/definitions/grib2/tables/28/5.0.table @@ -4,19 +4,12 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/28/5.1.table b/definitions/grib2/tables/28/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/28/5.1.table +++ b/definitions/grib2/tables/28/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/5.2.table b/definitions/grib2/tables/28/5.2.table index 60d557a0d..b880c47c2 100644 --- a/definitions/grib2/tables/28/5.2.table +++ b/definitions/grib2/tables/28/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/5.25.table b/definitions/grib2/tables/28/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/28/5.25.table +++ b/definitions/grib2/tables/28/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/28/5.26.table b/definitions/grib2/tables/28/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/28/5.26.table +++ b/definitions/grib2/tables/28/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/28/5.3.table b/definitions/grib2/tables/28/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/28/5.3.table +++ b/definitions/grib2/tables/28/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/5.4.table b/definitions/grib2/tables/28/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/28/5.4.table +++ b/definitions/grib2/tables/28/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/5.40.table b/definitions/grib2/tables/28/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/28/5.40.table +++ b/definitions/grib2/tables/28/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/28/5.5.table b/definitions/grib2/tables/28/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/28/5.5.table +++ b/definitions/grib2/tables/28/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/5.6.table b/definitions/grib2/tables/28/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/28/5.6.table +++ b/definitions/grib2/tables/28/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/28/5.7.table b/definitions/grib2/tables/28/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/28/5.7.table +++ b/definitions/grib2/tables/28/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/29/0.0.table b/definitions/grib2/tables/29/0.0.table index a8542e94f..a54c35af2 100644 --- a/definitions/grib2/tables/29/0.0.table +++ b/definitions/grib2/tables/29/0.0.table @@ -4,10 +4,6 @@ 2 2 Land surface products 3 3 Satellite remote sensing products (formerly Space products) 4 4 Space weather products -# 5-9 Reserved 10 10 Oceanographic products -# 11-19 Reserved 20 20 Health and socioeconomic impacts -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/1.2.table b/definitions/grib2/tables/29/1.2.table index 77f96637a..5371406eb 100644 --- a/definitions/grib2/tables/29/1.2.table +++ b/definitions/grib2/tables/29/1.2.table @@ -4,6 +4,4 @@ 2 2 Verifying time of forecast 3 3 Observation time 4 4 Local time -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/1.3.table b/definitions/grib2/tables/29/1.3.table index 5e2e59087..f82841612 100644 --- a/definitions/grib2/tables/29/1.3.table +++ b/definitions/grib2/tables/29/1.3.table @@ -11,6 +11,4 @@ 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) 10 10 Copernicus regional reanalysis (CARRA/CERRA) 11 11 Copernicus regional reanalysis test (CARRA/CERRA) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/1.4.table b/definitions/grib2/tables/29/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/29/1.4.table +++ b/definitions/grib2/tables/29/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/29/1.5.table b/definitions/grib2/tables/29/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/29/1.5.table +++ b/definitions/grib2/tables/29/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/29/1.6.table b/definitions/grib2/tables/29/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/29/1.6.table +++ b/definitions/grib2/tables/29/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/3.0.table b/definitions/grib2/tables/29/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/29/3.0.table +++ b/definitions/grib2/tables/29/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/29/3.1.table b/definitions/grib2/tables/29/3.1.table index 7d372ddaf..2d50f176a 100644 --- a/definitions/grib2/tables/29/3.1.table +++ b/definitions/grib2/tables/29/3.1.table @@ -5,51 +5,32 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11 Reserved 12 12 Transverse Mercator 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/29/3.10.table b/definitions/grib2/tables/29/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/29/3.10.table +++ b/definitions/grib2/tables/29/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/29/3.11.table b/definitions/grib2/tables/29/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/29/3.11.table +++ b/definitions/grib2/tables/29/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/29/3.15.table b/definitions/grib2/tables/29/3.15.table index 43539dbfc..8a2e9a566 100644 --- a/definitions/grib2/tables/29/3.15.table +++ b/definitions/grib2/tables/29/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/3.2.table b/definitions/grib2/tables/29/3.2.table index 13b9bf469..83495adec 100644 --- a/definitions/grib2/tables/29/3.2.table +++ b/definitions/grib2/tables/29/3.2.table @@ -11,6 +11,4 @@ 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height 10 10 Earth model assumed WGS84 with corrected geomagnetic coordinates (latitude and longitude) defined by Gustafsson et al., 1992 11 11 Sun assumed spherical with radius = 695 990 000 m (Allen, C.W., Astrophysical Quantities, 3rd ed.; Athlone: London, 1976) and Stonyhurst latitude and longitude system with origin at the intersection of the solar central meridian (as seen from Earth) and the solar equator (Thompson, W., Coordinate systems for solar image data, Astron. Astrophys. 2006, 449, 791-803) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/3.20.table b/definitions/grib2/tables/29/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/29/3.20.table +++ b/definitions/grib2/tables/29/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/3.21.table b/definitions/grib2/tables/29/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/29/3.21.table +++ b/definitions/grib2/tables/29/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/3.25.table b/definitions/grib2/tables/29/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/29/3.25.table +++ b/definitions/grib2/tables/29/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/3.3.table b/definitions/grib2/tables/29/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/29/3.3.table +++ b/definitions/grib2/tables/29/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/29/3.7.table b/definitions/grib2/tables/29/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/29/3.7.table +++ b/definitions/grib2/tables/29/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/29/3.8.table b/definitions/grib2/tables/29/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/29/3.8.table +++ b/definitions/grib2/tables/29/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/3.9.table b/definitions/grib2/tables/29/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/29/3.9.table +++ b/definitions/grib2/tables/29/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/29/4.0.table b/definitions/grib2/tables/29/4.0.table index 47aa74902..fcd070c9a 100644 --- a/definitions/grib2/tables/29/4.0.table +++ b/definitions/grib2/tables/29/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -49,15 +44,12 @@ 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval 62 62 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 63 63 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles -# 64-66 Reserved 67 67 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-75 Reserved 76 76 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 77 77 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 78 78 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink @@ -71,7 +63,6 @@ 86 86 Quantile forecasts at a horizontal level or in a horizontal layer at a point in time 87 87 Quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 88 88 Analysis or forecast at a horizontal level or in a horizontal layer at a specified local time -# 89-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 92 92 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time 93 93 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time @@ -80,15 +71,10 @@ 96 96 Average, accumulation, extreme values or other statistically processed values of an individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time 97 97 Average, accumulation, extreme values or other statistically processed values of post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time 98 98 Average, accumulation, extreme values or other statistically processed values of a post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time -# 99-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/29/4.1.0.table b/definitions/grib2/tables/29/4.1.0.table index 56c8b0647..877d2c994 100644 --- a/definitions/grib2/tables/29/4.1.0.table +++ b/definitions/grib2/tables/29/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.1.1.table b/definitions/grib2/tables/29/4.1.1.table index df2c13fa8..06451e837 100644 --- a/definitions/grib2/tables/29/4.1.1.table +++ b/definitions/grib2/tables/29/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.1.10.table b/definitions/grib2/tables/29/4.1.10.table index 5a64f9652..d7bb7e672 100644 --- a/definitions/grib2/tables/29/4.1.10.table +++ b/definitions/grib2/tables/29/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.1.2.table b/definitions/grib2/tables/29/4.1.2.table index 4192e50d1..a4f5fb410 100644 --- a/definitions/grib2/tables/29/4.1.2.table +++ b/definitions/grib2/tables/29/4.1.2.table @@ -5,6 +5,4 @@ 3 3 Soil products 4 4 Fire weather products 5 5 Glaciers and inland ice -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.1.20.table b/definitions/grib2/tables/29/4.1.20.table index 1e5472a3f..5a725ceb4 100644 --- a/definitions/grib2/tables/29/4.1.20.table +++ b/definitions/grib2/tables/29/4.1.20.table @@ -2,6 +2,4 @@ 0 0 Health indicators 1 1 Epidemiology 2 2 Socioeconomic indicators -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.1.3.table b/definitions/grib2/tables/29/4.1.3.table index 35d82f440..df3cc24e1 100644 --- a/definitions/grib2/tables/29/4.1.3.table +++ b/definitions/grib2/tables/29/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.1.4.table b/definitions/grib2/tables/29/4.1.4.table index 7d1378729..acc38053c 100644 --- a/definitions/grib2/tables/29/4.1.4.table +++ b/definitions/grib2/tables/29/4.1.4.table @@ -10,6 +10,4 @@ 8 8 Imagery 9 9 Ion-neutral coupling 10 10 Space weather indices -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.10.table b/definitions/grib2/tables/29/4.10.table index b66560e8d..a51b45393 100644 --- a/definitions/grib2/tables/29/4.10.table +++ b/definitions/grib2/tables/29/4.10.table @@ -12,9 +12,6 @@ 10 10 Standardized anomaly 11 11 Summation 12 12 Return period -# 13-99 Reserved 100 100 Severity 101 101 Mode -# 102-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/29/4.11.table b/definitions/grib2/tables/29/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/29/4.11.table +++ b/definitions/grib2/tables/29/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.12.table b/definitions/grib2/tables/29/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/29/4.12.table +++ b/definitions/grib2/tables/29/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.13.table b/definitions/grib2/tables/29/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/29/4.13.table +++ b/definitions/grib2/tables/29/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.14.table b/definitions/grib2/tables/29/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/29/4.14.table +++ b/definitions/grib2/tables/29/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.15.table b/definitions/grib2/tables/29/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/29/4.15.table +++ b/definitions/grib2/tables/29/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.16.table b/definitions/grib2/tables/29/4.16.table index 5b9f6fd73..2e0c69752 100644 --- a/definitions/grib2/tables/29/4.16.table +++ b/definitions/grib2/tables/29/4.16.table @@ -5,6 +5,4 @@ 3 3 Standard deviation 4 4 Random error 5 5 Probability -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.0.table b/definitions/grib2/tables/29/4.2.0.0.table index e4912c9d6..835789797 100644 --- a/definitions/grib2/tables/29/4.2.0.0.table +++ b/definitions/grib2/tables/29/4.2.0.0.table @@ -32,6 +32,4 @@ 30 30 Latent heat net flux due to evaporation (W m-2) 31 31 Latent heat net flux due to sublimation (W m-2) 32 32 Wet-bulb potential temperature (K) -# 33-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.1.table b/definitions/grib2/tables/29/4.2.0.1.table index cd12c1444..9bf2d0761 100644 --- a/definitions/grib2/tables/29/4.2.0.1.table +++ b/definitions/grib2/tables/29/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -149,6 +148,4 @@ 147 147 Character of precipitation (Code table 4.249) 148 148 Snow evaporation rate (kg m-2 s-1) 149 149 Cloud water mixing ratio (kg kg-1) -# 150-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.13.table b/definitions/grib2/tables/29/4.2.0.13.table index 4c1253b96..6e05fe29c 100644 --- a/definitions/grib2/tables/29/4.2.0.13.table +++ b/definitions/grib2/tables/29/4.2.0.13.table @@ -1,5 +1,3 @@ # Product discipline 0 - Meteorological products, parameter category 13: aerosols 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.14.table b/definitions/grib2/tables/29/4.2.0.14.table index df0f721ea..78b9771d9 100644 --- a/definitions/grib2/tables/29/4.2.0.14.table +++ b/definitions/grib2/tables/29/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.15.table b/definitions/grib2/tables/29/4.2.0.15.table index ac49ad402..047a903f7 100644 --- a/definitions/grib2/tables/29/4.2.0.15.table +++ b/definitions/grib2/tables/29/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.16.table b/definitions/grib2/tables/29/4.2.0.16.table index 111e6d986..6fa720bf9 100644 --- a/definitions/grib2/tables/29/4.2.0.16.table +++ b/definitions/grib2/tables/29/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.18.table b/definitions/grib2/tables/29/4.2.0.18.table index 9d527a828..2f70d7a39 100644 --- a/definitions/grib2/tables/29/4.2.0.18.table +++ b/definitions/grib2/tables/29/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.19.table b/definitions/grib2/tables/29/4.2.0.19.table index 44bd20957..8263d1e0e 100644 --- a/definitions/grib2/tables/29/4.2.0.19.table +++ b/definitions/grib2/tables/29/4.2.0.19.table @@ -40,6 +40,4 @@ 38 38 Sky transparency index (Code table 4.214) 39 39 Seeing index (Code table 4.214) 40 40 Snow level (m) -# 41-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.190.table b/definitions/grib2/tables/29/4.2.0.190.table index dfe39840d..bd8ceca18 100644 --- a/definitions/grib2/tables/29/4.2.0.190.table +++ b/definitions/grib2/tables/29/4.2.0.190.table @@ -1,5 +1,3 @@ # Product discipline 0 - Meteorological products, parameter category 190: CCITT IA5 string 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.191.table b/definitions/grib2/tables/29/4.2.0.191.table index abc386331..62cf1bb58 100644 --- a/definitions/grib2/tables/29/4.2.0.191.table +++ b/definitions/grib2/tables/29/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.2.table b/definitions/grib2/tables/29/4.2.0.2.table index 079d475ac..7203ddb32 100644 --- a/definitions/grib2/tables/29/4.2.0.2.table +++ b/definitions/grib2/tables/29/4.2.0.2.table @@ -48,6 +48,4 @@ 46 46 Vorticity advection (s-2) 47 47 Surface roughness for heat (m) 48 48 Surface roughness for moisture (m) -# 49-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.20.table b/definitions/grib2/tables/29/4.2.0.20.table index bae36e080..1ff7bfdb3 100644 --- a/definitions/grib2/tables/29/4.2.0.20.table +++ b/definitions/grib2/tables/29/4.2.0.20.table @@ -17,7 +17,6 @@ 15 15 Dry deposition velocity (m/s) 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) -# 18-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -46,7 +45,6 @@ 75 75 Wildfire flux (kg m-2 s-1) 76 76 Emission rate (kg kg-1 s-1) 77 77 Surface emission flux (kg m-2 s-1) -# 78-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -59,6 +57,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.3.table b/definitions/grib2/tables/29/4.2.0.3.table index 9f8fdb4bc..e28bc3e29 100644 --- a/definitions/grib2/tables/29/4.2.0.3.table +++ b/definitions/grib2/tables/29/4.2.0.3.table @@ -34,6 +34,4 @@ 32 32 Saturation water vapour pressure (Pa) 33 33 Geometric altitude above mean sea level (m) 34 34 Geometric height above ground level (m) -# 35-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.4.table b/definitions/grib2/tables/29/4.2.0.4.table index 1d7f50233..8df676ab3 100644 --- a/definitions/grib2/tables/29/4.2.0.4.table +++ b/definitions/grib2/tables/29/4.2.0.4.table @@ -15,12 +15,9 @@ 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) 15 15 Upward UV radiation emitted/reflected from the Earth's surface (W m-2) -# 16-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) 54 54 Direct normal short-wave radiation flux (W m-2) -# 55-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.5.table b/definitions/grib2/tables/29/4.2.0.5.table index 157326ba4..4a19f82ee 100644 --- a/definitions/grib2/tables/29/4.2.0.5.table +++ b/definitions/grib2/tables/29/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.6.table b/definitions/grib2/tables/29/4.2.0.6.table index ba308d07f..29744abf9 100644 --- a/definitions/grib2/tables/29/4.2.0.6.table +++ b/definitions/grib2/tables/29/4.2.0.6.table @@ -40,11 +40,8 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) 50 50 Fog (%) -# 51-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.0.7.table b/definitions/grib2/tables/29/4.2.0.7.table index 15acb1857..7d60d9bf7 100644 --- a/definitions/grib2/tables/29/4.2.0.7.table +++ b/definitions/grib2/tables/29/4.2.0.7.table @@ -20,6 +20,4 @@ 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) 20 20 Thunderstorm intensity index (Code table 4.246) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.1.0.table b/definitions/grib2/tables/29/4.2.1.0.table index 6204a22ae..6d44d3a30 100644 --- a/definitions/grib2/tables/29/4.2.1.0.table +++ b/definitions/grib2/tables/29/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.1.1.table b/definitions/grib2/tables/29/4.2.1.1.table index e3931d5e6..4cf7ecedd 100644 --- a/definitions/grib2/tables/29/4.2.1.1.table +++ b/definitions/grib2/tables/29/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.1.2.table b/definitions/grib2/tables/29/4.2.1.2.table index bd7276cfe..e52e2af9d 100644 --- a/definitions/grib2/tables/29/4.2.1.2.table +++ b/definitions/grib2/tables/29/4.2.1.2.table @@ -14,6 +14,4 @@ 12 12 Salinity (kg/kg) 13 13 Cross-sectional area of flow in channel (m2) 14 14 Snow temperature (K) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.10.0.table b/definitions/grib2/tables/29/4.2.10.0.table index 8f307c0de..11cf44892 100644 --- a/definitions/grib2/tables/29/4.2.10.0.table +++ b/definitions/grib2/tables/29/4.2.10.0.table @@ -73,6 +73,4 @@ 71 71 Peak direction of wind waves (degree true) 72 72 Peak direction of total swell (degree true) 73 73 Whitecap fraction (fraction) -# 74-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.10.1.table b/definitions/grib2/tables/29/4.2.10.1.table index e61b24273..a43f49d0d 100644 --- a/definitions/grib2/tables/29/4.2.10.1.table +++ b/definitions/grib2/tables/29/4.2.10.1.table @@ -4,6 +4,4 @@ 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) 4 4 Rip current occurrence probability (%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.10.191.table b/definitions/grib2/tables/29/4.2.10.191.table index cd4d4cde7..c6aac389a 100644 --- a/definitions/grib2/tables/29/4.2.10.191.table +++ b/definitions/grib2/tables/29/4.2.10.191.table @@ -4,6 +4,4 @@ 2 2 Reserved 3 3 Days since last observation (d) 4 4 Barotropic stream function (m3 s-1) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.10.2.table b/definitions/grib2/tables/29/4.2.10.2.table index bc5af92b3..5e8d89447 100644 --- a/definitions/grib2/tables/29/4.2.10.2.table +++ b/definitions/grib2/tables/29/4.2.10.2.table @@ -14,6 +14,4 @@ 12 12 Compressive ice strength (N/m) 13 13 Snow temperature (over sea ice) (K) 14 14 Albedo (Numeric) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.10.3.table b/definitions/grib2/tables/29/4.2.10.3.table index 58d65d57d..768337787 100644 --- a/definitions/grib2/tables/29/4.2.10.3.table +++ b/definitions/grib2/tables/29/4.2.10.3.table @@ -12,6 +12,4 @@ 10 10 Halosteric change in sea surface height (m) 11 11 Steric change in sea surface height (m) 12 12 Sea salt flux (kg m-2 s-1) -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.10.4.table b/definitions/grib2/tables/29/4.2.10.4.table index 20bdb9e36..328d1ea54 100644 --- a/definitions/grib2/tables/29/4.2.10.4.table +++ b/definitions/grib2/tables/29/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -26,6 +25,4 @@ 26 26 y-component water velocity (m s-1) 27 27 Upward water velocity (m s-1) 28 28 Vertical eddy diffusivity (m2 s-1) -# 29-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.2.0.table b/definitions/grib2/tables/29/4.2.2.0.table index 9df7d4cf1..054c63828 100644 --- a/definitions/grib2/tables/29/4.2.2.0.table +++ b/definitions/grib2/tables/29/4.2.2.0.table @@ -44,6 +44,4 @@ 42 42 Water runoff and drainage rate (kg m-2 s-1) 43 43 Drainage direction (Code table 4.250) 44 44 Upstream area (m2) -# 45-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.2.3.table b/definitions/grib2/tables/29/4.2.2.3.table index 4e2187a5b..2300f737d 100644 --- a/definitions/grib2/tables/29/4.2.2.3.table +++ b/definitions/grib2/tables/29/4.2.2.3.table @@ -29,6 +29,4 @@ 27 27 Soil depth (m) 28 28 Snow temperature (K) 29 29 Ice temperature (K) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.2.4.table b/definitions/grib2/tables/29/4.2.2.4.table index 6083f2a98..f1a2552b2 100644 --- a/definitions/grib2/tables/29/4.2.2.4.table +++ b/definitions/grib2/tables/29/4.2.2.4.table @@ -19,6 +19,4 @@ 17 17 Burning index (as defined by the US Forest Service National Fire Danger Rating System) (Numeric) 18 18 Ignition component (as defined by the US Forest Service National Fire Danger Rating System) (%) 19 19 Energy release component (as defined by the US Forest Service National Fire Danger Rating System) (Joule/m2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.2.5.table b/definitions/grib2/tables/29/4.2.2.5.table index 1d08dd573..7cea1b5da 100644 --- a/definitions/grib2/tables/29/4.2.2.5.table +++ b/definitions/grib2/tables/29/4.2.2.5.table @@ -1,6 +1,4 @@ # Product discipline 2 - Land surface products, parameter category 5: glaciers and inland ice 0 0 Glacier cover (Proportion) 1 1 Glacier temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.20.0.table b/definitions/grib2/tables/29/4.2.20.0.table index a997371d9..23ed9f577 100644 --- a/definitions/grib2/tables/29/4.2.20.0.table +++ b/definitions/grib2/tables/29/4.2.20.0.table @@ -8,6 +8,4 @@ 6 6 Normal effective temperature (K) 7 7 Standard effective temperature (K) 8 8 Physiological equivalent temperature (K) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.20.1.table b/definitions/grib2/tables/29/4.2.20.1.table index e1bd8fda2..a3bfa7e20 100644 --- a/definitions/grib2/tables/29/4.2.20.1.table +++ b/definitions/grib2/tables/29/4.2.20.1.table @@ -9,6 +9,4 @@ 7 7 Anopheles vector to host ratio (Fraction) 8 8 Anopheles vector number (Number m-2) 9 9 Fraction of malarial vector reproductive habitat (Fraction) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.20.2.table b/definitions/grib2/tables/29/4.2.20.2.table index d6b9083d1..285f12a81 100644 --- a/definitions/grib2/tables/29/4.2.20.2.table +++ b/definitions/grib2/tables/29/4.2.20.2.table @@ -1,5 +1,3 @@ # Product discipline 20 - Health and socioeconomic impacts, parameter category 2: socioeconomic indicators 0 0 Population density (Person m-2) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.3.0.table b/definitions/grib2/tables/29/4.2.3.0.table index 0bec15119..49b098942 100644 --- a/definitions/grib2/tables/29/4.2.3.0.table +++ b/definitions/grib2/tables/29/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.3.1.table b/definitions/grib2/tables/29/4.2.3.1.table index 3211e5d1c..05d6e7e40 100644 --- a/definitions/grib2/tables/29/4.2.3.1.table +++ b/definitions/grib2/tables/29/4.2.3.1.table @@ -23,13 +23,9 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (numeric) -# 30-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.0.table b/definitions/grib2/tables/29/4.2.4.0.table index 337308305..47a9b9f78 100644 --- a/definitions/grib2/tables/29/4.2.4.0.table +++ b/definitions/grib2/tables/29/4.2.4.0.table @@ -5,6 +5,4 @@ 3 3 Ion temperature (K) 4 4 Parallel temperature (K) 5 5 Perpendicular temperature (K) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.1.table b/definitions/grib2/tables/29/4.2.4.1.table index 9ec11160f..4ce057416 100644 --- a/definitions/grib2/tables/29/4.2.4.1.table +++ b/definitions/grib2/tables/29/4.2.4.1.table @@ -3,6 +3,4 @@ 1 1 1st vector component of velocity (coordinate system dependent) (m s-1) 2 2 2nd vector component of velocity (coordinate system dependent) (m s-1) 3 3 3rd vector component of velocity (coordinate system dependent) (m s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.10.table b/definitions/grib2/tables/29/4.2.4.10.table index 8f5b19e06..e539399da 100644 --- a/definitions/grib2/tables/29/4.2.4.10.table +++ b/definitions/grib2/tables/29/4.2.4.10.table @@ -7,6 +7,4 @@ 5 5 Kp (Numeric) 6 6 Equatorial disturbance storm time index (Dst) (nT) 7 7 Auroral electrojet (AE) (nT) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.2.table b/definitions/grib2/tables/29/4.2.4.2.table index b479b3361..f101c726d 100644 --- a/definitions/grib2/tables/29/4.2.4.2.table +++ b/definitions/grib2/tables/29/4.2.4.2.table @@ -13,6 +13,4 @@ 11 11 Peak height (hm) (m) 12 12 Peak density (Nm) (m-3) 13 13 Equivalent slab thickness (tau) (km) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.3.table b/definitions/grib2/tables/29/4.2.4.3.table index 3b752bbbc..83c5c4003 100644 --- a/definitions/grib2/tables/29/4.2.4.3.table +++ b/definitions/grib2/tables/29/4.2.4.3.table @@ -7,6 +7,4 @@ 5 5 1st vector component of electric field (V m-1) 6 6 2nd vector component of electric field (V m-1) 7 7 3rd vector component of electric field (V m-1) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.4.table b/definitions/grib2/tables/29/4.2.4.4.table index 281b6cf05..02d531149 100644 --- a/definitions/grib2/tables/29/4.2.4.4.table +++ b/definitions/grib2/tables/29/4.2.4.4.table @@ -6,6 +6,4 @@ 4 4 Heavy ion flux (differential) ((m2 s sr eV/nuc)-1) 5 5 Heavy ion flux (integral) ((m2 s sr)-1) 6 6 Cosmic ray neutron flux (/h) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.5.table b/definitions/grib2/tables/29/4.2.4.5.table index 913efec6f..25c1edd37 100644 --- a/definitions/grib2/tables/29/4.2.4.5.table +++ b/definitions/grib2/tables/29/4.2.4.5.table @@ -3,6 +3,4 @@ 1 1 Phase (rad) 2 2 Frequency (Hz) 3 3 Wavelength (m) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.6.table b/definitions/grib2/tables/29/4.2.4.6.table index f4efd1e08..9c2b8c8fb 100644 --- a/definitions/grib2/tables/29/4.2.4.6.table +++ b/definitions/grib2/tables/29/4.2.4.6.table @@ -6,6 +6,4 @@ 4 4 Solar spectral irradiance (W m-2 nm-1) 5 5 F10.7 (W m-2 Hz-1) 6 6 Solar radio emissions (W m-2 Hz-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.7.table b/definitions/grib2/tables/29/4.2.4.7.table index 38c2b17a8..0433ac516 100644 --- a/definitions/grib2/tables/29/4.2.4.7.table +++ b/definitions/grib2/tables/29/4.2.4.7.table @@ -3,6 +3,4 @@ 1 1 Disk intensity (J m-2 s-1) 2 2 Disk intensity day (J m-2 s-1) 3 3 Disk intensity night (J m-2 s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.8.table b/definitions/grib2/tables/29/4.2.4.8.table index f350f4807..f0cc8aac2 100644 --- a/definitions/grib2/tables/29/4.2.4.8.table +++ b/definitions/grib2/tables/29/4.2.4.8.table @@ -8,6 +8,4 @@ 6 6 Heliospheric radiance (W sr-1 m-2) 7 7 Thematic mask (Numeric) 8 8 Solar induced chlorophyll fluorescence (W m-2 sr-1 m-1) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.2.4.9.table b/definitions/grib2/tables/29/4.2.4.9.table index 0e83436e2..984ea4726 100644 --- a/definitions/grib2/tables/29/4.2.4.9.table +++ b/definitions/grib2/tables/29/4.2.4.9.table @@ -2,6 +2,4 @@ 0 0 Pedersen conductivity (S m-1) 1 1 Hall conductivity (S m-1) 2 2 Parallel conductivity (S m-1) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.201.table b/definitions/grib2/tables/29/4.201.table index a725e4e65..c30b081a2 100644 --- a/definitions/grib2/tables/29/4.201.table +++ b/definitions/grib2/tables/29/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.202.table b/definitions/grib2/tables/29/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/29/4.202.table +++ b/definitions/grib2/tables/29/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.203.table b/definitions/grib2/tables/29/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/29/4.203.table +++ b/definitions/grib2/tables/29/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.204.table b/definitions/grib2/tables/29/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/29/4.204.table +++ b/definitions/grib2/tables/29/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.205.table b/definitions/grib2/tables/29/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/29/4.205.table +++ b/definitions/grib2/tables/29/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.206.table b/definitions/grib2/tables/29/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/29/4.206.table +++ b/definitions/grib2/tables/29/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.207.table b/definitions/grib2/tables/29/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/29/4.207.table +++ b/definitions/grib2/tables/29/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.208.table b/definitions/grib2/tables/29/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/29/4.208.table +++ b/definitions/grib2/tables/29/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.209.table b/definitions/grib2/tables/29/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/29/4.209.table +++ b/definitions/grib2/tables/29/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.210.table b/definitions/grib2/tables/29/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/29/4.210.table +++ b/definitions/grib2/tables/29/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.211.table b/definitions/grib2/tables/29/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/29/4.211.table +++ b/definitions/grib2/tables/29/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.212.table b/definitions/grib2/tables/29/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/29/4.212.table +++ b/definitions/grib2/tables/29/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.213.table b/definitions/grib2/tables/29/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/29/4.213.table +++ b/definitions/grib2/tables/29/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.214.table b/definitions/grib2/tables/29/4.214.table index b08860ce0..c0eaeda75 100644 --- a/definitions/grib2/tables/29/4.214.table +++ b/definitions/grib2/tables/29/4.214.table @@ -5,7 +5,5 @@ 3 3 Average 4 4 Good 5 5 Excellent -# 6-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.215.table b/definitions/grib2/tables/29/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/29/4.215.table +++ b/definitions/grib2/tables/29/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.216.table b/definitions/grib2/tables/29/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/29/4.216.table +++ b/definitions/grib2/tables/29/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/29/4.217.table b/definitions/grib2/tables/29/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/29/4.217.table +++ b/definitions/grib2/tables/29/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.218.table b/definitions/grib2/tables/29/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/29/4.218.table +++ b/definitions/grib2/tables/29/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.219.table b/definitions/grib2/tables/29/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/29/4.219.table +++ b/definitions/grib2/tables/29/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.220.table b/definitions/grib2/tables/29/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/29/4.220.table +++ b/definitions/grib2/tables/29/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.221.table b/definitions/grib2/tables/29/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/29/4.221.table +++ b/definitions/grib2/tables/29/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.222.table b/definitions/grib2/tables/29/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/29/4.222.table +++ b/definitions/grib2/tables/29/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.224.table b/definitions/grib2/tables/29/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/29/4.224.table +++ b/definitions/grib2/tables/29/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/29/4.227.table b/definitions/grib2/tables/29/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/29/4.227.table +++ b/definitions/grib2/tables/29/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/29/4.228.table b/definitions/grib2/tables/29/4.228.table index 048a69f0b..88c3dd87c 100644 --- a/definitions/grib2/tables/29/4.228.table +++ b/definitions/grib2/tables/29/4.228.table @@ -4,5 +4,4 @@ 2 2 Light 3 3 Moderate 4 4 Severe -# 5-254 Reserved 255 255 Missing value diff --git a/definitions/grib2/tables/29/4.230.table b/definitions/grib2/tables/29/4.230.table index 7dd4d7c77..42fca3ded 100644 --- a/definitions/grib2/tables/29/4.230.table +++ b/definitions/grib2/tables/29/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO* 10001 10001 Methyl peroxy radical CH3OO* 10002 10002 Methyl hydroperoxide CH3O2H @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-oxidanyloxy-3-methylbut-3-en-1-ol (2-hydroxy-1-isopropenylethylperoxy radical) HOCH2CH(OO*)C(CH3)CH2 10058 10058 (Z)-4-hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH3)CHO 10059 10059 (Z)-4-hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH3)CHCHO -# 10060-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, etc.) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -424,12 +419,10 @@ 30296 30296 Lead Pb 30297 30297 Tellurium 131 Te-131 30298 30298 Neodymium 137 Nd-137 -# 30299-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx* 60001 60001 Total inorganic and organic peroxy radicals (HOO* + ROO*) ROO* 60002 60002 Passive Ozone @@ -465,7 +458,6 @@ 60032 60032 All hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 ISOPOOH 60033 60033 Anthropogenic volatile organic compounds aVOC 60034 60034 Biomass burning volatile organic compounds bbVOC -# 60035-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -485,22 +477,18 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry 62031 62031 Secondary particulate inorganic matter dry 62032 62032 Biogenic secondary organic aerosol 62033 62033 Anthropogenic secondary organic aerosol -# 62034-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -517,15 +505,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/29/4.233.table b/definitions/grib2/tables/29/4.233.table index 2d15bdf97..9a1d998d9 100644 --- a/definitions/grib2/tables/29/4.233.table +++ b/definitions/grib2/tables/29/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO* 10001 10001 Methyl peroxy radical CH3OO* 10002 10002 Methyl hydroperoxide CH3O2H @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-oxidanyloxy-3-methylbut-3-en-1-ol (2-hydroxy-1-isopropenylethylperoxy radical) HOCH2CH(OO*)C(CH3)CH2 10058 10058 (Z)-4-hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH3)CHO 10059 10059 (Z)-4-hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH3)CHCHO -# 10060-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, etc.) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -424,12 +419,10 @@ 30296 30296 Lead Pb 30297 30297 Tellurium 131 Te-131 30298 30298 Neodymium 137 Nd-137 -# 30299-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx* 60001 60001 Total inorganic and organic peroxy radicals (HOO* + ROO*) ROO* 60002 60002 Passive Ozone @@ -465,7 +458,6 @@ 60032 60032 All hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 ISOPOOH 60033 60033 Anthropogenic volatile organic compounds aVOC 60034 60034 Biomass burning volatile organic compounds bbVOC -# 60035-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -485,22 +477,18 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry 62031 62031 Secondary particulate inorganic matter dry 62032 62032 Biogenic secondary organic aerosol 62033 62033 Anthropogenic secondary organic aerosol -# 62034-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -517,15 +505,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/29/4.238.table b/definitions/grib2/tables/29/4.238.table index be5be3a90..abd570100 100644 --- a/definitions/grib2/tables/29/4.238.table +++ b/definitions/grib2/tables/29/4.238.table @@ -27,6 +27,4 @@ 25 25 Wastes (solid and water) 26 26 Road transportation 27 27 Off-road transportation -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.240.table b/definitions/grib2/tables/29/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/29/4.240.table +++ b/definitions/grib2/tables/29/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/29/4.241.table b/definitions/grib2/tables/29/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/29/4.241.table +++ b/definitions/grib2/tables/29/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/29/4.242.table b/definitions/grib2/tables/29/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/29/4.242.table +++ b/definitions/grib2/tables/29/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/29/4.243.table b/definitions/grib2/tables/29/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/29/4.243.table +++ b/definitions/grib2/tables/29/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/29/4.244.table b/definitions/grib2/tables/29/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/29/4.244.table +++ b/definitions/grib2/tables/29/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.246.table b/definitions/grib2/tables/29/4.246.table index 0ca9c0c98..74c16312c 100644 --- a/definitions/grib2/tables/29/4.246.table +++ b/definitions/grib2/tables/29/4.246.table @@ -3,5 +3,4 @@ 1 1 Weak thunderstorm 2 2 Moderate thunderstorm 3 3 Severe thunderstorm -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/29/4.247.table b/definitions/grib2/tables/29/4.247.table index 6da16e396..5a55bf127 100644 --- a/definitions/grib2/tables/29/4.247.table +++ b/definitions/grib2/tables/29/4.247.table @@ -3,5 +3,4 @@ 1 1 Light precipitation 2 2 Moderate precipitation 3 3 Heavy precipitation -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/29/4.248.table b/definitions/grib2/tables/29/4.248.table index 04e365c97..ae4965d8d 100644 --- a/definitions/grib2/tables/29/4.248.table +++ b/definitions/grib2/tables/29/4.248.table @@ -1,6 +1,4 @@ # Code table 4.248 - Method used to derive data values for a given local time 0 0 Nearest forecast or analysis time to specified local time 1 1 Interpolated to be valid at the specified local time -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.249.table b/definitions/grib2/tables/29/4.249.table index bd1c944c4..93137b15b 100644 --- a/definitions/grib2/tables/29/4.249.table +++ b/definitions/grib2/tables/29/4.249.table @@ -3,5 +3,4 @@ 1 1 Showers 2 2 Intermittent 3 3 Continuous -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/29/4.250.table b/definitions/grib2/tables/29/4.250.table index e4d91caba..045ed730b 100644 --- a/definitions/grib2/tables/29/4.250.table +++ b/definitions/grib2/tables/29/4.250.table @@ -9,6 +9,4 @@ 7 7 North-West 8 8 North 9 9 North-East -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.3.table b/definitions/grib2/tables/29/4.3.table index 8ae36efc3..5d9191ff8 100644 --- a/definitions/grib2/tables/29/4.3.table +++ b/definitions/grib2/tables/29/4.3.table @@ -21,6 +21,4 @@ 19 19 First guess 20 20 Analysis increment 21 21 Initialization increment for analysis -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.4.table b/definitions/grib2/tables/29/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/29/4.4.table +++ b/definitions/grib2/tables/29/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.5.table b/definitions/grib2/tables/29/4.5.table index 98103671d..2eacb0270 100644 --- a/definitions/grib2/tables/29/4.5.table +++ b/definitions/grib2/tables/29/4.5.table @@ -18,7 +18,6 @@ 16 16 Level of neutral buoyancy or equilibrium level (LNB) (-) 17 sfc Departure level of the most unstable parcel of air (MUDL) 18 sfc Departure level of a mixed layer parcel of air with specified layer depth (Pa) -# 19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) @@ -27,14 +26,12 @@ 25 25 Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity) (dBZ) 26 26 Convective cloud layer base (m) 27 27 Convective cloud layer top (m) -# 28-29 Reserved 30 30 Specified radius from the centre of the Sun (m) 31 31 Solar photosphere 32 32 Ionospheric D-region level 33 33 Ionospheric E-region level 34 34 Ionospheric F1-region level 35 35 Ionospheric F2-region level -# 36-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -51,15 +48,12 @@ 113 113 Logarithmic hybrid level 114 sol Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) 152 sol Sea-ice level (Numeric) -# 153-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -72,18 +66,14 @@ 169 169 Ocean level defined by water density (sigma-theta) difference from near-surface to level (kg m-3) 170 170 Ocean level defined by water potential temperature difference from near-surface to level (K) 171 171 Ocean level defined by vertical eddy diffusivity difference from near-surface to level (m2 s-1) -# 172-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.6.table b/definitions/grib2/tables/29/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/29/4.6.table +++ b/definitions/grib2/tables/29/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.7.table b/definitions/grib2/tables/29/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/29/4.7.table +++ b/definitions/grib2/tables/29/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.8.table b/definitions/grib2/tables/29/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/29/4.8.table +++ b/definitions/grib2/tables/29/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.9.table b/definitions/grib2/tables/29/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/29/4.9.table +++ b/definitions/grib2/tables/29/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/4.91.table b/definitions/grib2/tables/29/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/29/4.91.table +++ b/definitions/grib2/tables/29/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/29/5.0.table b/definitions/grib2/tables/29/5.0.table index 5e00004b0..115b708f2 100644 --- a/definitions/grib2/tables/29/5.0.table +++ b/definitions/grib2/tables/29/5.0.table @@ -4,19 +4,12 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/29/5.1.table b/definitions/grib2/tables/29/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/29/5.1.table +++ b/definitions/grib2/tables/29/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/5.2.table b/definitions/grib2/tables/29/5.2.table index 60d557a0d..b880c47c2 100644 --- a/definitions/grib2/tables/29/5.2.table +++ b/definitions/grib2/tables/29/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/5.25.table b/definitions/grib2/tables/29/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/29/5.25.table +++ b/definitions/grib2/tables/29/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/29/5.26.table b/definitions/grib2/tables/29/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/29/5.26.table +++ b/definitions/grib2/tables/29/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/29/5.3.table b/definitions/grib2/tables/29/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/29/5.3.table +++ b/definitions/grib2/tables/29/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/5.4.table b/definitions/grib2/tables/29/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/29/5.4.table +++ b/definitions/grib2/tables/29/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/5.40.table b/definitions/grib2/tables/29/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/29/5.40.table +++ b/definitions/grib2/tables/29/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/29/5.5.table b/definitions/grib2/tables/29/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/29/5.5.table +++ b/definitions/grib2/tables/29/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/5.6.table b/definitions/grib2/tables/29/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/29/5.6.table +++ b/definitions/grib2/tables/29/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/29/5.7.table b/definitions/grib2/tables/29/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/29/5.7.table +++ b/definitions/grib2/tables/29/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/3/0.0.table b/definitions/grib2/tables/3/0.0.table index fd2056350..39475306e 100644 --- a/definitions/grib2/tables/3/0.0.table +++ b/definitions/grib2/tables/3/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/1.2.table b/definitions/grib2/tables/3/1.2.table index eb8755209..65b1aca9a 100644 --- a/definitions/grib2/tables/3/1.2.table +++ b/definitions/grib2/tables/3/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -#4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/1.3.table b/definitions/grib2/tables/3/1.3.table index d4ed48c63..d2a1c2770 100644 --- a/definitions/grib2/tables/3/1.3.table +++ b/definitions/grib2/tables/3/1.3.table @@ -5,6 +5,4 @@ 3 3 Re-analysis products 4 4 TIGGE Operational products 5 5 TIGGE test products -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/1.4.table b/definitions/grib2/tables/3/1.4.table index ac21f5c4c..8fa9b6b41 100644 --- a/definitions/grib2/tables/3/1.4.table +++ b/definitions/grib2/tables/3/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event Probability -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/3.0.table b/definitions/grib2/tables/3/3.0.table index 6030a5132..4f4fd7be4 100644 --- a/definitions/grib2/tables/3/3.0.table +++ b/definitions/grib2/tables/3/3.0.table @@ -1,6 +1,4 @@ # CODE TABLE 3.0, Source of Grid Definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition Defined by originating centre -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/3/3.1.table b/definitions/grib2/tables/3/3.1.table index 235fb8bd3..6ad006cb0 100644 --- a/definitions/grib2/tables/3/3.1.table +++ b/definitions/grib2/tables/3/3.1.table @@ -3,41 +3,25 @@ 1 1 Rotated latitude/longitude 2 2 Stretched latitude/longitude 3 3 Stretched and rotated latitude/longitude -# 4-9 Reserved 10 10 Mercator -# 11-19 Reserved 20 20 Polar stereographic can be south or north -# 21-29 Reserved 30 30 Lambert Conformal can be secant or tangent, conical or bipolar 31 31 Albers equal-area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron -# 101-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-129 Reserved 130 130 Irregular latitude/longitude grid -# 131-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid, with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid, with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/3/3.2.table b/definitions/grib2/tables/3/3.2.table index d037ee120..2bf054512 100644 --- a/definitions/grib2/tables/3/3.2.table +++ b/definitions/grib2/tables/3/3.2.table @@ -6,6 +6,4 @@ 4 4 Earth assumed oblate spheroid as defined in IAG-GRS80 model (major axis = 6,378,137.0 m, minor axis = 6,356,752.314 m, f = 1/298.257222101) 5 5 Earth assumed represented by WGS84 (as used by ICAO since 1998) 6 6 Earth assumed spherical with radius of 6,371,229.0 m -# 7-191 Reserved -# 192- 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/3.20.table b/definitions/grib2/tables/3/3.20.table index cfa35ae38..f79d193b6 100644 --- a/definitions/grib2/tables/3/3.20.table +++ b/definitions/grib2/tables/3/3.20.table @@ -1,6 +1,4 @@ # CODE TABLE 3.20, Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/3.21.table b/definitions/grib2/tables/3/3.21.table index c2fd94586..d42c900cb 100644 --- a/definitions/grib2/tables/3/3.21.table +++ b/definitions/grib2/tables/3/3.21.table @@ -1,8 +1,5 @@ # CODE TABLE 3.21, Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates -# 2-10 Reserved 11 11 Geometric coordinates -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/3.7.table b/definitions/grib2/tables/3/3.7.table index b57c480a4..5937ea14d 100644 --- a/definitions/grib2/tables/3/3.7.table +++ b/definitions/grib2/tables/3/3.7.table @@ -1,5 +1,4 @@ # Code Table 3.7: Spectral data representation mode 0 0 Reserved 1 1 The complex numbers Fnm (see code figure 1 in Code Table 3.6 above) are stored for m³0 as pairs of real numbers Re(Fnm), Im(Fnm) ordered with n increasing from m to N(m), first for m=0 and then for m=1, 2, ... M. (see Note 1) -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/3/3.8.table b/definitions/grib2/tables/3/3.8.table index 0d9b7d001..a6b503617 100644 --- a/definitions/grib2/tables/3/3.8.table +++ b/definitions/grib2/tables/3/3.8.table @@ -2,7 +2,5 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -#3-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.1.0.table b/definitions/grib2/tables/3/4.1.0.table index 33d1c3984..d9660f77e 100644 --- a/definitions/grib2/tables/3/4.1.0.table +++ b/definitions/grib2/tables/3/4.1.0.table @@ -21,10 +21,8 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical or physical constituents -# 20-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.1.1.table b/definitions/grib2/tables/3/4.1.1.table index ebb7d9ea0..220c7fd5a 100644 --- a/definitions/grib2/tables/3/4.1.1.table +++ b/definitions/grib2/tables/3/4.1.1.table @@ -2,8 +2,6 @@ #Category Description 0 0 Hydrology basic products 1 1 Hydrology probabilities -#2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.1.10.table b/definitions/grib2/tables/3/4.1.10.table index 45b08caaa..5593171ac 100644 --- a/definitions/grib2/tables/3/4.1.10.table +++ b/definitions/grib2/tables/3/4.1.10.table @@ -5,8 +5,6 @@ 2 2 Ice 3 3 Surface Properties 4 4 Sub-surface Properties -# 5-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.1.2.table b/definitions/grib2/tables/3/4.1.2.table index f7f2ea2ba..0426852f0 100644 --- a/definitions/grib2/tables/3/4.1.2.table +++ b/definitions/grib2/tables/3/4.1.2.table @@ -4,8 +4,6 @@ 1 1 Agri-/aquacultural Special Products 2 2 Transportation-related Products 3 3 Soil Products -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.1.3.table b/definitions/grib2/tables/3/4.1.3.table index f7578e163..744f02eba 100644 --- a/definitions/grib2/tables/3/4.1.3.table +++ b/definitions/grib2/tables/3/4.1.3.table @@ -2,8 +2,6 @@ #Category Description 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.10.table b/definitions/grib2/tables/3/4.10.table index 9cf447b69..94bf593af 100644 --- a/definitions/grib2/tables/3/4.10.table +++ b/definitions/grib2/tables/3/4.10.table @@ -10,5 +10,4 @@ 7 cov Covariance (Temporal variance) 8 8 Difference (Value at the start of time range minus value at the end) 9 ratio Ratio -# 192 254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/3/4.11.table b/definitions/grib2/tables/3/4.11.table index 68901aac4..28c7ebbd3 100644 --- a/definitions/grib2/tables/3/4.11.table +++ b/definitions/grib2/tables/3/4.11.table @@ -5,5 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.12.table b/definitions/grib2/tables/3/4.12.table index a8dc4b1c7..f52f20c09 100644 --- a/definitions/grib2/tables/3/4.12.table +++ b/definitions/grib2/tables/3/4.12.table @@ -2,5 +2,4 @@ 0 0 Maintenance Mode 1 1 Clear air 2 2 Precipitation -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.13.table b/definitions/grib2/tables/3/4.13.table index 29ddf2a3c..255f90b78 100644 --- a/definitions/grib2/tables/3/4.13.table +++ b/definitions/grib2/tables/3/4.13.table @@ -1,5 +1,4 @@ # CODE TABLE 4.13, Quality Control Indicator 0 0 No quality control applied 1 1 Quality control applied -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.14.table b/definitions/grib2/tables/3/4.14.table index e19c14c2f..34b0931f7 100644 --- a/definitions/grib2/tables/3/4.14.table +++ b/definitions/grib2/tables/3/4.14.table @@ -1,5 +1,4 @@ # CODE TABLE 4.14, Clutter Filter Indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.15.table b/definitions/grib2/tables/3/4.15.table index e247693ad..d75d8823b 100644 --- a/definitions/grib2/tables/3/4.15.table +++ b/definitions/grib2/tables/3/4.15.table @@ -1,5 +1,4 @@ # CODE TABLE 4.15, Type of auxiliary information 0 0 Confidence level (4.151.table) 1 1 Delta time (seconds) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.151.table b/definitions/grib2/tables/3/4.151.table index 30487afb4..90a8c6ca0 100644 --- a/definitions/grib2/tables/3/4.151.table +++ b/definitions/grib2/tables/3/4.151.table @@ -3,5 +3,4 @@ 1 1 suspect 2 2 acceptable 3 3 excellent -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.0.table b/definitions/grib2/tables/3/4.2.0.0.table index 0386b8cd2..94841baa0 100644 --- a/definitions/grib2/tables/3/4.2.0.0.table +++ b/definitions/grib2/tables/3/4.2.0.0.table @@ -17,7 +17,5 @@ 15 15 Virtual potential temperature (K) 16 16 Snow phase change heat flux (W m-2) 17 17 Skin Temperature (K) -#17-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.1.table b/definitions/grib2/tables/3/4.2.0.1.table index 154f2d007..17bb7b4c5 100644 --- a/definitions/grib2/tables/3/4.2.0.1.table +++ b/definitions/grib2/tables/3/4.2.0.1.table @@ -56,7 +56,5 @@ 58 58 Convective snowfall rate (m s-1) 59 59 Large scale snowfall rate (m s-1) 60 60 Snow depth water equivalent (kg m-2) -#47-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.13.table b/definitions/grib2/tables/3/4.2.0.13.table index 8fc3425af..a8c8c8bce 100644 --- a/definitions/grib2/tables/3/4.2.0.13.table +++ b/definitions/grib2/tables/3/4.2.0.13.table @@ -1,6 +1,4 @@ # Product Discipline 0: Meteorological products, Parameter Category 13: Aerosols 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.14.table b/definitions/grib2/tables/3/4.2.0.14.table index 309c40d47..d3128ec55 100644 --- a/definitions/grib2/tables/3/4.2.0.14.table +++ b/definitions/grib2/tables/3/4.2.0.14.table @@ -1,7 +1,5 @@ # Product Discipline 0: Meteorological products, Parameter Category 14: Trace Gases 0 0 Total ozone (Dobson) 1 1 Ozone mixing ratio (kg kg-1) -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.15.table b/definitions/grib2/tables/3/4.2.0.15.table index bb419178b..e73f9eae7 100644 --- a/definitions/grib2/tables/3/4.2.0.15.table +++ b/definitions/grib2/tables/3/4.2.0.15.table @@ -8,7 +8,5 @@ 6 6 Radar spectra (1) (-) 7 7 Radar spectra (2) (-) 8 8 Radar spectra (3) (-) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.18.table b/definitions/grib2/tables/3/4.2.0.18.table index 5c0fd6e5d..1ee1cb17c 100644 --- a/definitions/grib2/tables/3/4.2.0.18.table +++ b/definitions/grib2/tables/3/4.2.0.18.table @@ -8,7 +8,5 @@ 6 6 Time-integrated air concentration of caesium pollutant (Bq s m-3) 7 7 Time-integrated air concentration of iodine pollutant (Bq s m-3) 8 8 Time-integrated air concentration of radioactive pollutant (Bq s m-3) -# 9-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.19.table b/definitions/grib2/tables/3/4.2.0.19.table index 369c3f657..d56c14505 100644 --- a/definitions/grib2/tables/3/4.2.0.19.table +++ b/definitions/grib2/tables/3/4.2.0.19.table @@ -18,7 +18,5 @@ 16 16 Contrail base (m) 17 17 Maximum snow albedo (%) 18 18 Snow free albedo (%) -# 19-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.190.table b/definitions/grib2/tables/3/4.2.0.190.table index b1f47bc02..b95b4ab90 100644 --- a/definitions/grib2/tables/3/4.2.0.190.table +++ b/definitions/grib2/tables/3/4.2.0.190.table @@ -1,6 +1,4 @@ # Product Discipline 0: Meteorological products, Parameter Category 190: CCITT IA5 string 0 0 Arbitrary text string (CCITTIA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.191.table b/definitions/grib2/tables/3/4.2.0.191.table index affb98f42..d095f705e 100644 --- a/definitions/grib2/tables/3/4.2.0.191.table +++ b/definitions/grib2/tables/3/4.2.0.191.table @@ -1,6 +1,4 @@ # Product Discipline 0: Meteorological products, Parameter Category 191: Miscellaneous 0 0 Seconds prior to initial reference time (defined in Section 1) (s) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.2.table b/definitions/grib2/tables/3/4.2.0.2.table index 1ec945102..75b6211aa 100644 --- a/definitions/grib2/tables/3/4.2.0.2.table +++ b/definitions/grib2/tables/3/4.2.0.2.table @@ -30,6 +30,4 @@ 28 28 V-component storm motion (m s-1) 29 29 Drag coefficient (Numeric) 30 30 Frictional velocity (m s-1) -# 31-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.20.table b/definitions/grib2/tables/3/4.2.0.20.table index 4e7f45db4..4e5938bb4 100644 --- a/definitions/grib2/tables/3/4.2.0.20.table +++ b/definitions/grib2/tables/3/4.2.0.20.table @@ -8,6 +8,4 @@ 7 7 Chemical gross production rate of mole concentration mole.m-3.s-1 8 8 Chemical gross destruction rate of mole concentration mole.m-3.s-1 9 9 Surface dry deposition mass flux into stomata kg.m-2.s-1 -#10-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.3.table b/definitions/grib2/tables/3/4.2.0.3.table index 5c7e8151d..fedd11abd 100644 --- a/definitions/grib2/tables/3/4.2.0.3.table +++ b/definitions/grib2/tables/3/4.2.0.3.table @@ -19,7 +19,5 @@ 17 17 Meridional flux of gravity wave stress (N m-2) 18 18 Planetary boundary layer height (m) 19 19 5-wave geopotential height anomaly (gpm) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.4.table b/definitions/grib2/tables/3/4.2.0.4.table index 815c184a2..06785fac6 100644 --- a/definitions/grib2/tables/3/4.2.0.4.table +++ b/definitions/grib2/tables/3/4.2.0.4.table @@ -8,7 +8,5 @@ 6 6 Radiance (with respect to wave length) (W m-3 sr-1) 7 7 Downward short-wave radiation flux (W m-2) 9 8 Upward short-wave radiation flux (W m-2) -# 9-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.5.table b/definitions/grib2/tables/3/4.2.0.5.table index 1b57fa301..e2749b5a6 100644 --- a/definitions/grib2/tables/3/4.2.0.5.table +++ b/definitions/grib2/tables/3/4.2.0.5.table @@ -5,7 +5,5 @@ 3 3 Downward long-wave radiation flux (W m-2) 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long wave radiation flux (W m-2) -# 5-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.6.table b/definitions/grib2/tables/3/4.2.0.6.table index 05cf72f57..de4e051f2 100644 --- a/definitions/grib2/tables/3/4.2.0.6.table +++ b/definitions/grib2/tables/3/4.2.0.6.table @@ -24,7 +24,5 @@ 22 22 Cloud cover (%) 23 23 Cloud ice mixing ratio (kg kg-1) 24 24 Sunshine (Numeric) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.0.7.table b/definitions/grib2/tables/3/4.2.0.7.table index 78374fde5..16458be11 100644 --- a/definitions/grib2/tables/3/4.2.0.7.table +++ b/definitions/grib2/tables/3/4.2.0.7.table @@ -12,7 +12,5 @@ 10 10 Surface lifted index (K) 11 11 Best (4-layer) lifted index (K) 12 12 Richardson number (Numeric) -#13-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.1.1.table b/definitions/grib2/tables/3/4.2.1.1.table index b7342ef2f..f48c19e4d 100644 --- a/definitions/grib2/tables/3/4.2.1.1.table +++ b/definitions/grib2/tables/3/4.2.1.1.table @@ -2,7 +2,5 @@ 0 0 Conditional percent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Percent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -#3-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.10.0.table b/definitions/grib2/tables/3/4.2.10.0.table index 479e26d51..5dc9bd64a 100644 --- a/definitions/grib2/tables/3/4.2.10.0.table +++ b/definitions/grib2/tables/3/4.2.10.0.table @@ -13,8 +13,6 @@ 11 11 Primary wave mean period (s) 12 12 Secondary wave direction (Degree true) 13 13 Secondary wave mean period (s) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.10.1.table b/definitions/grib2/tables/3/4.2.10.1.table index df18f31dd..b9b2bd024 100644 --- a/definitions/grib2/tables/3/4.2.10.1.table +++ b/definitions/grib2/tables/3/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m s-1) 2 2 u-component of current (m s-1) 3 3 v-component of current (m s-1) -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.10.2.table b/definitions/grib2/tables/3/4.2.10.2.table index cb73da46c..8e5a41949 100644 --- a/definitions/grib2/tables/3/4.2.10.2.table +++ b/definitions/grib2/tables/3/4.2.10.2.table @@ -7,6 +7,4 @@ 5 5 v-component of ice drift (m s-1) 6 6 Ice growth rate (m s-1) 7 7 Ice divergence (s-1) -# 8-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.10.3.table b/definitions/grib2/tables/3/4.2.10.3.table index a14ae22e3..5315b46c6 100644 --- a/definitions/grib2/tables/3/4.2.10.3.table +++ b/definitions/grib2/tables/3/4.2.10.3.table @@ -1,6 +1,4 @@ # Product Discipline 10: Oceanographic products, Parameter Category 3: Surface Properties 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.10.4.table b/definitions/grib2/tables/3/4.2.10.4.table index a24c3c8c4..c76136014 100644 --- a/definitions/grib2/tables/3/4.2.10.4.table +++ b/definitions/grib2/tables/3/4.2.10.4.table @@ -3,7 +3,5 @@ 1 1 Main thermocline anomaly (m) 2 2 Transient thermocline depth (m) 3 3 Salinity (kg kg-1) -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.2.0.table b/definitions/grib2/tables/3/4.2.2.0.table index fdc8ce0ef..ebca9dcb4 100644 --- a/definitions/grib2/tables/3/4.2.2.0.table +++ b/definitions/grib2/tables/3/4.2.2.0.table @@ -23,7 +23,5 @@ 21 21 Humidity parameter in canopy conductance (Proportion) 22 22 Soil moisture (kg m-3) 26 26 Wilting point (kg m-3) -# 23-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.2.3.table b/definitions/grib2/tables/3/4.2.2.3.table index d6376fecb..fcca2b27f 100644 --- a/definitions/grib2/tables/3/4.2.2.3.table +++ b/definitions/grib2/tables/3/4.2.2.3.table @@ -10,7 +10,5 @@ 8 8 Direct evaporation cease (soil moisture) (Proportion) 9 9 Soil porosity (Proportion) 12 12 Transpiration stress-onset (soil moisture) (kg m-3) -# 11-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.3.0.table b/definitions/grib2/tables/3/4.2.3.0.table index 944566388..209542d4e 100644 --- a/definitions/grib2/tables/3/4.2.3.0.table +++ b/definitions/grib2/tables/3/4.2.3.0.table @@ -8,7 +8,5 @@ 6 6 Scaled skin temperature (Numeric) 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) -# 9-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.2.3.1.table b/definitions/grib2/tables/3/4.2.3.1.table index 60d6e8420..2a34fc2c6 100644 --- a/definitions/grib2/tables/3/4.2.3.1.table +++ b/definitions/grib2/tables/3/4.2.3.1.table @@ -5,7 +5,5 @@ 3 3 Cloud top height quality indicator (Code table 4.219) 4 4 Estimated u component of wind (m s-1) 5 5 Estimated v component of wind (m s-1) -# 6-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.201.table b/definitions/grib2/tables/3/4.201.table index bd20dd356..d2da38501 100644 --- a/definitions/grib2/tables/3/4.201.table +++ b/definitions/grib2/tables/3/4.201.table @@ -4,5 +4,4 @@ 3 3 Freezing rain 4 4 Mixed/ice 5 5 Snow -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.202.table b/definitions/grib2/tables/3/4.202.table index 242f2d5af..8044d02aa 100644 --- a/definitions/grib2/tables/3/4.202.table +++ b/definitions/grib2/tables/3/4.202.table @@ -1,3 +1,2 @@ # CODE TABLE 4.202, Precipitable water category -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.203.table b/definitions/grib2/tables/3/4.203.table index a5b02a88e..329457bf0 100644 --- a/definitions/grib2/tables/3/4.203.table +++ b/definitions/grib2/tables/3/4.203.table @@ -22,5 +22,4 @@ 19 19 Cirrocumulus - ground based fog beneath the lowest layer 20 20 Cirrus - ground based fog beneath the lowest layer 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.204.table b/definitions/grib2/tables/3/4.204.table index 41b47ef7c..eebc517a6 100644 --- a/definitions/grib2/tables/3/4.204.table +++ b/definitions/grib2/tables/3/4.204.table @@ -4,5 +4,4 @@ 2 2 Few (3% - 15%) 3 3 Scattered (16% - 45%) 4 4 Numerous (> 45%) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.205.table b/definitions/grib2/tables/3/4.205.table index 179b09e08..10a1f5bbf 100644 --- a/definitions/grib2/tables/3/4.205.table +++ b/definitions/grib2/tables/3/4.205.table @@ -1,5 +1,4 @@ # CODE TABLE 4.205, Aerosol type 0 0 Aerosol not present 1 1 Aerosol present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.206.table b/definitions/grib2/tables/3/4.206.table index ea5bfcbc2..33353e74b 100644 --- a/definitions/grib2/tables/3/4.206.table +++ b/definitions/grib2/tables/3/4.206.table @@ -1,5 +1,4 @@ # CODE TABLE 4.206, Volcanic ash 0 0 Not present 1 1 Present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.207.table b/definitions/grib2/tables/3/4.207.table index 1fa48a194..d92a6b811 100644 --- a/definitions/grib2/tables/3/4.207.table +++ b/definitions/grib2/tables/3/4.207.table @@ -3,5 +3,4 @@ 1 1 Light 2 2 Moderate 3 3 Severe -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.208.table b/definitions/grib2/tables/3/4.208.table index 902d03a57..a14539b22 100644 --- a/definitions/grib2/tables/3/4.208.table +++ b/definitions/grib2/tables/3/4.208.table @@ -4,5 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.209.table b/definitions/grib2/tables/3/4.209.table index 7218049e4..e0c422325 100644 --- a/definitions/grib2/tables/3/4.209.table +++ b/definitions/grib2/tables/3/4.209.table @@ -3,5 +3,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.210.table b/definitions/grib2/tables/3/4.210.table index 53ae41be2..58bdd2da3 100644 --- a/definitions/grib2/tables/3/4.210.table +++ b/definitions/grib2/tables/3/4.210.table @@ -1,5 +1,4 @@ # CODE TABLE 4.210, Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.211.table b/definitions/grib2/tables/3/4.211.table index 56565001c..01bb27657 100644 --- a/definitions/grib2/tables/3/4.211.table +++ b/definitions/grib2/tables/3/4.211.table @@ -2,5 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non bypass -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.212.table b/definitions/grib2/tables/3/4.212.table index 10f38d1ef..e7274d600 100644 --- a/definitions/grib2/tables/3/4.212.table +++ b/definitions/grib2/tables/3/4.212.table @@ -12,5 +12,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.213.table b/definitions/grib2/tables/3/4.213.table index 199042325..4bf4f0ab0 100644 --- a/definitions/grib2/tables/3/4.213.table +++ b/definitions/grib2/tables/3/4.213.table @@ -10,5 +10,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.217.table b/definitions/grib2/tables/3/4.217.table index 2bd70f1d3..032b14964 100644 --- a/definitions/grib2/tables/3/4.217.table +++ b/definitions/grib2/tables/3/4.217.table @@ -3,5 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.220.table b/definitions/grib2/tables/3/4.220.table index ea7c55e48..d2efbaae3 100644 --- a/definitions/grib2/tables/3/4.220.table +++ b/definitions/grib2/tables/3/4.220.table @@ -1,5 +1,4 @@ # CODE TABLE 4.220, Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.221.table b/definitions/grib2/tables/3/4.221.table index d63c545c5..27775d7d0 100644 --- a/definitions/grib2/tables/3/4.221.table +++ b/definitions/grib2/tables/3/4.221.table @@ -1,5 +1,4 @@ # CODE TABLE 4.221, Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.230.table b/definitions/grib2/tables/3/4.230.table index 23e819b65..511b005e8 100644 --- a/definitions/grib2/tables/3/4.230.table +++ b/definitions/grib2/tables/3/4.230.table @@ -27,7 +27,6 @@ 25 25 Non-methane volatile organic compounds expressed as carbon 26 26 Anthropogenic non-methane volatile organic compounds expressed as carbon 27 27 Biogenic non-methane volatile organic compounds expressed as carbon -#28-39999 28-39999 Reserved 40000 40000 Sulphate dry aerosol 40001 40001 Black carbon dry aerosol 40002 40002 Particulate organic matter dry aerosol @@ -42,6 +41,4 @@ 40011 40011 Nitrate dry aerosol 40012 40012 Ammonium dry aerosol 40013 40013 Water in ambient aerosol -#40014-63999 40014-63999 Reserved -#64000-65534 64000-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/3/4.3.table b/definitions/grib2/tables/3/4.3.table index 84a72352b..c786df210 100644 --- a/definitions/grib2/tables/3/4.3.table +++ b/definitions/grib2/tables/3/4.3.table @@ -8,6 +8,4 @@ 6 6 Forecast error 7 7 Analysis error 8 8 Observation -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.4.table b/definitions/grib2/tables/3/4.4.table index 61aa20c5f..ae3c412b5 100644 --- a/definitions/grib2/tables/3/4.4.table +++ b/definitions/grib2/tables/3/4.4.table @@ -11,6 +11,4 @@ 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.5.table b/definitions/grib2/tables/3/4.5.table index d2a6d7876..584a8c784 100644 --- a/definitions/grib2/tables/3/4.5.table +++ b/definitions/grib2/tables/3/4.5.table @@ -9,9 +9,7 @@ 7 sfc Tropopause 8 sfc Nominal top of the atmosphere 9 9 Sea bottom -# 10-19 Reserved 20 20 Isothermal level (K) -#21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -24,10 +22,6 @@ 109 pv Potential vorticity surface (K m2 kg-1 s-1) 110 110 Reserved 111 111 Eta level -# 112-116 Reserved 117 117 Mixed layer depth (m) -# 118-159 Reserved 160 160 Depth below sea level (m) -#161-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.6.table b/definitions/grib2/tables/3/4.6.table index dc6d94c20..2147b6e13 100644 --- a/definitions/grib2/tables/3/4.6.table +++ b/definitions/grib2/tables/3/4.6.table @@ -4,5 +4,4 @@ 1 1 Unperturbed low-resolution control forecast 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.7.table b/definitions/grib2/tables/3/4.7.table index 118508672..1dfaf3f0e 100644 --- a/definitions/grib2/tables/3/4.7.table +++ b/definitions/grib2/tables/3/4.7.table @@ -6,5 +6,4 @@ 4 4 Spread of all members 5 5 Large anomaly index of all members (see Note) 6 6 Unweighted mean of the cluster members -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.8.table b/definitions/grib2/tables/3/4.8.table index bba75820a..47d463adf 100644 --- a/definitions/grib2/tables/3/4.8.table +++ b/definitions/grib2/tables/3/4.8.table @@ -1,5 +1,4 @@ # CODE TABLE 4.8, Clustering Method 0 0 Anomaly correlation 1 1 Root mean square -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.9.table b/definitions/grib2/tables/3/4.9.table index cd80b7818..95738e5bc 100644 --- a/definitions/grib2/tables/3/4.9.table +++ b/definitions/grib2/tables/3/4.9.table @@ -5,5 +5,4 @@ 2 2 Probability of event between lower and upper limits. The range includes the lower limit but not the upper limit 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/4.91.table b/definitions/grib2/tables/3/4.91.table index f9606f201..8d2975f84 100644 --- a/definitions/grib2/tables/3/4.91.table +++ b/definitions/grib2/tables/3/4.91.table @@ -11,5 +11,4 @@ 9 9 Lower or equal upper limit 10 10 Between lower and upper limits. The range includes the upper limit but not the lower limit 11 11 Equal to first limit -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/3/5.0.table b/definitions/grib2/tables/3/5.0.table index b9b301151..7613820fc 100644 --- a/definitions/grib2/tables/3/5.0.table +++ b/definitions/grib2/tables/3/5.0.table @@ -9,7 +9,6 @@ 50 50 Spectral data -simple packing 51 51 Spherical harmonics data - complex packing 61 61 Grid point data - simple packing with logarithm pre-processing -# 192-254 Reserved for local use 255 255 Missing 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling diff --git a/definitions/grib2/tables/3/5.1.table b/definitions/grib2/tables/3/5.1.table index d7ca4bedc..52ac8d861 100644 --- a/definitions/grib2/tables/3/5.1.table +++ b/definitions/grib2/tables/3/5.1.table @@ -1,5 +1,4 @@ # CODE TABLE 5.1, Type of original field values 0 0 Floating point 1 1 Integer -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/5.2.table b/definitions/grib2/tables/3/5.2.table index a048d712e..040c7fd6d 100644 --- a/definitions/grib2/tables/3/5.2.table +++ b/definitions/grib2/tables/3/5.2.table @@ -2,5 +2,4 @@ 0 0 Explicit coordinate values set 1 1 Linear coordinates 11 11 Geometric coordinates -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/5.3.table b/definitions/grib2/tables/3/5.3.table index 4a673ef85..e92a2b74c 100644 --- a/definitions/grib2/tables/3/5.3.table +++ b/definitions/grib2/tables/3/5.3.table @@ -2,5 +2,4 @@ 1 1 Direction Degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/5.4.table b/definitions/grib2/tables/3/5.4.table index 1fd37966f..aed51082a 100644 --- a/definitions/grib2/tables/3/5.4.table +++ b/definitions/grib2/tables/3/5.4.table @@ -1,5 +1,4 @@ # CODE TABLE 5.4, Group Splitting Method 0 0 Row by row splitting 1 1 General group splitting -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/5.40.table b/definitions/grib2/tables/3/5.40.table index 1eef7c763..a31bebc59 100644 --- a/definitions/grib2/tables/3/5.40.table +++ b/definitions/grib2/tables/3/5.40.table @@ -1,5 +1,4 @@ # Code Table 5.40: Type of Compression 0 0 Lossless 1 1 Lossy -#2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/3/5.5.table b/definitions/grib2/tables/3/5.5.table index d1caac9e8..2143388cb 100644 --- a/definitions/grib2/tables/3/5.5.table +++ b/definitions/grib2/tables/3/5.5.table @@ -3,5 +3,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/3/5.6.table b/definitions/grib2/tables/3/5.6.table index 7dc16a994..aaf705d48 100644 --- a/definitions/grib2/tables/3/5.6.table +++ b/definitions/grib2/tables/3/5.6.table @@ -2,5 +2,4 @@ 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/0.0.table b/definitions/grib2/tables/30/0.0.table index a8542e94f..a54c35af2 100644 --- a/definitions/grib2/tables/30/0.0.table +++ b/definitions/grib2/tables/30/0.0.table @@ -4,10 +4,6 @@ 2 2 Land surface products 3 3 Satellite remote sensing products (formerly Space products) 4 4 Space weather products -# 5-9 Reserved 10 10 Oceanographic products -# 11-19 Reserved 20 20 Health and socioeconomic impacts -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/1.2.table b/definitions/grib2/tables/30/1.2.table index 77f96637a..5371406eb 100644 --- a/definitions/grib2/tables/30/1.2.table +++ b/definitions/grib2/tables/30/1.2.table @@ -4,6 +4,4 @@ 2 2 Verifying time of forecast 3 3 Observation time 4 4 Local time -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/1.3.table b/definitions/grib2/tables/30/1.3.table index 5e2e59087..f82841612 100644 --- a/definitions/grib2/tables/30/1.3.table +++ b/definitions/grib2/tables/30/1.3.table @@ -11,6 +11,4 @@ 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) 10 10 Copernicus regional reanalysis (CARRA/CERRA) 11 11 Copernicus regional reanalysis test (CARRA/CERRA) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/1.4.table b/definitions/grib2/tables/30/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/30/1.4.table +++ b/definitions/grib2/tables/30/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/30/1.5.table b/definitions/grib2/tables/30/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/30/1.5.table +++ b/definitions/grib2/tables/30/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/30/1.6.table b/definitions/grib2/tables/30/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/30/1.6.table +++ b/definitions/grib2/tables/30/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/3.0.table b/definitions/grib2/tables/30/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/30/3.0.table +++ b/definitions/grib2/tables/30/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/30/3.1.table b/definitions/grib2/tables/30/3.1.table index 7d372ddaf..2d50f176a 100644 --- a/definitions/grib2/tables/30/3.1.table +++ b/definitions/grib2/tables/30/3.1.table @@ -5,51 +5,32 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11 Reserved 12 12 Transverse Mercator 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/30/3.10.table b/definitions/grib2/tables/30/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/30/3.10.table +++ b/definitions/grib2/tables/30/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/30/3.11.table b/definitions/grib2/tables/30/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/30/3.11.table +++ b/definitions/grib2/tables/30/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/30/3.15.table b/definitions/grib2/tables/30/3.15.table index 43539dbfc..8a2e9a566 100644 --- a/definitions/grib2/tables/30/3.15.table +++ b/definitions/grib2/tables/30/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/3.2.table b/definitions/grib2/tables/30/3.2.table index 13b9bf469..83495adec 100644 --- a/definitions/grib2/tables/30/3.2.table +++ b/definitions/grib2/tables/30/3.2.table @@ -11,6 +11,4 @@ 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height 10 10 Earth model assumed WGS84 with corrected geomagnetic coordinates (latitude and longitude) defined by Gustafsson et al., 1992 11 11 Sun assumed spherical with radius = 695 990 000 m (Allen, C.W., Astrophysical Quantities, 3rd ed.; Athlone: London, 1976) and Stonyhurst latitude and longitude system with origin at the intersection of the solar central meridian (as seen from Earth) and the solar equator (Thompson, W., Coordinate systems for solar image data, Astron. Astrophys. 2006, 449, 791-803) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/3.20.table b/definitions/grib2/tables/30/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/30/3.20.table +++ b/definitions/grib2/tables/30/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/3.21.table b/definitions/grib2/tables/30/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/30/3.21.table +++ b/definitions/grib2/tables/30/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/3.25.table b/definitions/grib2/tables/30/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/30/3.25.table +++ b/definitions/grib2/tables/30/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/3.3.table b/definitions/grib2/tables/30/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/30/3.3.table +++ b/definitions/grib2/tables/30/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/30/3.7.table b/definitions/grib2/tables/30/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/30/3.7.table +++ b/definitions/grib2/tables/30/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/30/3.8.table b/definitions/grib2/tables/30/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/30/3.8.table +++ b/definitions/grib2/tables/30/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/3.9.table b/definitions/grib2/tables/30/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/30/3.9.table +++ b/definitions/grib2/tables/30/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/30/4.0.table b/definitions/grib2/tables/30/4.0.table index 47aa74902..fcd070c9a 100644 --- a/definitions/grib2/tables/30/4.0.table +++ b/definitions/grib2/tables/30/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -49,15 +44,12 @@ 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval 62 62 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 63 63 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles -# 64-66 Reserved 67 67 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-75 Reserved 76 76 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 77 77 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 78 78 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink @@ -71,7 +63,6 @@ 86 86 Quantile forecasts at a horizontal level or in a horizontal layer at a point in time 87 87 Quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 88 88 Analysis or forecast at a horizontal level or in a horizontal layer at a specified local time -# 89-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 92 92 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time 93 93 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time @@ -80,15 +71,10 @@ 96 96 Average, accumulation, extreme values or other statistically processed values of an individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time 97 97 Average, accumulation, extreme values or other statistically processed values of post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time 98 98 Average, accumulation, extreme values or other statistically processed values of a post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time -# 99-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/30/4.1.0.table b/definitions/grib2/tables/30/4.1.0.table index 7f390b679..48abfe2d8 100644 --- a/definitions/grib2/tables/30/4.1.0.table +++ b/definitions/grib2/tables/30/4.1.0.table @@ -21,8 +21,6 @@ 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents 21 21 Thermodynamic properties -# 22-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.1.1.table b/definitions/grib2/tables/30/4.1.1.table index df2c13fa8..06451e837 100644 --- a/definitions/grib2/tables/30/4.1.1.table +++ b/definitions/grib2/tables/30/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.1.10.table b/definitions/grib2/tables/30/4.1.10.table index 5a64f9652..d7bb7e672 100644 --- a/definitions/grib2/tables/30/4.1.10.table +++ b/definitions/grib2/tables/30/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.1.2.table b/definitions/grib2/tables/30/4.1.2.table index 9d6f690ac..8faac9a1b 100644 --- a/definitions/grib2/tables/30/4.1.2.table +++ b/definitions/grib2/tables/30/4.1.2.table @@ -6,6 +6,4 @@ 4 4 Fire weather products 5 5 Glaciers and inland ice 6 6 Urban areas -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.1.20.table b/definitions/grib2/tables/30/4.1.20.table index 1e5472a3f..5a725ceb4 100644 --- a/definitions/grib2/tables/30/4.1.20.table +++ b/definitions/grib2/tables/30/4.1.20.table @@ -2,6 +2,4 @@ 0 0 Health indicators 1 1 Epidemiology 2 2 Socioeconomic indicators -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.1.3.table b/definitions/grib2/tables/30/4.1.3.table index 35d82f440..df3cc24e1 100644 --- a/definitions/grib2/tables/30/4.1.3.table +++ b/definitions/grib2/tables/30/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.1.4.table b/definitions/grib2/tables/30/4.1.4.table index 7d1378729..acc38053c 100644 --- a/definitions/grib2/tables/30/4.1.4.table +++ b/definitions/grib2/tables/30/4.1.4.table @@ -10,6 +10,4 @@ 8 8 Imagery 9 9 Ion-neutral coupling 10 10 Space weather indices -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.10.table b/definitions/grib2/tables/30/4.10.table index b66560e8d..a51b45393 100644 --- a/definitions/grib2/tables/30/4.10.table +++ b/definitions/grib2/tables/30/4.10.table @@ -12,9 +12,6 @@ 10 10 Standardized anomaly 11 11 Summation 12 12 Return period -# 13-99 Reserved 100 100 Severity 101 101 Mode -# 102-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/30/4.11.table b/definitions/grib2/tables/30/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/30/4.11.table +++ b/definitions/grib2/tables/30/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.12.table b/definitions/grib2/tables/30/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/30/4.12.table +++ b/definitions/grib2/tables/30/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.13.table b/definitions/grib2/tables/30/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/30/4.13.table +++ b/definitions/grib2/tables/30/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.14.table b/definitions/grib2/tables/30/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/30/4.14.table +++ b/definitions/grib2/tables/30/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.15.table b/definitions/grib2/tables/30/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/30/4.15.table +++ b/definitions/grib2/tables/30/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.16.table b/definitions/grib2/tables/30/4.16.table index 5b9f6fd73..2e0c69752 100644 --- a/definitions/grib2/tables/30/4.16.table +++ b/definitions/grib2/tables/30/4.16.table @@ -5,6 +5,4 @@ 3 3 Standard deviation 4 4 Random error 5 5 Probability -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.0.table b/definitions/grib2/tables/30/4.2.0.0.table index e4912c9d6..835789797 100644 --- a/definitions/grib2/tables/30/4.2.0.0.table +++ b/definitions/grib2/tables/30/4.2.0.0.table @@ -32,6 +32,4 @@ 30 30 Latent heat net flux due to evaporation (W m-2) 31 31 Latent heat net flux due to sublimation (W m-2) 32 32 Wet-bulb potential temperature (K) -# 33-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.1.table b/definitions/grib2/tables/30/4.2.0.1.table index 7b456353f..089941f5f 100644 --- a/definitions/grib2/tables/30/4.2.0.1.table +++ b/definitions/grib2/tables/30/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -164,6 +163,4 @@ 162 162 Column integrated divergence of cloud ice mass flux (kg m-2 s-1) 163 163 Column integrated divergence of rain mass flux (kg m-2 s-1) 164 164 Column integrated divergence of snow mass flux (kg m-2 s-1) -# 165-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.13.table b/definitions/grib2/tables/30/4.2.0.13.table index 4c1253b96..6e05fe29c 100644 --- a/definitions/grib2/tables/30/4.2.0.13.table +++ b/definitions/grib2/tables/30/4.2.0.13.table @@ -1,5 +1,3 @@ # Product discipline 0 - Meteorological products, parameter category 13: aerosols 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.14.table b/definitions/grib2/tables/30/4.2.0.14.table index df0f721ea..78b9771d9 100644 --- a/definitions/grib2/tables/30/4.2.0.14.table +++ b/definitions/grib2/tables/30/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.15.table b/definitions/grib2/tables/30/4.2.0.15.table index ac49ad402..047a903f7 100644 --- a/definitions/grib2/tables/30/4.2.0.15.table +++ b/definitions/grib2/tables/30/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.16.table b/definitions/grib2/tables/30/4.2.0.16.table index 111e6d986..6fa720bf9 100644 --- a/definitions/grib2/tables/30/4.2.0.16.table +++ b/definitions/grib2/tables/30/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.18.table b/definitions/grib2/tables/30/4.2.0.18.table index 9d527a828..2f70d7a39 100644 --- a/definitions/grib2/tables/30/4.2.0.18.table +++ b/definitions/grib2/tables/30/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.19.table b/definitions/grib2/tables/30/4.2.0.19.table index 44bd20957..8263d1e0e 100644 --- a/definitions/grib2/tables/30/4.2.0.19.table +++ b/definitions/grib2/tables/30/4.2.0.19.table @@ -40,6 +40,4 @@ 38 38 Sky transparency index (Code table 4.214) 39 39 Seeing index (Code table 4.214) 40 40 Snow level (m) -# 41-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.190.table b/definitions/grib2/tables/30/4.2.0.190.table index dfe39840d..bd8ceca18 100644 --- a/definitions/grib2/tables/30/4.2.0.190.table +++ b/definitions/grib2/tables/30/4.2.0.190.table @@ -1,5 +1,3 @@ # Product discipline 0 - Meteorological products, parameter category 190: CCITT IA5 string 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.191.table b/definitions/grib2/tables/30/4.2.0.191.table index abc386331..62cf1bb58 100644 --- a/definitions/grib2/tables/30/4.2.0.191.table +++ b/definitions/grib2/tables/30/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.2.table b/definitions/grib2/tables/30/4.2.0.2.table index 97f1b60eb..adc58a989 100644 --- a/definitions/grib2/tables/30/4.2.0.2.table +++ b/definitions/grib2/tables/30/4.2.0.2.table @@ -53,6 +53,4 @@ 51 51 Northward wind stress (N m-2) 52 52 u-component of wind stress (N m-2) 53 53 v-component of wind stress (N m-2) -# 54-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.20.table b/definitions/grib2/tables/30/4.2.0.20.table index 7855a8618..19a014b78 100644 --- a/definitions/grib2/tables/30/4.2.0.20.table +++ b/definitions/grib2/tables/30/4.2.0.20.table @@ -18,7 +18,6 @@ 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) 18 18 Potential of hydrogen (pH) (pH) -# 19-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -51,7 +50,6 @@ 79 79 Column integrated northward mass flux (kg m-1 s-1) 80 80 Column integrated divergence of mass flux (kg m-2 s-1) 81 81 Column integrated net source (kg m-2 s-1) -# 82-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -64,6 +62,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.21.table b/definitions/grib2/tables/30/4.2.0.21.table index c9d2d3496..fd81d0f89 100644 --- a/definitions/grib2/tables/30/4.2.0.21.table +++ b/definitions/grib2/tables/30/4.2.0.21.table @@ -18,6 +18,4 @@ 16 16 Divergence of column integrated kinetic energy flux (W m-2) 17 17 Divergence of column integrated total energy flux (W m-2) 18 18 Divergence of column integrated water enthalpy flux (W m-2) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.3.table b/definitions/grib2/tables/30/4.2.0.3.table index aa5a1b5fb..edcf34e53 100644 --- a/definitions/grib2/tables/30/4.2.0.3.table +++ b/definitions/grib2/tables/30/4.2.0.3.table @@ -37,6 +37,4 @@ 35 35 Column integrated divergence of total mass flux (kg m-2 s-1) 36 36 Column integrated eastward total mass flux (kg m-1 s-1) 37 37 Column integrated northward total mass flux (kg m-1 s-1) -# 38-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.4.table b/definitions/grib2/tables/30/4.2.0.4.table index 1d7f50233..8df676ab3 100644 --- a/definitions/grib2/tables/30/4.2.0.4.table +++ b/definitions/grib2/tables/30/4.2.0.4.table @@ -15,12 +15,9 @@ 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) 15 15 Upward UV radiation emitted/reflected from the Earth's surface (W m-2) -# 16-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) 53 53 Upward short-wave radiation flux, clear sky (W m-2) 54 54 Direct normal short-wave radiation flux (W m-2) -# 55-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.5.table b/definitions/grib2/tables/30/4.2.0.5.table index 157326ba4..4a19f82ee 100644 --- a/definitions/grib2/tables/30/4.2.0.5.table +++ b/definitions/grib2/tables/30/4.2.0.5.table @@ -8,6 +8,4 @@ 6 6 Net long-wave radiation flux, clear sky (W m-2) 7 7 Brightness temperature (K) 8 8 Downward long-wave radiation flux, clear sky (W m-2) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.6.table b/definitions/grib2/tables/30/4.2.0.6.table index ba308d07f..29744abf9 100644 --- a/definitions/grib2/tables/30/4.2.0.6.table +++ b/definitions/grib2/tables/30/4.2.0.6.table @@ -40,11 +40,8 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) 50 50 Fog (%) -# 51-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.0.7.table b/definitions/grib2/tables/30/4.2.0.7.table index 15acb1857..7d60d9bf7 100644 --- a/definitions/grib2/tables/30/4.2.0.7.table +++ b/definitions/grib2/tables/30/4.2.0.7.table @@ -20,6 +20,4 @@ 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) 20 20 Thunderstorm intensity index (Code table 4.246) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.1.0.table b/definitions/grib2/tables/30/4.2.1.0.table index 6204a22ae..6d44d3a30 100644 --- a/definitions/grib2/tables/30/4.2.1.0.table +++ b/definitions/grib2/tables/30/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.1.1.table b/definitions/grib2/tables/30/4.2.1.1.table index e3931d5e6..4cf7ecedd 100644 --- a/definitions/grib2/tables/30/4.2.1.1.table +++ b/definitions/grib2/tables/30/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.1.2.table b/definitions/grib2/tables/30/4.2.1.2.table index bd7276cfe..e52e2af9d 100644 --- a/definitions/grib2/tables/30/4.2.1.2.table +++ b/definitions/grib2/tables/30/4.2.1.2.table @@ -14,6 +14,4 @@ 12 12 Salinity (kg/kg) 13 13 Cross-sectional area of flow in channel (m2) 14 14 Snow temperature (K) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.10.0.table b/definitions/grib2/tables/30/4.2.10.0.table index 8f307c0de..11cf44892 100644 --- a/definitions/grib2/tables/30/4.2.10.0.table +++ b/definitions/grib2/tables/30/4.2.10.0.table @@ -73,6 +73,4 @@ 71 71 Peak direction of wind waves (degree true) 72 72 Peak direction of total swell (degree true) 73 73 Whitecap fraction (fraction) -# 74-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.10.1.table b/definitions/grib2/tables/30/4.2.10.1.table index aeec67455..34b829e24 100644 --- a/definitions/grib2/tables/30/4.2.10.1.table +++ b/definitions/grib2/tables/30/4.2.10.1.table @@ -6,6 +6,4 @@ 4 4 Rip current occurrence probability (%) 5 5 Eastward current (m s-1) 6 6 Northward current (m s-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.10.191.table b/definitions/grib2/tables/30/4.2.10.191.table index cd4d4cde7..c6aac389a 100644 --- a/definitions/grib2/tables/30/4.2.10.191.table +++ b/definitions/grib2/tables/30/4.2.10.191.table @@ -4,6 +4,4 @@ 2 2 Reserved 3 3 Days since last observation (d) 4 4 Barotropic stream function (m3 s-1) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.10.2.table b/definitions/grib2/tables/30/4.2.10.2.table index 5612159ef..b6f2ae0ea 100644 --- a/definitions/grib2/tables/30/4.2.10.2.table +++ b/definitions/grib2/tables/30/4.2.10.2.table @@ -23,6 +23,4 @@ 21 21 Ice melt pond depth (m) 22 22 Ice melt pond volume per unit area (m3 m-2) 23 23 Sea ice fraction tendency due to parameterization (s-1) -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.10.3.table b/definitions/grib2/tables/30/4.2.10.3.table index 4fb3d4597..336411941 100644 --- a/definitions/grib2/tables/30/4.2.10.3.table +++ b/definitions/grib2/tables/30/4.2.10.3.table @@ -19,6 +19,4 @@ 17 17 y-component of surface water velocity (m s-1) 18 18 Heat flux correction (W m-2) 19 19 Sea surface height tendency due to parameterization (m s-1) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.10.4.table b/definitions/grib2/tables/30/4.2.10.4.table index 34d578988..ec306dee7 100644 --- a/definitions/grib2/tables/30/4.2.10.4.table +++ b/definitions/grib2/tables/30/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -39,6 +38,4 @@ 39 39 Northward sea water velocity tendency due to parameterization (m-2 s-1) 40 40 Sea water temperature tendency due to direct bias correction (K s-1) 41 41 Sea water salinity tendency due to direct bias correction (g kg-1 s-1) -# 42-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.2.0.table b/definitions/grib2/tables/30/4.2.2.0.table index e8cacaf45..7c99608f2 100644 --- a/definitions/grib2/tables/30/4.2.2.0.table +++ b/definitions/grib2/tables/30/4.2.2.0.table @@ -49,6 +49,4 @@ 47 47 Irrigation cover (Proportion) 48 48 C4 crop cover (Proportion) 49 49 C4 grass cover (Proportion) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.2.3.table b/definitions/grib2/tables/30/4.2.2.3.table index 4e2187a5b..2300f737d 100644 --- a/definitions/grib2/tables/30/4.2.2.3.table +++ b/definitions/grib2/tables/30/4.2.2.3.table @@ -29,6 +29,4 @@ 27 27 Soil depth (m) 28 28 Snow temperature (K) 29 29 Ice temperature (K) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.2.4.table b/definitions/grib2/tables/30/4.2.2.4.table index 6083f2a98..f1a2552b2 100644 --- a/definitions/grib2/tables/30/4.2.2.4.table +++ b/definitions/grib2/tables/30/4.2.2.4.table @@ -19,6 +19,4 @@ 17 17 Burning index (as defined by the US Forest Service National Fire Danger Rating System) (Numeric) 18 18 Ignition component (as defined by the US Forest Service National Fire Danger Rating System) (%) 19 19 Energy release component (as defined by the US Forest Service National Fire Danger Rating System) (Joule/m2) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.2.5.table b/definitions/grib2/tables/30/4.2.2.5.table index 1d08dd573..7cea1b5da 100644 --- a/definitions/grib2/tables/30/4.2.2.5.table +++ b/definitions/grib2/tables/30/4.2.2.5.table @@ -1,6 +1,4 @@ # Product discipline 2 - Land surface products, parameter category 5: glaciers and inland ice 0 0 Glacier cover (Proportion) 1 1 Glacier temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.2.6.table b/definitions/grib2/tables/30/4.2.2.6.table index b0e37883a..88d98cba0 100644 --- a/definitions/grib2/tables/30/4.2.2.6.table +++ b/definitions/grib2/tables/30/4.2.2.6.table @@ -5,6 +5,4 @@ 3 3 Building height (m) 4 4 Vertical-to-horizontal area fraction (m2 m-2) 5 5 Standard deviation of building height (m) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.20.0.table b/definitions/grib2/tables/30/4.2.20.0.table index a997371d9..23ed9f577 100644 --- a/definitions/grib2/tables/30/4.2.20.0.table +++ b/definitions/grib2/tables/30/4.2.20.0.table @@ -8,6 +8,4 @@ 6 6 Normal effective temperature (K) 7 7 Standard effective temperature (K) 8 8 Physiological equivalent temperature (K) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.20.1.table b/definitions/grib2/tables/30/4.2.20.1.table index 0712cd8d1..e7c4388ea 100644 --- a/definitions/grib2/tables/30/4.2.20.1.table +++ b/definitions/grib2/tables/30/4.2.20.1.table @@ -9,6 +9,4 @@ 7 7 Anopheles vector to host ratio (Fraction) 8 8 Anopheles vector number (Number m-2) 9 9 Fraction of malarial vector reproductive habitat (Fraction) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.20.2.table b/definitions/grib2/tables/30/4.2.20.2.table index d6b9083d1..285f12a81 100644 --- a/definitions/grib2/tables/30/4.2.20.2.table +++ b/definitions/grib2/tables/30/4.2.20.2.table @@ -1,5 +1,3 @@ # Product discipline 20 - Health and socioeconomic impacts, parameter category 2: socioeconomic indicators 0 0 Population density (Person m-2) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.3.0.table b/definitions/grib2/tables/30/4.2.3.0.table index 0bec15119..49b098942 100644 --- a/definitions/grib2/tables/30/4.2.3.0.table +++ b/definitions/grib2/tables/30/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.3.1.table b/definitions/grib2/tables/30/4.2.3.1.table index 3211e5d1c..05d6e7e40 100644 --- a/definitions/grib2/tables/30/4.2.3.1.table +++ b/definitions/grib2/tables/30/4.2.3.1.table @@ -23,13 +23,9 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (numeric) -# 30-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.0.table b/definitions/grib2/tables/30/4.2.4.0.table index 337308305..47a9b9f78 100644 --- a/definitions/grib2/tables/30/4.2.4.0.table +++ b/definitions/grib2/tables/30/4.2.4.0.table @@ -5,6 +5,4 @@ 3 3 Ion temperature (K) 4 4 Parallel temperature (K) 5 5 Perpendicular temperature (K) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.1.table b/definitions/grib2/tables/30/4.2.4.1.table index 9ec11160f..4ce057416 100644 --- a/definitions/grib2/tables/30/4.2.4.1.table +++ b/definitions/grib2/tables/30/4.2.4.1.table @@ -3,6 +3,4 @@ 1 1 1st vector component of velocity (coordinate system dependent) (m s-1) 2 2 2nd vector component of velocity (coordinate system dependent) (m s-1) 3 3 3rd vector component of velocity (coordinate system dependent) (m s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.10.table b/definitions/grib2/tables/30/4.2.4.10.table index 8f5b19e06..e539399da 100644 --- a/definitions/grib2/tables/30/4.2.4.10.table +++ b/definitions/grib2/tables/30/4.2.4.10.table @@ -7,6 +7,4 @@ 5 5 Kp (Numeric) 6 6 Equatorial disturbance storm time index (Dst) (nT) 7 7 Auroral electrojet (AE) (nT) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.2.table b/definitions/grib2/tables/30/4.2.4.2.table index b479b3361..f101c726d 100644 --- a/definitions/grib2/tables/30/4.2.4.2.table +++ b/definitions/grib2/tables/30/4.2.4.2.table @@ -13,6 +13,4 @@ 11 11 Peak height (hm) (m) 12 12 Peak density (Nm) (m-3) 13 13 Equivalent slab thickness (tau) (km) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.3.table b/definitions/grib2/tables/30/4.2.4.3.table index 3b752bbbc..83c5c4003 100644 --- a/definitions/grib2/tables/30/4.2.4.3.table +++ b/definitions/grib2/tables/30/4.2.4.3.table @@ -7,6 +7,4 @@ 5 5 1st vector component of electric field (V m-1) 6 6 2nd vector component of electric field (V m-1) 7 7 3rd vector component of electric field (V m-1) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.4.table b/definitions/grib2/tables/30/4.2.4.4.table index 694c8cacc..0dce67c17 100644 --- a/definitions/grib2/tables/30/4.2.4.4.table +++ b/definitions/grib2/tables/30/4.2.4.4.table @@ -6,6 +6,4 @@ 4 4 Heavy ion flux (differential) ((m2 s sr eV/nuc)-1) 5 5 Heavy ion flux (integral) ((m2 s sr)-1) 6 6 Cosmic ray neutron flux (h-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.5.table b/definitions/grib2/tables/30/4.2.4.5.table index 913efec6f..25c1edd37 100644 --- a/definitions/grib2/tables/30/4.2.4.5.table +++ b/definitions/grib2/tables/30/4.2.4.5.table @@ -3,6 +3,4 @@ 1 1 Phase (rad) 2 2 Frequency (Hz) 3 3 Wavelength (m) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.6.table b/definitions/grib2/tables/30/4.2.4.6.table index 6d13019a6..e7da16f42 100644 --- a/definitions/grib2/tables/30/4.2.4.6.table +++ b/definitions/grib2/tables/30/4.2.4.6.table @@ -6,6 +6,4 @@ 4 4 Solar spectral irradiance (W m-2 nm-1) 5 5 F10.7 (W m-2 Hz-1) 6 6 Solar radio emissions (W m-2 Hz-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.7.table b/definitions/grib2/tables/30/4.2.4.7.table index 38c2b17a8..0433ac516 100644 --- a/definitions/grib2/tables/30/4.2.4.7.table +++ b/definitions/grib2/tables/30/4.2.4.7.table @@ -3,6 +3,4 @@ 1 1 Disk intensity (J m-2 s-1) 2 2 Disk intensity day (J m-2 s-1) 3 3 Disk intensity night (J m-2 s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.8.table b/definitions/grib2/tables/30/4.2.4.8.table index f350f4807..f0cc8aac2 100644 --- a/definitions/grib2/tables/30/4.2.4.8.table +++ b/definitions/grib2/tables/30/4.2.4.8.table @@ -8,6 +8,4 @@ 6 6 Heliospheric radiance (W sr-1 m-2) 7 7 Thematic mask (Numeric) 8 8 Solar induced chlorophyll fluorescence (W m-2 sr-1 m-1) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.2.4.9.table b/definitions/grib2/tables/30/4.2.4.9.table index 0e83436e2..984ea4726 100644 --- a/definitions/grib2/tables/30/4.2.4.9.table +++ b/definitions/grib2/tables/30/4.2.4.9.table @@ -2,6 +2,4 @@ 0 0 Pedersen conductivity (S m-1) 1 1 Hall conductivity (S m-1) 2 2 Parallel conductivity (S m-1) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.201.table b/definitions/grib2/tables/30/4.201.table index a725e4e65..c30b081a2 100644 --- a/definitions/grib2/tables/30/4.201.table +++ b/definitions/grib2/tables/30/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.202.table b/definitions/grib2/tables/30/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/30/4.202.table +++ b/definitions/grib2/tables/30/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.203.table b/definitions/grib2/tables/30/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/30/4.203.table +++ b/definitions/grib2/tables/30/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.204.table b/definitions/grib2/tables/30/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/30/4.204.table +++ b/definitions/grib2/tables/30/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.205.table b/definitions/grib2/tables/30/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/30/4.205.table +++ b/definitions/grib2/tables/30/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.206.table b/definitions/grib2/tables/30/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/30/4.206.table +++ b/definitions/grib2/tables/30/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.207.table b/definitions/grib2/tables/30/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/30/4.207.table +++ b/definitions/grib2/tables/30/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.208.table b/definitions/grib2/tables/30/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/30/4.208.table +++ b/definitions/grib2/tables/30/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.209.table b/definitions/grib2/tables/30/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/30/4.209.table +++ b/definitions/grib2/tables/30/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.210.table b/definitions/grib2/tables/30/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/30/4.210.table +++ b/definitions/grib2/tables/30/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.211.table b/definitions/grib2/tables/30/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/30/4.211.table +++ b/definitions/grib2/tables/30/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.212.table b/definitions/grib2/tables/30/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/30/4.212.table +++ b/definitions/grib2/tables/30/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.213.table b/definitions/grib2/tables/30/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/30/4.213.table +++ b/definitions/grib2/tables/30/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.214.table b/definitions/grib2/tables/30/4.214.table index b08860ce0..c0eaeda75 100644 --- a/definitions/grib2/tables/30/4.214.table +++ b/definitions/grib2/tables/30/4.214.table @@ -5,7 +5,5 @@ 3 3 Average 4 4 Good 5 5 Excellent -# 6-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.215.table b/definitions/grib2/tables/30/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/30/4.215.table +++ b/definitions/grib2/tables/30/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.216.table b/definitions/grib2/tables/30/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/30/4.216.table +++ b/definitions/grib2/tables/30/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/30/4.217.table b/definitions/grib2/tables/30/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/30/4.217.table +++ b/definitions/grib2/tables/30/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.218.table b/definitions/grib2/tables/30/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/30/4.218.table +++ b/definitions/grib2/tables/30/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.219.table b/definitions/grib2/tables/30/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/30/4.219.table +++ b/definitions/grib2/tables/30/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.220.table b/definitions/grib2/tables/30/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/30/4.220.table +++ b/definitions/grib2/tables/30/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.221.table b/definitions/grib2/tables/30/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/30/4.221.table +++ b/definitions/grib2/tables/30/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.222.table b/definitions/grib2/tables/30/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/30/4.222.table +++ b/definitions/grib2/tables/30/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.224.table b/definitions/grib2/tables/30/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/30/4.224.table +++ b/definitions/grib2/tables/30/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/30/4.227.table b/definitions/grib2/tables/30/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/30/4.227.table +++ b/definitions/grib2/tables/30/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/30/4.228.table b/definitions/grib2/tables/30/4.228.table index 048a69f0b..88c3dd87c 100644 --- a/definitions/grib2/tables/30/4.228.table +++ b/definitions/grib2/tables/30/4.228.table @@ -4,5 +4,4 @@ 2 2 Light 3 3 Moderate 4 4 Severe -# 5-254 Reserved 255 255 Missing value diff --git a/definitions/grib2/tables/30/4.230.table b/definitions/grib2/tables/30/4.230.table index 705857e5c..3bb35c402 100644 --- a/definitions/grib2/tables/30/4.230.table +++ b/definitions/grib2/tables/30/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO* 10001 10001 Methyl peroxy radical CH3OO* 10002 10002 Methyl hydroperoxide CH3OOH @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-oxidanyloxy-3-methylbut-3-en-1-ol (2-hydroxy-1-isopropenylethylperoxy radical) HOCH2CH(OO*)C(CH3)CH2 10058 10058 (Z)-4-hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH3)CHO 10059 10059 (Z)-4-hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH3)CHCHO -# 10060-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, etc.) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -424,12 +419,10 @@ 30296 30296 Lead Pb 30297 30297 Tellurium 131 Te-131 30298 30298 Neodymium 137 Nd-137 -# 30299-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx* 60001 60001 Total inorganic and organic peroxy radicals (HOO* + ROO*) ROO* 60002 60002 Passive Ozone @@ -465,7 +458,6 @@ 60032 60032 All hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 ISOPOOH 60033 60033 Anthropogenic volatile organic compounds aVOC 60034 60034 Biomass burning volatile organic compounds bbVOC -# 60035-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -485,15 +477,12 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry @@ -503,7 +492,6 @@ 62034 62034 Rain water H2Orain 62035 62035 Cloud water H2Ocloud 62036 62036 Brown carbon dry -# 62037-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -520,15 +508,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/30/4.233.table b/definitions/grib2/tables/30/4.233.table index e4960cc1b..d9e12aec6 100644 --- a/definitions/grib2/tables/30/4.233.table +++ b/definitions/grib2/tables/30/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO* 10001 10001 Methyl peroxy radical CH3OO* 10002 10002 Methyl hydroperoxide CH3OOH @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-oxidanyloxy-3-methylbut-3-en-1-ol (2-hydroxy-1-isopropenylethylperoxy radical) HOCH2CH(OO*)C(CH3)CH2 10058 10058 (Z)-4-hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH3)CHO 10059 10059 (Z)-4-hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH3)CHCHO -# 10060-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, etc.) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -424,12 +419,10 @@ 30296 30296 Lead Pb 30297 30297 Tellurium 131 Te-131 30298 30298 Neodymium 137 Nd-137 -# 30299-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx* 60001 60001 Total inorganic and organic peroxy radicals (HOO* + ROO*) ROO* 60002 60002 Passive Ozone @@ -465,7 +458,6 @@ 60032 60032 All hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 ISOPOOH 60033 60033 Anthropogenic volatile organic compounds aVOC 60034 60034 Biomass burning volatile organic compounds bbVOC -# 60035-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -485,15 +477,12 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry @@ -503,7 +492,6 @@ 62034 62034 Rain water H2Orain 62035 62035 Cloud water H2Ocloud 62036 62036 Brown carbon dry -# 62037-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -520,15 +508,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/30/4.238.table b/definitions/grib2/tables/30/4.238.table index be5be3a90..abd570100 100644 --- a/definitions/grib2/tables/30/4.238.table +++ b/definitions/grib2/tables/30/4.238.table @@ -27,6 +27,4 @@ 25 25 Wastes (solid and water) 26 26 Road transportation 27 27 Off-road transportation -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.239.table b/definitions/grib2/tables/30/4.239.table index f095b14a0..b035c9eca 100644 --- a/definitions/grib2/tables/30/4.239.table +++ b/definitions/grib2/tables/30/4.239.table @@ -12,6 +12,4 @@ 10 10 Swamp 11 11 Upland 12 12 Wet tundra -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.240.table b/definitions/grib2/tables/30/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/30/4.240.table +++ b/definitions/grib2/tables/30/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/30/4.241.table b/definitions/grib2/tables/30/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/30/4.241.table +++ b/definitions/grib2/tables/30/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/30/4.242.table b/definitions/grib2/tables/30/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/30/4.242.table +++ b/definitions/grib2/tables/30/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/30/4.243.table b/definitions/grib2/tables/30/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/30/4.243.table +++ b/definitions/grib2/tables/30/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/30/4.244.table b/definitions/grib2/tables/30/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/30/4.244.table +++ b/definitions/grib2/tables/30/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.246.table b/definitions/grib2/tables/30/4.246.table index 0ca9c0c98..74c16312c 100644 --- a/definitions/grib2/tables/30/4.246.table +++ b/definitions/grib2/tables/30/4.246.table @@ -3,5 +3,4 @@ 1 1 Weak thunderstorm 2 2 Moderate thunderstorm 3 3 Severe thunderstorm -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/30/4.247.table b/definitions/grib2/tables/30/4.247.table index 6da16e396..5a55bf127 100644 --- a/definitions/grib2/tables/30/4.247.table +++ b/definitions/grib2/tables/30/4.247.table @@ -3,5 +3,4 @@ 1 1 Light precipitation 2 2 Moderate precipitation 3 3 Heavy precipitation -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/30/4.248.table b/definitions/grib2/tables/30/4.248.table index 04e365c97..ae4965d8d 100644 --- a/definitions/grib2/tables/30/4.248.table +++ b/definitions/grib2/tables/30/4.248.table @@ -1,6 +1,4 @@ # Code table 4.248 - Method used to derive data values for a given local time 0 0 Nearest forecast or analysis time to specified local time 1 1 Interpolated to be valid at the specified local time -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.249.table b/definitions/grib2/tables/30/4.249.table index bd1c944c4..93137b15b 100644 --- a/definitions/grib2/tables/30/4.249.table +++ b/definitions/grib2/tables/30/4.249.table @@ -3,5 +3,4 @@ 1 1 Showers 2 2 Intermittent 3 3 Continuous -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/30/4.250.table b/definitions/grib2/tables/30/4.250.table index a249158ca..c918ca956 100644 --- a/definitions/grib2/tables/30/4.250.table +++ b/definitions/grib2/tables/30/4.250.table @@ -9,6 +9,4 @@ 7 7 North-west 8 8 North 9 9 North-east -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.3.table b/definitions/grib2/tables/30/4.3.table index 8ae36efc3..5d9191ff8 100644 --- a/definitions/grib2/tables/30/4.3.table +++ b/definitions/grib2/tables/30/4.3.table @@ -21,6 +21,4 @@ 19 19 First guess 20 20 Analysis increment 21 21 Initialization increment for analysis -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.4.table b/definitions/grib2/tables/30/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/30/4.4.table +++ b/definitions/grib2/tables/30/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.5.table b/definitions/grib2/tables/30/4.5.table index 98103671d..2eacb0270 100644 --- a/definitions/grib2/tables/30/4.5.table +++ b/definitions/grib2/tables/30/4.5.table @@ -18,7 +18,6 @@ 16 16 Level of neutral buoyancy or equilibrium level (LNB) (-) 17 sfc Departure level of the most unstable parcel of air (MUDL) 18 sfc Departure level of a mixed layer parcel of air with specified layer depth (Pa) -# 19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) @@ -27,14 +26,12 @@ 25 25 Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity) (dBZ) 26 26 Convective cloud layer base (m) 27 27 Convective cloud layer top (m) -# 28-29 Reserved 30 30 Specified radius from the centre of the Sun (m) 31 31 Solar photosphere 32 32 Ionospheric D-region level 33 33 Ionospheric E-region level 34 34 Ionospheric F1-region level 35 35 Ionospheric F2-region level -# 36-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -51,15 +48,12 @@ 113 113 Logarithmic hybrid level 114 sol Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) 152 sol Sea-ice level (Numeric) -# 153-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -72,18 +66,14 @@ 169 169 Ocean level defined by water density (sigma-theta) difference from near-surface to level (kg m-3) 170 170 Ocean level defined by water potential temperature difference from near-surface to level (K) 171 171 Ocean level defined by vertical eddy diffusivity difference from near-surface to level (m2 s-1) -# 172-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.6.table b/definitions/grib2/tables/30/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/30/4.6.table +++ b/definitions/grib2/tables/30/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.7.table b/definitions/grib2/tables/30/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/30/4.7.table +++ b/definitions/grib2/tables/30/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.8.table b/definitions/grib2/tables/30/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/30/4.8.table +++ b/definitions/grib2/tables/30/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.9.table b/definitions/grib2/tables/30/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/30/4.9.table +++ b/definitions/grib2/tables/30/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/4.91.table b/definitions/grib2/tables/30/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/30/4.91.table +++ b/definitions/grib2/tables/30/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/30/5.0.table b/definitions/grib2/tables/30/5.0.table index 5e00004b0..115b708f2 100644 --- a/definitions/grib2/tables/30/5.0.table +++ b/definitions/grib2/tables/30/5.0.table @@ -4,19 +4,12 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/30/5.1.table b/definitions/grib2/tables/30/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/30/5.1.table +++ b/definitions/grib2/tables/30/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/5.2.table b/definitions/grib2/tables/30/5.2.table index 60d557a0d..b880c47c2 100644 --- a/definitions/grib2/tables/30/5.2.table +++ b/definitions/grib2/tables/30/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/5.25.table b/definitions/grib2/tables/30/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/30/5.25.table +++ b/definitions/grib2/tables/30/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/30/5.26.table b/definitions/grib2/tables/30/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/30/5.26.table +++ b/definitions/grib2/tables/30/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/30/5.3.table b/definitions/grib2/tables/30/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/30/5.3.table +++ b/definitions/grib2/tables/30/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/5.4.table b/definitions/grib2/tables/30/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/30/5.4.table +++ b/definitions/grib2/tables/30/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/5.40.table b/definitions/grib2/tables/30/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/30/5.40.table +++ b/definitions/grib2/tables/30/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/30/5.5.table b/definitions/grib2/tables/30/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/30/5.5.table +++ b/definitions/grib2/tables/30/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/5.6.table b/definitions/grib2/tables/30/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/30/5.6.table +++ b/definitions/grib2/tables/30/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/30/5.7.table b/definitions/grib2/tables/30/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/30/5.7.table +++ b/definitions/grib2/tables/30/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/31/0.0.table b/definitions/grib2/tables/31/0.0.table index a8542e94f..a54c35af2 100644 --- a/definitions/grib2/tables/31/0.0.table +++ b/definitions/grib2/tables/31/0.0.table @@ -4,10 +4,6 @@ 2 2 Land surface products 3 3 Satellite remote sensing products (formerly Space products) 4 4 Space weather products -# 5-9 Reserved 10 10 Oceanographic products -# 11-19 Reserved 20 20 Health and socioeconomic impacts -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/1.2.table b/definitions/grib2/tables/31/1.2.table index 77f96637a..5371406eb 100644 --- a/definitions/grib2/tables/31/1.2.table +++ b/definitions/grib2/tables/31/1.2.table @@ -4,6 +4,4 @@ 2 2 Verifying time of forecast 3 3 Observation time 4 4 Local time -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/1.3.table b/definitions/grib2/tables/31/1.3.table index 5e2e59087..f82841612 100644 --- a/definitions/grib2/tables/31/1.3.table +++ b/definitions/grib2/tables/31/1.3.table @@ -11,6 +11,4 @@ 9 9 Uncertainties in Ensembles of Regional ReAnalyses project test (UERRA) 10 10 Copernicus regional reanalysis (CARRA/CERRA) 11 11 Copernicus regional reanalysis test (CARRA/CERRA) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/1.4.table b/definitions/grib2/tables/31/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/31/1.4.table +++ b/definitions/grib2/tables/31/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/31/1.5.table b/definitions/grib2/tables/31/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/31/1.5.table +++ b/definitions/grib2/tables/31/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/31/1.6.table b/definitions/grib2/tables/31/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/31/1.6.table +++ b/definitions/grib2/tables/31/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/3.0.table b/definitions/grib2/tables/31/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/31/3.0.table +++ b/definitions/grib2/tables/31/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/31/3.1.table b/definitions/grib2/tables/31/3.1.table index 7d372ddaf..2d50f176a 100644 --- a/definitions/grib2/tables/31/3.1.table +++ b/definitions/grib2/tables/31/3.1.table @@ -5,51 +5,32 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11 Reserved 12 12 Transverse Mercator 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/31/3.10.table b/definitions/grib2/tables/31/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/31/3.10.table +++ b/definitions/grib2/tables/31/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/31/3.11.table b/definitions/grib2/tables/31/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/31/3.11.table +++ b/definitions/grib2/tables/31/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/31/3.15.table b/definitions/grib2/tables/31/3.15.table index 43539dbfc..8a2e9a566 100644 --- a/definitions/grib2/tables/31/3.15.table +++ b/definitions/grib2/tables/31/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/3.2.table b/definitions/grib2/tables/31/3.2.table index 13b9bf469..83495adec 100644 --- a/definitions/grib2/tables/31/3.2.table +++ b/definitions/grib2/tables/31/3.2.table @@ -11,6 +11,4 @@ 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height 10 10 Earth model assumed WGS84 with corrected geomagnetic coordinates (latitude and longitude) defined by Gustafsson et al., 1992 11 11 Sun assumed spherical with radius = 695 990 000 m (Allen, C.W., Astrophysical Quantities, 3rd ed.; Athlone: London, 1976) and Stonyhurst latitude and longitude system with origin at the intersection of the solar central meridian (as seen from Earth) and the solar equator (Thompson, W., Coordinate systems for solar image data, Astron. Astrophys. 2006, 449, 791-803) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/3.20.table b/definitions/grib2/tables/31/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/31/3.20.table +++ b/definitions/grib2/tables/31/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/3.21.table b/definitions/grib2/tables/31/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/31/3.21.table +++ b/definitions/grib2/tables/31/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/3.25.table b/definitions/grib2/tables/31/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/31/3.25.table +++ b/definitions/grib2/tables/31/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/3.3.table b/definitions/grib2/tables/31/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/31/3.3.table +++ b/definitions/grib2/tables/31/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/31/3.7.table b/definitions/grib2/tables/31/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/31/3.7.table +++ b/definitions/grib2/tables/31/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/31/3.8.table b/definitions/grib2/tables/31/3.8.table index 578fab37f..f8f389bea 100644 --- a/definitions/grib2/tables/31/3.8.table +++ b/definitions/grib2/tables/31/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/3.9.table b/definitions/grib2/tables/31/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/31/3.9.table +++ b/definitions/grib2/tables/31/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/31/4.0.table b/definitions/grib2/tables/31/4.0.table index 1b7479edc..c0616153b 100644 --- a/definitions/grib2/tables/31/4.0.table +++ b/definitions/grib2/tables/31/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -49,15 +44,12 @@ 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval 62 62 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 63 63 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles -# 64-66 Reserved 67 67 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-75 Reserved 76 76 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 77 77 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 78 78 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink @@ -71,7 +63,6 @@ 86 86 Quantile forecasts at a horizontal level or in a horizontal layer at a point in time 87 87 Quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 88 88 Analysis or forecast at a horizontal level or in a horizontal layer at a specified local time -# 89-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 92 92 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time 93 93 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time @@ -94,15 +85,10 @@ 110 110 Average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for generic optical products 111 111 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for generic optical products 112 112 Anomalies, significance and other derived products as probability forecasts in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 113-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/31/4.1.0.table b/definitions/grib2/tables/31/4.1.0.table index 7f390b679..48abfe2d8 100644 --- a/definitions/grib2/tables/31/4.1.0.table +++ b/definitions/grib2/tables/31/4.1.0.table @@ -21,8 +21,6 @@ 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents 21 21 Thermodynamic properties -# 22-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.1.1.table b/definitions/grib2/tables/31/4.1.1.table index df2c13fa8..06451e837 100644 --- a/definitions/grib2/tables/31/4.1.1.table +++ b/definitions/grib2/tables/31/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.1.10.table b/definitions/grib2/tables/31/4.1.10.table index 5a64f9652..d7bb7e672 100644 --- a/definitions/grib2/tables/31/4.1.10.table +++ b/definitions/grib2/tables/31/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.1.2.table b/definitions/grib2/tables/31/4.1.2.table index 9d6f690ac..8faac9a1b 100644 --- a/definitions/grib2/tables/31/4.1.2.table +++ b/definitions/grib2/tables/31/4.1.2.table @@ -6,6 +6,4 @@ 4 4 Fire weather products 5 5 Glaciers and inland ice 6 6 Urban areas -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.1.20.table b/definitions/grib2/tables/31/4.1.20.table index 1e5472a3f..5a725ceb4 100644 --- a/definitions/grib2/tables/31/4.1.20.table +++ b/definitions/grib2/tables/31/4.1.20.table @@ -2,6 +2,4 @@ 0 0 Health indicators 1 1 Epidemiology 2 2 Socioeconomic indicators -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.1.3.table b/definitions/grib2/tables/31/4.1.3.table index 35d82f440..df3cc24e1 100644 --- a/definitions/grib2/tables/31/4.1.3.table +++ b/definitions/grib2/tables/31/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.1.4.table b/definitions/grib2/tables/31/4.1.4.table index 7d1378729..acc38053c 100644 --- a/definitions/grib2/tables/31/4.1.4.table +++ b/definitions/grib2/tables/31/4.1.4.table @@ -10,6 +10,4 @@ 8 8 Imagery 9 9 Ion-neutral coupling 10 10 Space weather indices -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.10.table b/definitions/grib2/tables/31/4.10.table index b66560e8d..a51b45393 100644 --- a/definitions/grib2/tables/31/4.10.table +++ b/definitions/grib2/tables/31/4.10.table @@ -12,9 +12,6 @@ 10 10 Standardized anomaly 11 11 Summation 12 12 Return period -# 13-99 Reserved 100 100 Severity 101 101 Mode -# 102-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/31/4.100.table b/definitions/grib2/tables/31/4.100.table index a24770d68..24f8c3417 100644 --- a/definitions/grib2/tables/31/4.100.table +++ b/definitions/grib2/tables/31/4.100.table @@ -5,6 +5,4 @@ 3 3 Reanalysis 4 4 Climate projection 5 5 Gridded observations -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.101.table b/definitions/grib2/tables/31/4.101.table index e65f87826..35bb860dd 100644 --- a/definitions/grib2/tables/31/4.101.table +++ b/definitions/grib2/tables/31/4.101.table @@ -2,9 +2,6 @@ 0 0 Anomaly 1 1 Standardized anomaly 2 2 Significance (Wilcoxon-Mann-Whitney) -# 3-19 Reserved 20 20 Extreme Forecast Index (EFI) 21 21 Shift of Tails (SOT) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.102.table b/definitions/grib2/tables/31/4.102.table index ec8edebf5..e16eb597d 100644 --- a/definitions/grib2/tables/31/4.102.table +++ b/definitions/grib2/tables/31/4.102.table @@ -4,8 +4,5 @@ 2 2 Maximum 3 3 Minimum 4 4 Median -# 5-19 Reserved 20 20 Model Climate -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.11.table b/definitions/grib2/tables/31/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/31/4.11.table +++ b/definitions/grib2/tables/31/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.12.table b/definitions/grib2/tables/31/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/31/4.12.table +++ b/definitions/grib2/tables/31/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.13.table b/definitions/grib2/tables/31/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/31/4.13.table +++ b/definitions/grib2/tables/31/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.14.table b/definitions/grib2/tables/31/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/31/4.14.table +++ b/definitions/grib2/tables/31/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.15.table b/definitions/grib2/tables/31/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/31/4.15.table +++ b/definitions/grib2/tables/31/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.16.table b/definitions/grib2/tables/31/4.16.table index 5b9f6fd73..2e0c69752 100644 --- a/definitions/grib2/tables/31/4.16.table +++ b/definitions/grib2/tables/31/4.16.table @@ -5,6 +5,4 @@ 3 3 Standard deviation 4 4 Random error 5 5 Probability -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.0.table b/definitions/grib2/tables/31/4.2.0.0.table index e4912c9d6..835789797 100644 --- a/definitions/grib2/tables/31/4.2.0.0.table +++ b/definitions/grib2/tables/31/4.2.0.0.table @@ -32,6 +32,4 @@ 30 30 Latent heat net flux due to evaporation (W m-2) 31 31 Latent heat net flux due to sublimation (W m-2) 32 32 Wet-bulb potential temperature (K) -# 33-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.1.table b/definitions/grib2/tables/31/4.2.0.1.table index 03473003a..abd2a1cce 100644 --- a/definitions/grib2/tables/31/4.2.0.1.table +++ b/definitions/grib2/tables/31/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -167,6 +166,4 @@ 165 165 Column integrated divergence of total water mass flux (kg m-2 s-1) 166 166 Column integrated water vapour flux (kg m-2 s-1) 167 167 Total column supercooled liquid water (kg m-2) -# 168-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.13.table b/definitions/grib2/tables/31/4.2.0.13.table index 4c1253b96..6e05fe29c 100644 --- a/definitions/grib2/tables/31/4.2.0.13.table +++ b/definitions/grib2/tables/31/4.2.0.13.table @@ -1,5 +1,3 @@ # Product discipline 0 - Meteorological products, parameter category 13: aerosols 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.14.table b/definitions/grib2/tables/31/4.2.0.14.table index df0f721ea..78b9771d9 100644 --- a/definitions/grib2/tables/31/4.2.0.14.table +++ b/definitions/grib2/tables/31/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.15.table b/definitions/grib2/tables/31/4.2.0.15.table index ac49ad402..047a903f7 100644 --- a/definitions/grib2/tables/31/4.2.0.15.table +++ b/definitions/grib2/tables/31/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.16.table b/definitions/grib2/tables/31/4.2.0.16.table index 111e6d986..6fa720bf9 100644 --- a/definitions/grib2/tables/31/4.2.0.16.table +++ b/definitions/grib2/tables/31/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.18.table b/definitions/grib2/tables/31/4.2.0.18.table index 9d527a828..2f70d7a39 100644 --- a/definitions/grib2/tables/31/4.2.0.18.table +++ b/definitions/grib2/tables/31/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.19.table b/definitions/grib2/tables/31/4.2.0.19.table index 1289ba487..c63a0bf45 100644 --- a/definitions/grib2/tables/31/4.2.0.19.table +++ b/definitions/grib2/tables/31/4.2.0.19.table @@ -45,6 +45,4 @@ 43 43 Trapping layer top height (m) 44 44 Mean vertical gradient of refractivity inside trapping layer (m-1) 45 45 Minimum vertical gradient of refractivity inside trapping layer (m-1) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.190.table b/definitions/grib2/tables/31/4.2.0.190.table index dfe39840d..bd8ceca18 100644 --- a/definitions/grib2/tables/31/4.2.0.190.table +++ b/definitions/grib2/tables/31/4.2.0.190.table @@ -1,5 +1,3 @@ # Product discipline 0 - Meteorological products, parameter category 190: CCITT IA5 string 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.191.table b/definitions/grib2/tables/31/4.2.0.191.table index abc386331..62cf1bb58 100644 --- a/definitions/grib2/tables/31/4.2.0.191.table +++ b/definitions/grib2/tables/31/4.2.0.191.table @@ -3,6 +3,4 @@ 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.2.table b/definitions/grib2/tables/31/4.2.0.2.table index 690021d70..c82dba9b5 100644 --- a/definitions/grib2/tables/31/4.2.0.2.table +++ b/definitions/grib2/tables/31/4.2.0.2.table @@ -58,6 +58,4 @@ 56 56 u-component of neutral wind (m s-1) 57 57 v-component of neutral wind (m s-1) 58 58 Magnitude of turbulent surface stress (N m-2) -# 59-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.20.table b/definitions/grib2/tables/31/4.2.0.20.table index 7855a8618..19a014b78 100644 --- a/definitions/grib2/tables/31/4.2.0.20.table +++ b/definitions/grib2/tables/31/4.2.0.20.table @@ -18,7 +18,6 @@ 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) 18 18 Potential of hydrogen (pH) (pH) -# 19-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -51,7 +50,6 @@ 79 79 Column integrated northward mass flux (kg m-1 s-1) 80 80 Column integrated divergence of mass flux (kg m-2 s-1) 81 81 Column integrated net source (kg m-2 s-1) -# 82-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -64,6 +62,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.21.table b/definitions/grib2/tables/31/4.2.0.21.table index 50a2e3468..963914aa1 100644 --- a/definitions/grib2/tables/31/4.2.0.21.table +++ b/definitions/grib2/tables/31/4.2.0.21.table @@ -21,6 +21,4 @@ 19 19 Column integrated eastward heat flux (W m-1) 20 20 Column integrated northward heat flux (W m-1) 21 21 Column integrated potential+internal+latent energy (J m-2) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.3.table b/definitions/grib2/tables/31/4.2.0.3.table index 09c5eef4f..3d159f958 100644 --- a/definitions/grib2/tables/31/4.2.0.3.table +++ b/definitions/grib2/tables/31/4.2.0.3.table @@ -45,6 +45,4 @@ 43 43 Column integrated divergence of geopotential flux (W m-2) 44 44 Height of zero-degree wet-bulb temperature (m) 45 45 Height of one-degree wet-bulb temperature (m) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.4.table b/definitions/grib2/tables/31/4.2.0.4.table index 88c24ae52..94eb72373 100644 --- a/definitions/grib2/tables/31/4.2.0.4.table +++ b/definitions/grib2/tables/31/4.2.0.4.table @@ -15,7 +15,6 @@ 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) 15 15 Upward UV radiation emitted/reflected from the Earth's surface (W m-2) -# 16-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) @@ -28,6 +27,4 @@ 59 59 UV visible albedo for direct radiation, volumetric component (%) 60 60 Photosynthetically active radiation flux, clear sky (W m-2) 61 61 Direct short-wave radiation flux, clear sky (W m-2) -# 62-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.5.table b/definitions/grib2/tables/31/4.2.0.5.table index 7065106a2..f32458a27 100644 --- a/definitions/grib2/tables/31/4.2.0.5.table +++ b/definitions/grib2/tables/31/4.2.0.5.table @@ -13,6 +13,4 @@ 11 11 Near IR albedo for direct radiation, geometric component (%) 12 12 Near IR albedo for direct radiation, isotropic component (%) 13 13 Near IR albedo for direct radiation, volumetric component (%) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.6.table b/definitions/grib2/tables/31/4.2.0.6.table index d831f3474..6e960fb5a 100644 --- a/definitions/grib2/tables/31/4.2.0.6.table +++ b/definitions/grib2/tables/31/4.2.0.6.table @@ -40,12 +40,9 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) 50 50 Fog (%) 51 51 Sunshine duration fraction (Proportion) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.0.7.table b/definitions/grib2/tables/31/4.2.0.7.table index 15acb1857..7d60d9bf7 100644 --- a/definitions/grib2/tables/31/4.2.0.7.table +++ b/definitions/grib2/tables/31/4.2.0.7.table @@ -20,6 +20,4 @@ 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) 20 20 Thunderstorm intensity index (Code table 4.246) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.1.0.table b/definitions/grib2/tables/31/4.2.1.0.table index 6204a22ae..6d44d3a30 100644 --- a/definitions/grib2/tables/31/4.2.1.0.table +++ b/definitions/grib2/tables/31/4.2.1.0.table @@ -16,6 +16,4 @@ 14 14 Upstream accumulated precipitation (kg m-2) 15 15 Upstream accumulated snow melt (kg m-2) 16 16 Percolation rate (kg m-2 s-1) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.1.1.table b/definitions/grib2/tables/31/4.2.1.1.table index e3931d5e6..4cf7ecedd 100644 --- a/definitions/grib2/tables/31/4.2.1.1.table +++ b/definitions/grib2/tables/31/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.1.2.table b/definitions/grib2/tables/31/4.2.1.2.table index bd7276cfe..e52e2af9d 100644 --- a/definitions/grib2/tables/31/4.2.1.2.table +++ b/definitions/grib2/tables/31/4.2.1.2.table @@ -14,6 +14,4 @@ 12 12 Salinity (kg/kg) 13 13 Cross-sectional area of flow in channel (m2) 14 14 Snow temperature (K) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.10.0.table b/definitions/grib2/tables/31/4.2.10.0.table index e1db2d3f1..858e0fd99 100644 --- a/definitions/grib2/tables/31/4.2.10.0.table +++ b/definitions/grib2/tables/31/4.2.10.0.table @@ -92,6 +92,4 @@ 90 90 u-component of surface momentum flux into ocean (N m-2) 91 91 v-component of surface momentum flux into ocean (N m-2) 92 92 Wave turbulent energy flux into ocean (W m-2) -# 93-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.10.1.table b/definitions/grib2/tables/31/4.2.10.1.table index aeec67455..34b829e24 100644 --- a/definitions/grib2/tables/31/4.2.10.1.table +++ b/definitions/grib2/tables/31/4.2.10.1.table @@ -6,6 +6,4 @@ 4 4 Rip current occurrence probability (%) 5 5 Eastward current (m s-1) 6 6 Northward current (m s-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.10.191.table b/definitions/grib2/tables/31/4.2.10.191.table index cd4d4cde7..c6aac389a 100644 --- a/definitions/grib2/tables/31/4.2.10.191.table +++ b/definitions/grib2/tables/31/4.2.10.191.table @@ -4,6 +4,4 @@ 2 2 Reserved 3 3 Days since last observation (d) 4 4 Barotropic stream function (m3 s-1) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.10.2.table b/definitions/grib2/tables/31/4.2.10.2.table index 5612159ef..b6f2ae0ea 100644 --- a/definitions/grib2/tables/31/4.2.10.2.table +++ b/definitions/grib2/tables/31/4.2.10.2.table @@ -23,6 +23,4 @@ 21 21 Ice melt pond depth (m) 22 22 Ice melt pond volume per unit area (m3 m-2) 23 23 Sea ice fraction tendency due to parameterization (s-1) -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.10.3.table b/definitions/grib2/tables/31/4.2.10.3.table index eb699c929..d790246a1 100644 --- a/definitions/grib2/tables/31/4.2.10.3.table +++ b/definitions/grib2/tables/31/4.2.10.3.table @@ -20,6 +20,4 @@ 18 18 Heat flux correction (W m-2) 19 19 Sea surface height tendency due to parameterization (m s-1) 20 20 Deviation of sea level from mean with inverse barometer correction (m) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.10.4.table b/definitions/grib2/tables/31/4.2.10.4.table index 34d578988..ec306dee7 100644 --- a/definitions/grib2/tables/31/4.2.10.4.table +++ b/definitions/grib2/tables/31/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -39,6 +38,4 @@ 39 39 Northward sea water velocity tendency due to parameterization (m-2 s-1) 40 40 Sea water temperature tendency due to direct bias correction (K s-1) 41 41 Sea water salinity tendency due to direct bias correction (g kg-1 s-1) -# 42-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.2.0.table b/definitions/grib2/tables/31/4.2.2.0.table index cfad864d0..d89862afb 100644 --- a/definitions/grib2/tables/31/4.2.2.0.table +++ b/definitions/grib2/tables/31/4.2.2.0.table @@ -61,6 +61,4 @@ 59 59 Net ecosystem exchange flux (kg m-2 s-1) 60 60 Gross primary production flux (kg m-2 s-1) 61 61 Ecosystem respiration flux (kg m-2 s-1) -# 62-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.2.3.table b/definitions/grib2/tables/31/4.2.2.3.table index 4e2187a5b..2300f737d 100644 --- a/definitions/grib2/tables/31/4.2.2.3.table +++ b/definitions/grib2/tables/31/4.2.2.3.table @@ -29,6 +29,4 @@ 27 27 Soil depth (m) 28 28 Snow temperature (K) 29 29 Ice temperature (K) -# 30-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.2.4.table b/definitions/grib2/tables/31/4.2.2.4.table index 98aa7b6d5..9c90cd918 100644 --- a/definitions/grib2/tables/31/4.2.2.4.table +++ b/definitions/grib2/tables/31/4.2.2.4.table @@ -26,6 +26,4 @@ 24 24 Combustion completeness (%) 25 25 Fuel moisture content (kg kg-1) 26 26 Wildfire potential (as defined by the US NOAA Global Systems Laboratory) (Numeric) -# 27-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.2.5.table b/definitions/grib2/tables/31/4.2.2.5.table index 1d08dd573..7cea1b5da 100644 --- a/definitions/grib2/tables/31/4.2.2.5.table +++ b/definitions/grib2/tables/31/4.2.2.5.table @@ -1,6 +1,4 @@ # Product discipline 2 - Land surface products, parameter category 5: glaciers and inland ice 0 0 Glacier cover (Proportion) 1 1 Glacier temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.2.6.table b/definitions/grib2/tables/31/4.2.2.6.table index b0e37883a..88d98cba0 100644 --- a/definitions/grib2/tables/31/4.2.2.6.table +++ b/definitions/grib2/tables/31/4.2.2.6.table @@ -5,6 +5,4 @@ 3 3 Building height (m) 4 4 Vertical-to-horizontal area fraction (m2 m-2) 5 5 Standard deviation of building height (m) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.20.0.table b/definitions/grib2/tables/31/4.2.20.0.table index a997371d9..23ed9f577 100644 --- a/definitions/grib2/tables/31/4.2.20.0.table +++ b/definitions/grib2/tables/31/4.2.20.0.table @@ -8,6 +8,4 @@ 6 6 Normal effective temperature (K) 7 7 Standard effective temperature (K) 8 8 Physiological equivalent temperature (K) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.20.1.table b/definitions/grib2/tables/31/4.2.20.1.table index 0712cd8d1..e7c4388ea 100644 --- a/definitions/grib2/tables/31/4.2.20.1.table +++ b/definitions/grib2/tables/31/4.2.20.1.table @@ -9,6 +9,4 @@ 7 7 Anopheles vector to host ratio (Fraction) 8 8 Anopheles vector number (Number m-2) 9 9 Fraction of malarial vector reproductive habitat (Fraction) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.20.2.table b/definitions/grib2/tables/31/4.2.20.2.table index d6b9083d1..285f12a81 100644 --- a/definitions/grib2/tables/31/4.2.20.2.table +++ b/definitions/grib2/tables/31/4.2.20.2.table @@ -1,5 +1,3 @@ # Product discipline 20 - Health and socioeconomic impacts, parameter category 2: socioeconomic indicators 0 0 Population density (Person m-2) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.3.0.table b/definitions/grib2/tables/31/4.2.3.0.table index 0bec15119..49b098942 100644 --- a/definitions/grib2/tables/31/4.2.3.0.table +++ b/definitions/grib2/tables/31/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.3.1.table b/definitions/grib2/tables/31/4.2.3.1.table index df3ea372d..b300d57f0 100644 --- a/definitions/grib2/tables/31/4.2.3.1.table +++ b/definitions/grib2/tables/31/4.2.3.1.table @@ -23,14 +23,10 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (Numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (Numeric) 30 30 Reflectance in 0.4 micron channel (%) -# 31-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.0.table b/definitions/grib2/tables/31/4.2.4.0.table index 337308305..47a9b9f78 100644 --- a/definitions/grib2/tables/31/4.2.4.0.table +++ b/definitions/grib2/tables/31/4.2.4.0.table @@ -5,6 +5,4 @@ 3 3 Ion temperature (K) 4 4 Parallel temperature (K) 5 5 Perpendicular temperature (K) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.1.table b/definitions/grib2/tables/31/4.2.4.1.table index 9ec11160f..4ce057416 100644 --- a/definitions/grib2/tables/31/4.2.4.1.table +++ b/definitions/grib2/tables/31/4.2.4.1.table @@ -3,6 +3,4 @@ 1 1 1st vector component of velocity (coordinate system dependent) (m s-1) 2 2 2nd vector component of velocity (coordinate system dependent) (m s-1) 3 3 3rd vector component of velocity (coordinate system dependent) (m s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.10.table b/definitions/grib2/tables/31/4.2.4.10.table index 8f5b19e06..e539399da 100644 --- a/definitions/grib2/tables/31/4.2.4.10.table +++ b/definitions/grib2/tables/31/4.2.4.10.table @@ -7,6 +7,4 @@ 5 5 Kp (Numeric) 6 6 Equatorial disturbance storm time index (Dst) (nT) 7 7 Auroral electrojet (AE) (nT) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.2.table b/definitions/grib2/tables/31/4.2.4.2.table index b479b3361..f101c726d 100644 --- a/definitions/grib2/tables/31/4.2.4.2.table +++ b/definitions/grib2/tables/31/4.2.4.2.table @@ -13,6 +13,4 @@ 11 11 Peak height (hm) (m) 12 12 Peak density (Nm) (m-3) 13 13 Equivalent slab thickness (tau) (km) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.3.table b/definitions/grib2/tables/31/4.2.4.3.table index 3b752bbbc..83c5c4003 100644 --- a/definitions/grib2/tables/31/4.2.4.3.table +++ b/definitions/grib2/tables/31/4.2.4.3.table @@ -7,6 +7,4 @@ 5 5 1st vector component of electric field (V m-1) 6 6 2nd vector component of electric field (V m-1) 7 7 3rd vector component of electric field (V m-1) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.4.table b/definitions/grib2/tables/31/4.2.4.4.table index 694c8cacc..0dce67c17 100644 --- a/definitions/grib2/tables/31/4.2.4.4.table +++ b/definitions/grib2/tables/31/4.2.4.4.table @@ -6,6 +6,4 @@ 4 4 Heavy ion flux (differential) ((m2 s sr eV/nuc)-1) 5 5 Heavy ion flux (integral) ((m2 s sr)-1) 6 6 Cosmic ray neutron flux (h-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.5.table b/definitions/grib2/tables/31/4.2.4.5.table index 913efec6f..25c1edd37 100644 --- a/definitions/grib2/tables/31/4.2.4.5.table +++ b/definitions/grib2/tables/31/4.2.4.5.table @@ -3,6 +3,4 @@ 1 1 Phase (rad) 2 2 Frequency (Hz) 3 3 Wavelength (m) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.6.table b/definitions/grib2/tables/31/4.2.4.6.table index 6d13019a6..e7da16f42 100644 --- a/definitions/grib2/tables/31/4.2.4.6.table +++ b/definitions/grib2/tables/31/4.2.4.6.table @@ -6,6 +6,4 @@ 4 4 Solar spectral irradiance (W m-2 nm-1) 5 5 F10.7 (W m-2 Hz-1) 6 6 Solar radio emissions (W m-2 Hz-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.7.table b/definitions/grib2/tables/31/4.2.4.7.table index 38c2b17a8..0433ac516 100644 --- a/definitions/grib2/tables/31/4.2.4.7.table +++ b/definitions/grib2/tables/31/4.2.4.7.table @@ -3,6 +3,4 @@ 1 1 Disk intensity (J m-2 s-1) 2 2 Disk intensity day (J m-2 s-1) 3 3 Disk intensity night (J m-2 s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.8.table b/definitions/grib2/tables/31/4.2.4.8.table index f350f4807..f0cc8aac2 100644 --- a/definitions/grib2/tables/31/4.2.4.8.table +++ b/definitions/grib2/tables/31/4.2.4.8.table @@ -8,6 +8,4 @@ 6 6 Heliospheric radiance (W sr-1 m-2) 7 7 Thematic mask (Numeric) 8 8 Solar induced chlorophyll fluorescence (W m-2 sr-1 m-1) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.2.4.9.table b/definitions/grib2/tables/31/4.2.4.9.table index 0e83436e2..984ea4726 100644 --- a/definitions/grib2/tables/31/4.2.4.9.table +++ b/definitions/grib2/tables/31/4.2.4.9.table @@ -2,6 +2,4 @@ 0 0 Pedersen conductivity (S m-1) 1 1 Hall conductivity (S m-1) 2 2 Parallel conductivity (S m-1) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.201.table b/definitions/grib2/tables/31/4.201.table index a725e4e65..c30b081a2 100644 --- a/definitions/grib2/tables/31/4.201.table +++ b/definitions/grib2/tables/31/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.202.table b/definitions/grib2/tables/31/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/31/4.202.table +++ b/definitions/grib2/tables/31/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.203.table b/definitions/grib2/tables/31/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/31/4.203.table +++ b/definitions/grib2/tables/31/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.204.table b/definitions/grib2/tables/31/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/31/4.204.table +++ b/definitions/grib2/tables/31/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.205.table b/definitions/grib2/tables/31/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/31/4.205.table +++ b/definitions/grib2/tables/31/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.206.table b/definitions/grib2/tables/31/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/31/4.206.table +++ b/definitions/grib2/tables/31/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.207.table b/definitions/grib2/tables/31/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/31/4.207.table +++ b/definitions/grib2/tables/31/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.208.table b/definitions/grib2/tables/31/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/31/4.208.table +++ b/definitions/grib2/tables/31/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.209.table b/definitions/grib2/tables/31/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/31/4.209.table +++ b/definitions/grib2/tables/31/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.210.table b/definitions/grib2/tables/31/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/31/4.210.table +++ b/definitions/grib2/tables/31/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.211.table b/definitions/grib2/tables/31/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/31/4.211.table +++ b/definitions/grib2/tables/31/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.212.table b/definitions/grib2/tables/31/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/31/4.212.table +++ b/definitions/grib2/tables/31/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.213.table b/definitions/grib2/tables/31/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/31/4.213.table +++ b/definitions/grib2/tables/31/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.214.table b/definitions/grib2/tables/31/4.214.table index b08860ce0..c0eaeda75 100644 --- a/definitions/grib2/tables/31/4.214.table +++ b/definitions/grib2/tables/31/4.214.table @@ -5,7 +5,5 @@ 3 3 Average 4 4 Good 5 5 Excellent -# 6-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.215.table b/definitions/grib2/tables/31/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/31/4.215.table +++ b/definitions/grib2/tables/31/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.216.table b/definitions/grib2/tables/31/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/31/4.216.table +++ b/definitions/grib2/tables/31/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/31/4.217.table b/definitions/grib2/tables/31/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/31/4.217.table +++ b/definitions/grib2/tables/31/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.218.table b/definitions/grib2/tables/31/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/31/4.218.table +++ b/definitions/grib2/tables/31/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.219.table b/definitions/grib2/tables/31/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/31/4.219.table +++ b/definitions/grib2/tables/31/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.220.table b/definitions/grib2/tables/31/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/31/4.220.table +++ b/definitions/grib2/tables/31/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.221.table b/definitions/grib2/tables/31/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/31/4.221.table +++ b/definitions/grib2/tables/31/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.222.table b/definitions/grib2/tables/31/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/31/4.222.table +++ b/definitions/grib2/tables/31/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.224.table b/definitions/grib2/tables/31/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/31/4.224.table +++ b/definitions/grib2/tables/31/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/31/4.227.table b/definitions/grib2/tables/31/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/31/4.227.table +++ b/definitions/grib2/tables/31/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/31/4.228.table b/definitions/grib2/tables/31/4.228.table index 048a69f0b..88c3dd87c 100644 --- a/definitions/grib2/tables/31/4.228.table +++ b/definitions/grib2/tables/31/4.228.table @@ -4,5 +4,4 @@ 2 2 Light 3 3 Moderate 4 4 Severe -# 5-254 Reserved 255 255 Missing value diff --git a/definitions/grib2/tables/31/4.230.table b/definitions/grib2/tables/31/4.230.table index 705857e5c..3bb35c402 100644 --- a/definitions/grib2/tables/31/4.230.table +++ b/definitions/grib2/tables/31/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO* 10001 10001 Methyl peroxy radical CH3OO* 10002 10002 Methyl hydroperoxide CH3OOH @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-oxidanyloxy-3-methylbut-3-en-1-ol (2-hydroxy-1-isopropenylethylperoxy radical) HOCH2CH(OO*)C(CH3)CH2 10058 10058 (Z)-4-hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH3)CHO 10059 10059 (Z)-4-hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH3)CHCHO -# 10060-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, etc.) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -424,12 +419,10 @@ 30296 30296 Lead Pb 30297 30297 Tellurium 131 Te-131 30298 30298 Neodymium 137 Nd-137 -# 30299-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx* 60001 60001 Total inorganic and organic peroxy radicals (HOO* + ROO*) ROO* 60002 60002 Passive Ozone @@ -465,7 +458,6 @@ 60032 60032 All hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 ISOPOOH 60033 60033 Anthropogenic volatile organic compounds aVOC 60034 60034 Biomass burning volatile organic compounds bbVOC -# 60035-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -485,15 +477,12 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry @@ -503,7 +492,6 @@ 62034 62034 Rain water H2Orain 62035 62035 Cloud water H2Ocloud 62036 62036 Brown carbon dry -# 62037-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -520,15 +508,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/31/4.233.table b/definitions/grib2/tables/31/4.233.table index e4960cc1b..d9e12aec6 100644 --- a/definitions/grib2/tables/31/4.233.table +++ b/definitions/grib2/tables/31/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO* 10001 10001 Methyl peroxy radical CH3OO* 10002 10002 Methyl hydroperoxide CH3OOH @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-oxidanyloxy-3-methylbut-3-en-1-ol (2-hydroxy-1-isopropenylethylperoxy radical) HOCH2CH(OO*)C(CH3)CH2 10058 10058 (Z)-4-hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH3)CHO 10059 10059 (Z)-4-hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH3)CHCHO -# 10060-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, etc.) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -424,12 +419,10 @@ 30296 30296 Lead Pb 30297 30297 Tellurium 131 Te-131 30298 30298 Neodymium 137 Nd-137 -# 30299-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx* 60001 60001 Total inorganic and organic peroxy radicals (HOO* + ROO*) ROO* 60002 60002 Passive Ozone @@ -465,7 +458,6 @@ 60032 60032 All hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 ISOPOOH 60033 60033 Anthropogenic volatile organic compounds aVOC 60034 60034 Biomass burning volatile organic compounds bbVOC -# 60035-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -485,15 +477,12 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry @@ -503,7 +492,6 @@ 62034 62034 Rain water H2Orain 62035 62035 Cloud water H2Ocloud 62036 62036 Brown carbon dry -# 62037-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -520,15 +508,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/31/4.238.table b/definitions/grib2/tables/31/4.238.table index be5be3a90..abd570100 100644 --- a/definitions/grib2/tables/31/4.238.table +++ b/definitions/grib2/tables/31/4.238.table @@ -27,6 +27,4 @@ 25 25 Wastes (solid and water) 26 26 Road transportation 27 27 Off-road transportation -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.239.table b/definitions/grib2/tables/31/4.239.table index f095b14a0..b035c9eca 100644 --- a/definitions/grib2/tables/31/4.239.table +++ b/definitions/grib2/tables/31/4.239.table @@ -12,6 +12,4 @@ 10 10 Swamp 11 11 Upland 12 12 Wet tundra -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.240.table b/definitions/grib2/tables/31/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/31/4.240.table +++ b/definitions/grib2/tables/31/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/31/4.241.table b/definitions/grib2/tables/31/4.241.table index 5ea7f775a..4d069608c 100644 --- a/definitions/grib2/tables/31/4.241.table +++ b/definitions/grib2/tables/31/4.241.table @@ -4,6 +4,4 @@ 2 2 Snow covered 3 3 Flooded 4 4 Ice covered -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/31/4.242.table b/definitions/grib2/tables/31/4.242.table index f6865957c..8c0a8fcfb 100644 --- a/definitions/grib2/tables/31/4.242.table +++ b/definitions/grib2/tables/31/4.242.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 Land use classes according to ESA-GlobCover GCV2009 2 2 Land use classes according to European Commission-Global Land Cover Project GLC2000 -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/31/4.243.table b/definitions/grib2/tables/31/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/31/4.243.table +++ b/definitions/grib2/tables/31/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/31/4.244.table b/definitions/grib2/tables/31/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/31/4.244.table +++ b/definitions/grib2/tables/31/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.246.table b/definitions/grib2/tables/31/4.246.table index 0ca9c0c98..74c16312c 100644 --- a/definitions/grib2/tables/31/4.246.table +++ b/definitions/grib2/tables/31/4.246.table @@ -3,5 +3,4 @@ 1 1 Weak thunderstorm 2 2 Moderate thunderstorm 3 3 Severe thunderstorm -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/31/4.247.table b/definitions/grib2/tables/31/4.247.table index 6da16e396..5a55bf127 100644 --- a/definitions/grib2/tables/31/4.247.table +++ b/definitions/grib2/tables/31/4.247.table @@ -3,5 +3,4 @@ 1 1 Light precipitation 2 2 Moderate precipitation 3 3 Heavy precipitation -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/31/4.248.table b/definitions/grib2/tables/31/4.248.table index 04e365c97..ae4965d8d 100644 --- a/definitions/grib2/tables/31/4.248.table +++ b/definitions/grib2/tables/31/4.248.table @@ -1,6 +1,4 @@ # Code table 4.248 - Method used to derive data values for a given local time 0 0 Nearest forecast or analysis time to specified local time 1 1 Interpolated to be valid at the specified local time -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.249.table b/definitions/grib2/tables/31/4.249.table index bd1c944c4..93137b15b 100644 --- a/definitions/grib2/tables/31/4.249.table +++ b/definitions/grib2/tables/31/4.249.table @@ -3,5 +3,4 @@ 1 1 Showers 2 2 Intermittent 3 3 Continuous -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/31/4.250.table b/definitions/grib2/tables/31/4.250.table index a249158ca..c918ca956 100644 --- a/definitions/grib2/tables/31/4.250.table +++ b/definitions/grib2/tables/31/4.250.table @@ -9,6 +9,4 @@ 7 7 North-west 8 8 North 9 9 North-east -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.251.table b/definitions/grib2/tables/31/4.251.table index 3a78e713e..c56dc3415 100644 --- a/definitions/grib2/tables/31/4.251.table +++ b/definitions/grib2/tables/31/4.251.table @@ -2,6 +2,4 @@ 0 0 Undefined sequence 1 1 Geometric sequence 2 2 Arithmetic sequence -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.3.table b/definitions/grib2/tables/31/4.3.table index 8ae36efc3..5d9191ff8 100644 --- a/definitions/grib2/tables/31/4.3.table +++ b/definitions/grib2/tables/31/4.3.table @@ -21,6 +21,4 @@ 19 19 First guess 20 20 Analysis increment 21 21 Initialization increment for analysis -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.4.table b/definitions/grib2/tables/31/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/31/4.4.table +++ b/definitions/grib2/tables/31/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.5.table b/definitions/grib2/tables/31/4.5.table index 98103671d..2eacb0270 100644 --- a/definitions/grib2/tables/31/4.5.table +++ b/definitions/grib2/tables/31/4.5.table @@ -18,7 +18,6 @@ 16 16 Level of neutral buoyancy or equilibrium level (LNB) (-) 17 sfc Departure level of the most unstable parcel of air (MUDL) 18 sfc Departure level of a mixed layer parcel of air with specified layer depth (Pa) -# 19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) @@ -27,14 +26,12 @@ 25 25 Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity) (dBZ) 26 26 Convective cloud layer base (m) 27 27 Convective cloud layer top (m) -# 28-29 Reserved 30 30 Specified radius from the centre of the Sun (m) 31 31 Solar photosphere 32 32 Ionospheric D-region level 33 33 Ionospheric E-region level 34 34 Ionospheric F1-region level 35 35 Ionospheric F2-region level -# 36-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -51,15 +48,12 @@ 113 113 Logarithmic hybrid level 114 sol Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) 152 sol Sea-ice level (Numeric) -# 153-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -72,18 +66,14 @@ 169 169 Ocean level defined by water density (sigma-theta) difference from near-surface to level (kg m-3) 170 170 Ocean level defined by water potential temperature difference from near-surface to level (K) 171 171 Ocean level defined by vertical eddy diffusivity difference from near-surface to level (m2 s-1) -# 172-173 Reserved 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.6.table b/definitions/grib2/tables/31/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/31/4.6.table +++ b/definitions/grib2/tables/31/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.7.table b/definitions/grib2/tables/31/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/31/4.7.table +++ b/definitions/grib2/tables/31/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.8.table b/definitions/grib2/tables/31/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/31/4.8.table +++ b/definitions/grib2/tables/31/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.9.table b/definitions/grib2/tables/31/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/31/4.9.table +++ b/definitions/grib2/tables/31/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/4.91.table b/definitions/grib2/tables/31/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/31/4.91.table +++ b/definitions/grib2/tables/31/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/31/5.0.table b/definitions/grib2/tables/31/5.0.table index 5e00004b0..115b708f2 100644 --- a/definitions/grib2/tables/31/5.0.table +++ b/definitions/grib2/tables/31/5.0.table @@ -4,19 +4,12 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/31/5.1.table b/definitions/grib2/tables/31/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/31/5.1.table +++ b/definitions/grib2/tables/31/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/5.2.table b/definitions/grib2/tables/31/5.2.table index 60d557a0d..b880c47c2 100644 --- a/definitions/grib2/tables/31/5.2.table +++ b/definitions/grib2/tables/31/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/5.25.table b/definitions/grib2/tables/31/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/31/5.25.table +++ b/definitions/grib2/tables/31/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/31/5.26.table b/definitions/grib2/tables/31/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/31/5.26.table +++ b/definitions/grib2/tables/31/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/31/5.3.table b/definitions/grib2/tables/31/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/31/5.3.table +++ b/definitions/grib2/tables/31/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/5.4.table b/definitions/grib2/tables/31/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/31/5.4.table +++ b/definitions/grib2/tables/31/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/5.40.table b/definitions/grib2/tables/31/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/31/5.40.table +++ b/definitions/grib2/tables/31/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/31/5.5.table b/definitions/grib2/tables/31/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/31/5.5.table +++ b/definitions/grib2/tables/31/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/5.6.table b/definitions/grib2/tables/31/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/31/5.6.table +++ b/definitions/grib2/tables/31/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/31/5.7.table b/definitions/grib2/tables/31/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/31/5.7.table +++ b/definitions/grib2/tables/31/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/32/0.0.table b/definitions/grib2/tables/32/0.0.table index a8542e94f..a54c35af2 100644 --- a/definitions/grib2/tables/32/0.0.table +++ b/definitions/grib2/tables/32/0.0.table @@ -4,10 +4,6 @@ 2 2 Land surface products 3 3 Satellite remote sensing products (formerly Space products) 4 4 Space weather products -# 5-9 Reserved 10 10 Oceanographic products -# 11-19 Reserved 20 20 Health and socioeconomic impacts -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/1.2.table b/definitions/grib2/tables/32/1.2.table index 77f96637a..5371406eb 100644 --- a/definitions/grib2/tables/32/1.2.table +++ b/definitions/grib2/tables/32/1.2.table @@ -4,6 +4,4 @@ 2 2 Verifying time of forecast 3 3 Observation time 4 4 Local time -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/1.3.table b/definitions/grib2/tables/32/1.3.table index 88c033e42..11ca16592 100644 --- a/definitions/grib2/tables/32/1.3.table +++ b/definitions/grib2/tables/32/1.3.table @@ -13,6 +13,4 @@ 11 11 Copernicus regional reanalysis test (CARRA/CERRA) 12 12 Destination Earth 13 13 Destination Earth test -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/1.4.table b/definitions/grib2/tables/32/1.4.table index 877288c0e..f52654436 100644 --- a/definitions/grib2/tables/32/1.4.table +++ b/definitions/grib2/tables/32/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/32/1.5.table b/definitions/grib2/tables/32/1.5.table index 533111959..b47b63893 100644 --- a/definitions/grib2/tables/32/1.5.table +++ b/definitions/grib2/tables/32/1.5.table @@ -2,6 +2,4 @@ 0 0 Calendar definition 1 1 Paleontological offset 2 2 Calendar definition and paleontological offset -# 3-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/32/1.6.table b/definitions/grib2/tables/32/1.6.table index bd46899a7..c60051881 100644 --- a/definitions/grib2/tables/32/1.6.table +++ b/definitions/grib2/tables/32/1.6.table @@ -3,6 +3,4 @@ 1 1 360-day 2 2 365-day 3 3 Proleptic Gregorian -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/3.0.table b/definitions/grib2/tables/32/3.0.table index a442a06a0..e98ff778a 100644 --- a/definitions/grib2/tables/32/3.0.table +++ b/definitions/grib2/tables/32/3.0.table @@ -1,6 +1,4 @@ # Code table 3.0 - Source of grid definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/32/3.1.table b/definitions/grib2/tables/32/3.1.table index 26dc8da3f..1b155b080 100644 --- a/definitions/grib2/tables/32/3.1.table +++ b/definitions/grib2/tables/32/3.1.table @@ -5,53 +5,33 @@ 3 3 Stretched and rotated latitude/longitude 4 4 Variable resolution latitude/longitude 5 5 Variable resolution rotated latitude/longitude -# 6-9 Reserved 10 10 Mercator -# 11 Reserved 12 12 Transverse Mercator 13 13 Mercator with modelling subdomains definition -# 14-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-22 Reserved 23 23 Polar stereographic with modelling subdomains definition -# 24-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32 Reserved 33 33 Lambert conformal with modelling subdomains definition -# 34-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-60 Reserved 61 61 Spectral Mercator with modelling subdomains definition 62 62 Spectral polar stereographic with modelling subdomains definition 63 63 Spectral Lambert conformal with modelling subdomains definition -# 64-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron 101 101 General unstructured grid -# 102-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-149 Reserved 150 150 Hierarchical Equal Area isoLatitude Pixelization grid (HEALPix) -# 151-999 Reserved 1000 1000 Cross-section grid with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/32/3.10.table b/definitions/grib2/tables/32/3.10.table index 1612d05e3..6e428b39f 100644 --- a/definitions/grib2/tables/32/3.10.table +++ b/definitions/grib2/tables/32/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/32/3.11.table b/definitions/grib2/tables/32/3.11.table index 06ae10810..d06b0d752 100644 --- a/definitions/grib2/tables/32/3.11.table +++ b/definitions/grib2/tables/32/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/32/3.12.table b/definitions/grib2/tables/32/3.12.table index 7d4757100..f189d367f 100644 --- a/definitions/grib2/tables/32/3.12.table +++ b/definitions/grib2/tables/32/3.12.table @@ -1,6 +1,4 @@ # Code table 3.12 - HEALPix rhomboids or points ordering 0 0 Ring ordering 1 1 Nested ordering -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/3.13.table b/definitions/grib2/tables/32/3.13.table index aabe4fc03..a750e9b5e 100644 --- a/definitions/grib2/tables/32/3.13.table +++ b/definitions/grib2/tables/32/3.13.table @@ -5,4 +5,3 @@ 2 1 Points scan in +j (+y) direction 3 0 Adjacent points in i (x) direction are consecutive 3 1 Adjacent points in j (y) direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/32/3.15.table b/definitions/grib2/tables/32/3.15.table index 43539dbfc..8a2e9a566 100644 --- a/definitions/grib2/tables/32/3.15.table +++ b/definitions/grib2/tables/32/3.15.table @@ -1,7 +1,5 @@ # Code table 3.15 - Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/3.2.table b/definitions/grib2/tables/32/3.2.table index 13b9bf469..83495adec 100644 --- a/definitions/grib2/tables/32/3.2.table +++ b/definitions/grib2/tables/32/3.2.table @@ -11,6 +11,4 @@ 9 9 Earth represented by the Ordnance Survey Great Britain 1936 Datum, using the Airy 1830 Spheroid, the Greenwich meridian as 0 longitude, and the Newlyn datum as mean sea level, 0 height 10 10 Earth model assumed WGS84 with corrected geomagnetic coordinates (latitude and longitude) defined by Gustafsson et al., 1992 11 11 Sun assumed spherical with radius = 695 990 000 m (Allen, C.W., Astrophysical Quantities, 3rd ed.; Athlone: London, 1976) and Stonyhurst latitude and longitude system with origin at the intersection of the solar central meridian (as seen from Earth) and the solar equator (Thompson, W., Coordinate systems for solar image data, Astron. Astrophys. 2006, 449, 791-803) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/3.20.table b/definitions/grib2/tables/32/3.20.table index e2bb156ee..09a250257 100644 --- a/definitions/grib2/tables/32/3.20.table +++ b/definitions/grib2/tables/32/3.20.table @@ -1,6 +1,4 @@ # Code table 3.20 - Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/3.21.table b/definitions/grib2/tables/32/3.21.table index e001e1c8f..2bcc76806 100644 --- a/definitions/grib2/tables/32/3.21.table +++ b/definitions/grib2/tables/32/3.21.table @@ -1,8 +1,5 @@ # Code table 3.21 - Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/3.25.table b/definitions/grib2/tables/32/3.25.table index e5a754994..5b07d1893 100644 --- a/definitions/grib2/tables/32/3.25.table +++ b/definitions/grib2/tables/32/3.25.table @@ -1,10 +1,5 @@ # Code table 3.25 - Type of bi-Fourier truncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/3.3.table b/definitions/grib2/tables/32/3.3.table index 25cb46a1d..28eed2eed 100644 --- a/definitions/grib2/tables/32/3.3.table +++ b/definitions/grib2/tables/32/3.3.table @@ -1,9 +1,7 @@ # Flag table 3.3 - Resolution and component flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/32/3.7.table b/definitions/grib2/tables/32/3.7.table index 34c0de085..be544e738 100644 --- a/definitions/grib2/tables/32/3.7.table +++ b/definitions/grib2/tables/32/3.7.table @@ -1,5 +1,4 @@ # Code table 3.7 - Spectral data representation mode 0 0 Reserved 1 1 see separate doc or pdf file -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/32/3.8.table b/definitions/grib2/tables/32/3.8.table index fcd17dca8..a00556732 100644 --- a/definitions/grib2/tables/32/3.8.table +++ b/definitions/grib2/tables/32/3.8.table @@ -5,6 +5,4 @@ 3 3 Grid points at shape vertices 4 4 Grid points at centre of shapes 5 5 Grid points at midpoints of shape sides -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/3.9.table b/definitions/grib2/tables/32/3.9.table index ecd65514a..6b448a884 100644 --- a/definitions/grib2/tables/32/3.9.table +++ b/definitions/grib2/tables/32/3.9.table @@ -1,4 +1,3 @@ # Flag table 3.9 - Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/32/4.0.table b/definitions/grib2/tables/32/4.0.table index be04d32bf..336071683 100644 --- a/definitions/grib2/tables/32/4.0.table +++ b/definitions/grib2/tables/32/4.0.table @@ -15,16 +15,13 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values or other statistically processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 33 33 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 34 34 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 35 35 Satellite product with or without associated quality values -# 36-39 Reserved 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 42 42 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents @@ -35,9 +32,7 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol 49 49 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol -# 50 Reserved 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52 Reserved 53 53 Partitioned parameters at a horizontal level or in a horizontal layer at a point in time 54 54 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters 55 55 Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time @@ -49,15 +44,12 @@ 61 61 Individual ensemble reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval 62 62 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time 63 63 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles -# 64-66 Reserved 67 67 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function 68 68 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function -# 69 Reserved 70 70 Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time 71 71 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 72 72 Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 73 73 Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval -# 74-75 Reserved 76 76 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 77 77 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink 78 78 Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink @@ -101,15 +93,10 @@ 116 116 Individual ensemble forecast, control and perturbed on generalised tiles at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval 117 117 Individual large ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time 118 118 Individual large ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval -# 119-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/32/4.1.0.table b/definitions/grib2/tables/32/4.1.0.table index 7f390b679..48abfe2d8 100644 --- a/definitions/grib2/tables/32/4.1.0.table +++ b/definitions/grib2/tables/32/4.1.0.table @@ -21,8 +21,6 @@ 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents 21 21 Thermodynamic properties -# 22-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.1.1.table b/definitions/grib2/tables/32/4.1.1.table index df2c13fa8..06451e837 100644 --- a/definitions/grib2/tables/32/4.1.1.table +++ b/definitions/grib2/tables/32/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.1.10.table b/definitions/grib2/tables/32/4.1.10.table index 5a64f9652..d7bb7e672 100644 --- a/definitions/grib2/tables/32/4.1.10.table +++ b/definitions/grib2/tables/32/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Subsurface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.1.2.table b/definitions/grib2/tables/32/4.1.2.table index 9d6f690ac..8faac9a1b 100644 --- a/definitions/grib2/tables/32/4.1.2.table +++ b/definitions/grib2/tables/32/4.1.2.table @@ -6,6 +6,4 @@ 4 4 Fire weather products 5 5 Glaciers and inland ice 6 6 Urban areas -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.1.20.table b/definitions/grib2/tables/32/4.1.20.table index e651e326f..cf0f43bcb 100644 --- a/definitions/grib2/tables/32/4.1.20.table +++ b/definitions/grib2/tables/32/4.1.20.table @@ -3,6 +3,4 @@ 1 1 Epidemiology 2 2 Socioeconomic indicators 3 3 Renewable energy sector -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.1.3.table b/definitions/grib2/tables/32/4.1.3.table index 35d82f440..df3cc24e1 100644 --- a/definitions/grib2/tables/32/4.1.3.table +++ b/definitions/grib2/tables/32/4.1.3.table @@ -6,6 +6,4 @@ 4 4 Volcanic ash 5 5 Sea-surface temperature 6 6 Solar radiation -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.1.4.table b/definitions/grib2/tables/32/4.1.4.table index 7d1378729..acc38053c 100644 --- a/definitions/grib2/tables/32/4.1.4.table +++ b/definitions/grib2/tables/32/4.1.4.table @@ -10,6 +10,4 @@ 8 8 Imagery 9 9 Ion-neutral coupling 10 10 Space weather indices -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.10.table b/definitions/grib2/tables/32/4.10.table index b66560e8d..a51b45393 100644 --- a/definitions/grib2/tables/32/4.10.table +++ b/definitions/grib2/tables/32/4.10.table @@ -12,9 +12,6 @@ 10 10 Standardized anomaly 11 11 Summation 12 12 Return period -# 13-99 Reserved 100 100 Severity 101 101 Mode -# 102-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/32/4.100.table b/definitions/grib2/tables/32/4.100.table index a24770d68..24f8c3417 100644 --- a/definitions/grib2/tables/32/4.100.table +++ b/definitions/grib2/tables/32/4.100.table @@ -5,6 +5,4 @@ 3 3 Reanalysis 4 4 Climate projection 5 5 Gridded observations -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.101.table b/definitions/grib2/tables/32/4.101.table index e65f87826..35bb860dd 100644 --- a/definitions/grib2/tables/32/4.101.table +++ b/definitions/grib2/tables/32/4.101.table @@ -2,9 +2,6 @@ 0 0 Anomaly 1 1 Standardized anomaly 2 2 Significance (Wilcoxon-Mann-Whitney) -# 3-19 Reserved 20 20 Extreme Forecast Index (EFI) 21 21 Shift of Tails (SOT) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.102.table b/definitions/grib2/tables/32/4.102.table index ec8edebf5..e16eb597d 100644 --- a/definitions/grib2/tables/32/4.102.table +++ b/definitions/grib2/tables/32/4.102.table @@ -4,8 +4,5 @@ 2 2 Maximum 3 3 Minimum 4 4 Median -# 5-19 Reserved 20 20 Model Climate -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.11.table b/definitions/grib2/tables/32/4.11.table index 01cc81303..75f7eae8c 100644 --- a/definitions/grib2/tables/32/4.11.table +++ b/definitions/grib2/tables/32/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.12.table b/definitions/grib2/tables/32/4.12.table index d42b47e96..00f5d4a8a 100644 --- a/definitions/grib2/tables/32/4.12.table +++ b/definitions/grib2/tables/32/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.13.table b/definitions/grib2/tables/32/4.13.table index a0e28eac8..d5e2b2e3f 100644 --- a/definitions/grib2/tables/32/4.13.table +++ b/definitions/grib2/tables/32/4.13.table @@ -1,6 +1,4 @@ # Code table 4.13 - Quality control indicator 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.14.table b/definitions/grib2/tables/32/4.14.table index d525b23b3..f2d86d25c 100644 --- a/definitions/grib2/tables/32/4.14.table +++ b/definitions/grib2/tables/32/4.14.table @@ -1,6 +1,4 @@ # Code table 4.14 - Clutter filter indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.15.table b/definitions/grib2/tables/32/4.15.table index 7adddedb6..47c4ab6b5 100644 --- a/definitions/grib2/tables/32/4.15.table +++ b/definitions/grib2/tables/32/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.16.table b/definitions/grib2/tables/32/4.16.table index 5b9f6fd73..2e0c69752 100644 --- a/definitions/grib2/tables/32/4.16.table +++ b/definitions/grib2/tables/32/4.16.table @@ -5,6 +5,4 @@ 3 3 Standard deviation 4 4 Random error 5 5 Probability -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.0.table b/definitions/grib2/tables/32/4.2.0.0.table index e4912c9d6..835789797 100644 --- a/definitions/grib2/tables/32/4.2.0.0.table +++ b/definitions/grib2/tables/32/4.2.0.0.table @@ -32,6 +32,4 @@ 30 30 Latent heat net flux due to evaporation (W m-2) 31 31 Latent heat net flux due to sublimation (W m-2) 32 32 Wet-bulb potential temperature (K) -# 33-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.1.table b/definitions/grib2/tables/32/4.2.0.1.table index 2405606cb..6f8ebd525 100644 --- a/definitions/grib2/tables/32/4.2.0.1.table +++ b/definitions/grib2/tables/32/4.2.0.1.table @@ -88,7 +88,6 @@ 86 86 Specific snow water content (kg/kg) 87 87 Stratiform precipitation rate (kg m-2 s-1) 88 88 Categorical convective precipitation (Code table 4.222) -# 89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) @@ -169,6 +168,4 @@ 167 167 Total column supercooled liquid water (kg m-2) 168 168 Saturation specific humidity with respect to water (kg m-3) 169 169 Total column integrated saturation specific humidity with respect to water (kg m-2) -# 170-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.13.table b/definitions/grib2/tables/32/4.2.0.13.table index 4c1253b96..6e05fe29c 100644 --- a/definitions/grib2/tables/32/4.2.0.13.table +++ b/definitions/grib2/tables/32/4.2.0.13.table @@ -1,5 +1,3 @@ # Product discipline 0 - Meteorological products, parameter category 13: aerosols 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.14.table b/definitions/grib2/tables/32/4.2.0.14.table index df0f721ea..78b9771d9 100644 --- a/definitions/grib2/tables/32/4.2.0.14.table +++ b/definitions/grib2/tables/32/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.15.table b/definitions/grib2/tables/32/4.2.0.15.table index ac49ad402..047a903f7 100644 --- a/definitions/grib2/tables/32/4.2.0.15.table +++ b/definitions/grib2/tables/32/4.2.0.15.table @@ -16,6 +16,4 @@ 14 14 Reflectivity of hail (dB) 15 15 Hybrid scan reflectivity (dB) 16 16 Hybrid scan reflectivity height (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.16.table b/definitions/grib2/tables/32/4.2.0.16.table index 111e6d986..6fa720bf9 100644 --- a/definitions/grib2/tables/32/4.2.0.16.table +++ b/definitions/grib2/tables/32/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.18.table b/definitions/grib2/tables/32/4.2.0.18.table index 9d527a828..2f70d7a39 100644 --- a/definitions/grib2/tables/32/4.2.0.18.table +++ b/definitions/grib2/tables/32/4.2.0.18.table @@ -18,6 +18,4 @@ 16 16 Height of maximum air concentration (m) 17 17 Column-integrated air concentration (Bq m-2) 18 18 Column-averaged air concentration in layer (Bq m-3) -# 19-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.19.table b/definitions/grib2/tables/32/4.2.0.19.table index 680027b38..b4b4384d1 100644 --- a/definitions/grib2/tables/32/4.2.0.19.table +++ b/definitions/grib2/tables/32/4.2.0.19.table @@ -49,6 +49,4 @@ 47 47 Global irradiance on tilted surfaces (W m-2) 48 48 Top of persistent contrails (m) 49 49 Base of persistent contrails (m) -# 50-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.190.table b/definitions/grib2/tables/32/4.2.0.190.table index dfe39840d..bd8ceca18 100644 --- a/definitions/grib2/tables/32/4.2.0.190.table +++ b/definitions/grib2/tables/32/4.2.0.190.table @@ -1,5 +1,3 @@ # Product discipline 0 - Meteorological products, parameter category 190: CCITT IA5 string 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.191.table b/definitions/grib2/tables/32/4.2.0.191.table index 5cf93985f..89bf5ee7c 100644 --- a/definitions/grib2/tables/32/4.2.0.191.table +++ b/definitions/grib2/tables/32/4.2.0.191.table @@ -4,6 +4,4 @@ 2 2 Geographical longitude (deg E) 3 3 Days since last observation (d) 4 4 Tropical cyclone density track (Numeric) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.2.table b/definitions/grib2/tables/32/4.2.0.2.table index bd6e32851..f1a8c58a0 100644 --- a/definitions/grib2/tables/32/4.2.0.2.table +++ b/definitions/grib2/tables/32/4.2.0.2.table @@ -67,6 +67,4 @@ 65 65 Northward turbulent surface stress due to orographic form drag (N m-2) 66 66 Eastward turbulent surface stress due to surface roughness (N m-2) 67 67 Northward turbulent surface stress due to surface roughness (N m-2) -# 68-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.20.table b/definitions/grib2/tables/32/4.2.0.20.table index 7855a8618..19a014b78 100644 --- a/definitions/grib2/tables/32/4.2.0.20.table +++ b/definitions/grib2/tables/32/4.2.0.20.table @@ -18,7 +18,6 @@ 16 16 Mass mixing ratio with respect to dry air (kg/kg) 17 17 Mass mixing ratio with respect to wet air (kg/kg) 18 18 Potential of hydrogen (pH) (pH) -# 19-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -51,7 +50,6 @@ 79 79 Column integrated northward mass flux (kg m-1 s-1) 80 80 Column integrated divergence of mass flux (kg m-2 s-1) 81 81 Column integrated net source (kg m-2 s-1) -# 82-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -64,6 +62,4 @@ 109 109 Aerosol lidar extinction from satellite (/m) 110 110 Aerosol lidar extinction from the ground (/m) 111 111 Angstrom exponent (Numeric) -# 112-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.21.table b/definitions/grib2/tables/32/4.2.0.21.table index 05646e1a6..4084663ef 100644 --- a/definitions/grib2/tables/32/4.2.0.21.table +++ b/definitions/grib2/tables/32/4.2.0.21.table @@ -22,6 +22,4 @@ 20 20 Column integrated northward heat flux (W m-1) 21 21 Column integrated potential+internal+latent energy (J m-2) 22 22 Eady growth rate (day-1) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.3.table b/definitions/grib2/tables/32/4.2.0.3.table index d685de2ef..e94cb5e9f 100644 --- a/definitions/grib2/tables/32/4.2.0.3.table +++ b/definitions/grib2/tables/32/4.2.0.3.table @@ -46,6 +46,4 @@ 44 44 Height of zero-degree wet-bulb temperature (m) 45 45 Height of one-degree wet-bulb temperature (m) 46 46 Pressure departure from hydrostatic state (Pa) -# 47-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.4.table b/definitions/grib2/tables/32/4.2.0.4.table index 88c24ae52..94eb72373 100644 --- a/definitions/grib2/tables/32/4.2.0.4.table +++ b/definitions/grib2/tables/32/4.2.0.4.table @@ -15,7 +15,6 @@ 13 13 Direct short-wave radiation flux (W m-2) 14 14 Diffuse short-wave radiation flux (W m-2) 15 15 Upward UV radiation emitted/reflected from the Earth's surface (W m-2) -# 16-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) 52 52 Downward short-wave radiation flux, clear sky (W m-2) @@ -28,6 +27,4 @@ 59 59 UV visible albedo for direct radiation, volumetric component (%) 60 60 Photosynthetically active radiation flux, clear sky (W m-2) 61 61 Direct short-wave radiation flux, clear sky (W m-2) -# 62-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.5.table b/definitions/grib2/tables/32/4.2.0.5.table index 7065106a2..f32458a27 100644 --- a/definitions/grib2/tables/32/4.2.0.5.table +++ b/definitions/grib2/tables/32/4.2.0.5.table @@ -13,6 +13,4 @@ 11 11 Near IR albedo for direct radiation, geometric component (%) 12 12 Near IR albedo for direct radiation, isotropic component (%) 13 13 Near IR albedo for direct radiation, volumetric component (%) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.6.table b/definitions/grib2/tables/32/4.2.0.6.table index d831f3474..6e960fb5a 100644 --- a/definitions/grib2/tables/32/4.2.0.6.table +++ b/definitions/grib2/tables/32/4.2.0.6.table @@ -40,12 +40,9 @@ 38 38 Mass density of cloud droplets (kg m-3) 39 39 Mass density of cloud ice (kg m-3) 40 40 Mass density of convective cloud water droplets (kg m-3) -# 41-46 Reserved 47 47 Volume fraction of cloud water droplets (Numeric) 48 48 Volume fraction of cloud ice particles (Numeric) 49 49 Volume fraction of cloud (ice and/or water) (Numeric) 50 50 Fog (%) 51 51 Sunshine duration fraction (Proportion) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.0.7.table b/definitions/grib2/tables/32/4.2.0.7.table index 15acb1857..7d60d9bf7 100644 --- a/definitions/grib2/tables/32/4.2.0.7.table +++ b/definitions/grib2/tables/32/4.2.0.7.table @@ -20,6 +20,4 @@ 18 18 Flux Richardson number (Numeric) 19 19 Convective available potential energy - shear (m2 s-2) 20 20 Thunderstorm intensity index (Code table 4.246) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.1.0.table b/definitions/grib2/tables/32/4.2.1.0.table index 49056313b..a118d4193 100644 --- a/definitions/grib2/tables/32/4.2.1.0.table +++ b/definitions/grib2/tables/32/4.2.1.0.table @@ -19,6 +19,4 @@ 17 17 River outflow of water (m3 s-1) 18 18 Floodplain outflow of water (m3 s-1) 19 19 Floodpath outflow of water (m3 s-1) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.1.1.table b/definitions/grib2/tables/32/4.2.1.1.table index e3931d5e6..4cf7ecedd 100644 --- a/definitions/grib2/tables/32/4.2.1.1.table +++ b/definitions/grib2/tables/32/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.1.2.table b/definitions/grib2/tables/32/4.2.1.2.table index 7c3773afd..b4ff7189a 100644 --- a/definitions/grib2/tables/32/4.2.1.2.table +++ b/definitions/grib2/tables/32/4.2.1.2.table @@ -16,6 +16,4 @@ 14 14 Snow temperature (K) 15 15 Lake depth (m) 16 16 River depth (m) -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.10.0.table b/definitions/grib2/tables/32/4.2.10.0.table index 0c9be88f6..69969130d 100644 --- a/definitions/grib2/tables/32/4.2.10.0.table +++ b/definitions/grib2/tables/32/4.2.10.0.table @@ -97,6 +97,4 @@ 95 95 Time domain maximum individual wave height (m) 96 96 Space time maximum individual crest height (m) 97 97 Space time maximum individual wave height (m) -# 98-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.10.1.table b/definitions/grib2/tables/32/4.2.10.1.table index aeec67455..34b829e24 100644 --- a/definitions/grib2/tables/32/4.2.10.1.table +++ b/definitions/grib2/tables/32/4.2.10.1.table @@ -6,6 +6,4 @@ 4 4 Rip current occurrence probability (%) 5 5 Eastward current (m s-1) 6 6 Northward current (m s-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.10.191.table b/definitions/grib2/tables/32/4.2.10.191.table index cd4d4cde7..c6aac389a 100644 --- a/definitions/grib2/tables/32/4.2.10.191.table +++ b/definitions/grib2/tables/32/4.2.10.191.table @@ -4,6 +4,4 @@ 2 2 Reserved 3 3 Days since last observation (d) 4 4 Barotropic stream function (m3 s-1) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.10.2.table b/definitions/grib2/tables/32/4.2.10.2.table index 6200dffca..a84e569ca 100644 --- a/definitions/grib2/tables/32/4.2.10.2.table +++ b/definitions/grib2/tables/32/4.2.10.2.table @@ -25,6 +25,4 @@ 23 23 Sea ice fraction tendency due to parameterization (s-1) 24 24 x-component of ice drift (m s-1) 25 25 y-component of ice drift (m s-1) -# 26-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.10.3.table b/definitions/grib2/tables/32/4.2.10.3.table index 6c4277c8e..4c2104066 100644 --- a/definitions/grib2/tables/32/4.2.10.3.table +++ b/definitions/grib2/tables/32/4.2.10.3.table @@ -21,6 +21,4 @@ 19 19 Sea surface height tendency due to parameterization (m s-1) 20 20 Deviation of sea level from mean with inverse barometer correction (m) 21 21 Salinity (kg kg-1) -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.10.4.table b/definitions/grib2/tables/32/4.2.10.4.table index 0b9ef0956..30b75352e 100644 --- a/definitions/grib2/tables/32/4.2.10.4.table +++ b/definitions/grib2/tables/32/4.2.10.4.table @@ -7,7 +7,6 @@ 5 5 Ocean vertical salt diffusivity (m2/s) 6 6 Ocean vertical momentum diffusivity (m2/s) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (/m) @@ -49,6 +48,4 @@ 49 49 Sea water column integrated zonal mass transport (kg m-1 s-1) 50 50 Sea water column integrated practical salinity (g kg-1 m) 51 51 Sea water column integrated salinity (kg kg-1 m) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.2.0.table b/definitions/grib2/tables/32/4.2.2.0.table index 8daeafd85..24dc27d8f 100644 --- a/definitions/grib2/tables/32/4.2.2.0.table +++ b/definitions/grib2/tables/32/4.2.2.0.table @@ -63,6 +63,4 @@ 61 61 Ecosystem respiration flux (kg m-2 s-1) 62 62 Emissivity (Proportion) 63 63 Canopy air temperature (K) -# 64-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.2.3.table b/definitions/grib2/tables/32/4.2.2.3.table index ad6b618f2..e4920d9c8 100644 --- a/definitions/grib2/tables/32/4.2.2.3.table +++ b/definitions/grib2/tables/32/4.2.2.3.table @@ -30,6 +30,4 @@ 28 28 Snow temperature (K) 29 29 Ice temperature (K) 30 30 Soil wetness index (Numeric) -# 31-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.2.4.table b/definitions/grib2/tables/32/4.2.2.4.table index d5c1d641c..f53e6d25d 100644 --- a/definitions/grib2/tables/32/4.2.2.4.table +++ b/definitions/grib2/tables/32/4.2.2.4.table @@ -35,6 +35,4 @@ 33 33 Dense dead leaf moisture content (kg kg-1) 34 34 Fine dead wood moisture content (kg kg-1) 35 35 Dense dead wood moisture content (kg kg-1) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.2.5.table b/definitions/grib2/tables/32/4.2.2.5.table index 1d08dd573..7cea1b5da 100644 --- a/definitions/grib2/tables/32/4.2.2.5.table +++ b/definitions/grib2/tables/32/4.2.2.5.table @@ -1,6 +1,4 @@ # Product discipline 2 - Land surface products, parameter category 5: glaciers and inland ice 0 0 Glacier cover (Proportion) 1 1 Glacier temperature (K) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.2.6.table b/definitions/grib2/tables/32/4.2.2.6.table index 7a7712af0..58663a7d8 100644 --- a/definitions/grib2/tables/32/4.2.2.6.table +++ b/definitions/grib2/tables/32/4.2.2.6.table @@ -8,6 +8,4 @@ 6 6 Distance downward from roof surface (m) 7 7 Distance inward from outer wall surface (m) 8 8 Distance downward from road surface (m) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.20.0.table b/definitions/grib2/tables/32/4.2.20.0.table index a997371d9..23ed9f577 100644 --- a/definitions/grib2/tables/32/4.2.20.0.table +++ b/definitions/grib2/tables/32/4.2.20.0.table @@ -8,6 +8,4 @@ 6 6 Normal effective temperature (K) 7 7 Standard effective temperature (K) 8 8 Physiological equivalent temperature (K) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.20.1.table b/definitions/grib2/tables/32/4.2.20.1.table index 0712cd8d1..e7c4388ea 100644 --- a/definitions/grib2/tables/32/4.2.20.1.table +++ b/definitions/grib2/tables/32/4.2.20.1.table @@ -9,6 +9,4 @@ 7 7 Anopheles vector to host ratio (Fraction) 8 8 Anopheles vector number (Number m-2) 9 9 Fraction of malarial vector reproductive habitat (Fraction) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.20.2.table b/definitions/grib2/tables/32/4.2.20.2.table index d6b9083d1..285f12a81 100644 --- a/definitions/grib2/tables/32/4.2.20.2.table +++ b/definitions/grib2/tables/32/4.2.20.2.table @@ -1,5 +1,3 @@ # Product discipline 20 - Health and socioeconomic impacts, parameter category 2: socioeconomic indicators 0 0 Population density (Person m-2) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.20.3.table b/definitions/grib2/tables/32/4.2.20.3.table index 9c2f80cfa..efa184792 100644 --- a/definitions/grib2/tables/32/4.2.20.3.table +++ b/definitions/grib2/tables/32/4.2.20.3.table @@ -9,6 +9,4 @@ 7 7 Solar non-photovoltaic (PV) power production rate (W) 8 8 Concentrated solar power (CSP) power capacity (W) 9 9 Concentrated solar power (CSP) power production rate (W) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.3.0.table b/definitions/grib2/tables/32/4.2.3.0.table index 0bec15119..49b098942 100644 --- a/definitions/grib2/tables/32/4.2.3.0.table +++ b/definitions/grib2/tables/32/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.3.1.table b/definitions/grib2/tables/32/4.2.3.1.table index 2aec33b42..8af4b62f6 100644 --- a/definitions/grib2/tables/32/4.2.3.1.table +++ b/definitions/grib2/tables/32/4.2.3.1.table @@ -23,16 +23,12 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-26 Reserved 27 27 Bidirectional reflectance factor (Numeric) 28 28 Brightness temperature (K) 29 29 Scaled radiance (Numeric) 30 30 Reflectance in 0.4 micron channel (%) 31 31 Cloudy reflectance (%) 32 32 Clear reflectance (%) -# 33-97 Reserved 98 98 Correlation coefficient between MPE rain-rates for the co-located IR data and the microwave data rain-rates (Numeric) 99 99 Standard deviation between MPE rain-rates for the co-located IR data and the microwave data rain-rates (kg m-2 s-1) -# 100-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.0.table b/definitions/grib2/tables/32/4.2.4.0.table index 337308305..47a9b9f78 100644 --- a/definitions/grib2/tables/32/4.2.4.0.table +++ b/definitions/grib2/tables/32/4.2.4.0.table @@ -5,6 +5,4 @@ 3 3 Ion temperature (K) 4 4 Parallel temperature (K) 5 5 Perpendicular temperature (K) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.1.table b/definitions/grib2/tables/32/4.2.4.1.table index 9ec11160f..4ce057416 100644 --- a/definitions/grib2/tables/32/4.2.4.1.table +++ b/definitions/grib2/tables/32/4.2.4.1.table @@ -3,6 +3,4 @@ 1 1 1st vector component of velocity (coordinate system dependent) (m s-1) 2 2 2nd vector component of velocity (coordinate system dependent) (m s-1) 3 3 3rd vector component of velocity (coordinate system dependent) (m s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.10.table b/definitions/grib2/tables/32/4.2.4.10.table index 8f5b19e06..e539399da 100644 --- a/definitions/grib2/tables/32/4.2.4.10.table +++ b/definitions/grib2/tables/32/4.2.4.10.table @@ -7,6 +7,4 @@ 5 5 Kp (Numeric) 6 6 Equatorial disturbance storm time index (Dst) (nT) 7 7 Auroral electrojet (AE) (nT) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.2.table b/definitions/grib2/tables/32/4.2.4.2.table index b479b3361..f101c726d 100644 --- a/definitions/grib2/tables/32/4.2.4.2.table +++ b/definitions/grib2/tables/32/4.2.4.2.table @@ -13,6 +13,4 @@ 11 11 Peak height (hm) (m) 12 12 Peak density (Nm) (m-3) 13 13 Equivalent slab thickness (tau) (km) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.3.table b/definitions/grib2/tables/32/4.2.4.3.table index 3b752bbbc..83c5c4003 100644 --- a/definitions/grib2/tables/32/4.2.4.3.table +++ b/definitions/grib2/tables/32/4.2.4.3.table @@ -7,6 +7,4 @@ 5 5 1st vector component of electric field (V m-1) 6 6 2nd vector component of electric field (V m-1) 7 7 3rd vector component of electric field (V m-1) -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.4.table b/definitions/grib2/tables/32/4.2.4.4.table index 694c8cacc..0dce67c17 100644 --- a/definitions/grib2/tables/32/4.2.4.4.table +++ b/definitions/grib2/tables/32/4.2.4.4.table @@ -6,6 +6,4 @@ 4 4 Heavy ion flux (differential) ((m2 s sr eV/nuc)-1) 5 5 Heavy ion flux (integral) ((m2 s sr)-1) 6 6 Cosmic ray neutron flux (h-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.5.table b/definitions/grib2/tables/32/4.2.4.5.table index 913efec6f..25c1edd37 100644 --- a/definitions/grib2/tables/32/4.2.4.5.table +++ b/definitions/grib2/tables/32/4.2.4.5.table @@ -3,6 +3,4 @@ 1 1 Phase (rad) 2 2 Frequency (Hz) 3 3 Wavelength (m) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.6.table b/definitions/grib2/tables/32/4.2.4.6.table index 6d13019a6..e7da16f42 100644 --- a/definitions/grib2/tables/32/4.2.4.6.table +++ b/definitions/grib2/tables/32/4.2.4.6.table @@ -6,6 +6,4 @@ 4 4 Solar spectral irradiance (W m-2 nm-1) 5 5 F10.7 (W m-2 Hz-1) 6 6 Solar radio emissions (W m-2 Hz-1) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.7.table b/definitions/grib2/tables/32/4.2.4.7.table index 38c2b17a8..0433ac516 100644 --- a/definitions/grib2/tables/32/4.2.4.7.table +++ b/definitions/grib2/tables/32/4.2.4.7.table @@ -3,6 +3,4 @@ 1 1 Disk intensity (J m-2 s-1) 2 2 Disk intensity day (J m-2 s-1) 3 3 Disk intensity night (J m-2 s-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.8.table b/definitions/grib2/tables/32/4.2.4.8.table index f350f4807..f0cc8aac2 100644 --- a/definitions/grib2/tables/32/4.2.4.8.table +++ b/definitions/grib2/tables/32/4.2.4.8.table @@ -8,6 +8,4 @@ 6 6 Heliospheric radiance (W sr-1 m-2) 7 7 Thematic mask (Numeric) 8 8 Solar induced chlorophyll fluorescence (W m-2 sr-1 m-1) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.2.4.9.table b/definitions/grib2/tables/32/4.2.4.9.table index 0e83436e2..984ea4726 100644 --- a/definitions/grib2/tables/32/4.2.4.9.table +++ b/definitions/grib2/tables/32/4.2.4.9.table @@ -2,6 +2,4 @@ 0 0 Pedersen conductivity (S m-1) 1 1 Hall conductivity (S m-1) 2 2 Parallel conductivity (S m-1) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.201.table b/definitions/grib2/tables/32/4.201.table index a725e4e65..c30b081a2 100644 --- a/definitions/grib2/tables/32/4.201.table +++ b/definitions/grib2/tables/32/4.201.table @@ -12,6 +12,4 @@ 10 10 Hail 11 11 Drizzle 12 12 Freezing drizzle -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.202.table b/definitions/grib2/tables/32/4.202.table index 7f3c8f6cf..5ff2c4bd7 100644 --- a/definitions/grib2/tables/32/4.202.table +++ b/definitions/grib2/tables/32/4.202.table @@ -1,4 +1,2 @@ # Code table 4.202 - Precipitable water category -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.203.table b/definitions/grib2/tables/32/4.203.table index cf5eb6bdc..3a06458af 100644 --- a/definitions/grib2/tables/32/4.203.table +++ b/definitions/grib2/tables/32/4.203.table @@ -20,7 +20,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.204.table b/definitions/grib2/tables/32/4.204.table index 8e0be1f8c..233414cc5 100644 --- a/definitions/grib2/tables/32/4.204.table +++ b/definitions/grib2/tables/32/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (6-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.205.table b/definitions/grib2/tables/32/4.205.table index c40c7f47b..4f9e22ebd 100644 --- a/definitions/grib2/tables/32/4.205.table +++ b/definitions/grib2/tables/32/4.205.table @@ -1,6 +1,4 @@ # Code table 4.205 - Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.206.table b/definitions/grib2/tables/32/4.206.table index 76472c261..0e9b088ae 100644 --- a/definitions/grib2/tables/32/4.206.table +++ b/definitions/grib2/tables/32/4.206.table @@ -1,6 +1,4 @@ # Code table 4.206 - Volcanic ash 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.207.table b/definitions/grib2/tables/32/4.207.table index b6392fca0..56cc2388b 100644 --- a/definitions/grib2/tables/32/4.207.table +++ b/definitions/grib2/tables/32/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.208.table b/definitions/grib2/tables/32/4.208.table index 4361d38c0..175f90df1 100644 --- a/definitions/grib2/tables/32/4.208.table +++ b/definitions/grib2/tables/32/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.209.table b/definitions/grib2/tables/32/4.209.table index 39ea549ac..5b7dd4854 100644 --- a/definitions/grib2/tables/32/4.209.table +++ b/definitions/grib2/tables/32/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.210.table b/definitions/grib2/tables/32/4.210.table index 791878469..102bccfba 100644 --- a/definitions/grib2/tables/32/4.210.table +++ b/definitions/grib2/tables/32/4.210.table @@ -1,6 +1,4 @@ # Code table 4.210 - Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.211.table b/definitions/grib2/tables/32/4.211.table index 2a28a84d9..9d7118b25 100644 --- a/definitions/grib2/tables/32/4.211.table +++ b/definitions/grib2/tables/32/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.212.table b/definitions/grib2/tables/32/4.212.table index 6a3dcf88c..b833fd892 100644 --- a/definitions/grib2/tables/32/4.212.table +++ b/definitions/grib2/tables/32/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.213.table b/definitions/grib2/tables/32/4.213.table index 68d627af6..3ea22676b 100644 --- a/definitions/grib2/tables/32/4.213.table +++ b/definitions/grib2/tables/32/4.213.table @@ -11,6 +11,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.214.table b/definitions/grib2/tables/32/4.214.table index b08860ce0..c0eaeda75 100644 --- a/definitions/grib2/tables/32/4.214.table +++ b/definitions/grib2/tables/32/4.214.table @@ -5,7 +5,5 @@ 3 3 Average 4 4 Good 5 5 Excellent -# 6-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.215.table b/definitions/grib2/tables/32/4.215.table index 7888772d5..e521eb298 100644 --- a/definitions/grib2/tables/32/4.215.table +++ b/definitions/grib2/tables/32/4.215.table @@ -1,9 +1,5 @@ # Code table 4.215 - Remotely sensed snow coverage -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.216.table b/definitions/grib2/tables/32/4.216.table index b51b358f4..62efb99c2 100644 --- a/definitions/grib2/tables/32/4.216.table +++ b/definitions/grib2/tables/32/4.216.table @@ -1,5 +1,4 @@ # Code table 4.216 - Elevation of snow-covered terrain # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/32/4.217.table b/definitions/grib2/tables/32/4.217.table index a700410d5..186ea8760 100644 --- a/definitions/grib2/tables/32/4.217.table +++ b/definitions/grib2/tables/32/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.218.table b/definitions/grib2/tables/32/4.218.table index a13debf16..7f9f79a60 100644 --- a/definitions/grib2/tables/32/4.218.table +++ b/definitions/grib2/tables/32/4.218.table @@ -24,7 +24,6 @@ 22 22 Optically thin ice cloud 23 23 Optically thick ice cloud 24 24 Multilayered cloud -# 25-96 Reserved 97 97 Snow/ice on land 98 98 Snow/ice on water 99 99 Sun-glint @@ -41,6 +40,4 @@ 110 110 Unknown cloud type 111 111 Single layer water cloud 112 112 Single layer ice cloud -# 113-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.219.table b/definitions/grib2/tables/32/4.219.table index 9979f50ad..937fc8a41 100644 --- a/definitions/grib2/tables/32/4.219.table +++ b/definitions/grib2/tables/32/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.220.table b/definitions/grib2/tables/32/4.220.table index 88e869e42..837f61991 100644 --- a/definitions/grib2/tables/32/4.220.table +++ b/definitions/grib2/tables/32/4.220.table @@ -1,6 +1,4 @@ # Code table 4.220 - Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.221.table b/definitions/grib2/tables/32/4.221.table index 011cc3518..9988c37c7 100644 --- a/definitions/grib2/tables/32/4.221.table +++ b/definitions/grib2/tables/32/4.221.table @@ -1,6 +1,4 @@ # Code table 4.221 - Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.222.table b/definitions/grib2/tables/32/4.222.table index 558d947ac..b00781400 100644 --- a/definitions/grib2/tables/32/4.222.table +++ b/definitions/grib2/tables/32/4.222.table @@ -1,6 +1,4 @@ # Code table 4.222 - Categorical result 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.224.table b/definitions/grib2/tables/32/4.224.table index 014f56e23..6496a4db1 100644 --- a/definitions/grib2/tables/32/4.224.table +++ b/definitions/grib2/tables/32/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/32/4.227.table b/definitions/grib2/tables/32/4.227.table index 48c3b7633..e1e762a18 100644 --- a/definitions/grib2/tables/32/4.227.table +++ b/definitions/grib2/tables/32/4.227.table @@ -4,6 +4,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/32/4.228.table b/definitions/grib2/tables/32/4.228.table index 048a69f0b..88c3dd87c 100644 --- a/definitions/grib2/tables/32/4.228.table +++ b/definitions/grib2/tables/32/4.228.table @@ -4,5 +4,4 @@ 2 2 Light 3 3 Moderate 4 4 Severe -# 5-254 Reserved 255 255 Missing value diff --git a/definitions/grib2/tables/32/4.230.table b/definitions/grib2/tables/32/4.230.table index 705857e5c..3bb35c402 100644 --- a/definitions/grib2/tables/32/4.230.table +++ b/definitions/grib2/tables/32/4.230.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO* 10001 10001 Methyl peroxy radical CH3OO* 10002 10002 Methyl hydroperoxide CH3OOH @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-oxidanyloxy-3-methylbut-3-en-1-ol (2-hydroxy-1-isopropenylethylperoxy radical) HOCH2CH(OO*)C(CH3)CH2 10058 10058 (Z)-4-hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH3)CHO 10059 10059 (Z)-4-hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH3)CHCHO -# 10060-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, etc.) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -424,12 +419,10 @@ 30296 30296 Lead Pb 30297 30297 Tellurium 131 Te-131 30298 30298 Neodymium 137 Nd-137 -# 30299-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx* 60001 60001 Total inorganic and organic peroxy radicals (HOO* + ROO*) ROO* 60002 60002 Passive Ozone @@ -465,7 +458,6 @@ 60032 60032 All hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 ISOPOOH 60033 60033 Anthropogenic volatile organic compounds aVOC 60034 60034 Biomass burning volatile organic compounds bbVOC -# 60035-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -485,15 +477,12 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry @@ -503,7 +492,6 @@ 62034 62034 Rain water H2Orain 62035 62035 Cloud water H2Ocloud 62036 62036 Brown carbon dry -# 62037-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -520,15 +508,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/32/4.233.table b/definitions/grib2/tables/32/4.233.table index e4960cc1b..d9e12aec6 100644 --- a/definitions/grib2/tables/32/4.233.table +++ b/definitions/grib2/tables/32/4.233.table @@ -46,7 +46,6 @@ 44 44 Hydrofluoric acid HF 45 45 Sulphur hexafluoride SF6 46 46 Chlorine Cl2 -# 47-9999 Reserved 10000 10000 Hydroxyl radical HO* 10001 10001 Methyl peroxy radical CH3OO* 10002 10002 Methyl hydroperoxide CH3OOH @@ -106,10 +105,8 @@ 10057 10057 2-lambda^1-oxidanyloxy-3-methylbut-3-en-1-ol (2-hydroxy-1-isopropenylethylperoxy radical) HOCH2CH(OO*)C(CH3)CH2 10058 10058 (Z)-4-hydroperoxy-2-methyl-2-butenal CH2(OOH)CHC(CH3)CHO 10059 10059 (Z)-4-hydroperoxy-3-methyl-2-butenal CH2(OOH)C(CH3)CHCHO -# 10060-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides, etc.) 10500 10500 Dimethyl sulphide CH3SCH3 (DMS) 10501 10501 DMSO (dimethyl sulfoxide) (CH3)2SO -# 10502-20000 Reserved 20001 20001 Hydrogen chloride HCl 20002 20002 CFC-11 (trichlorofluoromethane) CCl3F 20003 20003 CFC-12 (dichlorodifluoromethane) CCl2F2 @@ -132,9 +129,7 @@ 20020 20020 alpha-HCH (alpha-hexachlorocyclohexane) both enantiomers alpha-C6H6Cl6 20021 20021 PCB-153 (2,2',4,4',5,5'-hexachlorobiphenyl) (C6H2Cl3)2 20022 20022 HCFC-141a (1,1-dichloro-2-fluoroethane) Cl2HC-CH2F -# 20023-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -# 30001-30009 Reserved 30010 30010 Tritium (Hydrogen 3) H-3 30011 30011 Tritium organic bounded H-3o 30012 30012 Tritium inorganic H-3a @@ -424,12 +419,10 @@ 30296 30296 Lead Pb 30297 30297 Tellurium 131 Te-131 30298 30298 Neodymium 137 Nd-137 -# 30299-39999 Reserved 40000 40000 Singlet sigma oxygen (dioxygen (sigma singlet)) O2 40001 40001 Singlet delta oxygen (dioxygen (delta singlet)) O2 40002 40002 Singlet excited oxygen atom O(1D) 40003 40003 Triplet ground state oxygen atom O(3P) -# 40004-59999 Reserved 60000 60000 HOx radical (OH+HO2) HOx* 60001 60001 Total inorganic and organic peroxy radicals (HOO* + ROO*) ROO* 60002 60002 Passive Ozone @@ -465,7 +458,6 @@ 60032 60032 All hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 ISOPOOH 60033 60033 Anthropogenic volatile organic compounds aVOC 60034 60034 Biomass burning volatile organic compounds bbVOC -# 60035-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -485,15 +477,12 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -# 62019 Reserved 62020 62020 Smoke - high absorption 62021 62021 Smoke - low absorption 62022 62022 Aerosol - high absorption 62023 62023 Aerosol - low absorption -# 62024 Reserved 62025 62025 Volcanic ash 62026 62026 Particulate matter (PM) -# 62027 Reserved 62028 62028 Total aerosol hydrophilic 62029 62029 Total aerosol hydrophobic 62030 62030 Primary particulate inorganic matter dry @@ -503,7 +492,6 @@ 62034 62034 Rain water H2Orain 62035 62035 Cloud water H2Ocloud 62036 62036 Brown carbon dry -# 62037-62099 Reserved 62100 62100 Alnus (alder) pollen 62101 62101 Betula (birch) pollen 62102 62102 Castanea (chestnut) pollen @@ -520,15 +508,12 @@ 62113 62113 Tilia (lime, linden) pollen 62114 62114 Ulmus (elm) pollen 62115 62115 Olea (olive) pollen -# 62116-62199 Reserved 62200 62200 Ambrosia (ragweed, burr-ragweed) pollen 62201 62201 Artemisia (sagebrush, wormwood, mugwort) pollen 62202 62202 Brassica (rape, broccoli, Brussels sprouts, cabbage, cauliflower, collards, kale, kohlrabi, mustard, rutabaga) pollen 62203 62203 Plantago (plantain) pollen 62204 62204 Rumex (dock, sorrel) pollen 62205 62205 Urtica (nettle) pollen -# 62206-62299 Reserved 62300 62300 Poaceae (grass family) pollen -# 62301-62999 Reserved # 63000-65534 For experimental use at local level 65535 65535 Missing diff --git a/definitions/grib2/tables/32/4.238.table b/definitions/grib2/tables/32/4.238.table index be5be3a90..abd570100 100644 --- a/definitions/grib2/tables/32/4.238.table +++ b/definitions/grib2/tables/32/4.238.table @@ -27,6 +27,4 @@ 25 25 Wastes (solid and water) 26 26 Road transportation 27 27 Off-road transportation -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.239.table b/definitions/grib2/tables/32/4.239.table index f095b14a0..b035c9eca 100644 --- a/definitions/grib2/tables/32/4.239.table +++ b/definitions/grib2/tables/32/4.239.table @@ -12,6 +12,4 @@ 10 10 Swamp 11 11 Upland 12 12 Wet tundra -# 13-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.240.table b/definitions/grib2/tables/32/4.240.table index 2a31fb2ab..b787f4087 100644 --- a/definitions/grib2/tables/32/4.240.table +++ b/definitions/grib2/tables/32/4.240.table @@ -8,6 +8,4 @@ 6 6 Log-normal distribution with spatially variable number density, mean diameter and fixed variance(p1) 7 7 Log-normal distribution with spatially variable number density and mass density and fixed variance(p1) and fixed particle density(p2) 8 8 No distribution function. The encoded variable is derived from variables characterized by type of distribution function of type No. 7 (see above) with fixed variance(p1) and fixed particle density(p2) -# 9-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing value diff --git a/definitions/grib2/tables/32/4.241.table b/definitions/grib2/tables/32/4.241.table index 743e5f6e2..9a0f8d9e2 100644 --- a/definitions/grib2/tables/32/4.241.table +++ b/definitions/grib2/tables/32/4.241.table @@ -7,6 +7,4 @@ 5 ITCW With intercepted water 6 ITCS With intercepted snow 7 AGG Aggregated -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/32/4.242.table b/definitions/grib2/tables/32/4.242.table index 9574142da..f3be7fff4 100644 --- a/definitions/grib2/tables/32/4.242.table +++ b/definitions/grib2/tables/32/4.242.table @@ -5,6 +5,4 @@ 3 ECOCLIMAP Land use classes according to ECOCLIMAP 4 ECOCLIMAP-SG Land use classes according to ECOCLIMAP-SG 5 GLCCv2BATS Land use classes according to USGS EROS Global Land Cover Characterization (GLCC) v2.0 BATS Classification -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/32/4.243.table b/definitions/grib2/tables/32/4.243.table index 24d21b719..eece47ab0 100644 --- a/definitions/grib2/tables/32/4.243.table +++ b/definitions/grib2/tables/32/4.243.table @@ -39,5 +39,3 @@ 37 37 Closed forest or shrubland permanently flooded 38 38 Closed to open grassland regularly flooded 39 39 Undefined -# 40-32767 Reserved -# 32768- Reserved for local use diff --git a/definitions/grib2/tables/32/4.244.table b/definitions/grib2/tables/32/4.244.table index a4470cd56..90c641c0b 100644 --- a/definitions/grib2/tables/32/4.244.table +++ b/definitions/grib2/tables/32/4.244.table @@ -2,6 +2,4 @@ 0 0 No quality information available 1 1 Failed 2 2 Passed -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.246.table b/definitions/grib2/tables/32/4.246.table index 0ca9c0c98..74c16312c 100644 --- a/definitions/grib2/tables/32/4.246.table +++ b/definitions/grib2/tables/32/4.246.table @@ -3,5 +3,4 @@ 1 1 Weak thunderstorm 2 2 Moderate thunderstorm 3 3 Severe thunderstorm -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/32/4.247.table b/definitions/grib2/tables/32/4.247.table index 6da16e396..5a55bf127 100644 --- a/definitions/grib2/tables/32/4.247.table +++ b/definitions/grib2/tables/32/4.247.table @@ -3,5 +3,4 @@ 1 1 Light precipitation 2 2 Moderate precipitation 3 3 Heavy precipitation -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/32/4.248.table b/definitions/grib2/tables/32/4.248.table index 04e365c97..ae4965d8d 100644 --- a/definitions/grib2/tables/32/4.248.table +++ b/definitions/grib2/tables/32/4.248.table @@ -1,6 +1,4 @@ # Code table 4.248 - Method used to derive data values for a given local time 0 0 Nearest forecast or analysis time to specified local time 1 1 Interpolated to be valid at the specified local time -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.249.table b/definitions/grib2/tables/32/4.249.table index bd1c944c4..93137b15b 100644 --- a/definitions/grib2/tables/32/4.249.table +++ b/definitions/grib2/tables/32/4.249.table @@ -3,5 +3,4 @@ 1 1 Showers 2 2 Intermittent 3 3 Continuous -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/32/4.250.table b/definitions/grib2/tables/32/4.250.table index a249158ca..c918ca956 100644 --- a/definitions/grib2/tables/32/4.250.table +++ b/definitions/grib2/tables/32/4.250.table @@ -9,6 +9,4 @@ 7 7 North-west 8 8 North 9 9 North-east -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.251.table b/definitions/grib2/tables/32/4.251.table index 3a78e713e..c56dc3415 100644 --- a/definitions/grib2/tables/32/4.251.table +++ b/definitions/grib2/tables/32/4.251.table @@ -2,6 +2,4 @@ 0 0 Undefined sequence 1 1 Geometric sequence 2 2 Arithmetic sequence -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.252.table b/definitions/grib2/tables/32/4.252.table index 961928cd4..c8bc543ef 100644 --- a/definitions/grib2/tables/32/4.252.table +++ b/definitions/grib2/tables/32/4.252.table @@ -161,5 +161,4 @@ # 4023-4500 Reserved for tile class entries for tile models using the European Commission-Global Land Cover Project GLC2000 survey # 4501-5000 Reserved for tile grouping entries for tile models using the European Commission-Global Land Cover Project GLC2000 survey # 5001-32767 Reserved for additional land cover surveys -# 32768-65534 Reserved for local use 65535 65535 Missing \ No newline at end of file diff --git a/definitions/grib2/tables/32/4.3.table b/definitions/grib2/tables/32/4.3.table index 8ae36efc3..5d9191ff8 100644 --- a/definitions/grib2/tables/32/4.3.table +++ b/definitions/grib2/tables/32/4.3.table @@ -21,6 +21,4 @@ 19 19 First guess 20 20 Analysis increment 21 21 Initialization increment for analysis -# 22-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.4.table b/definitions/grib2/tables/32/4.4.table index 6e63e069c..5f19caf93 100644 --- a/definitions/grib2/tables/32/4.4.table +++ b/definitions/grib2/tables/32/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.5.table b/definitions/grib2/tables/32/4.5.table index 8cded597c..716b40fa5 100644 --- a/definitions/grib2/tables/32/4.5.table +++ b/definitions/grib2/tables/32/4.5.table @@ -18,7 +18,6 @@ 16 16 Level of neutral buoyancy or equilibrium level (LNB) (-) 17 sfc Departure level of the most unstable parcel of air (MUDL) 18 sfc Departure level of a mixed layer parcel of air with specified layer depth (Pa) -# 19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) @@ -27,14 +26,12 @@ 25 25 Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity) (dBZ) 26 26 Convective cloud layer base (m) 27 27 Convective cloud layer top (m) -# 28-29 Reserved 30 30 Specified radius from the centre of the Sun (m) 31 31 Solar photosphere 32 32 Ionospheric D-region level 33 33 Ionospheric E-region level 34 34 Ionospheric F1-region level 35 35 Ionospheric F2-region level -# 36-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -51,15 +48,12 @@ 113 113 Logarithmic hybrid level 114 sol Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) 152 sol Sea-ice level (Numeric) -# 153-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 sfc Lake or river bottom (-) @@ -72,13 +66,11 @@ 169 169 Ocean level defined by water density (sigma-theta) difference from near-surface to level (kg m-3) 170 170 Ocean level defined by water potential temperature difference from near-surface to level (K) 171 171 Ocean level defined by vertical eddy diffusivity difference from near-surface to level (m2 s-1) -# 172 Reserved 173 173 Top of snow over sea ice on sea, lake or river 174 sfc Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface @@ -90,6 +82,4 @@ 187 187 Road level 188 188 Melt pond top surface 189 189 Melt pond bottom surface -# 190-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.6.table b/definitions/grib2/tables/32/4.6.table index ce799721d..d2b442a51 100644 --- a/definitions/grib2/tables/32/4.6.table +++ b/definitions/grib2/tables/32/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.7.table b/definitions/grib2/tables/32/4.7.table index 69b2b4d77..fef408de5 100644 --- a/definitions/grib2/tables/32/4.7.table +++ b/definitions/grib2/tables/32/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.8.table b/definitions/grib2/tables/32/4.8.table index 78467454a..e767b88fd 100644 --- a/definitions/grib2/tables/32/4.8.table +++ b/definitions/grib2/tables/32/4.8.table @@ -1,6 +1,4 @@ # Code table 4.8 - Clustering method 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.9.table b/definitions/grib2/tables/32/4.9.table index fa078f275..e2bae72c4 100644 --- a/definitions/grib2/tables/32/4.9.table +++ b/definitions/grib2/tables/32/4.9.table @@ -8,6 +8,4 @@ 6 6 Probability of event in above normal category 7 7 Probability of event in near normal category 8 8 Probability of event in below normal category -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/4.91.table b/definitions/grib2/tables/32/4.91.table index ae31ed61c..ee5692618 100644 --- a/definitions/grib2/tables/32/4.91.table +++ b/definitions/grib2/tables/32/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/32/5.0.table b/definitions/grib2/tables/32/5.0.table index 5e00004b0..115b708f2 100644 --- a/definitions/grib2/tables/32/5.0.table +++ b/definitions/grib2/tables/32/5.0.table @@ -4,19 +4,12 @@ 2 2 Grid point data - complex packing 3 3 Grid point data - complex packing and spatial differencing 4 4 Grid point data - IEEE floating point data -# 5-39 Reserved 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) 42 42 Grid point data - CCSDS recommended lossless compression -# 43-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -# 52 Reserved 53 53 Spectral data for limited area models - complex packing -# 54-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/32/5.1.table b/definitions/grib2/tables/32/5.1.table index 1189b5e46..8a80ec049 100644 --- a/definitions/grib2/tables/32/5.1.table +++ b/definitions/grib2/tables/32/5.1.table @@ -1,6 +1,4 @@ # Code table 5.1 - Type of original field values 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/5.2.table b/definitions/grib2/tables/32/5.2.table index 60d557a0d..b880c47c2 100644 --- a/definitions/grib2/tables/32/5.2.table +++ b/definitions/grib2/tables/32/5.2.table @@ -1,8 +1,5 @@ # Code table 5.2 - Matrix coordinate value function definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/5.25.table b/definitions/grib2/tables/32/5.25.table index 79e9fd69a..8ccddadd5 100644 --- a/definitions/grib2/tables/32/5.25.table +++ b/definitions/grib2/tables/32/5.25.table @@ -1,9 +1,5 @@ # Code table 5.25 - type of bi-Fourier subtruncation -# 0-76 Reserved 77 77 Rectangular -# 78-87 Reserved 88 88 Elliptic -# 89-98 Reserved 99 99 Diamond -# 100-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/32/5.26.table b/definitions/grib2/tables/32/5.26.table index 298f3fcd0..ee8ee4e73 100644 --- a/definitions/grib2/tables/32/5.26.table +++ b/definitions/grib2/tables/32/5.26.table @@ -1,5 +1,4 @@ # Code table 5.26 - packing mode for axes 0 0 Spectral coefficients for axes are packed 1 1 Spectral coefficients for axes included in the unpacked subset -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/32/5.3.table b/definitions/grib2/tables/32/5.3.table index 481331791..d9cd7835e 100644 --- a/definitions/grib2/tables/32/5.3.table +++ b/definitions/grib2/tables/32/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/5.4.table b/definitions/grib2/tables/32/5.4.table index e84ab1901..270f2d0ce 100644 --- a/definitions/grib2/tables/32/5.4.table +++ b/definitions/grib2/tables/32/5.4.table @@ -1,6 +1,4 @@ # Code table 5.4 - Group splitting method 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/5.40.table b/definitions/grib2/tables/32/5.40.table index 97e8880ab..a38dfc59d 100644 --- a/definitions/grib2/tables/32/5.40.table +++ b/definitions/grib2/tables/32/5.40.table @@ -1,5 +1,4 @@ # Code table 5.40 - Type of compression 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/32/5.5.table b/definitions/grib2/tables/32/5.5.table index f2316975a..373cb2624 100644 --- a/definitions/grib2/tables/32/5.5.table +++ b/definitions/grib2/tables/32/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/5.6.table b/definitions/grib2/tables/32/5.6.table index db68ead9c..3b6ce4af5 100644 --- a/definitions/grib2/tables/32/5.6.table +++ b/definitions/grib2/tables/32/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/32/5.7.table b/definitions/grib2/tables/32/5.7.table index e54862c19..bbb5ac73a 100644 --- a/definitions/grib2/tables/32/5.7.table +++ b/definitions/grib2/tables/32/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/4/0.0.table b/definitions/grib2/tables/4/0.0.table index fd2056350..39475306e 100644 --- a/definitions/grib2/tables/4/0.0.table +++ b/definitions/grib2/tables/4/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/1.2.table b/definitions/grib2/tables/4/1.2.table index eb8755209..65b1aca9a 100644 --- a/definitions/grib2/tables/4/1.2.table +++ b/definitions/grib2/tables/4/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -#4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/1.3.table b/definitions/grib2/tables/4/1.3.table index d4ed48c63..d2a1c2770 100644 --- a/definitions/grib2/tables/4/1.3.table +++ b/definitions/grib2/tables/4/1.3.table @@ -5,6 +5,4 @@ 3 3 Re-analysis products 4 4 TIGGE Operational products 5 5 TIGGE test products -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/1.4.table b/definitions/grib2/tables/4/1.4.table index ac21f5c4c..8fa9b6b41 100644 --- a/definitions/grib2/tables/4/1.4.table +++ b/definitions/grib2/tables/4/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event Probability -# 8-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/3.0.table b/definitions/grib2/tables/4/3.0.table index 6030a5132..4f4fd7be4 100644 --- a/definitions/grib2/tables/4/3.0.table +++ b/definitions/grib2/tables/4/3.0.table @@ -1,6 +1,4 @@ # CODE TABLE 3.0, Source of Grid Definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition Defined by originating centre -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/4/3.1.table b/definitions/grib2/tables/4/3.1.table index a989a78a9..837586d9a 100644 --- a/definitions/grib2/tables/4/3.1.table +++ b/definitions/grib2/tables/4/3.1.table @@ -3,41 +3,25 @@ 1 1 Rotated latitude/longitude 2 2 Stretched latitude/longitude 3 3 Stretched and rotated latitude/longitude -# 4-9 Reserved 10 10 Mercator -# 11-19 Reserved 20 20 Polar stereographic (can be south or north) -# 21-29 Reserved 30 30 Lambert Conformal (can be secant or tangent, conical or bipolar) 31 31 Albers equal-area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron -# 101-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-129 Reserved 130 130 Irregular latitude/longitude grid -# 131-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid, with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid, with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/4/3.15.table b/definitions/grib2/tables/4/3.15.table index 6a035be56..d4f7e0ed2 100644 --- a/definitions/grib2/tables/4/3.15.table +++ b/definitions/grib2/tables/4/3.15.table @@ -1,7 +1,5 @@ # CODE TABLE 3.15, Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature K -# 21-99 Reserved 100 100 Pressure Pa 101 101 Pressure deviation from mean sea level Pa 102 102 Altitude above mean sea level m @@ -15,8 +13,5 @@ 110 110 Geometrical height m 111 111 Eta coordinate (see Note 2) 112 112 Geopotential height gpm -# 113-159 Reserved 160 160 Depth below sea level m -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/3.2.table b/definitions/grib2/tables/4/3.2.table index d037ee120..2bf054512 100644 --- a/definitions/grib2/tables/4/3.2.table +++ b/definitions/grib2/tables/4/3.2.table @@ -6,6 +6,4 @@ 4 4 Earth assumed oblate spheroid as defined in IAG-GRS80 model (major axis = 6,378,137.0 m, minor axis = 6,356,752.314 m, f = 1/298.257222101) 5 5 Earth assumed represented by WGS84 (as used by ICAO since 1998) 6 6 Earth assumed spherical with radius of 6,371,229.0 m -# 7-191 Reserved -# 192- 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/3.20.table b/definitions/grib2/tables/4/3.20.table index cfa35ae38..f79d193b6 100644 --- a/definitions/grib2/tables/4/3.20.table +++ b/definitions/grib2/tables/4/3.20.table @@ -1,6 +1,4 @@ # CODE TABLE 3.20, Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/3.21.table b/definitions/grib2/tables/4/3.21.table index c2fd94586..d42c900cb 100644 --- a/definitions/grib2/tables/4/3.21.table +++ b/definitions/grib2/tables/4/3.21.table @@ -1,8 +1,5 @@ # CODE TABLE 3.21, Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates -# 2-10 Reserved 11 11 Geometric coordinates -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/3.7.table b/definitions/grib2/tables/4/3.7.table index b57c480a4..5937ea14d 100644 --- a/definitions/grib2/tables/4/3.7.table +++ b/definitions/grib2/tables/4/3.7.table @@ -1,5 +1,4 @@ # Code Table 3.7: Spectral data representation mode 0 0 Reserved 1 1 The complex numbers Fnm (see code figure 1 in Code Table 3.6 above) are stored for m³0 as pairs of real numbers Re(Fnm), Im(Fnm) ordered with n increasing from m to N(m), first for m=0 and then for m=1, 2, ... M. (see Note 1) -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/4/3.8.table b/definitions/grib2/tables/4/3.8.table index 0d9b7d001..a6b503617 100644 --- a/definitions/grib2/tables/4/3.8.table +++ b/definitions/grib2/tables/4/3.8.table @@ -2,7 +2,5 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -#3-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.1.0.table b/definitions/grib2/tables/4/4.1.0.table index 33d1c3984..d9660f77e 100644 --- a/definitions/grib2/tables/4/4.1.0.table +++ b/definitions/grib2/tables/4/4.1.0.table @@ -21,10 +21,8 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical or physical constituents -# 20-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.1.1.table b/definitions/grib2/tables/4/4.1.1.table index ebb7d9ea0..220c7fd5a 100644 --- a/definitions/grib2/tables/4/4.1.1.table +++ b/definitions/grib2/tables/4/4.1.1.table @@ -2,8 +2,6 @@ #Category Description 0 0 Hydrology basic products 1 1 Hydrology probabilities -#2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.1.10.table b/definitions/grib2/tables/4/4.1.10.table index 45b08caaa..5593171ac 100644 --- a/definitions/grib2/tables/4/4.1.10.table +++ b/definitions/grib2/tables/4/4.1.10.table @@ -5,8 +5,6 @@ 2 2 Ice 3 3 Surface Properties 4 4 Sub-surface Properties -# 5-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.1.2.table b/definitions/grib2/tables/4/4.1.2.table index f7f2ea2ba..0426852f0 100644 --- a/definitions/grib2/tables/4/4.1.2.table +++ b/definitions/grib2/tables/4/4.1.2.table @@ -4,8 +4,6 @@ 1 1 Agri-/aquacultural Special Products 2 2 Transportation-related Products 3 3 Soil Products -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.1.3.table b/definitions/grib2/tables/4/4.1.3.table index f7578e163..744f02eba 100644 --- a/definitions/grib2/tables/4/4.1.3.table +++ b/definitions/grib2/tables/4/4.1.3.table @@ -2,8 +2,6 @@ #Category Description 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.10.table b/definitions/grib2/tables/4/4.10.table index 9cf447b69..94bf593af 100644 --- a/definitions/grib2/tables/4/4.10.table +++ b/definitions/grib2/tables/4/4.10.table @@ -10,5 +10,4 @@ 7 cov Covariance (Temporal variance) 8 8 Difference (Value at the start of time range minus value at the end) 9 ratio Ratio -# 192 254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/4/4.11.table b/definitions/grib2/tables/4/4.11.table index 68901aac4..28c7ebbd3 100644 --- a/definitions/grib2/tables/4/4.11.table +++ b/definitions/grib2/tables/4/4.11.table @@ -5,5 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.0.table b/definitions/grib2/tables/4/4.2.0.0.table index 0386b8cd2..94841baa0 100644 --- a/definitions/grib2/tables/4/4.2.0.0.table +++ b/definitions/grib2/tables/4/4.2.0.0.table @@ -17,7 +17,5 @@ 15 15 Virtual potential temperature (K) 16 16 Snow phase change heat flux (W m-2) 17 17 Skin Temperature (K) -#17-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.1.table b/definitions/grib2/tables/4/4.2.0.1.table index dbce129d4..a3bbe3b5c 100644 --- a/definitions/grib2/tables/4/4.2.0.1.table +++ b/definitions/grib2/tables/4/4.2.0.1.table @@ -56,7 +56,5 @@ 58 58 Convective snowfall rate (m s-1) 59 59 Large scale snowfall rate (m s-1) 60 60 Snow depth water equivalent (kg m-2) -#47-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.13.table b/definitions/grib2/tables/4/4.2.0.13.table index 8fc3425af..a8c8c8bce 100644 --- a/definitions/grib2/tables/4/4.2.0.13.table +++ b/definitions/grib2/tables/4/4.2.0.13.table @@ -1,6 +1,4 @@ # Product Discipline 0: Meteorological products, Parameter Category 13: Aerosols 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.14.table b/definitions/grib2/tables/4/4.2.0.14.table index 309c40d47..d3128ec55 100644 --- a/definitions/grib2/tables/4/4.2.0.14.table +++ b/definitions/grib2/tables/4/4.2.0.14.table @@ -1,7 +1,5 @@ # Product Discipline 0: Meteorological products, Parameter Category 14: Trace Gases 0 0 Total ozone (Dobson) 1 1 Ozone mixing ratio (kg kg-1) -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.15.table b/definitions/grib2/tables/4/4.2.0.15.table index bb419178b..e73f9eae7 100644 --- a/definitions/grib2/tables/4/4.2.0.15.table +++ b/definitions/grib2/tables/4/4.2.0.15.table @@ -8,7 +8,5 @@ 6 6 Radar spectra (1) (-) 7 7 Radar spectra (2) (-) 8 8 Radar spectra (3) (-) -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.18.table b/definitions/grib2/tables/4/4.2.0.18.table index 5c0fd6e5d..1ee1cb17c 100644 --- a/definitions/grib2/tables/4/4.2.0.18.table +++ b/definitions/grib2/tables/4/4.2.0.18.table @@ -8,7 +8,5 @@ 6 6 Time-integrated air concentration of caesium pollutant (Bq s m-3) 7 7 Time-integrated air concentration of iodine pollutant (Bq s m-3) 8 8 Time-integrated air concentration of radioactive pollutant (Bq s m-3) -# 9-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.19.table b/definitions/grib2/tables/4/4.2.0.19.table index 369c3f657..d56c14505 100644 --- a/definitions/grib2/tables/4/4.2.0.19.table +++ b/definitions/grib2/tables/4/4.2.0.19.table @@ -18,7 +18,5 @@ 16 16 Contrail base (m) 17 17 Maximum snow albedo (%) 18 18 Snow free albedo (%) -# 19-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.190.table b/definitions/grib2/tables/4/4.2.0.190.table index b1f47bc02..b95b4ab90 100644 --- a/definitions/grib2/tables/4/4.2.0.190.table +++ b/definitions/grib2/tables/4/4.2.0.190.table @@ -1,6 +1,4 @@ # Product Discipline 0: Meteorological products, Parameter Category 190: CCITT IA5 string 0 0 Arbitrary text string (CCITTIA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.191.table b/definitions/grib2/tables/4/4.2.0.191.table index affb98f42..d095f705e 100644 --- a/definitions/grib2/tables/4/4.2.0.191.table +++ b/definitions/grib2/tables/4/4.2.0.191.table @@ -1,6 +1,4 @@ # Product Discipline 0: Meteorological products, Parameter Category 191: Miscellaneous 0 0 Seconds prior to initial reference time (defined in Section 1) (s) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.2.table b/definitions/grib2/tables/4/4.2.0.2.table index 1ec945102..75b6211aa 100644 --- a/definitions/grib2/tables/4/4.2.0.2.table +++ b/definitions/grib2/tables/4/4.2.0.2.table @@ -30,6 +30,4 @@ 28 28 V-component storm motion (m s-1) 29 29 Drag coefficient (Numeric) 30 30 Frictional velocity (m s-1) -# 31-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.20.table b/definitions/grib2/tables/4/4.2.0.20.table index b72d5fe5e..f8fe0ddb0 100644 --- a/definitions/grib2/tables/4/4.2.0.20.table +++ b/definitions/grib2/tables/4/4.2.0.20.table @@ -8,6 +8,4 @@ 7 7 Chemical gross production rate of mole concentration (mole.m-3.s-1) 8 8 Chemical gross destruction rate of mole concentration (mole.m-3.s-1) 9 9 Surface dry deposition mass flux into stomata (kg.m-2.s-1) -#10-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.3.table b/definitions/grib2/tables/4/4.2.0.3.table index 5c7e8151d..fedd11abd 100644 --- a/definitions/grib2/tables/4/4.2.0.3.table +++ b/definitions/grib2/tables/4/4.2.0.3.table @@ -19,7 +19,5 @@ 17 17 Meridional flux of gravity wave stress (N m-2) 18 18 Planetary boundary layer height (m) 19 19 5-wave geopotential height anomaly (gpm) -# 20-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.4.table b/definitions/grib2/tables/4/4.2.0.4.table index 815c184a2..06785fac6 100644 --- a/definitions/grib2/tables/4/4.2.0.4.table +++ b/definitions/grib2/tables/4/4.2.0.4.table @@ -8,7 +8,5 @@ 6 6 Radiance (with respect to wave length) (W m-3 sr-1) 7 7 Downward short-wave radiation flux (W m-2) 9 8 Upward short-wave radiation flux (W m-2) -# 9-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.5.table b/definitions/grib2/tables/4/4.2.0.5.table index 1b57fa301..e2749b5a6 100644 --- a/definitions/grib2/tables/4/4.2.0.5.table +++ b/definitions/grib2/tables/4/4.2.0.5.table @@ -5,7 +5,5 @@ 3 3 Downward long-wave radiation flux (W m-2) 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long wave radiation flux (W m-2) -# 5-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.6.table b/definitions/grib2/tables/4/4.2.0.6.table index 05cf72f57..de4e051f2 100644 --- a/definitions/grib2/tables/4/4.2.0.6.table +++ b/definitions/grib2/tables/4/4.2.0.6.table @@ -24,7 +24,5 @@ 22 22 Cloud cover (%) 23 23 Cloud ice mixing ratio (kg kg-1) 24 24 Sunshine (Numeric) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.0.7.table b/definitions/grib2/tables/4/4.2.0.7.table index 78374fde5..16458be11 100644 --- a/definitions/grib2/tables/4/4.2.0.7.table +++ b/definitions/grib2/tables/4/4.2.0.7.table @@ -12,7 +12,5 @@ 10 10 Surface lifted index (K) 11 11 Best (4-layer) lifted index (K) 12 12 Richardson number (Numeric) -#13-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.1.0.table b/definitions/grib2/tables/4/4.2.1.0.table index 1e867e1cb..828c869de 100644 --- a/definitions/grib2/tables/4/4.2.1.0.table +++ b/definitions/grib2/tables/4/4.2.1.0.table @@ -6,6 +6,4 @@ 4 4 Snow water equivalent percent of normal (%) 5 5 Baseflow-groundwater runoff (kg m-2) 6 6 Storm surface runoff (kg m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.1.1.table b/definitions/grib2/tables/4/4.2.1.1.table index b7342ef2f..f48c19e4d 100644 --- a/definitions/grib2/tables/4/4.2.1.1.table +++ b/definitions/grib2/tables/4/4.2.1.1.table @@ -2,7 +2,5 @@ 0 0 Conditional percent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Percent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -#3-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.10.0.table b/definitions/grib2/tables/4/4.2.10.0.table index 479e26d51..5dc9bd64a 100644 --- a/definitions/grib2/tables/4/4.2.10.0.table +++ b/definitions/grib2/tables/4/4.2.10.0.table @@ -13,8 +13,6 @@ 11 11 Primary wave mean period (s) 12 12 Secondary wave direction (Degree true) 13 13 Secondary wave mean period (s) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.10.1.table b/definitions/grib2/tables/4/4.2.10.1.table index df18f31dd..b9b2bd024 100644 --- a/definitions/grib2/tables/4/4.2.10.1.table +++ b/definitions/grib2/tables/4/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m s-1) 2 2 u-component of current (m s-1) 3 3 v-component of current (m s-1) -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.10.2.table b/definitions/grib2/tables/4/4.2.10.2.table index cb73da46c..8e5a41949 100644 --- a/definitions/grib2/tables/4/4.2.10.2.table +++ b/definitions/grib2/tables/4/4.2.10.2.table @@ -7,6 +7,4 @@ 5 5 v-component of ice drift (m s-1) 6 6 Ice growth rate (m s-1) 7 7 Ice divergence (s-1) -# 8-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.10.3.table b/definitions/grib2/tables/4/4.2.10.3.table index a14ae22e3..5315b46c6 100644 --- a/definitions/grib2/tables/4/4.2.10.3.table +++ b/definitions/grib2/tables/4/4.2.10.3.table @@ -1,6 +1,4 @@ # Product Discipline 10: Oceanographic products, Parameter Category 3: Surface Properties 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.10.4.table b/definitions/grib2/tables/4/4.2.10.4.table index a24c3c8c4..c76136014 100644 --- a/definitions/grib2/tables/4/4.2.10.4.table +++ b/definitions/grib2/tables/4/4.2.10.4.table @@ -3,7 +3,5 @@ 1 1 Main thermocline anomaly (m) 2 2 Transient thermocline depth (m) 3 3 Salinity (kg kg-1) -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.2.0.table b/definitions/grib2/tables/4/4.2.2.0.table index 67ad39b6c..2e64b8d80 100644 --- a/definitions/grib2/tables/4/4.2.2.0.table +++ b/definitions/grib2/tables/4/4.2.2.0.table @@ -23,7 +23,5 @@ 21 21 Humidity parameter in canopy conductance (Proportion) 22 22 Soil moisture (kg m-3) 26 26 Wilting point (kg m-3) -# 23-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.2.3.table b/definitions/grib2/tables/4/4.2.2.3.table index d6376fecb..fcca2b27f 100644 --- a/definitions/grib2/tables/4/4.2.2.3.table +++ b/definitions/grib2/tables/4/4.2.2.3.table @@ -10,7 +10,5 @@ 8 8 Direct evaporation cease (soil moisture) (Proportion) 9 9 Soil porosity (Proportion) 12 12 Transpiration stress-onset (soil moisture) (kg m-3) -# 11-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.3.0.table b/definitions/grib2/tables/4/4.2.3.0.table index 944566388..209542d4e 100644 --- a/definitions/grib2/tables/4/4.2.3.0.table +++ b/definitions/grib2/tables/4/4.2.3.0.table @@ -8,7 +8,5 @@ 6 6 Scaled skin temperature (Numeric) 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) -# 9-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.2.3.1.table b/definitions/grib2/tables/4/4.2.3.1.table index 60d6e8420..2a34fc2c6 100644 --- a/definitions/grib2/tables/4/4.2.3.1.table +++ b/definitions/grib2/tables/4/4.2.3.1.table @@ -5,7 +5,5 @@ 3 3 Cloud top height quality indicator (Code table 4.219) 4 4 Estimated u component of wind (m s-1) 5 5 Estimated v component of wind (m s-1) -# 6-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.230.table b/definitions/grib2/tables/4/4.230.table index 638358ead..db1211ab6 100644 --- a/definitions/grib2/tables/4/4.230.table +++ b/definitions/grib2/tables/4/4.230.table @@ -27,7 +27,6 @@ 25 nmvoc Non-methane volatile organic compounds expressed as carbon 26 anmvoc Anthropogenic non-methane volatile organic compounds expressed as carbon 27 bnmvoc Biogenic non-methane volatile organic compounds expressed as carbon -#28-39999 28-39999 Reserved 40000 40000 Sulphate dry aerosol 40001 40001 Black carbon dry aerosol 40002 40002 Particulate organic matter dry aerosol @@ -42,6 +41,4 @@ 40011 40011 Nitrate dry aerosol 40012 40012 Ammonium dry aerosol 40013 40013 Water in ambient aerosol -#40014-63999 40014-63999 Reserved -#64000-65534 64000-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/4/4.3.table b/definitions/grib2/tables/4/4.3.table index 84a72352b..c786df210 100644 --- a/definitions/grib2/tables/4/4.3.table +++ b/definitions/grib2/tables/4/4.3.table @@ -8,6 +8,4 @@ 6 6 Forecast error 7 7 Analysis error 8 8 Observation -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.4.table b/definitions/grib2/tables/4/4.4.table index 61aa20c5f..ae3c412b5 100644 --- a/definitions/grib2/tables/4/4.4.table +++ b/definitions/grib2/tables/4/4.4.table @@ -11,6 +11,4 @@ 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.5.table b/definitions/grib2/tables/4/4.5.table index d2a6d7876..584a8c784 100644 --- a/definitions/grib2/tables/4/4.5.table +++ b/definitions/grib2/tables/4/4.5.table @@ -9,9 +9,7 @@ 7 sfc Tropopause 8 sfc Nominal top of the atmosphere 9 9 Sea bottom -# 10-19 Reserved 20 20 Isothermal level (K) -#21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -24,10 +22,6 @@ 109 pv Potential vorticity surface (K m2 kg-1 s-1) 110 110 Reserved 111 111 Eta level -# 112-116 Reserved 117 117 Mixed layer depth (m) -# 118-159 Reserved 160 160 Depth below sea level (m) -#161-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/4.6.table b/definitions/grib2/tables/4/4.6.table index dc6d94c20..2147b6e13 100644 --- a/definitions/grib2/tables/4/4.6.table +++ b/definitions/grib2/tables/4/4.6.table @@ -4,5 +4,4 @@ 1 1 Unperturbed low-resolution control forecast 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/5.0.table b/definitions/grib2/tables/4/5.0.table index b9b301151..7613820fc 100644 --- a/definitions/grib2/tables/4/5.0.table +++ b/definitions/grib2/tables/4/5.0.table @@ -9,7 +9,6 @@ 50 50 Spectral data -simple packing 51 51 Spherical harmonics data - complex packing 61 61 Grid point data - simple packing with logarithm pre-processing -# 192-254 Reserved for local use 255 255 Missing 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling diff --git a/definitions/grib2/tables/4/5.1.table b/definitions/grib2/tables/4/5.1.table index d7ca4bedc..52ac8d861 100644 --- a/definitions/grib2/tables/4/5.1.table +++ b/definitions/grib2/tables/4/5.1.table @@ -1,5 +1,4 @@ # CODE TABLE 5.1, Type of original field values 0 0 Floating point 1 1 Integer -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/5.2.table b/definitions/grib2/tables/4/5.2.table index a048d712e..040c7fd6d 100644 --- a/definitions/grib2/tables/4/5.2.table +++ b/definitions/grib2/tables/4/5.2.table @@ -2,5 +2,4 @@ 0 0 Explicit coordinate values set 1 1 Linear coordinates 11 11 Geometric coordinates -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/5.3.table b/definitions/grib2/tables/4/5.3.table index 4a673ef85..e92a2b74c 100644 --- a/definitions/grib2/tables/4/5.3.table +++ b/definitions/grib2/tables/4/5.3.table @@ -2,5 +2,4 @@ 1 1 Direction Degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/5.4.table b/definitions/grib2/tables/4/5.4.table index 1fd37966f..aed51082a 100644 --- a/definitions/grib2/tables/4/5.4.table +++ b/definitions/grib2/tables/4/5.4.table @@ -1,5 +1,4 @@ # CODE TABLE 5.4, Group Splitting Method 0 0 Row by row splitting 1 1 General group splitting -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/4/5.40.table b/definitions/grib2/tables/4/5.40.table index 1eef7c763..a31bebc59 100644 --- a/definitions/grib2/tables/4/5.40.table +++ b/definitions/grib2/tables/4/5.40.table @@ -1,5 +1,4 @@ # Code Table 5.40: Type of Compression 0 0 Lossless 1 1 Lossy -#2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/4/5.5.table b/definitions/grib2/tables/4/5.5.table index d1caac9e8..2143388cb 100644 --- a/definitions/grib2/tables/4/5.5.table +++ b/definitions/grib2/tables/4/5.5.table @@ -3,5 +3,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/0.0.table b/definitions/grib2/tables/5/0.0.table index fd2056350..39475306e 100644 --- a/definitions/grib2/tables/5/0.0.table +++ b/definitions/grib2/tables/5/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/1.2.table b/definitions/grib2/tables/5/1.2.table index eb8755209..65b1aca9a 100644 --- a/definitions/grib2/tables/5/1.2.table +++ b/definitions/grib2/tables/5/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -#4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/1.3.table b/definitions/grib2/tables/5/1.3.table index d4ed48c63..d2a1c2770 100644 --- a/definitions/grib2/tables/5/1.3.table +++ b/definitions/grib2/tables/5/1.3.table @@ -5,6 +5,4 @@ 3 3 Re-analysis products 4 4 TIGGE Operational products 5 5 TIGGE test products -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/1.4.table b/definitions/grib2/tables/5/1.4.table index 8166b7761..058f301af 100644 --- a/definitions/grib2/tables/5/1.4.table +++ b/definitions/grib2/tables/5/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event Probability -# 8-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/5/3.0.table b/definitions/grib2/tables/5/3.0.table index 6030a5132..4f4fd7be4 100644 --- a/definitions/grib2/tables/5/3.0.table +++ b/definitions/grib2/tables/5/3.0.table @@ -1,6 +1,4 @@ # CODE TABLE 3.0, Source of Grid Definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition Defined by originating centre -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/5/3.1.table b/definitions/grib2/tables/5/3.1.table index a989a78a9..837586d9a 100644 --- a/definitions/grib2/tables/5/3.1.table +++ b/definitions/grib2/tables/5/3.1.table @@ -3,41 +3,25 @@ 1 1 Rotated latitude/longitude 2 2 Stretched latitude/longitude 3 3 Stretched and rotated latitude/longitude -# 4-9 Reserved 10 10 Mercator -# 11-19 Reserved 20 20 Polar stereographic (can be south or north) -# 21-29 Reserved 30 30 Lambert Conformal (can be secant or tangent, conical or bipolar) 31 31 Albers equal-area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron -# 101-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-129 Reserved 130 130 Irregular latitude/longitude grid -# 131-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid, with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid, with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/5/3.15.table b/definitions/grib2/tables/5/3.15.table index 6a035be56..d4f7e0ed2 100644 --- a/definitions/grib2/tables/5/3.15.table +++ b/definitions/grib2/tables/5/3.15.table @@ -1,7 +1,5 @@ # CODE TABLE 3.15, Physical meaning of vertical coordinate -# 0-19 Reserved 20 20 Temperature K -# 21-99 Reserved 100 100 Pressure Pa 101 101 Pressure deviation from mean sea level Pa 102 102 Altitude above mean sea level m @@ -15,8 +13,5 @@ 110 110 Geometrical height m 111 111 Eta coordinate (see Note 2) 112 112 Geopotential height gpm -# 113-159 Reserved 160 160 Depth below sea level m -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/3.2.table b/definitions/grib2/tables/5/3.2.table index d037ee120..2bf054512 100644 --- a/definitions/grib2/tables/5/3.2.table +++ b/definitions/grib2/tables/5/3.2.table @@ -6,6 +6,4 @@ 4 4 Earth assumed oblate spheroid as defined in IAG-GRS80 model (major axis = 6,378,137.0 m, minor axis = 6,356,752.314 m, f = 1/298.257222101) 5 5 Earth assumed represented by WGS84 (as used by ICAO since 1998) 6 6 Earth assumed spherical with radius of 6,371,229.0 m -# 7-191 Reserved -# 192- 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/3.20.table b/definitions/grib2/tables/5/3.20.table index cfa35ae38..f79d193b6 100644 --- a/definitions/grib2/tables/5/3.20.table +++ b/definitions/grib2/tables/5/3.20.table @@ -1,6 +1,4 @@ # CODE TABLE 3.20, Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/3.21.table b/definitions/grib2/tables/5/3.21.table index c2fd94586..d42c900cb 100644 --- a/definitions/grib2/tables/5/3.21.table +++ b/definitions/grib2/tables/5/3.21.table @@ -1,8 +1,5 @@ # CODE TABLE 3.21, Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates -# 2-10 Reserved 11 11 Geometric coordinates -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/3.7.table b/definitions/grib2/tables/5/3.7.table index b57c480a4..5937ea14d 100644 --- a/definitions/grib2/tables/5/3.7.table +++ b/definitions/grib2/tables/5/3.7.table @@ -1,5 +1,4 @@ # Code Table 3.7: Spectral data representation mode 0 0 Reserved 1 1 The complex numbers Fnm (see code figure 1 in Code Table 3.6 above) are stored for m³0 as pairs of real numbers Re(Fnm), Im(Fnm) ordered with n increasing from m to N(m), first for m=0 and then for m=1, 2, ... M. (see Note 1) -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/5/3.8.table b/definitions/grib2/tables/5/3.8.table index 0d9b7d001..a6b503617 100644 --- a/definitions/grib2/tables/5/3.8.table +++ b/definitions/grib2/tables/5/3.8.table @@ -2,7 +2,5 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -#3-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.1.0.table b/definitions/grib2/tables/5/4.1.0.table index 33d1c3984..d9660f77e 100644 --- a/definitions/grib2/tables/5/4.1.0.table +++ b/definitions/grib2/tables/5/4.1.0.table @@ -21,10 +21,8 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical or physical constituents -# 20-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.1.1.table b/definitions/grib2/tables/5/4.1.1.table index ebb7d9ea0..220c7fd5a 100644 --- a/definitions/grib2/tables/5/4.1.1.table +++ b/definitions/grib2/tables/5/4.1.1.table @@ -2,8 +2,6 @@ #Category Description 0 0 Hydrology basic products 1 1 Hydrology probabilities -#2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.1.10.table b/definitions/grib2/tables/5/4.1.10.table index 45b08caaa..5593171ac 100644 --- a/definitions/grib2/tables/5/4.1.10.table +++ b/definitions/grib2/tables/5/4.1.10.table @@ -5,8 +5,6 @@ 2 2 Ice 3 3 Surface Properties 4 4 Sub-surface Properties -# 5-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.1.2.table b/definitions/grib2/tables/5/4.1.2.table index f7f2ea2ba..0426852f0 100644 --- a/definitions/grib2/tables/5/4.1.2.table +++ b/definitions/grib2/tables/5/4.1.2.table @@ -4,8 +4,6 @@ 1 1 Agri-/aquacultural Special Products 2 2 Transportation-related Products 3 3 Soil Products -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.1.3.table b/definitions/grib2/tables/5/4.1.3.table index f7578e163..744f02eba 100644 --- a/definitions/grib2/tables/5/4.1.3.table +++ b/definitions/grib2/tables/5/4.1.3.table @@ -2,8 +2,6 @@ #Category Description 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.10.table b/definitions/grib2/tables/5/4.10.table index 9cf447b69..94bf593af 100644 --- a/definitions/grib2/tables/5/4.10.table +++ b/definitions/grib2/tables/5/4.10.table @@ -10,5 +10,4 @@ 7 cov Covariance (Temporal variance) 8 8 Difference (Value at the start of time range minus value at the end) 9 ratio Ratio -# 192 254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/5/4.11.table b/definitions/grib2/tables/5/4.11.table index 68901aac4..28c7ebbd3 100644 --- a/definitions/grib2/tables/5/4.11.table +++ b/definitions/grib2/tables/5/4.11.table @@ -5,5 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.15.table b/definitions/grib2/tables/5/4.15.table index 504128024..fce304fe2 100644 --- a/definitions/grib2/tables/5/4.15.table +++ b/definitions/grib2/tables/5/4.15.table @@ -5,6 +5,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point (see note 2) 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point (see note 3) -#7-191 Reserved -#192-254 Reserved for Local Use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.2.0.20.table b/definitions/grib2/tables/5/4.2.0.20.table index 4d762c38e..2a66a0fe3 100644 --- a/definitions/grib2/tables/5/4.2.0.20.table +++ b/definitions/grib2/tables/5/4.2.0.20.table @@ -7,7 +7,6 @@ 6 6 Surface dry deposition mass flux kg m-2 s-1 7 7 Surface wet deposition mass flux kg m-2 s-1 8 8 Atmosphere re-emission mass flux kg m-2 s-1 -#9-49 9-49 Reserved 50 50 Amount in atmosphere mol 51 51 Concentration in air mol m-3 52 52 Volume mixing ratio (fraction in air) mol mol-1 @@ -17,10 +16,7 @@ 56 56 Changes of amount in atmosphere (see Note 1) mol s-1 57 57 Total yearly average burden of the atmosphere mol 58 58 Total yearly averaged atmospheric loss (see Note 1) mol s-1 -#59-99 59-99 Reserved 100 100 Surface area density (aerosol) m-1 101 101 Atmosphere optical thickness m -#102-191 102-191 Reserved -#192-254 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.203.table b/definitions/grib2/tables/5/4.203.table index 057f40910..d7a750534 100644 --- a/definitions/grib2/tables/5/4.203.table +++ b/definitions/grib2/tables/5/4.203.table @@ -21,5 +21,4 @@ 19 19 Cirrocumulus - ground based fog beneath the lowest layer 20 20 Cirrus - ground based fog beneath the lowest layer 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.230.table b/definitions/grib2/tables/5/4.230.table index 7bcbe3043..630393b96 100644 --- a/definitions/grib2/tables/5/4.230.table +++ b/definitions/grib2/tables/5/4.230.table @@ -62,7 +62,6 @@ 10023 10023 Xylene #10024-10499 10024-10499 reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides,...) 10500 10500 Dimethyl sulphide -#10501-20000 10501-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 diff --git a/definitions/grib2/tables/5/4.3.table b/definitions/grib2/tables/5/4.3.table index 84a72352b..c786df210 100644 --- a/definitions/grib2/tables/5/4.3.table +++ b/definitions/grib2/tables/5/4.3.table @@ -8,6 +8,4 @@ 6 6 Forecast error 7 7 Analysis error 8 8 Observation -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.4.table b/definitions/grib2/tables/5/4.4.table index 61aa20c5f..ae3c412b5 100644 --- a/definitions/grib2/tables/5/4.4.table +++ b/definitions/grib2/tables/5/4.4.table @@ -11,6 +11,4 @@ 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.5.table b/definitions/grib2/tables/5/4.5.table index 5e8573cca..0e93b8b2e 100644 --- a/definitions/grib2/tables/5/4.5.table +++ b/definitions/grib2/tables/5/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -#21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -27,12 +25,8 @@ 109 pv Potential vorticity surface (K m2 kg-1 s-1) 110 110 Reserved 111 111 Eta level -# 112-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 118-159 Reserved 160 160 Depth below sea level (m) -#161-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/4.6.table b/definitions/grib2/tables/5/4.6.table index dc6d94c20..2147b6e13 100644 --- a/definitions/grib2/tables/5/4.6.table +++ b/definitions/grib2/tables/5/4.6.table @@ -4,5 +4,4 @@ 1 1 Unperturbed low-resolution control forecast 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/5.0.table b/definitions/grib2/tables/5/5.0.table index ccf4f88cb..c6d03bef7 100644 --- a/definitions/grib2/tables/5/5.0.table +++ b/definitions/grib2/tables/5/5.0.table @@ -9,7 +9,6 @@ 50 50 Spectral data -simple packing 51 51 Spherical harmonics data - complex packing 61 61 Grid point data - simple packing with logarithm pre-processing -# 192-254 Reserved for local use 255 255 Missing 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling diff --git a/definitions/grib2/tables/5/5.1.table b/definitions/grib2/tables/5/5.1.table index d7ca4bedc..52ac8d861 100644 --- a/definitions/grib2/tables/5/5.1.table +++ b/definitions/grib2/tables/5/5.1.table @@ -1,5 +1,4 @@ # CODE TABLE 5.1, Type of original field values 0 0 Floating point 1 1 Integer -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/5.2.table b/definitions/grib2/tables/5/5.2.table index a048d712e..040c7fd6d 100644 --- a/definitions/grib2/tables/5/5.2.table +++ b/definitions/grib2/tables/5/5.2.table @@ -2,5 +2,4 @@ 0 0 Explicit coordinate values set 1 1 Linear coordinates 11 11 Geometric coordinates -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/5.3.table b/definitions/grib2/tables/5/5.3.table index 4a673ef85..e92a2b74c 100644 --- a/definitions/grib2/tables/5/5.3.table +++ b/definitions/grib2/tables/5/5.3.table @@ -2,5 +2,4 @@ 1 1 Direction Degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/5.4.table b/definitions/grib2/tables/5/5.4.table index 1fd37966f..aed51082a 100644 --- a/definitions/grib2/tables/5/5.4.table +++ b/definitions/grib2/tables/5/5.4.table @@ -1,5 +1,4 @@ # CODE TABLE 5.4, Group Splitting Method 0 0 Row by row splitting 1 1 General group splitting -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/5/5.40.table b/definitions/grib2/tables/5/5.40.table index 1eef7c763..a31bebc59 100644 --- a/definitions/grib2/tables/5/5.40.table +++ b/definitions/grib2/tables/5/5.40.table @@ -1,5 +1,4 @@ # Code Table 5.40: Type of Compression 0 0 Lossless 1 1 Lossy -#2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/5/5.5.table b/definitions/grib2/tables/5/5.5.table index d1caac9e8..2143388cb 100644 --- a/definitions/grib2/tables/5/5.5.table +++ b/definitions/grib2/tables/5/5.5.table @@ -3,5 +3,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/0.0.table b/definitions/grib2/tables/6/0.0.table index fd2056350..39475306e 100644 --- a/definitions/grib2/tables/6/0.0.table +++ b/definitions/grib2/tables/6/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/1.2.table b/definitions/grib2/tables/6/1.2.table index eb8755209..65b1aca9a 100644 --- a/definitions/grib2/tables/6/1.2.table +++ b/definitions/grib2/tables/6/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -#4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/1.3.table b/definitions/grib2/tables/6/1.3.table index d4ed48c63..d2a1c2770 100644 --- a/definitions/grib2/tables/6/1.3.table +++ b/definitions/grib2/tables/6/1.3.table @@ -5,6 +5,4 @@ 3 3 Re-analysis products 4 4 TIGGE Operational products 5 5 TIGGE test products -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/1.4.table b/definitions/grib2/tables/6/1.4.table index 8166b7761..058f301af 100644 --- a/definitions/grib2/tables/6/1.4.table +++ b/definitions/grib2/tables/6/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event Probability -# 8-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/6/3.0.table b/definitions/grib2/tables/6/3.0.table index 6030a5132..4f4fd7be4 100644 --- a/definitions/grib2/tables/6/3.0.table +++ b/definitions/grib2/tables/6/3.0.table @@ -1,6 +1,4 @@ # CODE TABLE 3.0, Source of Grid Definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition Defined by originating centre -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/6/3.1.table b/definitions/grib2/tables/6/3.1.table index 235fb8bd3..6ad006cb0 100644 --- a/definitions/grib2/tables/6/3.1.table +++ b/definitions/grib2/tables/6/3.1.table @@ -3,41 +3,25 @@ 1 1 Rotated latitude/longitude 2 2 Stretched latitude/longitude 3 3 Stretched and rotated latitude/longitude -# 4-9 Reserved 10 10 Mercator -# 11-19 Reserved 20 20 Polar stereographic can be south or north -# 21-29 Reserved 30 30 Lambert Conformal can be secant or tangent, conical or bipolar 31 31 Albers equal-area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron -# 101-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-129 Reserved 130 130 Irregular latitude/longitude grid -# 131-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid, with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid, with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/6/3.15.table b/definitions/grib2/tables/6/3.15.table index b3adaeb33..d4f7e0ed2 100644 --- a/definitions/grib2/tables/6/3.15.table +++ b/definitions/grib2/tables/6/3.15.table @@ -1,6 +1,5 @@ # CODE TABLE 3.15, Physical meaning of vertical coordinate 20 20 Temperature K -# 21-99 Reserved 100 100 Pressure Pa 101 101 Pressure deviation from mean sea level Pa 102 102 Altitude above mean sea level m @@ -14,8 +13,5 @@ 110 110 Geometrical height m 111 111 Eta coordinate (see Note 2) 112 112 Geopotential height gpm -# 113-159 Reserved 160 160 Depth below sea level m -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/3.2.table b/definitions/grib2/tables/6/3.2.table index d037ee120..2bf054512 100644 --- a/definitions/grib2/tables/6/3.2.table +++ b/definitions/grib2/tables/6/3.2.table @@ -6,6 +6,4 @@ 4 4 Earth assumed oblate spheroid as defined in IAG-GRS80 model (major axis = 6,378,137.0 m, minor axis = 6,356,752.314 m, f = 1/298.257222101) 5 5 Earth assumed represented by WGS84 (as used by ICAO since 1998) 6 6 Earth assumed spherical with radius of 6,371,229.0 m -# 7-191 Reserved -# 192- 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/3.20.table b/definitions/grib2/tables/6/3.20.table index cfa35ae38..f79d193b6 100644 --- a/definitions/grib2/tables/6/3.20.table +++ b/definitions/grib2/tables/6/3.20.table @@ -1,6 +1,4 @@ # CODE TABLE 3.20, Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/3.21.table b/definitions/grib2/tables/6/3.21.table index c2fd94586..d42c900cb 100644 --- a/definitions/grib2/tables/6/3.21.table +++ b/definitions/grib2/tables/6/3.21.table @@ -1,8 +1,5 @@ # CODE TABLE 3.21, Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates -# 2-10 Reserved 11 11 Geometric coordinates -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/3.8.table b/definitions/grib2/tables/6/3.8.table index 0d9b7d001..a6b503617 100644 --- a/definitions/grib2/tables/6/3.8.table +++ b/definitions/grib2/tables/6/3.8.table @@ -2,7 +2,5 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -#3-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.0.table b/definitions/grib2/tables/6/4.0.table index e7e441f40..a1c1fb7b3 100644 --- a/definitions/grib2/tables/6/4.0.table +++ b/definitions/grib2/tables/6/4.0.table @@ -15,7 +15,6 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically-processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -#16-19 Reserved 20 20 Radar product 30 30 Satellite product 31 31 Satellite product diff --git a/definitions/grib2/tables/6/4.1.0.table b/definitions/grib2/tables/6/4.1.0.table index 33d1c3984..d9660f77e 100644 --- a/definitions/grib2/tables/6/4.1.0.table +++ b/definitions/grib2/tables/6/4.1.0.table @@ -21,10 +21,8 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical or physical constituents -# 20-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.1.1.table b/definitions/grib2/tables/6/4.1.1.table index ebb7d9ea0..220c7fd5a 100644 --- a/definitions/grib2/tables/6/4.1.1.table +++ b/definitions/grib2/tables/6/4.1.1.table @@ -2,8 +2,6 @@ #Category Description 0 0 Hydrology basic products 1 1 Hydrology probabilities -#2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.1.10.table b/definitions/grib2/tables/6/4.1.10.table index 45b08caaa..5593171ac 100644 --- a/definitions/grib2/tables/6/4.1.10.table +++ b/definitions/grib2/tables/6/4.1.10.table @@ -5,8 +5,6 @@ 2 2 Ice 3 3 Surface Properties 4 4 Sub-surface Properties -# 5-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.1.2.table b/definitions/grib2/tables/6/4.1.2.table index f7f2ea2ba..0426852f0 100644 --- a/definitions/grib2/tables/6/4.1.2.table +++ b/definitions/grib2/tables/6/4.1.2.table @@ -4,8 +4,6 @@ 1 1 Agri-/aquacultural Special Products 2 2 Transportation-related Products 3 3 Soil Products -# 4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.1.3.table b/definitions/grib2/tables/6/4.1.3.table index f7578e163..744f02eba 100644 --- a/definitions/grib2/tables/6/4.1.3.table +++ b/definitions/grib2/tables/6/4.1.3.table @@ -2,8 +2,6 @@ #Category Description 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.10.table b/definitions/grib2/tables/6/4.10.table index 9cf447b69..94bf593af 100644 --- a/definitions/grib2/tables/6/4.10.table +++ b/definitions/grib2/tables/6/4.10.table @@ -10,5 +10,4 @@ 7 cov Covariance (Temporal variance) 8 8 Difference (Value at the start of time range minus value at the end) 9 ratio Ratio -# 192 254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/6/4.11.table b/definitions/grib2/tables/6/4.11.table index 68901aac4..28c7ebbd3 100644 --- a/definitions/grib2/tables/6/4.11.table +++ b/definitions/grib2/tables/6/4.11.table @@ -5,5 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.12.table b/definitions/grib2/tables/6/4.12.table index 847e21317..689d30815 100644 --- a/definitions/grib2/tables/6/4.12.table +++ b/definitions/grib2/tables/6/4.12.table @@ -2,5 +2,4 @@ 0 0 Maintenance Mode 1 1 Clear air 2 2 Precipitation -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.13.table b/definitions/grib2/tables/6/4.13.table index 29ddf2a3c..255f90b78 100644 --- a/definitions/grib2/tables/6/4.13.table +++ b/definitions/grib2/tables/6/4.13.table @@ -1,5 +1,4 @@ # CODE TABLE 4.13, Quality Control Indicator 0 0 No quality control applied 1 1 Quality control applied -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.14.table b/definitions/grib2/tables/6/4.14.table index e19c14c2f..34b0931f7 100644 --- a/definitions/grib2/tables/6/4.14.table +++ b/definitions/grib2/tables/6/4.14.table @@ -1,5 +1,4 @@ # CODE TABLE 4.14, Clutter Filter Indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.15.table b/definitions/grib2/tables/6/4.15.table index 504128024..fce304fe2 100644 --- a/definitions/grib2/tables/6/4.15.table +++ b/definitions/grib2/tables/6/4.15.table @@ -5,6 +5,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point (see note 2) 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point (see note 3) -#7-191 Reserved -#192-254 Reserved for Local Use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.151.table b/definitions/grib2/tables/6/4.151.table index 30487afb4..90a8c6ca0 100644 --- a/definitions/grib2/tables/6/4.151.table +++ b/definitions/grib2/tables/6/4.151.table @@ -3,5 +3,4 @@ 1 1 suspect 2 2 acceptable 3 3 excellent -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.2.10.191.table b/definitions/grib2/tables/6/4.2.10.191.table index 72cf1ce97..c76f2d6a8 100644 --- a/definitions/grib2/tables/6/4.2.10.191.table +++ b/definitions/grib2/tables/6/4.2.10.191.table @@ -1,6 +1,4 @@ # Product discipline 10 - Oceanographic products, parameter category 191: miscellaneous 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Meridional overturning stream function (m3 s-1) -#2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.201.table b/definitions/grib2/tables/6/4.201.table index bd20dd356..d2da38501 100644 --- a/definitions/grib2/tables/6/4.201.table +++ b/definitions/grib2/tables/6/4.201.table @@ -4,5 +4,4 @@ 3 3 Freezing rain 4 4 Mixed/ice 5 5 Snow -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.202.table b/definitions/grib2/tables/6/4.202.table index 242f2d5af..8044d02aa 100644 --- a/definitions/grib2/tables/6/4.202.table +++ b/definitions/grib2/tables/6/4.202.table @@ -1,3 +1,2 @@ # CODE TABLE 4.202, Precipitable water category -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.203.table b/definitions/grib2/tables/6/4.203.table index 057f40910..d7a750534 100644 --- a/definitions/grib2/tables/6/4.203.table +++ b/definitions/grib2/tables/6/4.203.table @@ -21,5 +21,4 @@ 19 19 Cirrocumulus - ground based fog beneath the lowest layer 20 20 Cirrus - ground based fog beneath the lowest layer 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.204.table b/definitions/grib2/tables/6/4.204.table index 41b47ef7c..eebc517a6 100644 --- a/definitions/grib2/tables/6/4.204.table +++ b/definitions/grib2/tables/6/4.204.table @@ -4,5 +4,4 @@ 2 2 Few (3% - 15%) 3 3 Scattered (16% - 45%) 4 4 Numerous (> 45%) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.205.table b/definitions/grib2/tables/6/4.205.table index 179b09e08..10a1f5bbf 100644 --- a/definitions/grib2/tables/6/4.205.table +++ b/definitions/grib2/tables/6/4.205.table @@ -1,5 +1,4 @@ # CODE TABLE 4.205, Aerosol type 0 0 Aerosol not present 1 1 Aerosol present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.206.table b/definitions/grib2/tables/6/4.206.table index ea5bfcbc2..33353e74b 100644 --- a/definitions/grib2/tables/6/4.206.table +++ b/definitions/grib2/tables/6/4.206.table @@ -1,5 +1,4 @@ # CODE TABLE 4.206, Volcanic ash 0 0 Not present 1 1 Present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.207.table b/definitions/grib2/tables/6/4.207.table index 1fa48a194..d92a6b811 100644 --- a/definitions/grib2/tables/6/4.207.table +++ b/definitions/grib2/tables/6/4.207.table @@ -3,5 +3,4 @@ 1 1 Light 2 2 Moderate 3 3 Severe -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.208.table b/definitions/grib2/tables/6/4.208.table index 902d03a57..a14539b22 100644 --- a/definitions/grib2/tables/6/4.208.table +++ b/definitions/grib2/tables/6/4.208.table @@ -4,5 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.209.table b/definitions/grib2/tables/6/4.209.table index 7218049e4..e0c422325 100644 --- a/definitions/grib2/tables/6/4.209.table +++ b/definitions/grib2/tables/6/4.209.table @@ -3,5 +3,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.210.table b/definitions/grib2/tables/6/4.210.table index 53ae41be2..58bdd2da3 100644 --- a/definitions/grib2/tables/6/4.210.table +++ b/definitions/grib2/tables/6/4.210.table @@ -1,5 +1,4 @@ # CODE TABLE 4.210, Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.211.table b/definitions/grib2/tables/6/4.211.table index 56565001c..01bb27657 100644 --- a/definitions/grib2/tables/6/4.211.table +++ b/definitions/grib2/tables/6/4.211.table @@ -2,5 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non bypass -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.212.table b/definitions/grib2/tables/6/4.212.table index 10f38d1ef..e7274d600 100644 --- a/definitions/grib2/tables/6/4.212.table +++ b/definitions/grib2/tables/6/4.212.table @@ -12,5 +12,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.213.table b/definitions/grib2/tables/6/4.213.table index 199042325..4bf4f0ab0 100644 --- a/definitions/grib2/tables/6/4.213.table +++ b/definitions/grib2/tables/6/4.213.table @@ -10,5 +10,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.217.table b/definitions/grib2/tables/6/4.217.table index 2bd70f1d3..032b14964 100644 --- a/definitions/grib2/tables/6/4.217.table +++ b/definitions/grib2/tables/6/4.217.table @@ -3,5 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.220.table b/definitions/grib2/tables/6/4.220.table index ea7c55e48..d2efbaae3 100644 --- a/definitions/grib2/tables/6/4.220.table +++ b/definitions/grib2/tables/6/4.220.table @@ -1,5 +1,4 @@ # CODE TABLE 4.220, Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.221.table b/definitions/grib2/tables/6/4.221.table index d63c545c5..27775d7d0 100644 --- a/definitions/grib2/tables/6/4.221.table +++ b/definitions/grib2/tables/6/4.221.table @@ -1,5 +1,4 @@ # CODE TABLE 4.221, Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.230.table b/definitions/grib2/tables/6/4.230.table index 7bcbe3043..630393b96 100644 --- a/definitions/grib2/tables/6/4.230.table +++ b/definitions/grib2/tables/6/4.230.table @@ -62,7 +62,6 @@ 10023 10023 Xylene #10024-10499 10024-10499 reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides,...) 10500 10500 Dimethyl sulphide -#10501-20000 10501-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 diff --git a/definitions/grib2/tables/6/4.3.table b/definitions/grib2/tables/6/4.3.table index 47bccd26b..6cddace73 100644 --- a/definitions/grib2/tables/6/4.3.table +++ b/definitions/grib2/tables/6/4.3.table @@ -11,6 +11,4 @@ 9 9 Climatological 10 10 Probability-weighted forecast 11 11 Bias-corrected ensemble forecast -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.4.table b/definitions/grib2/tables/6/4.4.table index 61aa20c5f..ae3c412b5 100644 --- a/definitions/grib2/tables/6/4.4.table +++ b/definitions/grib2/tables/6/4.4.table @@ -11,6 +11,4 @@ 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.5.table b/definitions/grib2/tables/6/4.5.table index 5b80a90fc..81dae2dd3 100644 --- a/definitions/grib2/tables/6/4.5.table +++ b/definitions/grib2/tables/6/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -#21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -27,12 +25,8 @@ 109 pv Potential vorticity surface (K m2 kg-1 s-1) 110 110 Reserved 111 111 Eta level -# 112-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 120-159 Reserved 160 160 Depth below sea level (m) -#161-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.6.table b/definitions/grib2/tables/6/4.6.table index 300113b0f..5787dd26f 100644 --- a/definitions/grib2/tables/6/4.6.table +++ b/definitions/grib2/tables/6/4.6.table @@ -5,6 +5,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.7.table b/definitions/grib2/tables/6/4.7.table index 118508672..1dfaf3f0e 100644 --- a/definitions/grib2/tables/6/4.7.table +++ b/definitions/grib2/tables/6/4.7.table @@ -6,5 +6,4 @@ 4 4 Spread of all members 5 5 Large anomaly index of all members (see Note) 6 6 Unweighted mean of the cluster members -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.8.table b/definitions/grib2/tables/6/4.8.table index bba75820a..47d463adf 100644 --- a/definitions/grib2/tables/6/4.8.table +++ b/definitions/grib2/tables/6/4.8.table @@ -1,5 +1,4 @@ # CODE TABLE 4.8, Clustering Method 0 0 Anomaly correlation 1 1 Root mean square -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.9.table b/definitions/grib2/tables/6/4.9.table index cd80b7818..95738e5bc 100644 --- a/definitions/grib2/tables/6/4.9.table +++ b/definitions/grib2/tables/6/4.9.table @@ -5,5 +5,4 @@ 2 2 Probability of event between lower and upper limits. The range includes the lower limit but not the upper limit 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/4.91.table b/definitions/grib2/tables/6/4.91.table index f9606f201..8d2975f84 100644 --- a/definitions/grib2/tables/6/4.91.table +++ b/definitions/grib2/tables/6/4.91.table @@ -11,5 +11,4 @@ 9 9 Lower or equal upper limit 10 10 Between lower and upper limits. The range includes the upper limit but not the lower limit 11 11 Equal to first limit -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/6/5.0.table b/definitions/grib2/tables/6/5.0.table index ccf4f88cb..c6d03bef7 100644 --- a/definitions/grib2/tables/6/5.0.table +++ b/definitions/grib2/tables/6/5.0.table @@ -9,7 +9,6 @@ 50 50 Spectral data -simple packing 51 51 Spherical harmonics data - complex packing 61 61 Grid point data - simple packing with logarithm pre-processing -# 192-254 Reserved for local use 255 255 Missing 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling diff --git a/definitions/grib2/tables/6/5.1.table b/definitions/grib2/tables/6/5.1.table index d7ca4bedc..52ac8d861 100644 --- a/definitions/grib2/tables/6/5.1.table +++ b/definitions/grib2/tables/6/5.1.table @@ -1,5 +1,4 @@ # CODE TABLE 5.1, Type of original field values 0 0 Floating point 1 1 Integer -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/5.2.table b/definitions/grib2/tables/6/5.2.table index a048d712e..040c7fd6d 100644 --- a/definitions/grib2/tables/6/5.2.table +++ b/definitions/grib2/tables/6/5.2.table @@ -2,5 +2,4 @@ 0 0 Explicit coordinate values set 1 1 Linear coordinates 11 11 Geometric coordinates -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/5.3.table b/definitions/grib2/tables/6/5.3.table index 4a673ef85..e92a2b74c 100644 --- a/definitions/grib2/tables/6/5.3.table +++ b/definitions/grib2/tables/6/5.3.table @@ -2,5 +2,4 @@ 1 1 Direction Degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/5.4.table b/definitions/grib2/tables/6/5.4.table index 1fd37966f..aed51082a 100644 --- a/definitions/grib2/tables/6/5.4.table +++ b/definitions/grib2/tables/6/5.4.table @@ -1,5 +1,4 @@ # CODE TABLE 5.4, Group Splitting Method 0 0 Row by row splitting 1 1 General group splitting -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/5.40.table b/definitions/grib2/tables/6/5.40.table index 1eef7c763..a31bebc59 100644 --- a/definitions/grib2/tables/6/5.40.table +++ b/definitions/grib2/tables/6/5.40.table @@ -1,5 +1,4 @@ # Code Table 5.40: Type of Compression 0 0 Lossless 1 1 Lossy -#2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/6/5.5.table b/definitions/grib2/tables/6/5.5.table index d1caac9e8..2143388cb 100644 --- a/definitions/grib2/tables/6/5.5.table +++ b/definitions/grib2/tables/6/5.5.table @@ -3,5 +3,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/6/5.6.table b/definitions/grib2/tables/6/5.6.table index 7dc16a994..aaf705d48 100644 --- a/definitions/grib2/tables/6/5.6.table +++ b/definitions/grib2/tables/6/5.6.table @@ -2,5 +2,4 @@ 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/0.0.table b/definitions/grib2/tables/7/0.0.table index fd2056350..39475306e 100644 --- a/definitions/grib2/tables/7/0.0.table +++ b/definitions/grib2/tables/7/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/1.2.table b/definitions/grib2/tables/7/1.2.table index eb8755209..65b1aca9a 100644 --- a/definitions/grib2/tables/7/1.2.table +++ b/definitions/grib2/tables/7/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -#4-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/1.3.table b/definitions/grib2/tables/7/1.3.table index 14667f9b8..40a139a24 100644 --- a/definitions/grib2/tables/7/1.3.table +++ b/definitions/grib2/tables/7/1.3.table @@ -5,6 +5,4 @@ 3 3 Re-analysis products 4 4 THORPEX Interactive Grand Global Ensemble (TIGGE) 5 5 THORPEX Interactive Grand Global Ensemble (TIGGE) test -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/1.4.table b/definitions/grib2/tables/7/1.4.table index 997bfda9d..9ba78e668 100644 --- a/definitions/grib2/tables/7/1.4.table +++ b/definitions/grib2/tables/7/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/7/3.0.table b/definitions/grib2/tables/7/3.0.table index b01b00c64..b6aa6b18d 100644 --- a/definitions/grib2/tables/7/3.0.table +++ b/definitions/grib2/tables/7/3.0.table @@ -1,6 +1,4 @@ # CODE TABLE 3.0, Source of Grid Definition 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/7/3.1.table b/definitions/grib2/tables/7/3.1.table index ee6412390..83fd85cf2 100644 --- a/definitions/grib2/tables/7/3.1.table +++ b/definitions/grib2/tables/7/3.1.table @@ -3,41 +3,25 @@ 1 1 Rotated latitude/longitude 2 2 Stretched latitude/longitude 3 3 Stretched and rotated latitude/longitude -# 4-9 Reserved 10 10 Mercator -# 11-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron -# 101-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-129 Reserved 130 130 Irregular latitude/longitude grid -# 131-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid, with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid, with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/7/3.10.table b/definitions/grib2/tables/7/3.10.table index 04686d32e..ec463ef0b 100644 --- a/definitions/grib2/tables/7/3.10.table +++ b/definitions/grib2/tables/7/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/7/3.11.table b/definitions/grib2/tables/7/3.11.table index b82a94f28..3b243b661 100644 --- a/definitions/grib2/tables/7/3.11.table +++ b/definitions/grib2/tables/7/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/7/3.2.table b/definitions/grib2/tables/7/3.2.table index 522e8731c..9f22f83e9 100644 --- a/definitions/grib2/tables/7/3.2.table +++ b/definitions/grib2/tables/7/3.2.table @@ -8,6 +8,4 @@ 6 6 Earth assumed spherical with radius of 6 371 229.0 m 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame -# 9-191 Reserved -# 192- 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/3.20.table b/definitions/grib2/tables/7/3.20.table index cfa35ae38..f79d193b6 100644 --- a/definitions/grib2/tables/7/3.20.table +++ b/definitions/grib2/tables/7/3.20.table @@ -1,6 +1,4 @@ # CODE TABLE 3.20, Type of horizontal line 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/3.21.table b/definitions/grib2/tables/7/3.21.table index 460303537..63de8ba93 100644 --- a/definitions/grib2/tables/7/3.21.table +++ b/definitions/grib2/tables/7/3.21.table @@ -1,8 +1,5 @@ # CODE TABLE 3.21, Vertical dimension coordinate values definition 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/3.3.table b/definitions/grib2/tables/7/3.3.table index e662b20f2..6a11e242c 100644 --- a/definitions/grib2/tables/7/3.3.table +++ b/definitions/grib2/tables/7/3.3.table @@ -1,9 +1,7 @@ # FLAG TABLE 3.3, Resolution and Component Flags -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/7/3.4.table b/definitions/grib2/tables/7/3.4.table index d3cad225c..51d0664b2 100644 --- a/definitions/grib2/tables/7/3.4.table +++ b/definitions/grib2/tables/7/3.4.table @@ -7,4 +7,3 @@ 3 1 Adjacent points in j (y) direction is consecutive 4 0 All rows scan in the same direction 4 1 Adjacent rows scans in the opposite direction -# 5-8 Reserved diff --git a/definitions/grib2/tables/7/3.8.table b/definitions/grib2/tables/7/3.8.table index 0d9b7d001..a6b503617 100644 --- a/definitions/grib2/tables/7/3.8.table +++ b/definitions/grib2/tables/7/3.8.table @@ -2,7 +2,5 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -#3-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/3.9.table b/definitions/grib2/tables/7/3.9.table index cc2e6104b..e95fb5922 100644 --- a/definitions/grib2/tables/7/3.9.table +++ b/definitions/grib2/tables/7/3.9.table @@ -1,4 +1,3 @@ # FLAG TABLE 3.9, Numbering order of diamonds as seen from the corresponding pole 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/7/4.0.table b/definitions/grib2/tables/7/4.0.table index 97223a788..b72c6a584 100644 --- a/definitions/grib2/tables/7/4.0.table +++ b/definitions/grib2/tables/7/4.0.table @@ -15,13 +15,10 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically-processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -#16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data -#33-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -33,21 +30,15 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of atmospheric aerosol 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -#52-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -#92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -#1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -#1102-32767 Reserved -#32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/7/4.1.0.table b/definitions/grib2/tables/7/4.1.0.table index 65d694699..78c2e5cbd 100644 --- a/definitions/grib2/tables/7/4.1.0.table +++ b/definitions/grib2/tables/7/4.1.0.table @@ -21,8 +21,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.1.1.table b/definitions/grib2/tables/7/4.1.1.table index ebb7d9ea0..220c7fd5a 100644 --- a/definitions/grib2/tables/7/4.1.1.table +++ b/definitions/grib2/tables/7/4.1.1.table @@ -2,8 +2,6 @@ #Category Description 0 0 Hydrology basic products 1 1 Hydrology probabilities -#2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.1.10.table b/definitions/grib2/tables/7/4.1.10.table index 9c1bfc31b..bd45687bf 100644 --- a/definitions/grib2/tables/7/4.1.10.table +++ b/definitions/grib2/tables/7/4.1.10.table @@ -5,7 +5,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Sub-surface properties -# 5-190 Reserved 191 191 Miscellaneous -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.1.2.table b/definitions/grib2/tables/7/4.1.2.table index 34e0423bf..e15bd8d55 100644 --- a/definitions/grib2/tables/7/4.1.2.table +++ b/definitions/grib2/tables/7/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.1.3.table b/definitions/grib2/tables/7/4.1.3.table index f7578e163..744f02eba 100644 --- a/definitions/grib2/tables/7/4.1.3.table +++ b/definitions/grib2/tables/7/4.1.3.table @@ -2,8 +2,6 @@ #Category Description 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.10.table b/definitions/grib2/tables/7/4.10.table index e25f8cafd..5ecfe1836 100644 --- a/definitions/grib2/tables/7/4.10.table +++ b/definitions/grib2/tables/7/4.10.table @@ -9,6 +9,4 @@ 7 cov Covariance (temporal variance) 8 8 Difference (value at the start of time range minus value at the end) 9 ratio Ratio -# 10-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/7/4.11.table b/definitions/grib2/tables/7/4.11.table index 30b90be0d..2454aa234 100644 --- a/definitions/grib2/tables/7/4.11.table +++ b/definitions/grib2/tables/7/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.12.table b/definitions/grib2/tables/7/4.12.table index b119996a6..6ad61a7b0 100644 --- a/definitions/grib2/tables/7/4.12.table +++ b/definitions/grib2/tables/7/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.13.table b/definitions/grib2/tables/7/4.13.table index 29ddf2a3c..255f90b78 100644 --- a/definitions/grib2/tables/7/4.13.table +++ b/definitions/grib2/tables/7/4.13.table @@ -1,5 +1,4 @@ # CODE TABLE 4.13, Quality Control Indicator 0 0 No quality control applied 1 1 Quality control applied -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.14.table b/definitions/grib2/tables/7/4.14.table index e19c14c2f..34b0931f7 100644 --- a/definitions/grib2/tables/7/4.14.table +++ b/definitions/grib2/tables/7/4.14.table @@ -1,5 +1,4 @@ # CODE TABLE 4.14, Clutter Filter Indicator 0 0 No clutter filter used 1 1 Clutter filter used -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.15.table b/definitions/grib2/tables/7/4.15.table index 504128024..fce304fe2 100644 --- a/definitions/grib2/tables/7/4.15.table +++ b/definitions/grib2/tables/7/4.15.table @@ -5,6 +5,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point (see note 2) 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point (see note 3) -#7-191 Reserved -#192-254 Reserved for Local Use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.151.table b/definitions/grib2/tables/7/4.151.table index 30487afb4..90a8c6ca0 100644 --- a/definitions/grib2/tables/7/4.151.table +++ b/definitions/grib2/tables/7/4.151.table @@ -3,5 +3,4 @@ 1 1 suspect 2 2 acceptable 3 3 excellent -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.2.0.0.table b/definitions/grib2/tables/7/4.2.0.0.table index 6ed6b944a..98fc9552d 100644 --- a/definitions/grib2/tables/7/4.2.0.0.table +++ b/definitions/grib2/tables/7/4.2.0.0.table @@ -20,6 +20,4 @@ 18 18 Snow temperature (top of snow) - validation (K) 19 19 Turbulent transfer coefficient for heat - validation (Numeric) 20 20 Turbulent diffusion coefficient for heat - validation (m2 s-1) -#21-191 21-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.1.table b/definitions/grib2/tables/7/4.2.0.1.table index 95e016a2a..722e1ab58 100644 --- a/definitions/grib2/tables/7/4.2.0.1.table +++ b/definitions/grib2/tables/7/4.2.0.1.table @@ -86,6 +86,4 @@ 84 84 Specific cloud ice water content (kg kg-1) 85 85 Specific rain water content (kg kg-1) 86 86 Specific snow water content (kg kg-1) -#87-191 87-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.13.table b/definitions/grib2/tables/7/4.2.0.13.table index 58f38e3dd..8aaeeb308 100644 --- a/definitions/grib2/tables/7/4.2.0.13.table +++ b/definitions/grib2/tables/7/4.2.0.13.table @@ -1,5 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Aerosol type (code table (4.205) -#1-191 1-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.14.table b/definitions/grib2/tables/7/4.2.0.14.table index 23cae2c4c..230b0bb65 100644 --- a/definitions/grib2/tables/7/4.2.0.14.table +++ b/definitions/grib2/tables/7/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (Dobson) 1 1 Ozone mixing ratio (kg kg-1) 2 2 Total column integrated ozone (Dobson) -#3-191 3-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.15.table b/definitions/grib2/tables/7/4.2.0.15.table index a42e5b7d9..51ea2499f 100644 --- a/definitions/grib2/tables/7/4.2.0.15.table +++ b/definitions/grib2/tables/7/4.2.0.15.table @@ -14,6 +14,4 @@ 12 12 Reflectivity of rain - validation (dB) 13 13 Reflectivity of graupel - validation (dB) 14 14 Reflectivity of hail - validation (dB) -#15-191 15-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.16.table b/definitions/grib2/tables/7/4.2.0.16.table index e8a9d2be9..0b8fbd46a 100644 --- a/definitions/grib2/tables/7/4.2.0.16.table +++ b/definitions/grib2/tables/7/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -#6-191 6-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.18.table b/definitions/grib2/tables/7/4.2.0.18.table index e6b3ab049..6de688a0b 100644 --- a/definitions/grib2/tables/7/4.2.0.18.table +++ b/definitions/grib2/tables/7/4.2.0.18.table @@ -13,6 +13,4 @@ 11 11 Wet deposition (Bq m-2) 12 12 Dry deposition (Bq m-2) 13 13 Total deposition (wet + dry) (Bq m-2) -#14-191 9-191 Reserved -#192-254 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.2.0.19.table b/definitions/grib2/tables/7/4.2.0.19.table index 46cb8515d..0af7a5191 100644 --- a/definitions/grib2/tables/7/4.2.0.19.table +++ b/definitions/grib2/tables/7/4.2.0.19.table @@ -26,6 +26,4 @@ 24 24 Convective turbulent kinetic energy - validation (J kg-1) 25 25 Weather Interpretation ww (WMO) - validation 26 26 Convective outlook (code table (4.224) -#27-191 26-191 Reserved -#192-254 192-254 Reserved for local use (-) 255 255 Missing diff --git a/definitions/grib2/tables/7/4.2.0.190.table b/definitions/grib2/tables/7/4.2.0.190.table index faa27c532..378f9705f 100644 --- a/definitions/grib2/tables/7/4.2.0.190.table +++ b/definitions/grib2/tables/7/4.2.0.190.table @@ -1,5 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Arbitrary text string (CCITTIA5) -#1-191 1-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.191.table b/definitions/grib2/tables/7/4.2.0.191.table index 6c40c61ce..feef9300e 100644 --- a/definitions/grib2/tables/7/4.2.0.191.table +++ b/definitions/grib2/tables/7/4.2.0.191.table @@ -2,6 +2,4 @@ 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Geographical latitude - validation (deg N) 2 2 Geographical longitude - validation (deg E) -#3-191 3-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.2.table b/definitions/grib2/tables/7/4.2.0.2.table index 8380d5160..efc60025d 100644 --- a/definitions/grib2/tables/7/4.2.0.2.table +++ b/definitions/grib2/tables/7/4.2.0.2.table @@ -32,6 +32,4 @@ 30 30 Frictional velocity (m s-1) 31 31 Turbulent diffusion coefficient for momentum (m2 s-1) 32 32 eta coordinate vertical velocity (s-1) -#33-191 33-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.20.table b/definitions/grib2/tables/7/4.2.0.20.table index ca4189468..e28466561 100644 --- a/definitions/grib2/tables/7/4.2.0.20.table +++ b/definitions/grib2/tables/7/4.2.0.20.table @@ -8,7 +8,6 @@ 6 6 Surface dry deposition mass flux (kg m-2 s-1) 7 7 Surface wet deposition mass flux (kg m-2 s-1) 8 8 Atmosphere re-emission mass flux (kg m-2 s-1) -#9-49 9-49 Reserved (-) 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol mol-1) @@ -18,9 +17,6 @@ 56 56 Changes of amount in atmosphere (see Note 1) (mol s-1) 57 57 Total yearly average burden of the atmosphere (mol) 58 58 Total yearly averaged atmospheric loss (see Note 1) (mol s-1) -#59-99 59-99 Reserved (-) 100 100 Surface area density (aerosol) (m-1) 101 101 Atmosphere optical thickness (m) -#102-191 102-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.3.table b/definitions/grib2/tables/7/4.2.0.3.table index ade052931..31f31d2e1 100644 --- a/definitions/grib2/tables/7/4.2.0.3.table +++ b/definitions/grib2/tables/7/4.2.0.3.table @@ -25,6 +25,4 @@ 23 23 Gravity wave dissipation (Wm-2) 24 24 Anisotropy of sub-gridscale orography (Numeric) 25 25 Natural logarithm of pressure in Pa (Numeric) -#26-191 26-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.4.table b/definitions/grib2/tables/7/4.2.0.4.table index d22ce42d3..365fd98a1 100644 --- a/definitions/grib2/tables/7/4.2.0.4.table +++ b/definitions/grib2/tables/7/4.2.0.4.table @@ -12,9 +12,6 @@ 10 10 Photosynthetically active radiation (W m-2) 11 11 Net short-wave radiation flux, clear sky (W m-2) 12 12 Downward UV radiation (W m-2) -#13-49 13-49 Reserved (-) 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) -#52-191 52-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.5.table b/definitions/grib2/tables/7/4.2.0.5.table index 6128eb9c0..719325746 100644 --- a/definitions/grib2/tables/7/4.2.0.5.table +++ b/definitions/grib2/tables/7/4.2.0.5.table @@ -6,6 +6,4 @@ 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long wave radiation flux (W m-2) 6 6 Net long-wave radiation flux, clear sky (W m-2) -#7-191 7-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.6.table b/definitions/grib2/tables/7/4.2.0.6.table index b7f10a431..ca5688e25 100644 --- a/definitions/grib2/tables/7/4.2.0.6.table +++ b/definitions/grib2/tables/7/4.2.0.6.table @@ -26,7 +26,6 @@ 24 24 Sunshine (Numeric) 25 25 Horizontal extent of cumulonimbus (CB) (%) 26 26 Height of convective cloud base - validation (m) -#26-31 26-31 Reserved (-) 27 27 Height of convective cloud top - validation (m) 28 28 Number concentration of cloud droplets - validation (kg-1) 29 29 Number concentration of cloud ice - validation (kg-1) @@ -34,6 +33,4 @@ 31 31 Number density of cloud ice - validation (m-3) 32 32 Fraction of cloud cover (Numeric) 33 33 Sunshine duration (s) -#34-191 34-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.0.7.table b/definitions/grib2/tables/7/4.2.0.7.table index bced218f0..e233a8311 100644 --- a/definitions/grib2/tables/7/4.2.0.7.table +++ b/definitions/grib2/tables/7/4.2.0.7.table @@ -15,6 +15,4 @@ 13 13 Showalter index - validation (K) 14 14 Reserved 15 15 Updraft helicity (m2 s-2) -#16-191 14-191 Reserved -#192-254 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.2.1.0.table b/definitions/grib2/tables/7/4.2.1.0.table index 277ecf6d9..babfba396 100644 --- a/definitions/grib2/tables/7/4.2.1.0.table +++ b/definitions/grib2/tables/7/4.2.1.0.table @@ -6,6 +6,4 @@ 4 4 Snow water equivalent percent of normal (%) 5 5 Baseflow-groundwater runoff (kg m-2) 6 6 Storm surface runoff (kg m-2) -#7-191 7-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.1.1.table b/definitions/grib2/tables/7/4.2.1.1.table index 979e94557..56bf798d4 100644 --- a/definitions/grib2/tables/7/4.2.1.1.table +++ b/definitions/grib2/tables/7/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional percent precipitation amount fractile for an overall period (Encoded as an accumulation). (kg m-2) 1 1 Percent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -#3-191 3-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.10.0.table b/definitions/grib2/tables/7/4.2.10.0.table index 7671a7a5c..b40fa4313 100644 --- a/definitions/grib2/tables/7/4.2.10.0.table +++ b/definitions/grib2/tables/7/4.2.10.0.table @@ -15,6 +15,4 @@ 13 13 Secondary wave mean period (s) 14 14 Direction of combined wind waves and swell (Degree true) 15 15 Mean period of combined wind waves and swell (s) -#16-191 16-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.10.1.table b/definitions/grib2/tables/7/4.2.10.1.table index cc238fbb1..d5514d76d 100644 --- a/definitions/grib2/tables/7/4.2.10.1.table +++ b/definitions/grib2/tables/7/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m s-1) 2 2 u-component of current (m s-1) 3 3 v-component of current (m s-1) -#4-191 4-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.10.191.table b/definitions/grib2/tables/7/4.2.10.191.table index 72cf1ce97..c76f2d6a8 100644 --- a/definitions/grib2/tables/7/4.2.10.191.table +++ b/definitions/grib2/tables/7/4.2.10.191.table @@ -1,6 +1,4 @@ # Product discipline 10 - Oceanographic products, parameter category 191: miscellaneous 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Meridional overturning stream function (m3 s-1) -#2-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.2.10.2.table b/definitions/grib2/tables/7/4.2.10.2.table index bf3dd9f12..48bd23ca7 100644 --- a/definitions/grib2/tables/7/4.2.10.2.table +++ b/definitions/grib2/tables/7/4.2.10.2.table @@ -9,6 +9,4 @@ 7 7 Ice divergence (s-1) 8 8 Ice temperature (K) 9 9 Ice internal pressure (Pa m) -#10-191 9-191 Reserved -#192-254 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.2.10.3.table b/definitions/grib2/tables/7/4.2.10.3.table index 62b2a8e83..949e05071 100644 --- a/definitions/grib2/tables/7/4.2.10.3.table +++ b/definitions/grib2/tables/7/4.2.10.3.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -#2-191 2-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.10.4.table b/definitions/grib2/tables/7/4.2.10.4.table index a0d465e28..8d2ced728 100644 --- a/definitions/grib2/tables/7/4.2.10.4.table +++ b/definitions/grib2/tables/7/4.2.10.4.table @@ -6,6 +6,4 @@ 4 4 Ocean vertical heat diffusivity (m2 s-1) 5 5 Ocean vertical salt diffusivity (m2 s-1) 6 6 Ocean vertical momentum diffusivity (m2 s-1) -#7-191 4-191 Reserved -#192-254 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.2.2.0.table b/definitions/grib2/tables/7/4.2.2.0.table index 948baa63c..a82307d23 100644 --- a/definitions/grib2/tables/7/4.2.2.0.table +++ b/definitions/grib2/tables/7/4.2.2.0.table @@ -32,6 +32,4 @@ 30 30 Deciduous forest - validation (Numeric) 31 31 Normalized differential vegetation index (NDVI) - validation (Numeric) 32 32 Root depth of vegetation - validation (M) -#33-191 33-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.2.3.table b/definitions/grib2/tables/7/4.2.2.3.table index 8f377590b..c46c49d9c 100644 --- a/definitions/grib2/tables/7/4.2.2.3.table +++ b/definitions/grib2/tables/7/4.2.2.3.table @@ -22,6 +22,4 @@ 20 20 Column-integrated soil moisture - validation (kg m-2) 21 21 Soil ice - validation (kg m-3) 22 22 Column-integrated soil ice - validation (kg m-2) -#23-191 23-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.3.0.table b/definitions/grib2/tables/7/4.2.3.0.table index 119edb304..9d2ea2129 100644 --- a/definitions/grib2/tables/7/4.2.3.0.table +++ b/definitions/grib2/tables/7/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -#10-191 10-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.2.3.1.table b/definitions/grib2/tables/7/4.2.3.1.table index d0a16c127..b146969d9 100644 --- a/definitions/grib2/tables/7/4.2.3.1.table +++ b/definitions/grib2/tables/7/4.2.3.1.table @@ -23,6 +23,4 @@ 21 21 Aerosol optical thickness at 0.810 um (-) 22 22 Aerosol optical thickness at 1.640 um (-) 23 23 Angstrom coefficient (-) -#24-191 24-191 Reserved (-) -#192-254 192-254 Reserved for local use (-) 255 255 Missing (-) diff --git a/definitions/grib2/tables/7/4.201.table b/definitions/grib2/tables/7/4.201.table index 29d8daad7..18941cf39 100644 --- a/definitions/grib2/tables/7/4.201.table +++ b/definitions/grib2/tables/7/4.201.table @@ -5,6 +5,4 @@ 3 3 Freezing rain 4 4 Mixed/ice 5 5 Snow -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.202.table b/definitions/grib2/tables/7/4.202.table index 242f2d5af..8044d02aa 100644 --- a/definitions/grib2/tables/7/4.202.table +++ b/definitions/grib2/tables/7/4.202.table @@ -1,3 +1,2 @@ # CODE TABLE 4.202, Precipitable water category -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.203.table b/definitions/grib2/tables/7/4.203.table index 057f40910..d7a750534 100644 --- a/definitions/grib2/tables/7/4.203.table +++ b/definitions/grib2/tables/7/4.203.table @@ -21,5 +21,4 @@ 19 19 Cirrocumulus - ground based fog beneath the lowest layer 20 20 Cirrus - ground based fog beneath the lowest layer 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.204.table b/definitions/grib2/tables/7/4.204.table index 41b47ef7c..eebc517a6 100644 --- a/definitions/grib2/tables/7/4.204.table +++ b/definitions/grib2/tables/7/4.204.table @@ -4,5 +4,4 @@ 2 2 Few (3% - 15%) 3 3 Scattered (16% - 45%) 4 4 Numerous (> 45%) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.205.table b/definitions/grib2/tables/7/4.205.table index 0e16fb9a9..08267bb19 100644 --- a/definitions/grib2/tables/7/4.205.table +++ b/definitions/grib2/tables/7/4.205.table @@ -1,5 +1,4 @@ # CODE TABLE 4.205, Presence of aerosol 0 0 Aerosol not present 1 1 Aerosol present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.206.table b/definitions/grib2/tables/7/4.206.table index ea5bfcbc2..33353e74b 100644 --- a/definitions/grib2/tables/7/4.206.table +++ b/definitions/grib2/tables/7/4.206.table @@ -1,5 +1,4 @@ # CODE TABLE 4.206, Volcanic ash 0 0 Not present 1 1 Present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.207.table b/definitions/grib2/tables/7/4.207.table index 1fa48a194..d92a6b811 100644 --- a/definitions/grib2/tables/7/4.207.table +++ b/definitions/grib2/tables/7/4.207.table @@ -3,5 +3,4 @@ 1 1 Light 2 2 Moderate 3 3 Severe -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.208.table b/definitions/grib2/tables/7/4.208.table index 902d03a57..a14539b22 100644 --- a/definitions/grib2/tables/7/4.208.table +++ b/definitions/grib2/tables/7/4.208.table @@ -4,5 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.209.table b/definitions/grib2/tables/7/4.209.table index 7218049e4..e0c422325 100644 --- a/definitions/grib2/tables/7/4.209.table +++ b/definitions/grib2/tables/7/4.209.table @@ -3,5 +3,4 @@ 2 2 Mechanically driven turbulence 3 3 Forced convection 4 4 Free convection -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.210.table b/definitions/grib2/tables/7/4.210.table index 53ae41be2..58bdd2da3 100644 --- a/definitions/grib2/tables/7/4.210.table +++ b/definitions/grib2/tables/7/4.210.table @@ -1,5 +1,4 @@ # CODE TABLE 4.210, Contrail intensity 0 0 Contrail not present 1 1 Contrail present -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.211.table b/definitions/grib2/tables/7/4.211.table index 56565001c..01bb27657 100644 --- a/definitions/grib2/tables/7/4.211.table +++ b/definitions/grib2/tables/7/4.211.table @@ -2,5 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non bypass -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.212.table b/definitions/grib2/tables/7/4.212.table index 10f38d1ef..e7274d600 100644 --- a/definitions/grib2/tables/7/4.212.table +++ b/definitions/grib2/tables/7/4.212.table @@ -12,5 +12,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.213.table b/definitions/grib2/tables/7/4.213.table index 199042325..4bf4f0ab0 100644 --- a/definitions/grib2/tables/7/4.213.table +++ b/definitions/grib2/tables/7/4.213.table @@ -10,5 +10,4 @@ 9 9 Sandy clay 10 10 Silty clay 11 11 Clay -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.217.table b/definitions/grib2/tables/7/4.217.table index 2bd70f1d3..032b14964 100644 --- a/definitions/grib2/tables/7/4.217.table +++ b/definitions/grib2/tables/7/4.217.table @@ -3,5 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.220.table b/definitions/grib2/tables/7/4.220.table index ea7c55e48..d2efbaae3 100644 --- a/definitions/grib2/tables/7/4.220.table +++ b/definitions/grib2/tables/7/4.220.table @@ -1,5 +1,4 @@ # CODE TABLE 4.220, Horizontal dimension processed 0 0 Latitude 1 1 Longitude -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.221.table b/definitions/grib2/tables/7/4.221.table index d63c545c5..27775d7d0 100644 --- a/definitions/grib2/tables/7/4.221.table +++ b/definitions/grib2/tables/7/4.221.table @@ -1,5 +1,4 @@ # CODE TABLE 4.221, Treatment of missing data 0 0 Not included 1 1 Extrapolated -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.224.table b/definitions/grib2/tables/7/4.224.table index 4128aea6a..e306458a0 100644 --- a/definitions/grib2/tables/7/4.224.table +++ b/definitions/grib2/tables/7/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -#9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -#12-13 Reserved 14 14 Critical risk area -#15-17 Reserved 18 18 Extremely critical risk area -#19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/7/4.230.table b/definitions/grib2/tables/7/4.230.table index 7bcbe3043..630393b96 100644 --- a/definitions/grib2/tables/7/4.230.table +++ b/definitions/grib2/tables/7/4.230.table @@ -62,7 +62,6 @@ 10023 10023 Xylene #10024-10499 10024-10499 reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides,...) 10500 10500 Dimethyl sulphide -#10501-20000 10501-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 diff --git a/definitions/grib2/tables/7/4.3.table b/definitions/grib2/tables/7/4.3.table index 47bccd26b..6cddace73 100644 --- a/definitions/grib2/tables/7/4.3.table +++ b/definitions/grib2/tables/7/4.3.table @@ -11,6 +11,4 @@ 9 9 Climatological 10 10 Probability-weighted forecast 11 11 Bias-corrected ensemble forecast -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.4.table b/definitions/grib2/tables/7/4.4.table index 61aa20c5f..ae3c412b5 100644 --- a/definitions/grib2/tables/7/4.4.table +++ b/definitions/grib2/tables/7/4.4.table @@ -11,6 +11,4 @@ 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.5.table b/definitions/grib2/tables/7/4.5.table index 5b80a90fc..81dae2dd3 100644 --- a/definitions/grib2/tables/7/4.5.table +++ b/definitions/grib2/tables/7/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -#21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -27,12 +25,8 @@ 109 pv Potential vorticity surface (K m2 kg-1 s-1) 110 110 Reserved 111 111 Eta level -# 112-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 120-159 Reserved 160 160 Depth below sea level (m) -#161-191 Reserved -#192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.6.table b/definitions/grib2/tables/7/4.6.table index 1e89185fd..5787dd26f 100644 --- a/definitions/grib2/tables/7/4.6.table +++ b/definitions/grib2/tables/7/4.6.table @@ -5,6 +5,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.7.table b/definitions/grib2/tables/7/4.7.table index 2f3d96720..82638a049 100644 --- a/definitions/grib2/tables/7/4.7.table +++ b/definitions/grib2/tables/7/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.8.table b/definitions/grib2/tables/7/4.8.table index d1665027d..fa145a835 100644 --- a/definitions/grib2/tables/7/4.8.table +++ b/definitions/grib2/tables/7/4.8.table @@ -1,5 +1,4 @@ # CODE TABLE 4.8, Clustering Method 0 0 Anomaly correlation 1 1 Root mean square -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.9.table b/definitions/grib2/tables/7/4.9.table index cd80b7818..95738e5bc 100644 --- a/definitions/grib2/tables/7/4.9.table +++ b/definitions/grib2/tables/7/4.9.table @@ -5,5 +5,4 @@ 2 2 Probability of event between lower and upper limits. The range includes the lower limit but not the upper limit 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/4.91.table b/definitions/grib2/tables/7/4.91.table index 253a84126..e23884f11 100644 --- a/definitions/grib2/tables/7/4.91.table +++ b/definitions/grib2/tables/7/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/7/5.0.table b/definitions/grib2/tables/7/5.0.table index ccf4f88cb..c6d03bef7 100644 --- a/definitions/grib2/tables/7/5.0.table +++ b/definitions/grib2/tables/7/5.0.table @@ -9,7 +9,6 @@ 50 50 Spectral data -simple packing 51 51 Spherical harmonics data - complex packing 61 61 Grid point data - simple packing with logarithm pre-processing -# 192-254 Reserved for local use 255 255 Missing 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling diff --git a/definitions/grib2/tables/7/5.1.table b/definitions/grib2/tables/7/5.1.table index d7ca4bedc..52ac8d861 100644 --- a/definitions/grib2/tables/7/5.1.table +++ b/definitions/grib2/tables/7/5.1.table @@ -1,5 +1,4 @@ # CODE TABLE 5.1, Type of original field values 0 0 Floating point 1 1 Integer -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/5.2.table b/definitions/grib2/tables/7/5.2.table index a048d712e..040c7fd6d 100644 --- a/definitions/grib2/tables/7/5.2.table +++ b/definitions/grib2/tables/7/5.2.table @@ -2,5 +2,4 @@ 0 0 Explicit coordinate values set 1 1 Linear coordinates 11 11 Geometric coordinates -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/5.3.table b/definitions/grib2/tables/7/5.3.table index 4a673ef85..e92a2b74c 100644 --- a/definitions/grib2/tables/7/5.3.table +++ b/definitions/grib2/tables/7/5.3.table @@ -2,5 +2,4 @@ 1 1 Direction Degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/5.4.table b/definitions/grib2/tables/7/5.4.table index 1fd37966f..aed51082a 100644 --- a/definitions/grib2/tables/7/5.4.table +++ b/definitions/grib2/tables/7/5.4.table @@ -1,5 +1,4 @@ # CODE TABLE 5.4, Group Splitting Method 0 0 Row by row splitting 1 1 General group splitting -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/5.40.table b/definitions/grib2/tables/7/5.40.table index 1eef7c763..a31bebc59 100644 --- a/definitions/grib2/tables/7/5.40.table +++ b/definitions/grib2/tables/7/5.40.table @@ -1,5 +1,4 @@ # Code Table 5.40: Type of Compression 0 0 Lossless 1 1 Lossy -#2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/7/5.5.table b/definitions/grib2/tables/7/5.5.table index d1caac9e8..2143388cb 100644 --- a/definitions/grib2/tables/7/5.5.table +++ b/definitions/grib2/tables/7/5.5.table @@ -3,5 +3,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 192 254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/7/5.6.table b/definitions/grib2/tables/7/5.6.table index 7dc16a994..aaf705d48 100644 --- a/definitions/grib2/tables/7/5.6.table +++ b/definitions/grib2/tables/7/5.6.table @@ -2,5 +2,4 @@ 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/0.0.table b/definitions/grib2/tables/8/0.0.table index 88d8b2cb3..41ff90231 100644 --- a/definitions/grib2/tables/8/0.0.table +++ b/definitions/grib2/tables/8/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/1.2.table b/definitions/grib2/tables/8/1.2.table index 606bf8300..05dc8c2ea 100644 --- a/definitions/grib2/tables/8/1.2.table +++ b/definitions/grib2/tables/8/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/1.3.table b/definitions/grib2/tables/8/1.3.table index 712bb2ba8..7c0132a8e 100644 --- a/definitions/grib2/tables/8/1.3.table +++ b/definitions/grib2/tables/8/1.3.table @@ -5,6 +5,4 @@ 3 3 Re-analysis products 4 4 THORPEX Interactive Grand Global Ensemble (TIGGE) 5 5 THORPEX Interactive Grand Global Ensemble (TIGGE) test -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/1.4.table b/definitions/grib2/tables/8/1.4.table index 7f47afd96..d14ca167a 100644 --- a/definitions/grib2/tables/8/1.4.table +++ b/definitions/grib2/tables/8/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/8/3.0.table b/definitions/grib2/tables/8/3.0.table index 4269b25ad..a803cb068 100644 --- a/definitions/grib2/tables/8/3.0.table +++ b/definitions/grib2/tables/8/3.0.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/8/3.1.table b/definitions/grib2/tables/8/3.1.table index 15cbf2d57..8b4aa217f 100644 --- a/definitions/grib2/tables/8/3.1.table +++ b/definitions/grib2/tables/8/3.1.table @@ -3,39 +3,24 @@ 1 1 Rotated latitude/longitude 2 2 Stretched latitude/longitude 3 3 Stretched and rotated latitude/longitude -# 4-9 Reserved 10 10 Mercator -# 11-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron -# 101-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid, with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid, with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/8/3.10.table b/definitions/grib2/tables/8/3.10.table index da36dc664..da6ef60f8 100644 --- a/definitions/grib2/tables/8/3.10.table +++ b/definitions/grib2/tables/8/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/8/3.11.table b/definitions/grib2/tables/8/3.11.table index 0a299af98..bad05e213 100644 --- a/definitions/grib2/tables/8/3.11.table +++ b/definitions/grib2/tables/8/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/8/3.15.table b/definitions/grib2/tables/8/3.15.table index 976862747..8430006e7 100644 --- a/definitions/grib2/tables/8/3.15.table +++ b/definitions/grib2/tables/8/3.15.table @@ -1,7 +1,5 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -15,8 +13,5 @@ 110 110 Geometrical height (m) 111 111 Eta coordinate 112 112 Geopotential height (gpm) -# 113-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/3.2.table b/definitions/grib2/tables/8/3.2.table index 563efbdb5..ed45a51b2 100644 --- a/definitions/grib2/tables/8/3.2.table +++ b/definitions/grib2/tables/8/3.2.table @@ -8,6 +8,4 @@ 6 6 Earth assumed spherical with radius of 6 371 229.0 m 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/3.20.table b/definitions/grib2/tables/8/3.20.table index 63de6b1a9..49f742062 100644 --- a/definitions/grib2/tables/8/3.20.table +++ b/definitions/grib2/tables/8/3.20.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/3.21.table b/definitions/grib2/tables/8/3.21.table index 2bc46aae9..6a3956a8e 100644 --- a/definitions/grib2/tables/8/3.21.table +++ b/definitions/grib2/tables/8/3.21.table @@ -1,8 +1,5 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/3.3.table b/definitions/grib2/tables/8/3.3.table index bd47e2509..cf950fbcf 100644 --- a/definitions/grib2/tables/8/3.3.table +++ b/definitions/grib2/tables/8/3.3.table @@ -1,9 +1,7 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/8/3.4.table b/definitions/grib2/tables/8/3.4.table index 752c70757..9d4a7abca 100644 --- a/definitions/grib2/tables/8/3.4.table +++ b/definitions/grib2/tables/8/3.4.table @@ -7,4 +7,3 @@ 3 1 Adjacent points in j (y) direction is consecutive 4 0 All rows scan in the same direction 4 1 Adjacent rows scans in the opposite direction -# 5-8 Reserved diff --git a/definitions/grib2/tables/8/3.7.table b/definitions/grib2/tables/8/3.7.table index 4b2e684d3..13c931d84 100644 --- a/definitions/grib2/tables/8/3.7.table +++ b/definitions/grib2/tables/8/3.7.table @@ -1,5 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Reserved 1 1 The complex numbers Fnm (see code figure 1 in Code Table 3.6 above) are stored for m>=0 as pairs of real numbers Re(Fnm), Im(Fnm) ordered with n increasing from m to N(m), first for m=0 and then for m=1, 2, ... M. (see Note 1) -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/8/3.8.table b/definitions/grib2/tables/8/3.8.table index 6df554ae9..719e18df9 100644 --- a/definitions/grib2/tables/8/3.8.table +++ b/definitions/grib2/tables/8/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/3.9.table b/definitions/grib2/tables/8/3.9.table index 530d1dee0..5e7d3d880 100644 --- a/definitions/grib2/tables/8/3.9.table +++ b/definitions/grib2/tables/8/3.9.table @@ -1,4 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/8/4.0.table b/definitions/grib2/tables/8/4.0.table index 0852d9f0d..17b813507 100644 --- a/definitions/grib2/tables/8/4.0.table +++ b/definitions/grib2/tables/8/4.0.table @@ -15,13 +15,10 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically-processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data -# 33-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -33,21 +30,15 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of atmospheric aerosol 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/8/4.1.0.table b/definitions/grib2/tables/8/4.1.0.table index 3413dbad5..c5f166b65 100644 --- a/definitions/grib2/tables/8/4.1.0.table +++ b/definitions/grib2/tables/8/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.1.1.table b/definitions/grib2/tables/8/4.1.1.table index dea5bc49e..51d3e1752 100644 --- a/definitions/grib2/tables/8/4.1.1.table +++ b/definitions/grib2/tables/8/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.1.10.table b/definitions/grib2/tables/8/4.1.10.table index e6ce6faf7..2541195f0 100644 --- a/definitions/grib2/tables/8/4.1.10.table +++ b/definitions/grib2/tables/8/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Sub-surface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.1.2.table b/definitions/grib2/tables/8/4.1.2.table index 805836998..014bdf18e 100644 --- a/definitions/grib2/tables/8/4.1.2.table +++ b/definitions/grib2/tables/8/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.1.3.table b/definitions/grib2/tables/8/4.1.3.table index c96617665..d8c64da46 100644 --- a/definitions/grib2/tables/8/4.1.3.table +++ b/definitions/grib2/tables/8/4.1.3.table @@ -1,8 +1,6 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.10.table b/definitions/grib2/tables/8/4.10.table index a13fb00b4..c14ded40c 100644 --- a/definitions/grib2/tables/8/4.10.table +++ b/definitions/grib2/tables/8/4.10.table @@ -10,6 +10,4 @@ 8 8 Difference (value at the start of time range minus value at the end) 9 ratio Ratio 10 10 Standardized anomaly -# 11-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/8/4.11.table b/definitions/grib2/tables/8/4.11.table index af9ff29ad..54d5c84de 100644 --- a/definitions/grib2/tables/8/4.11.table +++ b/definitions/grib2/tables/8/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.12.table b/definitions/grib2/tables/8/4.12.table index 6cab67bf5..64c3bdbd9 100644 --- a/definitions/grib2/tables/8/4.12.table +++ b/definitions/grib2/tables/8/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.13.table b/definitions/grib2/tables/8/4.13.table index f090fb9ae..20415bfc5 100644 --- a/definitions/grib2/tables/8/4.13.table +++ b/definitions/grib2/tables/8/4.13.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.14.table b/definitions/grib2/tables/8/4.14.table index bcb04f328..d8a259329 100644 --- a/definitions/grib2/tables/8/4.14.table +++ b/definitions/grib2/tables/8/4.14.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.15.table b/definitions/grib2/tables/8/4.15.table index 6e1ef5745..8e1a90426 100644 --- a/definitions/grib2/tables/8/4.15.table +++ b/definitions/grib2/tables/8/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.151.table b/definitions/grib2/tables/8/4.151.table index 30487afb4..90a8c6ca0 100644 --- a/definitions/grib2/tables/8/4.151.table +++ b/definitions/grib2/tables/8/4.151.table @@ -3,5 +3,4 @@ 1 1 suspect 2 2 acceptable 3 3 excellent -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.0.table b/definitions/grib2/tables/8/4.2.0.0.table index 8656f8974..79dd8518e 100644 --- a/definitions/grib2/tables/8/4.2.0.0.table +++ b/definitions/grib2/tables/8/4.2.0.0.table @@ -20,6 +20,4 @@ 18 18 Snow temperature (top of snow) (K) 19 19 Turbulent transfer coefficient for heat (Numeric) 20 20 Turbulent diffusion coefficient for heat (m2/s) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.1.table b/definitions/grib2/tables/8/4.2.0.1.table index 8ee93e99b..a7dcbfbca 100644 --- a/definitions/grib2/tables/8/4.2.0.1.table +++ b/definitions/grib2/tables/8/4.2.0.1.table @@ -86,10 +86,7 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rain water content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) -# 93-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.13.table b/definitions/grib2/tables/8/4.2.0.13.table index 90ab7d1b9..3aead6cbd 100644 --- a/definitions/grib2/tables/8/4.2.0.13.table +++ b/definitions/grib2/tables/8/4.2.0.13.table @@ -1,5 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.14.table b/definitions/grib2/tables/8/4.2.0.14.table index fca42ccc7..62943028c 100644 --- a/definitions/grib2/tables/8/4.2.0.14.table +++ b/definitions/grib2/tables/8/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.15.table b/definitions/grib2/tables/8/4.2.0.15.table index c89ecd203..a945211ce 100644 --- a/definitions/grib2/tables/8/4.2.0.15.table +++ b/definitions/grib2/tables/8/4.2.0.15.table @@ -14,6 +14,4 @@ 12 12 Reflectivity of rain (dB) 13 13 Reflectivity of graupel (dB) 14 14 Reflectivity of hail (dB) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.16.table b/definitions/grib2/tables/8/4.2.0.16.table index 18dedb7c0..98630ec0e 100644 --- a/definitions/grib2/tables/8/4.2.0.16.table +++ b/definitions/grib2/tables/8/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.18.table b/definitions/grib2/tables/8/4.2.0.18.table index 165aa6008..6de688a0b 100644 --- a/definitions/grib2/tables/8/4.2.0.18.table +++ b/definitions/grib2/tables/8/4.2.0.18.table @@ -13,6 +13,4 @@ 11 11 Wet deposition (Bq m-2) 12 12 Dry deposition (Bq m-2) 13 13 Total deposition (wet + dry) (Bq m-2) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.19.table b/definitions/grib2/tables/8/4.2.0.19.table index 1a2f91974..3a6a60ba8 100644 --- a/definitions/grib2/tables/8/4.2.0.19.table +++ b/definitions/grib2/tables/8/4.2.0.19.table @@ -26,6 +26,4 @@ 24 24 Convective turbulent kinetic energy (J/kg) 25 25 Weather Interpretation ww (WMO) (-) 26 26 Convective outlook (Code table 4.224) -# 27-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.190.table b/definitions/grib2/tables/8/4.2.0.190.table index 3d9d5ff85..f401ef529 100644 --- a/definitions/grib2/tables/8/4.2.0.190.table +++ b/definitions/grib2/tables/8/4.2.0.190.table @@ -1,5 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.191.table b/definitions/grib2/tables/8/4.2.0.191.table index 4ff12e532..c44d4c807 100644 --- a/definitions/grib2/tables/8/4.2.0.191.table +++ b/definitions/grib2/tables/8/4.2.0.191.table @@ -2,6 +2,4 @@ 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/8/4.2.0.2.table b/definitions/grib2/tables/8/4.2.0.2.table index f93074e5e..2ea1c3cb9 100644 --- a/definitions/grib2/tables/8/4.2.0.2.table +++ b/definitions/grib2/tables/8/4.2.0.2.table @@ -33,6 +33,4 @@ 31 31 Turbulent diffusion coefficient for momentum (m2/s) 32 32 Eta coordinate vertical velocity (/s) 33 33 Wind fetch (m) -# 34-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.20.table b/definitions/grib2/tables/8/4.2.0.20.table index 2bee70352..db394b8af 100644 --- a/definitions/grib2/tables/8/4.2.0.20.table +++ b/definitions/grib2/tables/8/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (Sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -25,7 +24,6 @@ 57 57 Total yearly average burden of the atmosphere (mol) 58 58 Total yearly averaged atmospheric loss (mol/s) 59 59 Aerosol number concentration (m-3) -# 60-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Atmosphere optical thickness (m) 102 102 Aerosol optical thickness (Numeric) @@ -37,6 +35,4 @@ 108 108 Aerosol lidar backscatter from the ground (m-1 sr-1) 109 109 Aerosol lidar extinction from satellite (m-1) 110 110 Aerosol lidar extinction from the ground (m-1) -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.3.table b/definitions/grib2/tables/8/4.2.0.3.table index 18c33fdf8..470cdf795 100644 --- a/definitions/grib2/tables/8/4.2.0.3.table +++ b/definitions/grib2/tables/8/4.2.0.3.table @@ -25,6 +25,4 @@ 23 23 Gravity wave dissipation (W m-2) 24 24 Anisotropy of sub-gridscale orography (Numeric) 25 25 Natural logarithm of pressure in Pa (Numeric) -# 26-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.4.table b/definitions/grib2/tables/8/4.2.0.4.table index 336fdb421..6c69548e3 100644 --- a/definitions/grib2/tables/8/4.2.0.4.table +++ b/definitions/grib2/tables/8/4.2.0.4.table @@ -12,9 +12,6 @@ 10 10 Photosynthetically active radiation (W m-2) 11 11 Net short-wave radiation flux, clear sky (W m-2) 12 12 Downward UV radiation (W m-2) -# 13-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.5.table b/definitions/grib2/tables/8/4.2.0.5.table index 607235064..dfe89bc00 100644 --- a/definitions/grib2/tables/8/4.2.0.5.table +++ b/definitions/grib2/tables/8/4.2.0.5.table @@ -6,6 +6,4 @@ 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long wave radiation flux (W m-2) 6 6 Net long-wave radiation flux, clear sky (W m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.6.table b/definitions/grib2/tables/8/4.2.0.6.table index 747fd8088..50bd10c2f 100644 --- a/definitions/grib2/tables/8/4.2.0.6.table +++ b/definitions/grib2/tables/8/4.2.0.6.table @@ -33,6 +33,4 @@ 31 31 Number density of cloud ice (m-3) 32 32 Fraction of cloud cover (Numeric) 33 33 Sunshine duration (s) -# 34-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.0.7.table b/definitions/grib2/tables/8/4.2.0.7.table index 6c1794c73..4d22c0129 100644 --- a/definitions/grib2/tables/8/4.2.0.7.table +++ b/definitions/grib2/tables/8/4.2.0.7.table @@ -15,6 +15,4 @@ 13 13 Showalter index (K) 14 14 Reserved 15 15 Updraft helicity (m2 s-2) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.1.0.table b/definitions/grib2/tables/8/4.2.1.0.table index 9c4d129da..4d79bd24f 100644 --- a/definitions/grib2/tables/8/4.2.1.0.table +++ b/definitions/grib2/tables/8/4.2.1.0.table @@ -6,6 +6,4 @@ 4 4 Snow water equivalent per cent of normal (%) 5 5 Baseflow-groundwater runoff (kg m-2) 6 6 Storm surface runoff (kg m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.1.1.table b/definitions/grib2/tables/8/4.2.1.1.table index aa560e479..24efd5d1a 100644 --- a/definitions/grib2/tables/8/4.2.1.1.table +++ b/definitions/grib2/tables/8/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.10.0.table b/definitions/grib2/tables/8/4.2.10.0.table index c00ce058f..b378fbbd2 100644 --- a/definitions/grib2/tables/8/4.2.10.0.table +++ b/definitions/grib2/tables/8/4.2.10.0.table @@ -48,6 +48,4 @@ 46 46 2-dim spectral energy density (m2 s) 47 47 Frequency spectral energy density (m2 s) 48 48 Directional spectral energy density -# 49-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.10.1.table b/definitions/grib2/tables/8/4.2.10.1.table index a076fb07c..d179812e2 100644 --- a/definitions/grib2/tables/8/4.2.10.1.table +++ b/definitions/grib2/tables/8/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.10.191.table b/definitions/grib2/tables/8/4.2.10.191.table index 6cafbd3d4..9b1fb12bb 100644 --- a/definitions/grib2/tables/8/4.2.10.191.table +++ b/definitions/grib2/tables/8/4.2.10.191.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Meridional overturning stream function (m3/s) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.10.2.table b/definitions/grib2/tables/8/4.2.10.2.table index 80fe973be..a00b5c03c 100644 --- a/definitions/grib2/tables/8/4.2.10.2.table +++ b/definitions/grib2/tables/8/4.2.10.2.table @@ -9,6 +9,4 @@ 7 7 Ice divergence (/s) 8 8 Ice temperature (K) 9 9 Ice internal pressure (Pa m) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.10.3.table b/definitions/grib2/tables/8/4.2.10.3.table index 3b9a2df46..7e8a250e4 100644 --- a/definitions/grib2/tables/8/4.2.10.3.table +++ b/definitions/grib2/tables/8/4.2.10.3.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.10.4.table b/definitions/grib2/tables/8/4.2.10.4.table index 91ffb2b29..21aae1504 100644 --- a/definitions/grib2/tables/8/4.2.10.4.table +++ b/definitions/grib2/tables/8/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2 s-1) 6 6 Ocean vertical momentum diffusivity (m2 s-1) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (m-1) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.2.0.table b/definitions/grib2/tables/8/4.2.2.0.table index 083fc5913..7bdb96520 100644 --- a/definitions/grib2/tables/8/4.2.2.0.table +++ b/definitions/grib2/tables/8/4.2.2.0.table @@ -32,6 +32,4 @@ 30 30 Deciduous forest (Numeric) 31 31 Normalized differential vegetation index (NDVI) (Numeric) 32 32 Root depth of vegetation (m) -# 33-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.2.3.table b/definitions/grib2/tables/8/4.2.2.3.table index a9ec602e6..a0d49bfe3 100644 --- a/definitions/grib2/tables/8/4.2.2.3.table +++ b/definitions/grib2/tables/8/4.2.2.3.table @@ -22,6 +22,4 @@ 20 20 Column-integrated soil moisture (kg m-2) 21 21 Soil ice (kg m-3) 22 22 Column-integrated soil ice (kg m-2) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.3.0.table b/definitions/grib2/tables/8/4.2.3.0.table index 8c19d43b2..e06377ac2 100644 --- a/definitions/grib2/tables/8/4.2.3.0.table +++ b/definitions/grib2/tables/8/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.2.3.1.table b/definitions/grib2/tables/8/4.2.3.1.table index d199aff60..dc43abe25 100644 --- a/definitions/grib2/tables/8/4.2.3.1.table +++ b/definitions/grib2/tables/8/4.2.3.1.table @@ -23,6 +23,4 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.201.table b/definitions/grib2/tables/8/4.201.table index e16d5d808..83a129c62 100644 --- a/definitions/grib2/tables/8/4.201.table +++ b/definitions/grib2/tables/8/4.201.table @@ -5,6 +5,4 @@ 3 3 Freezing rain 4 4 Mixed/ice 5 5 Snow -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.202.table b/definitions/grib2/tables/8/4.202.table index aa93458f1..31ea5e959 100644 --- a/definitions/grib2/tables/8/4.202.table +++ b/definitions/grib2/tables/8/4.202.table @@ -1,4 +1,2 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.203.table b/definitions/grib2/tables/8/4.203.table index 9a8d29e01..2df01049f 100644 --- a/definitions/grib2/tables/8/4.203.table +++ b/definitions/grib2/tables/8/4.203.table @@ -19,7 +19,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.204.table b/definitions/grib2/tables/8/4.204.table index 8d8bca9b2..9bc7d0300 100644 --- a/definitions/grib2/tables/8/4.204.table +++ b/definitions/grib2/tables/8/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (16-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.205.table b/definitions/grib2/tables/8/4.205.table index 3fadf7d80..0cc467381 100644 --- a/definitions/grib2/tables/8/4.205.table +++ b/definitions/grib2/tables/8/4.205.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.206.table b/definitions/grib2/tables/8/4.206.table index 43b0ba137..dd078ebf5 100644 --- a/definitions/grib2/tables/8/4.206.table +++ b/definitions/grib2/tables/8/4.206.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.207.table b/definitions/grib2/tables/8/4.207.table index 815a5777e..7b30c9f9f 100644 --- a/definitions/grib2/tables/8/4.207.table +++ b/definitions/grib2/tables/8/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.208.table b/definitions/grib2/tables/8/4.208.table index 23ea97317..62c937cfa 100644 --- a/definitions/grib2/tables/8/4.208.table +++ b/definitions/grib2/tables/8/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.209.table b/definitions/grib2/tables/8/4.209.table index 53c6c5eba..92983f0b7 100644 --- a/definitions/grib2/tables/8/4.209.table +++ b/definitions/grib2/tables/8/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically-driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.210.table b/definitions/grib2/tables/8/4.210.table index 149b2ba06..c54c5581f 100644 --- a/definitions/grib2/tables/8/4.210.table +++ b/definitions/grib2/tables/8/4.210.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.211.table b/definitions/grib2/tables/8/4.211.table index b5753f19f..a1b6c828c 100644 --- a/definitions/grib2/tables/8/4.211.table +++ b/definitions/grib2/tables/8/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.212.table b/definitions/grib2/tables/8/4.212.table index 738c45d2c..f7cf87a3e 100644 --- a/definitions/grib2/tables/8/4.212.table +++ b/definitions/grib2/tables/8/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.213.table b/definitions/grib2/tables/8/4.213.table index 5cee0b798..0d3af0fab 100644 --- a/definitions/grib2/tables/8/4.213.table +++ b/definitions/grib2/tables/8/4.213.table @@ -16,6 +16,4 @@ 14 14 Rock 15 15 Ice 16 16 Water -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.215.table b/definitions/grib2/tables/8/4.215.table index 5ed37c034..582bc6f69 100644 --- a/definitions/grib2/tables/8/4.215.table +++ b/definitions/grib2/tables/8/4.215.table @@ -1,9 +1,5 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.216.table b/definitions/grib2/tables/8/4.216.table index 2fd143724..786d56e95 100644 --- a/definitions/grib2/tables/8/4.216.table +++ b/definitions/grib2/tables/8/4.216.table @@ -1,5 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/8/4.217.table b/definitions/grib2/tables/8/4.217.table index 6a014c9c3..34089434a 100644 --- a/definitions/grib2/tables/8/4.217.table +++ b/definitions/grib2/tables/8/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.218.table b/definitions/grib2/tables/8/4.218.table index b6087448f..54af038dc 100644 --- a/definitions/grib2/tables/8/4.218.table +++ b/definitions/grib2/tables/8/4.218.table @@ -18,7 +18,6 @@ 16 16 Barren desert 17 17 Water bodies 18 18 Tundra -# 19-96 Reserved 97 97 Snow / ice on land 98 98 Snow / ice on water 99 99 Sun-glint @@ -33,6 +32,4 @@ 108 108 High cloud / Cirrus 109 109 High cloud / unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.219.table b/definitions/grib2/tables/8/4.219.table index a02452fc4..ead9d6b7b 100644 --- a/definitions/grib2/tables/8/4.219.table +++ b/definitions/grib2/tables/8/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.220.table b/definitions/grib2/tables/8/4.220.table index 7a18fa1fd..8d6d6c124 100644 --- a/definitions/grib2/tables/8/4.220.table +++ b/definitions/grib2/tables/8/4.220.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.221.table b/definitions/grib2/tables/8/4.221.table index eb0b64502..dc0d2201b 100644 --- a/definitions/grib2/tables/8/4.221.table +++ b/definitions/grib2/tables/8/4.221.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.222.table b/definitions/grib2/tables/8/4.222.table index f554a7f3d..a4790257b 100644 --- a/definitions/grib2/tables/8/4.222.table +++ b/definitions/grib2/tables/8/4.222.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.224.table b/definitions/grib2/tables/8/4.224.table index cf67496b8..ae077e6f0 100644 --- a/definitions/grib2/tables/8/4.224.table +++ b/definitions/grib2/tables/8/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/8/4.230.table b/definitions/grib2/tables/8/4.230.table index afd1ab8db..9058b4b51 100644 --- a/definitions/grib2/tables/8/4.230.table +++ b/definitions/grib2/tables/8/4.230.table @@ -37,7 +37,6 @@ 35 35 Hydrogen bromide 36 36 Hypobromous acid 37 37 Bromine nitrate -#38-9999 Reserved 10000 10000 Hydroxyl radical 10001 10001 Methyl peroxy radical 10002 10002 Methyl hydroperoxide @@ -61,9 +60,7 @@ 10021 10021 Benzene 10022 10022 Toluene 10023 10023 Xylene -#10024-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides...) 10500 10500 Dimethyl sulphide -#10501-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 @@ -85,9 +82,7 @@ 20019 20019 Hexachlorocyclohexane (HCH) 20020 20020 Alpha hexachlorocyclohexane 20021 20021 Hexachlorobiphenyl (PCB-153) -#20022-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -#30001-30009 Reserved 30010 30010 Hydrogen H-3 30011 30011 Hydrogen organic bounded H-3o 30012 30012 Hydrogen inorganic H-3a @@ -373,7 +368,6 @@ 30292 30292 Sum noble gas SumNG 30293 30293 Activation gas ActGas 30294 30294 Cs-137 Equivalent EquCs137 -#30295-59999 Reserved 60000 60000 HOx radical (OH+HO2) 60001 60001 Total inorganic and organic peroxy radicals (HO2 + RO2) 60002 60002 Passive Ozone @@ -391,7 +385,6 @@ 60014 60014 Anthropogenic non-methane volatile organic compounds expressed as carbon 60015 60015 Biogenic non-methane volatile organic compounds expressed as carbon 60016 60016 Lumped oxygenated hydrocarbons -#60017-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -411,5 +404,4 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -#62019-65534 Reserved 65535 65535 Missing diff --git a/definitions/grib2/tables/8/4.3.table b/definitions/grib2/tables/8/4.3.table index 8a4e919c9..18a944e21 100644 --- a/definitions/grib2/tables/8/4.3.table +++ b/definitions/grib2/tables/8/4.3.table @@ -11,6 +11,4 @@ 9 9 Climatological 10 10 Probability-weighted forecast 11 11 Bias-corrected ensemble forecast -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.4.table b/definitions/grib2/tables/8/4.4.table index 511c76aa9..f766917ee 100644 --- a/definitions/grib2/tables/8/4.4.table +++ b/definitions/grib2/tables/8/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.5.table b/definitions/grib2/tables/8/4.5.table index dfba82870..062808c3e 100644 --- a/definitions/grib2/tables/8/4.5.table +++ b/definitions/grib2/tables/8/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -# 21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -29,13 +27,10 @@ 111 111 Eta level 112 112 Reserved 113 113 Logarithmic hybrid coordinate -# 114-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 120-149 Reserved 150 150 Generalized vertical height coordinate -# 151-159 Reserved 160 160 Depth below sea level m 161 161 Depth below water surface (m) 162 sfc Lake or river bottom @@ -43,6 +38,4 @@ 164 164 Bottom of thermally active sediment layer 165 165 Bottom of sediment layer penetrated by thermal wave 166 sfc Mixing layer -# 167-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.6.table b/definitions/grib2/tables/8/4.6.table index eaa5c4362..30146761b 100644 --- a/definitions/grib2/tables/8/4.6.table +++ b/definitions/grib2/tables/8/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.7.table b/definitions/grib2/tables/8/4.7.table index e6d887bdb..48fdee35d 100644 --- a/definitions/grib2/tables/8/4.7.table +++ b/definitions/grib2/tables/8/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.8.table b/definitions/grib2/tables/8/4.8.table index d06153079..60e79328c 100644 --- a/definitions/grib2/tables/8/4.8.table +++ b/definitions/grib2/tables/8/4.8.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.9.table b/definitions/grib2/tables/8/4.9.table index 5243e58dd..0e32bf392 100644 --- a/definitions/grib2/tables/8/4.9.table +++ b/definitions/grib2/tables/8/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/4.91.table b/definitions/grib2/tables/8/4.91.table index cea421695..d33725b40 100644 --- a/definitions/grib2/tables/8/4.91.table +++ b/definitions/grib2/tables/8/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit. -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/8/5.0.table b/definitions/grib2/tables/8/5.0.table index e554b5c4b..29a47997c 100644 --- a/definitions/grib2/tables/8/5.0.table +++ b/definitions/grib2/tables/8/5.0.table @@ -6,15 +6,10 @@ 4 4 Grid point data - IEEE floating point data 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) -#42-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -#52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/8/5.1.table b/definitions/grib2/tables/8/5.1.table index 158a35850..445d053a3 100644 --- a/definitions/grib2/tables/8/5.1.table +++ b/definitions/grib2/tables/8/5.1.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/5.2.table b/definitions/grib2/tables/8/5.2.table index d9896e11f..e64f52513 100644 --- a/definitions/grib2/tables/8/5.2.table +++ b/definitions/grib2/tables/8/5.2.table @@ -1,8 +1,5 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1)=C1, f(n)=f(n-1)+C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/5.3.table b/definitions/grib2/tables/8/5.3.table index 6f228aeec..e140f88e8 100644 --- a/definitions/grib2/tables/8/5.3.table +++ b/definitions/grib2/tables/8/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/5.4.table b/definitions/grib2/tables/8/5.4.table index f844f557e..7e69a3535 100644 --- a/definitions/grib2/tables/8/5.4.table +++ b/definitions/grib2/tables/8/5.4.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/5.40.table b/definitions/grib2/tables/8/5.40.table index 2431eb547..e9241d100 100644 --- a/definitions/grib2/tables/8/5.40.table +++ b/definitions/grib2/tables/8/5.40.table @@ -1,5 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/8/5.5.table b/definitions/grib2/tables/8/5.5.table index f2216e273..aa71c5fa1 100644 --- a/definitions/grib2/tables/8/5.5.table +++ b/definitions/grib2/tables/8/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/5.6.table b/definitions/grib2/tables/8/5.6.table index 3b0892d37..d91c3592f 100644 --- a/definitions/grib2/tables/8/5.6.table +++ b/definitions/grib2/tables/8/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/8/5.7.table b/definitions/grib2/tables/8/5.7.table index f056d3059..493d0826a 100644 --- a/definitions/grib2/tables/8/5.7.table +++ b/definitions/grib2/tables/8/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/9/0.0.table b/definitions/grib2/tables/9/0.0.table index 88d8b2cb3..41ff90231 100644 --- a/definitions/grib2/tables/9/0.0.table +++ b/definitions/grib2/tables/9/0.0.table @@ -3,8 +3,5 @@ 1 1 Hydrological products 2 2 Land surface products 3 3 Space products -# 4-9 Reserved 10 10 Oceanographic products -# 11-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/1.2.table b/definitions/grib2/tables/9/1.2.table index 606bf8300..05dc8c2ea 100644 --- a/definitions/grib2/tables/9/1.2.table +++ b/definitions/grib2/tables/9/1.2.table @@ -3,6 +3,4 @@ 1 1 Start of forecast 2 2 Verifying time of forecast 3 3 Observation time -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/1.3.table b/definitions/grib2/tables/9/1.3.table index 712bb2ba8..7c0132a8e 100644 --- a/definitions/grib2/tables/9/1.3.table +++ b/definitions/grib2/tables/9/1.3.table @@ -5,6 +5,4 @@ 3 3 Re-analysis products 4 4 THORPEX Interactive Grand Global Ensemble (TIGGE) 5 5 THORPEX Interactive Grand Global Ensemble (TIGGE) test -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/1.4.table b/definitions/grib2/tables/9/1.4.table index 7f47afd96..d14ca167a 100644 --- a/definitions/grib2/tables/9/1.4.table +++ b/definitions/grib2/tables/9/1.4.table @@ -8,6 +8,4 @@ 6 sa Processed satellite observations 7 ra Processed radar observations 8 ep Event probability -# 9-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/9/3.0.table b/definitions/grib2/tables/9/3.0.table index 4269b25ad..a803cb068 100644 --- a/definitions/grib2/tables/9/3.0.table +++ b/definitions/grib2/tables/9/3.0.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Specified in Code table 3.1 1 1 Predetermined grid definition (Defined by originating centre) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 A grid definition does not apply to this product diff --git a/definitions/grib2/tables/9/3.1.table b/definitions/grib2/tables/9/3.1.table index 15cbf2d57..8b4aa217f 100644 --- a/definitions/grib2/tables/9/3.1.table +++ b/definitions/grib2/tables/9/3.1.table @@ -3,39 +3,24 @@ 1 1 Rotated latitude/longitude 2 2 Stretched latitude/longitude 3 3 Stretched and rotated latitude/longitude -# 4-9 Reserved 10 10 Mercator -# 11-19 Reserved 20 20 Polar stereographic projection (Can be south or north) -# 21-29 Reserved 30 30 Lambert conformal (Can be secant or tangent, conical or bipolar) 31 31 Albers equal area -# 32-39 Reserved 40 40 Gaussian latitude/longitude 41 41 Rotated Gaussian latitude/longitude 42 42 Stretched Gaussian latitude/longitude 43 43 Stretched and rotated Gaussian latitude/longitude -# 44-49 Reserved 50 50 Spherical harmonic coefficients 51 51 Rotated spherical harmonic coefficients 52 52 Stretched spherical harmonic coefficients 53 53 Stretched and rotated spherical harmonic coefficients -# 54-89 Reserved 90 90 Space view perspective or orthographic -# 91-99 Reserved 100 100 Triangular grid based on an icosahedron -# 101-109 Reserved 110 110 Equatorial azimuthal equidistant projection -# 111-119 Reserved 120 120 Azimuth-range projection -# 121-139 Reserved 140 140 Lambert azimuthal equal area projection -# 141-999 Reserved 1000 1000 Cross-section grid, with points equally spaced on the horizontal -# 1001-1099 Reserved 1100 1100 Hovmoller diagram grid, with points equally spaced on the horizontal -# 1101-1199 Reserved 1200 1200 Time section grid -# 1201-32767 Reserved -# 32768-65534 Reserved for local use 65535 65535 Missing diff --git a/definitions/grib2/tables/9/3.10.table b/definitions/grib2/tables/9/3.10.table index da36dc664..da6ef60f8 100644 --- a/definitions/grib2/tables/9/3.10.table +++ b/definitions/grib2/tables/9/3.10.table @@ -5,4 +5,3 @@ 2 1 Points scan in -j direction, i.e. from east to west 3 0 Adjacent points in i direction are consecutive 3 1 Adjacent points in j direction are consecutive -# 4-8 Reserved diff --git a/definitions/grib2/tables/9/3.11.table b/definitions/grib2/tables/9/3.11.table index 0a299af98..bad05e213 100644 --- a/definitions/grib2/tables/9/3.11.table +++ b/definitions/grib2/tables/9/3.11.table @@ -3,5 +3,4 @@ 1 1 Numbers define number of points corresponding to full coordinate circles (i.e. parallels), coordinate values on each circle are multiple of the circle mesh, and extreme coordinate values given in grid definition (i.e. extreme longitudes) may not be reached in all rows 2 2 Numbers define number of points corresponding to coordinate lines delimited by extreme coordinate values given in grid definition (i.e. extreme longitudes) which are present in each row 3 3 Numbers define the actual latitudes for each row in the grid. The list of numbers are integer values of the valid latitudes in microdegrees (scaled by 10-6) or in unit equal to the ratio of the basic angle and the subdivisions number for each row, in the same order as specified in the scanning mode flag (bit no. 2) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/9/3.15.table b/definitions/grib2/tables/9/3.15.table index 44e7a0983..85a02f31a 100644 --- a/definitions/grib2/tables/9/3.15.table +++ b/definitions/grib2/tables/9/3.15.table @@ -1,7 +1,5 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 0-19 Reserved 20 20 Temperature (K) -# 21-99 Reserved 100 100 Pressure (Pa) 101 101 Pressure deviation from mean sea level (Pa) 102 102 Altitude above mean sea level (m) @@ -16,8 +14,5 @@ 111 111 Eta coordinate 112 112 Geopotential height (gpm) 113 113 Logarithmic hybrid coordinate -# 114-159 Reserved 160 160 Depth below sea level (m) -# 161-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/3.2.table b/definitions/grib2/tables/9/3.2.table index 563efbdb5..ed45a51b2 100644 --- a/definitions/grib2/tables/9/3.2.table +++ b/definitions/grib2/tables/9/3.2.table @@ -8,6 +8,4 @@ 6 6 Earth assumed spherical with radius of 6 371 229.0 m 7 7 Earth assumed oblate spheroid with major or minor axes specified (in m) by data producer 8 8 Earth model assumed spherical with radius of 6 371 200 m, but the horizontal datum of the resulting latitude/longitude field is the WGS84 reference frame -# 9-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/3.20.table b/definitions/grib2/tables/9/3.20.table index 63de6b1a9..49f742062 100644 --- a/definitions/grib2/tables/9/3.20.table +++ b/definitions/grib2/tables/9/3.20.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Rhumb 1 1 Great circle -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/3.21.table b/definitions/grib2/tables/9/3.21.table index 2bc46aae9..6a3956a8e 100644 --- a/definitions/grib2/tables/9/3.21.table +++ b/definitions/grib2/tables/9/3.21.table @@ -1,8 +1,5 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1) = C1, f(n) = f(n-1) + C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1) = C1, f(n) = C2 * f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/3.3.table b/definitions/grib2/tables/9/3.3.table index bd47e2509..cf950fbcf 100644 --- a/definitions/grib2/tables/9/3.3.table +++ b/definitions/grib2/tables/9/3.3.table @@ -1,9 +1,7 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 1-2 Reserved 3 0 i direction increments not given 3 1 i direction increments given 4 0 j direction increments not given 4 1 j direction increments given 5 0 Resolved u- and v- components of vector quantities relative to easterly and northerly directions 5 1 Resolved u- and v- components of vector quantities relative to the defined grid in the direction of increasing x and y (or i and j) coordinates, respectively -# 6-8 Reserved - set to zero diff --git a/definitions/grib2/tables/9/3.4.table b/definitions/grib2/tables/9/3.4.table index 752c70757..9d4a7abca 100644 --- a/definitions/grib2/tables/9/3.4.table +++ b/definitions/grib2/tables/9/3.4.table @@ -7,4 +7,3 @@ 3 1 Adjacent points in j (y) direction is consecutive 4 0 All rows scan in the same direction 4 1 Adjacent rows scans in the opposite direction -# 5-8 Reserved diff --git a/definitions/grib2/tables/9/3.7.table b/definitions/grib2/tables/9/3.7.table index 4b2e684d3..13c931d84 100644 --- a/definitions/grib2/tables/9/3.7.table +++ b/definitions/grib2/tables/9/3.7.table @@ -1,5 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Reserved 1 1 The complex numbers Fnm (see code figure 1 in Code Table 3.6 above) are stored for m>=0 as pairs of real numbers Re(Fnm), Im(Fnm) ordered with n increasing from m to N(m), first for m=0 and then for m=1, 2, ... M. (see Note 1) -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/9/3.8.table b/definitions/grib2/tables/9/3.8.table index 6df554ae9..719e18df9 100644 --- a/definitions/grib2/tables/9/3.8.table +++ b/definitions/grib2/tables/9/3.8.table @@ -2,6 +2,4 @@ 0 0 Grid points at triangle vertices 1 1 Grid points at centres of triangles 2 2 Grid points at midpoints of triangle sides -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/3.9.table b/definitions/grib2/tables/9/3.9.table index 530d1dee0..5e7d3d880 100644 --- a/definitions/grib2/tables/9/3.9.table +++ b/definitions/grib2/tables/9/3.9.table @@ -1,4 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 1 0 Clockwise orientation 1 1 Anti-clockwise (i.e. counter-clockwise) orientation -# 2-8 Reserved diff --git a/definitions/grib2/tables/9/4.0.table b/definitions/grib2/tables/9/4.0.table index 0852d9f0d..17b813507 100644 --- a/definitions/grib2/tables/9/4.0.table +++ b/definitions/grib2/tables/9/4.0.table @@ -15,13 +15,10 @@ 13 13 Derived forecasts based on a cluster of ensemble members over a rectangular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 14 14 Derived forecasts based on a cluster of ensemble members over a circular area, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval 15 15 Average, accumulation, extreme values, or other statistically-processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -# 16-19 Reserved 20 20 Radar product -# 21-29 Reserved 30 30 Satellite product (deprecated) 31 31 Satellite product 32 32 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data -# 33-39 Reserved 311 311 Satellite product auxiliary information 40 40 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents 41 41 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents @@ -33,21 +30,15 @@ 47 47 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non continuous time interval for aerosol 48 48 Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of atmospheric aerosol 51 51 Categorical forecasts at a horizontal level or in a horizontal layer at a point in time -# 52-90 Reserved 91 91 Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# 92-253 Reserved 254 254 CCITT IA5 character string -# 255-999 Reserved 1000 1000 Cross-section of analysis and forecast at a point in time 1001 1001 Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time 1002 1002 Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -# 1003-1099 Reserved 1100 1100 Hovmoller-type grid with no averaging or other statistical processing 1101 1101 Hovmoller-type grid with averaging or other statistical processing 50001 50001 Forecasting Systems with Variable Resolution in a point in time 50011 50011 Forecasting Systems with Variable Resolution in a continous or non countinous time interval -# 1102-32767 Reserved -# 32768-65534 Reserved for local use 40033 40033 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data 40034 40034 Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data 65535 65535 Missing diff --git a/definitions/grib2/tables/9/4.1.0.table b/definitions/grib2/tables/9/4.1.0.table index 3413dbad5..c5f166b65 100644 --- a/definitions/grib2/tables/9/4.1.0.table +++ b/definitions/grib2/tables/9/4.1.0.table @@ -20,8 +20,6 @@ 18 18 Nuclear/radiology 19 19 Physical atmospheric properties 20 20 Atmospheric chemical constituents -# 21-189 Reserved 190 190 CCITT IA5 string 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.1.1.table b/definitions/grib2/tables/9/4.1.1.table index dea5bc49e..51d3e1752 100644 --- a/definitions/grib2/tables/9/4.1.1.table +++ b/definitions/grib2/tables/9/4.1.1.table @@ -2,6 +2,4 @@ 0 0 Hydrology basic products 1 1 Hydrology probabilities 2 2 Inland water and sediment properties -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.1.10.table b/definitions/grib2/tables/9/4.1.10.table index e6ce6faf7..2541195f0 100644 --- a/definitions/grib2/tables/9/4.1.10.table +++ b/definitions/grib2/tables/9/4.1.10.table @@ -4,7 +4,5 @@ 2 2 Ice 3 3 Surface properties 4 4 Sub-surface properties -# 5-190 Reserved 191 191 Miscellaneous -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.1.2.table b/definitions/grib2/tables/9/4.1.2.table index 805836998..014bdf18e 100644 --- a/definitions/grib2/tables/9/4.1.2.table +++ b/definitions/grib2/tables/9/4.1.2.table @@ -4,6 +4,4 @@ 2 2 Transportation-related products 3 3 Soil products 4 4 Fire weather products -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.1.3.table b/definitions/grib2/tables/9/4.1.3.table index c96617665..d8c64da46 100644 --- a/definitions/grib2/tables/9/4.1.3.table +++ b/definitions/grib2/tables/9/4.1.3.table @@ -1,8 +1,6 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Image format products 1 1 Quantitative products -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.10.table b/definitions/grib2/tables/9/4.10.table index a13fb00b4..c14ded40c 100644 --- a/definitions/grib2/tables/9/4.10.table +++ b/definitions/grib2/tables/9/4.10.table @@ -10,6 +10,4 @@ 8 8 Difference (value at the start of time range minus value at the end) 9 ratio Ratio 10 10 Standardized anomaly -# 11-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/9/4.11.table b/definitions/grib2/tables/9/4.11.table index af9ff29ad..54d5c84de 100644 --- a/definitions/grib2/tables/9/4.11.table +++ b/definitions/grib2/tables/9/4.11.table @@ -5,6 +5,4 @@ 3 3 Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant 4 4 Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant 5 5 Floating subinterval of time between forecast time and end of overall time interval -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.12.table b/definitions/grib2/tables/9/4.12.table index 6cab67bf5..64c3bdbd9 100644 --- a/definitions/grib2/tables/9/4.12.table +++ b/definitions/grib2/tables/9/4.12.table @@ -2,6 +2,4 @@ 0 0 Maintenance mode 1 1 Clear air 2 2 Precipitation -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.13.table b/definitions/grib2/tables/9/4.13.table index f090fb9ae..20415bfc5 100644 --- a/definitions/grib2/tables/9/4.13.table +++ b/definitions/grib2/tables/9/4.13.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 No quality control applied 1 1 Quality control applied -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.14.table b/definitions/grib2/tables/9/4.14.table index bcb04f328..d8a259329 100644 --- a/definitions/grib2/tables/9/4.14.table +++ b/definitions/grib2/tables/9/4.14.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 No clutter filter used 1 1 Clutter filter used -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.15.table b/definitions/grib2/tables/9/4.15.table index 6e1ef5745..8e1a90426 100644 --- a/definitions/grib2/tables/9/4.15.table +++ b/definitions/grib2/tables/9/4.15.table @@ -6,6 +6,4 @@ 4 4 Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 5 5 Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point 6 6 Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.151.table b/definitions/grib2/tables/9/4.151.table index 30487afb4..90a8c6ca0 100644 --- a/definitions/grib2/tables/9/4.151.table +++ b/definitions/grib2/tables/9/4.151.table @@ -3,5 +3,4 @@ 1 1 suspect 2 2 acceptable 3 3 excellent -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.0.table b/definitions/grib2/tables/9/4.2.0.0.table index 8656f8974..79dd8518e 100644 --- a/definitions/grib2/tables/9/4.2.0.0.table +++ b/definitions/grib2/tables/9/4.2.0.0.table @@ -20,6 +20,4 @@ 18 18 Snow temperature (top of snow) (K) 19 19 Turbulent transfer coefficient for heat (Numeric) 20 20 Turbulent diffusion coefficient for heat (m2/s) -# 21-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.1.table b/definitions/grib2/tables/9/4.2.0.1.table index 8ee93e99b..a7dcbfbca 100644 --- a/definitions/grib2/tables/9/4.2.0.1.table +++ b/definitions/grib2/tables/9/4.2.0.1.table @@ -86,10 +86,7 @@ 84 84 Specific cloud ice water content (kg/kg) 85 85 Specific rain water content (kg/kg) 86 86 Specific snow water content (kg/kg) -# 87-89 Reserved 90 90 Total kinematic moisture flux (kg kg-1 m s-1) 91 91 u-component (zonal) kinematic moisture flux (kg kg-1 m s-1) 92 92 v-component (meridional) kinematic moisture flux (kg kg-1 m s-1) -# 93-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.13.table b/definitions/grib2/tables/9/4.2.0.13.table index 90ab7d1b9..3aead6cbd 100644 --- a/definitions/grib2/tables/9/4.2.0.13.table +++ b/definitions/grib2/tables/9/4.2.0.13.table @@ -1,5 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Aerosol type (Code table 4.205) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.14.table b/definitions/grib2/tables/9/4.2.0.14.table index fca42ccc7..62943028c 100644 --- a/definitions/grib2/tables/9/4.2.0.14.table +++ b/definitions/grib2/tables/9/4.2.0.14.table @@ -2,6 +2,4 @@ 0 0 Total ozone (DU) 1 1 Ozone mixing ratio (kg/kg) 2 2 Total column integrated ozone (DU) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.15.table b/definitions/grib2/tables/9/4.2.0.15.table index 66ccff19d..734440838 100644 --- a/definitions/grib2/tables/9/4.2.0.15.table +++ b/definitions/grib2/tables/9/4.2.0.15.table @@ -14,6 +14,4 @@ 12 12 Reflectivity of rain (dB) 13 13 Reflectivity of graupel (dB) 14 14 Reflectivity of hail (dB) -# 15-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.16.table b/definitions/grib2/tables/9/4.2.0.16.table index 18dedb7c0..98630ec0e 100644 --- a/definitions/grib2/tables/9/4.2.0.16.table +++ b/definitions/grib2/tables/9/4.2.0.16.table @@ -5,6 +5,4 @@ 3 3 Echo top (m) 4 4 Reflectivity (dB) 5 5 Composite reflectivity (dB) -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.18.table b/definitions/grib2/tables/9/4.2.0.18.table index 165aa6008..6de688a0b 100644 --- a/definitions/grib2/tables/9/4.2.0.18.table +++ b/definitions/grib2/tables/9/4.2.0.18.table @@ -13,6 +13,4 @@ 11 11 Wet deposition (Bq m-2) 12 12 Dry deposition (Bq m-2) 13 13 Total deposition (wet + dry) (Bq m-2) -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.19.table b/definitions/grib2/tables/9/4.2.0.19.table index cbce2f76c..2b9656bf3 100644 --- a/definitions/grib2/tables/9/4.2.0.19.table +++ b/definitions/grib2/tables/9/4.2.0.19.table @@ -27,6 +27,4 @@ 25 25 Weather (Code table 4.225) 26 26 Convective outlook (Code table 4.224) 27 27 Icing scenario (Code table 4.227) -# 28-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.190.table b/definitions/grib2/tables/9/4.2.0.190.table index 3d9d5ff85..f401ef529 100644 --- a/definitions/grib2/tables/9/4.2.0.190.table +++ b/definitions/grib2/tables/9/4.2.0.190.table @@ -1,5 +1,3 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Arbitrary text string (CCITT IA5) -# 1-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.191.table b/definitions/grib2/tables/9/4.2.0.191.table index 4ff12e532..c44d4c807 100644 --- a/definitions/grib2/tables/9/4.2.0.191.table +++ b/definitions/grib2/tables/9/4.2.0.191.table @@ -2,6 +2,4 @@ 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Geographical latitude (deg N) 2 2 Geographical longitude (deg E) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing value diff --git a/definitions/grib2/tables/9/4.2.0.2.table b/definitions/grib2/tables/9/4.2.0.2.table index 68aa47ba6..4c3059e8b 100644 --- a/definitions/grib2/tables/9/4.2.0.2.table +++ b/definitions/grib2/tables/9/4.2.0.2.table @@ -35,6 +35,4 @@ 33 33 Wind fetch (m) 34 34 Normal wind component (m/s) 35 35 Tangential wind component (m/s) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.20.table b/definitions/grib2/tables/9/4.2.0.20.table index 898a774eb..59518592d 100644 --- a/definitions/grib2/tables/9/4.2.0.20.table +++ b/definitions/grib2/tables/9/4.2.0.20.table @@ -14,7 +14,6 @@ 12 12 Dry deposition mass flux (kg m-2 s-1) 13 13 Transfer from hydrophobic to hydrophilic (kg kg-1 s-1) 14 14 Transfer from SO2 (Sulphur dioxide) to SO4 (sulphate) (kg kg-1 s-1) -# 15-49 Reserved 50 50 Amount in atmosphere (mol) 51 51 Concentration in air (mol m-3) 52 52 Volume mixing ratio (fraction in air) (mol/mol) @@ -25,7 +24,6 @@ 57 57 Total yearly average burden of the atmosphere (mol) 58 58 Total yearly averaged atmospheric loss (mol/s) 59 59 Aerosol number concentration (m-3) -# 60-99 Reserved 100 100 Surface area density (aerosol) (/m) 101 101 Vertical visual range (m) 102 102 Aerosol optical thickness (Numeric) @@ -37,6 +35,4 @@ 108 108 Aerosol lidar backscatter from the ground (m-1 sr-1) 109 109 Aerosol lidar extinction from satellite (m-1) 110 110 Aerosol lidar extinction from the ground (m-1) -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.3.table b/definitions/grib2/tables/9/4.2.0.3.table index 08c1c7bc3..03f4c15ff 100644 --- a/definitions/grib2/tables/9/4.2.0.3.table +++ b/definitions/grib2/tables/9/4.2.0.3.table @@ -26,6 +26,4 @@ 24 24 Anisotropy of sub-gridscale orography (Numeric) 25 25 Natural logarithm of pressure in Pa (Numeric) 26 26 Exner pressure (Numeric) -# 27-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.4.table b/definitions/grib2/tables/9/4.2.0.4.table index 336fdb421..6c69548e3 100644 --- a/definitions/grib2/tables/9/4.2.0.4.table +++ b/definitions/grib2/tables/9/4.2.0.4.table @@ -12,9 +12,6 @@ 10 10 Photosynthetically active radiation (W m-2) 11 11 Net short-wave radiation flux, clear sky (W m-2) 12 12 Downward UV radiation (W m-2) -# 13-49 Reserved 50 50 UV index (under clear sky) (Numeric) 51 51 UV index (Numeric) -# 52-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.5.table b/definitions/grib2/tables/9/4.2.0.5.table index 607235064..dfe89bc00 100644 --- a/definitions/grib2/tables/9/4.2.0.5.table +++ b/definitions/grib2/tables/9/4.2.0.5.table @@ -6,6 +6,4 @@ 4 4 Upward long-wave radiation flux (W m-2) 5 5 Net long wave radiation flux (W m-2) 6 6 Net long-wave radiation flux, clear sky (W m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.6.table b/definitions/grib2/tables/9/4.2.0.6.table index fb935344e..6f3724ceb 100644 --- a/definitions/grib2/tables/9/4.2.0.6.table +++ b/definitions/grib2/tables/9/4.2.0.6.table @@ -35,6 +35,4 @@ 33 33 Sunshine duration (s) 34 34 Surface long wave effective total cloudiness (Numeric) 35 35 Surface short wave effective total cloudiness (Numeric) -# 36-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.0.7.table b/definitions/grib2/tables/9/4.2.0.7.table index 6c1794c73..4d22c0129 100644 --- a/definitions/grib2/tables/9/4.2.0.7.table +++ b/definitions/grib2/tables/9/4.2.0.7.table @@ -15,6 +15,4 @@ 13 13 Showalter index (K) 14 14 Reserved 15 15 Updraft helicity (m2 s-2) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.1.0.table b/definitions/grib2/tables/9/4.2.1.0.table index 9c4d129da..4d79bd24f 100644 --- a/definitions/grib2/tables/9/4.2.1.0.table +++ b/definitions/grib2/tables/9/4.2.1.0.table @@ -6,6 +6,4 @@ 4 4 Snow water equivalent per cent of normal (%) 5 5 Baseflow-groundwater runoff (kg m-2) 6 6 Storm surface runoff (kg m-2) -# 7-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.1.1.table b/definitions/grib2/tables/9/4.2.1.1.table index aa560e479..24efd5d1a 100644 --- a/definitions/grib2/tables/9/4.2.1.1.table +++ b/definitions/grib2/tables/9/4.2.1.1.table @@ -2,6 +2,4 @@ 0 0 Conditional per cent precipitation amount fractile for an overall period (Encoded as an accumulation) (kg m-2) 1 1 Per cent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over the sub-period) (%) 2 2 Probability of 0.01 inch of precipitation (POP) (%) -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.10.0.table b/definitions/grib2/tables/9/4.2.10.0.table index 8bba32cf5..c68ed8ab8 100644 --- a/definitions/grib2/tables/9/4.2.10.0.table +++ b/definitions/grib2/tables/9/4.2.10.0.table @@ -45,6 +45,4 @@ 43 43 Kurtosis of the sea surface elevation due to waves (-) 44 44 Benjamin-Feir index (-) 45 45 Spectral peakedness factor (s-1) -# 46-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.10.1.table b/definitions/grib2/tables/9/4.2.10.1.table index a076fb07c..d179812e2 100644 --- a/definitions/grib2/tables/9/4.2.10.1.table +++ b/definitions/grib2/tables/9/4.2.10.1.table @@ -3,6 +3,4 @@ 1 1 Current speed (m/s) 2 2 u-component of current (m/s) 3 3 v-component of current (m/s) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.10.191.table b/definitions/grib2/tables/9/4.2.10.191.table index 6cafbd3d4..9b1fb12bb 100644 --- a/definitions/grib2/tables/9/4.2.10.191.table +++ b/definitions/grib2/tables/9/4.2.10.191.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Seconds prior to initial reference time (defined in Section 1) (s) 1 1 Meridional overturning stream function (m3/s) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.10.2.table b/definitions/grib2/tables/9/4.2.10.2.table index 80fe973be..a00b5c03c 100644 --- a/definitions/grib2/tables/9/4.2.10.2.table +++ b/definitions/grib2/tables/9/4.2.10.2.table @@ -9,6 +9,4 @@ 7 7 Ice divergence (/s) 8 8 Ice temperature (K) 9 9 Ice internal pressure (Pa m) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.10.3.table b/definitions/grib2/tables/9/4.2.10.3.table index 3b9a2df46..7e8a250e4 100644 --- a/definitions/grib2/tables/9/4.2.10.3.table +++ b/definitions/grib2/tables/9/4.2.10.3.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Water temperature (K) 1 1 Deviation of sea level from mean (m) -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.10.4.table b/definitions/grib2/tables/9/4.2.10.4.table index 91ffb2b29..21aae1504 100644 --- a/definitions/grib2/tables/9/4.2.10.4.table +++ b/definitions/grib2/tables/9/4.2.10.4.table @@ -7,12 +7,9 @@ 5 5 Ocean vertical salt diffusivity (m2 s-1) 6 6 Ocean vertical momentum diffusivity (m2 s-1) 7 7 Bathymetry (m) -# 8-10 Reserved 11 11 Shape factor with respect to salinity profile (-) 12 12 Shape factor with respect to temperature profile in thermocline (-) 13 13 Attenuation coefficient of water with respect to solar radiation (m-1) 14 14 Water depth (m) 15 15 Water temperature (K) -# 16-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.2.0.table b/definitions/grib2/tables/9/4.2.2.0.table index bbd328f0a..2c288398e 100644 --- a/definitions/grib2/tables/9/4.2.2.0.table +++ b/definitions/grib2/tables/9/4.2.2.0.table @@ -32,6 +32,4 @@ 30 30 Deciduous forest cover (Proportion) 31 31 Normalized differential vegetation index (NDVI) (Numeric) 32 32 Root depth of vegetation (m) -# 33-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.2.3.table b/definitions/grib2/tables/9/4.2.2.3.table index a9ec602e6..a0d49bfe3 100644 --- a/definitions/grib2/tables/9/4.2.2.3.table +++ b/definitions/grib2/tables/9/4.2.2.3.table @@ -22,6 +22,4 @@ 20 20 Column-integrated soil moisture (kg m-2) 21 21 Soil ice (kg m-3) 22 22 Column-integrated soil ice (kg m-2) -# 23-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.2.4.table b/definitions/grib2/tables/9/4.2.2.4.table index 24f2bfbae..ec677d0b2 100644 --- a/definitions/grib2/tables/9/4.2.2.4.table +++ b/definitions/grib2/tables/9/4.2.2.4.table @@ -3,5 +3,4 @@ 1 1 Fire outlook due to dry thunderstorm (Code table 4.224) 2 2 Haines Index (Numeric) 3 3 Fire burned area (%) -# 4-191 Reserved diff --git a/definitions/grib2/tables/9/4.2.3.0.table b/definitions/grib2/tables/9/4.2.3.0.table index 8c19d43b2..e06377ac2 100644 --- a/definitions/grib2/tables/9/4.2.3.0.table +++ b/definitions/grib2/tables/9/4.2.3.0.table @@ -9,6 +9,4 @@ 7 7 Cloud mask (Code table 4.217) 8 8 Pixel scene type (Code table 4.218) 9 9 Fire detection indicator (Code table 4.223) -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.2.3.1.table b/definitions/grib2/tables/9/4.2.3.1.table index d199aff60..dc43abe25 100644 --- a/definitions/grib2/tables/9/4.2.3.1.table +++ b/definitions/grib2/tables/9/4.2.3.1.table @@ -23,6 +23,4 @@ 21 21 Aerosol optical thickness at 0.810 um 22 22 Aerosol optical thickness at 1.640 um 23 23 Angstrom coefficient -# 24-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.201.table b/definitions/grib2/tables/9/4.201.table index e16d5d808..83a129c62 100644 --- a/definitions/grib2/tables/9/4.201.table +++ b/definitions/grib2/tables/9/4.201.table @@ -5,6 +5,4 @@ 3 3 Freezing rain 4 4 Mixed/ice 5 5 Snow -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.202.table b/definitions/grib2/tables/9/4.202.table index aa93458f1..31ea5e959 100644 --- a/definitions/grib2/tables/9/4.202.table +++ b/definitions/grib2/tables/9/4.202.table @@ -1,4 +1,2 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 0-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.203.table b/definitions/grib2/tables/9/4.203.table index 9a8d29e01..2df01049f 100644 --- a/definitions/grib2/tables/9/4.203.table +++ b/definitions/grib2/tables/9/4.203.table @@ -19,7 +19,5 @@ 18 18 Cirrostratus - ground-based fog beneath the lowest layer 19 19 Cirrocumulus - ground-based fog beneath the lowest layer 20 20 Cirrus - ground-based fog beneath the lowest layer -# 21-190 Reserved 191 191 Unknown -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.204.table b/definitions/grib2/tables/9/4.204.table index 8d8bca9b2..9bc7d0300 100644 --- a/definitions/grib2/tables/9/4.204.table +++ b/definitions/grib2/tables/9/4.204.table @@ -4,6 +4,4 @@ 2 2 Few (3-5%) 3 3 Scattered (16-45%) 4 4 Numerous (> 45%) -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.205.table b/definitions/grib2/tables/9/4.205.table index 3fadf7d80..0cc467381 100644 --- a/definitions/grib2/tables/9/4.205.table +++ b/definitions/grib2/tables/9/4.205.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Aerosol not present 1 1 Aerosol present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.206.table b/definitions/grib2/tables/9/4.206.table index 43b0ba137..dd078ebf5 100644 --- a/definitions/grib2/tables/9/4.206.table +++ b/definitions/grib2/tables/9/4.206.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Not present 1 1 Present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.207.table b/definitions/grib2/tables/9/4.207.table index 815a5777e..7b30c9f9f 100644 --- a/definitions/grib2/tables/9/4.207.table +++ b/definitions/grib2/tables/9/4.207.table @@ -5,6 +5,4 @@ 3 3 Severe 4 4 Trace 5 5 Heavy -# 6-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.208.table b/definitions/grib2/tables/9/4.208.table index 23ea97317..62c937cfa 100644 --- a/definitions/grib2/tables/9/4.208.table +++ b/definitions/grib2/tables/9/4.208.table @@ -4,6 +4,4 @@ 2 2 Moderate 3 3 Severe 4 4 Extreme -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.209.table b/definitions/grib2/tables/9/4.209.table index 53c6c5eba..92983f0b7 100644 --- a/definitions/grib2/tables/9/4.209.table +++ b/definitions/grib2/tables/9/4.209.table @@ -4,6 +4,4 @@ 2 2 Mechanically-driven turbulence 3 3 Forced convection 4 4 Free convection -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.210.table b/definitions/grib2/tables/9/4.210.table index 149b2ba06..c54c5581f 100644 --- a/definitions/grib2/tables/9/4.210.table +++ b/definitions/grib2/tables/9/4.210.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Contrail not present 1 1 Contrail present -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.211.table b/definitions/grib2/tables/9/4.211.table index b5753f19f..a1b6c828c 100644 --- a/definitions/grib2/tables/9/4.211.table +++ b/definitions/grib2/tables/9/4.211.table @@ -2,6 +2,4 @@ 0 0 Low bypass 1 1 High bypass 2 2 Non-bypass -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.212.table b/definitions/grib2/tables/9/4.212.table index 738c45d2c..f7cf87a3e 100644 --- a/definitions/grib2/tables/9/4.212.table +++ b/definitions/grib2/tables/9/4.212.table @@ -13,6 +13,4 @@ 11 11 Ice 12 12 Tropical forest 13 13 Savannah -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.213.table b/definitions/grib2/tables/9/4.213.table index 5cee0b798..0d3af0fab 100644 --- a/definitions/grib2/tables/9/4.213.table +++ b/definitions/grib2/tables/9/4.213.table @@ -16,6 +16,4 @@ 14 14 Rock 15 15 Ice 16 16 Water -# 17-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.215.table b/definitions/grib2/tables/9/4.215.table index 5ed37c034..582bc6f69 100644 --- a/definitions/grib2/tables/9/4.215.table +++ b/definitions/grib2/tables/9/4.215.table @@ -1,9 +1,5 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit -# 0-49 Reserved 50 50 No-snow/no-cloud -# 51-99 Reserved 100 100 Clouds -# 101-249 Reserved 250 250 Snow -# 251-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.216.table b/definitions/grib2/tables/9/4.216.table index 2fd143724..786d56e95 100644 --- a/definitions/grib2/tables/9/4.216.table +++ b/definitions/grib2/tables/9/4.216.table @@ -1,5 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit # 0-90 Elevation in increments of 100 m -# 91-253 Reserved 254 254 Clouds 255 255 Missing diff --git a/definitions/grib2/tables/9/4.217.table b/definitions/grib2/tables/9/4.217.table index 6a014c9c3..34089434a 100644 --- a/definitions/grib2/tables/9/4.217.table +++ b/definitions/grib2/tables/9/4.217.table @@ -3,6 +3,4 @@ 1 1 Clear over land 2 2 Cloud 3 3 No data -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.218.table b/definitions/grib2/tables/9/4.218.table index b6087448f..54af038dc 100644 --- a/definitions/grib2/tables/9/4.218.table +++ b/definitions/grib2/tables/9/4.218.table @@ -18,7 +18,6 @@ 16 16 Barren desert 17 17 Water bodies 18 18 Tundra -# 19-96 Reserved 97 97 Snow / ice on land 98 98 Snow / ice on water 99 99 Sun-glint @@ -33,6 +32,4 @@ 108 108 High cloud / Cirrus 109 109 High cloud / unknown 110 110 Unknown cloud type -# 111-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.219.table b/definitions/grib2/tables/9/4.219.table index a02452fc4..ead9d6b7b 100644 --- a/definitions/grib2/tables/9/4.219.table +++ b/definitions/grib2/tables/9/4.219.table @@ -3,6 +3,4 @@ 1 1 Fog in segment 2 2 Poor quality height estimation 3 3 Fog in segment and poor quality height estimation -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.220.table b/definitions/grib2/tables/9/4.220.table index 7a18fa1fd..8d6d6c124 100644 --- a/definitions/grib2/tables/9/4.220.table +++ b/definitions/grib2/tables/9/4.220.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Latitude 1 1 Longitude -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.221.table b/definitions/grib2/tables/9/4.221.table index eb0b64502..dc0d2201b 100644 --- a/definitions/grib2/tables/9/4.221.table +++ b/definitions/grib2/tables/9/4.221.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Not included 1 1 Extrapolated -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.222.table b/definitions/grib2/tables/9/4.222.table index f554a7f3d..a4790257b 100644 --- a/definitions/grib2/tables/9/4.222.table +++ b/definitions/grib2/tables/9/4.222.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 No 1 1 Yes -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.224.table b/definitions/grib2/tables/9/4.224.table index cf67496b8..ae077e6f0 100644 --- a/definitions/grib2/tables/9/4.224.table +++ b/definitions/grib2/tables/9/4.224.table @@ -8,11 +8,7 @@ 6 6 Moderate risk area 7 7 Reserved 8 8 High risk area -# 9-10 Reserved 11 11 Dry thunderstorm (dry lightning) risk area -# 12-13 Reserved 14 14 Critical risk area -# 15-17 Reserved 18 18 Extremely critical risk area -# 19-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/9/4.227.table b/definitions/grib2/tables/9/4.227.table index 5a0771c0f..c22673c5f 100644 --- a/definitions/grib2/tables/9/4.227.table +++ b/definitions/grib2/tables/9/4.227.table @@ -5,6 +5,4 @@ 2 2 Convective 3 3 Stratiform 4 4 Freezing -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.230.table b/definitions/grib2/tables/9/4.230.table index afd1ab8db..9058b4b51 100644 --- a/definitions/grib2/tables/9/4.230.table +++ b/definitions/grib2/tables/9/4.230.table @@ -37,7 +37,6 @@ 35 35 Hydrogen bromide 36 36 Hypobromous acid 37 37 Bromine nitrate -#38-9999 Reserved 10000 10000 Hydroxyl radical 10001 10001 Methyl peroxy radical 10002 10002 Methyl hydroperoxide @@ -61,9 +60,7 @@ 10021 10021 Benzene 10022 10022 Toluene 10023 10023 Xylene -#10024-10499 Reserved for other simple organic molecules (e.g. higher aldehydes, alcohols, peroxides...) 10500 10500 Dimethyl sulphide -#10501-20000 Reserved 20001 20001 Hydrogen chloride 20002 20002 CFC-11 20003 20003 CFC-12 @@ -85,9 +82,7 @@ 20019 20019 Hexachlorocyclohexane (HCH) 20020 20020 Alpha hexachlorocyclohexane 20021 20021 Hexachlorobiphenyl (PCB-153) -#20022-29999 Reserved 30000 30000 Radioactive pollutant (tracer, defined by originating centre) -#30001-30009 Reserved 30010 30010 Hydrogen H-3 30011 30011 Hydrogen organic bounded H-3o 30012 30012 Hydrogen inorganic H-3a @@ -373,7 +368,6 @@ 30292 30292 Sum noble gas SumNG 30293 30293 Activation gas ActGas 30294 30294 Cs-137 Equivalent EquCs137 -#30295-59999 Reserved 60000 60000 HOx radical (OH+HO2) 60001 60001 Total inorganic and organic peroxy radicals (HO2 + RO2) 60002 60002 Passive Ozone @@ -391,7 +385,6 @@ 60014 60014 Anthropogenic non-methane volatile organic compounds expressed as carbon 60015 60015 Biogenic non-methane volatile organic compounds expressed as carbon 60016 60016 Lumped oxygenated hydrocarbons -#60017-61999 Reserved 62000 62000 Total aerosol 62001 62001 Dust dry 62002 62002 Water in ambient @@ -411,5 +404,4 @@ 62016 62016 Particulate organic matter hydrophobic dry 62017 62017 Nitrate hydrophilic dry 62018 62018 Nitrate hydrophobic dry -#62019-65534 Reserved 65535 65535 Missing diff --git a/definitions/grib2/tables/9/4.3.table b/definitions/grib2/tables/9/4.3.table index 8a4e919c9..18a944e21 100644 --- a/definitions/grib2/tables/9/4.3.table +++ b/definitions/grib2/tables/9/4.3.table @@ -11,6 +11,4 @@ 9 9 Climatological 10 10 Probability-weighted forecast 11 11 Bias-corrected ensemble forecast -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.4.table b/definitions/grib2/tables/9/4.4.table index 511c76aa9..f766917ee 100644 --- a/definitions/grib2/tables/9/4.4.table +++ b/definitions/grib2/tables/9/4.4.table @@ -7,11 +7,8 @@ 5 10Y Decade (10 years) 6 30Y Normal (30 years) 7 C Century (100 years) -# 8-9 Reserved 10 3h 3 hours 11 6h 6 hours 12 12h 12 hours 13 s Second -# 14-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.5.table b/definitions/grib2/tables/9/4.5.table index d07c799a8..a65238870 100644 --- a/definitions/grib2/tables/9/4.5.table +++ b/definitions/grib2/tables/9/4.5.table @@ -12,9 +12,7 @@ 10 10 Entire atmosphere 11 11 Cumulonimbus (CB) base (m) 12 12 Cumulonimbus (CB) top (m) -# 13-19 Reserved 20 20 Isothermal level (K) -# 21-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -29,13 +27,10 @@ 111 111 Eta level 112 112 Reserved 113 113 Logarithmic hybrid level -# 114-116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level 119 hpl Hybrid pressure level -# 120-149 Reserved 150 150 Generalized vertical height coordinate -# 151-159 Reserved 160 160 Depth below sea level m 161 161 Depth below water surface (m) 162 sfc Lake or river bottom @@ -43,6 +38,4 @@ 164 164 Bottom of thermally active sediment layer 165 165 Bottom of sediment layer penetrated by thermal wave 166 sfc Mixing layer -# 167-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.6.table b/definitions/grib2/tables/9/4.6.table index eaa5c4362..30146761b 100644 --- a/definitions/grib2/tables/9/4.6.table +++ b/definitions/grib2/tables/9/4.6.table @@ -4,6 +4,4 @@ 2 2 Negatively perturbed forecast 3 3 Positively perturbed forecast 4 4 Multi-model forecast -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.7.table b/definitions/grib2/tables/9/4.7.table index e6d887bdb..48fdee35d 100644 --- a/definitions/grib2/tables/9/4.7.table +++ b/definitions/grib2/tables/9/4.7.table @@ -9,6 +9,4 @@ 7 7 Interquartile range (range between the 25th and 75th quantile) 8 8 Minimum of all ensemble members 9 9 Maximum of all ensemble members -# 10-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.8.table b/definitions/grib2/tables/9/4.8.table index d06153079..60e79328c 100644 --- a/definitions/grib2/tables/9/4.8.table +++ b/definitions/grib2/tables/9/4.8.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Anomaly correlation 1 1 Root mean square -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.9.table b/definitions/grib2/tables/9/4.9.table index 5243e58dd..0e32bf392 100644 --- a/definitions/grib2/tables/9/4.9.table +++ b/definitions/grib2/tables/9/4.9.table @@ -4,6 +4,4 @@ 2 2 Probability of event between lower and upper limits (the range includes the lower limit but not the upper limit) 3 3 Probability of event above lower limit 4 4 Probability of event below upper limit -# 5-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/4.91.table b/definitions/grib2/tables/9/4.91.table index cea421695..d33725b40 100644 --- a/definitions/grib2/tables/9/4.91.table +++ b/definitions/grib2/tables/9/4.91.table @@ -11,6 +11,4 @@ 9 9 Smaller or equal second limit 10 10 Between first and second limit. The range includes the second limit but not the first limit 11 11 Equal to first limit. -# 12-191 Reserved -# 192-254 Reserved for local use 255 missing Missing diff --git a/definitions/grib2/tables/9/5.0.table b/definitions/grib2/tables/9/5.0.table index e554b5c4b..29a47997c 100644 --- a/definitions/grib2/tables/9/5.0.table +++ b/definitions/grib2/tables/9/5.0.table @@ -6,15 +6,10 @@ 4 4 Grid point data - IEEE floating point data 40 40 Grid point data - JPEG 2000 code stream format 41 41 Grid point data - Portable Network Graphics (PNG) -#42-49 Reserved 50 50 Spectral data - simple packing 51 51 Spherical harmonics data - complex packing -#52-60 Reserved 61 61 Grid point data - simple packing with logarithm pre-processing -# 62-199 Reserved 200 200 Run length packing with level values -# 201-49151 Reserved -# 49152-65534 Reserved for local use 40000 40000 JPEG2000 Packing 40010 40010 PNG pacling 50000 50000 Sperical harmonics ieee packing diff --git a/definitions/grib2/tables/9/5.1.table b/definitions/grib2/tables/9/5.1.table index 158a35850..445d053a3 100644 --- a/definitions/grib2/tables/9/5.1.table +++ b/definitions/grib2/tables/9/5.1.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Floating point 1 1 Integer -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/5.2.table b/definitions/grib2/tables/9/5.2.table index d9896e11f..e64f52513 100644 --- a/definitions/grib2/tables/9/5.2.table +++ b/definitions/grib2/tables/9/5.2.table @@ -1,8 +1,5 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Explicit coordinate values set 1 1 Linear coordinates f(1)=C1, f(n)=f(n-1)+C2 -# 2-10 Reserved 11 11 Geometric coordinates f(1)=C1, f(n)=C2*f(n-1) -# 12-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/5.3.table b/definitions/grib2/tables/9/5.3.table index 6f228aeec..e140f88e8 100644 --- a/definitions/grib2/tables/9/5.3.table +++ b/definitions/grib2/tables/9/5.3.table @@ -2,6 +2,4 @@ 1 1 Direction degrees true 2 2 Frequency (s-1) 3 3 Radial number (2pi/lambda) (m-1) -# 4-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/5.4.table b/definitions/grib2/tables/9/5.4.table index f844f557e..7e69a3535 100644 --- a/definitions/grib2/tables/9/5.4.table +++ b/definitions/grib2/tables/9/5.4.table @@ -1,6 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Row by row splitting 1 1 General group splitting -# 2-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/5.40.table b/definitions/grib2/tables/9/5.40.table index 2431eb547..e9241d100 100644 --- a/definitions/grib2/tables/9/5.40.table +++ b/definitions/grib2/tables/9/5.40.table @@ -1,5 +1,4 @@ # Automatically generated by ./create_tables.pl from database fm92_grib2@grib-param-db-prod.ecmwf.int, do not edit 0 0 Lossless 1 1 Lossy -# 2-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/9/5.5.table b/definitions/grib2/tables/9/5.5.table index f2216e273..aa71c5fa1 100644 --- a/definitions/grib2/tables/9/5.5.table +++ b/definitions/grib2/tables/9/5.5.table @@ -2,6 +2,4 @@ 0 0 No explicit missing values included within data values 1 1 Primary missing values included within data values 2 2 Primary and secondary missing values included within data values -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/5.6.table b/definitions/grib2/tables/9/5.6.table index 3b0892d37..d91c3592f 100644 --- a/definitions/grib2/tables/9/5.6.table +++ b/definitions/grib2/tables/9/5.6.table @@ -2,6 +2,4 @@ 0 0 Reserved 1 1 First-order spatial differencing 2 2 Second-order spatial differencing -# 3-191 Reserved -# 192-254 Reserved for local use 255 255 Missing diff --git a/definitions/grib2/tables/9/5.7.table b/definitions/grib2/tables/9/5.7.table index f056d3059..493d0826a 100644 --- a/definitions/grib2/tables/9/5.7.table +++ b/definitions/grib2/tables/9/5.7.table @@ -3,5 +3,4 @@ 1 1 IEEE 32-bit (I=4 in section 7) 2 2 IEEE 64-bit (I=8 in section 7) 3 3 IEEE 128-bit (I=16 in section 7) -# 4-254 Reserved 255 255 Missing diff --git a/definitions/grib2/tables/local/ecmf/4/1.2.table b/definitions/grib2/tables/local/ecmf/4/1.2.table index a0f9c9739..5fb6fbd14 100644 --- a/definitions/grib2/tables/local/ecmf/4/1.2.table +++ b/definitions/grib2/tables/local/ecmf/4/1.2.table @@ -1,4 +1,3 @@ # CODE TABLE 1.2, Significance of Reference Time 191 191 funny reference time -#4-191 Reserved #192-254 Reserved for local use diff --git a/definitions/grib2/tables/local/kwbc/1/4.5.table b/definitions/grib2/tables/local/kwbc/1/4.5.table index f89c21674..bbfaebe57 100644 --- a/definitions/grib2/tables/local/kwbc/1/4.5.table +++ b/definitions/grib2/tables/local/kwbc/1/4.5.table @@ -16,13 +16,11 @@ 14 14 Level of free convection (LFC) 15 15 Convective condensation level (CCL) 16 16 Level of neutral buoyancy or equilibrium level (LNB) -# 17-19 Reserved 20 20 Isothermal level (K) 21 21 Lowest level where mass density exceeds the specified value (base for a given threshold of mass density) (kg m-3) 22 22 Highest level where mass density exceeds the specified value (top for a given threshold of mass density) (kg m-3) 23 23 Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration) (Bq m-3) 24 24 Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration) (Bq m-3) -# 25-99 Reserved 100 pl Isobaric surface (Pa) 101 sfc Mean sea level 102 102 Specific altitude above mean sea level (m) @@ -39,14 +37,11 @@ 113 113 Logarithmic hybrid level 114 114 Snow level (Numeric) 115 115 Sigma height level -# 116 Reserved 117 117 Mixed layer depth (m) 118 hhl Hybrid height level (-) 119 hpl Hybrid pressure level (-) -# 120-149 Reserved 150 150 Generalized vertical height coordinate 151 sol Soil level (Numeric) -# 152-159 Reserved 160 160 Depth below sea level (m) 161 161 Depth below water surface (m) 162 162 Lake or river bottom (-) @@ -55,20 +50,16 @@ 165 165 Bottom of sediment layer penetrated by thermal wave (-) 166 166 Mixing layer (-) 167 167 Bottom of root zone (-) -# 168-173 Reserved 174 174 Top surface of ice on sea, lake or river 175 175 Top surface of ice, under snow cover, on sea, lake or river 176 176 Bottom surface (underside) ice on sea, lake or river 177 sfc Deep soil (of indefinite depth) -# 178 Reserved 179 179 Top surface of glacier ice and inland ice 180 180 Deep inland or glacier ice (of indefinite depth) 181 181 Grid tile land fraction as a model surface 182 182 Grid tile water fraction as a model surface 183 183 Grid tile ice fraction on sea, lake or river as a model surface 184 184 Grid tile glacier ice and inland ice fraction as a model surface -# 185-191 Reserved -# 192-254 Reserved for local use # See ECC-469 200 200 Entire atmosphere (considered as a single layer) 201 201 Entire ocean (considered as a single layer) From 3a58cdcaeb88c704b415b9d64b15b5cacd5fd890 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 8 Jul 2024 09:38:22 +0000 Subject: [PATCH 026/277] ECC-1856: GRIB2: Add volumetric soil moisture top 20cm/100cm parameters --- definitions/grib2/cfVarName.def | 50 +++++++++++++++++++++++++++++++++ definitions/grib2/name.def | 50 +++++++++++++++++++++++++++++++++ definitions/grib2/paramId.def | 50 +++++++++++++++++++++++++++++++++ definitions/grib2/shortName.def | 50 +++++++++++++++++++++++++++++++++ definitions/grib2/units.def | 50 +++++++++++++++++++++++++++++++++ 5 files changed, 250 insertions(+) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index ec7335aa4..32e68a667 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -4968,6 +4968,32 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 0 ; } +#Time-mean volumetric soil moisture top 20 cm +'avg_vsw20' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean volumetric soil moisture top 100 cm +'avg_vsw100' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'avg_z' = { discipline = 0 ; @@ -7467,6 +7493,30 @@ parameterCategory = 22 ; parameterNumber = 6 ; } +#Volumetric soil moisture top 20 cm +'vsw20' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + } +#Volumetric soil moisture top 100 cm +'vsw100' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + } #Universal thermal climate index 'utci' = { discipline = 20 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 64a3da1a7..7764aed03 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -4968,6 +4968,32 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 0 ; } +#Time-mean volumetric soil moisture top 20 cm +'Time-mean volumetric soil moisture top 20 cm' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean volumetric soil moisture top 100 cm +'Time-mean volumetric soil moisture top 100 cm' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'Time-mean geopotential' = { discipline = 0 ; @@ -7467,6 +7493,30 @@ parameterCategory = 22 ; parameterNumber = 6 ; } +#Volumetric soil moisture top 20 cm +'Volumetric soil moisture top 20 cm' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + } +#Volumetric soil moisture top 100 cm +'Volumetric soil moisture top 100 cm' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + } #Universal thermal climate index 'Universal thermal climate index' = { discipline = 20 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 00069255d..4364fde7b 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -4968,6 +4968,32 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 0 ; } +#Time-mean volumetric soil moisture top 20 cm +'235118' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean volumetric soil moisture top 100 cm +'235119' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential '235129' = { discipline = 0 ; @@ -7467,6 +7493,30 @@ parameterCategory = 22 ; parameterNumber = 6 ; } +#Volumetric soil moisture top 20 cm +'260665' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + } +#Volumetric soil moisture top 100 cm +'260666' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + } #Universal thermal climate index '261001' = { discipline = 20 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 7aa4259b2..c85560c5a 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -4968,6 +4968,32 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 0 ; } +#Time-mean volumetric soil moisture top 20 cm +'avg_vsw20' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean volumetric soil moisture top 100 cm +'avg_vsw100' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'avg_z' = { discipline = 0 ; @@ -7467,6 +7493,30 @@ parameterCategory = 22 ; parameterNumber = 6 ; } +#Volumetric soil moisture top 20 cm +'vsw20' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + } +#Volumetric soil moisture top 100 cm +'vsw100' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + } #Universal thermal climate index 'utci' = { discipline = 20 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index de6a94650..c2f4e3270 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -4968,6 +4968,32 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 0 ; } +#Time-mean volumetric soil moisture top 20 cm +'m**3 m**-3' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean volumetric soil moisture top 100 cm +'m**3 m**-3' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'm**2 s**-2' = { discipline = 0 ; @@ -7467,6 +7493,30 @@ parameterCategory = 22 ; parameterNumber = 6 ; } +#Volumetric soil moisture top 20 cm +'m**3 m**-3' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + } +#Volumetric soil moisture top 100 cm +'m**3 m**-3' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + } #Universal thermal climate index 'K' = { discipline = 20 ; From 1cb4a57c5565191290f1a7f2f3861310b367fe58 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 8 Jul 2024 10:42:45 +0000 Subject: [PATCH 027/277] ECC-1760: GRIB2: remove is_chemical_srcsink key from chemistry related paramIds --- definitions/grib2/cfVarName.def | 28 ------------------- .../grib2/localConcepts/ecmf/cfVarName.def | 9 ------ definitions/grib2/localConcepts/ecmf/name.def | 9 ------ .../grib2/localConcepts/ecmf/paramId.def | 9 ------ .../grib2/localConcepts/ecmf/shortName.def | 9 ------ .../grib2/localConcepts/ecmf/units.def | 9 ------ definitions/grib2/name.def | 28 ------------------- definitions/grib2/paramId.def | 28 ------------------- definitions/grib2/shortName.def | 28 ------------------- definitions/grib2/units.def | 28 ------------------- tests/grib_local.sh | 5 ++-- 11 files changed, 3 insertions(+), 187 deletions(-) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index 32e68a667..437d399ce 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -9930,7 +9930,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 255 ; } #Dry deposition velocity @@ -9980,7 +9979,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 6 ; } #Emission mass flux from anthropogenic sources @@ -9988,7 +9986,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 4 ; } #Emission mass flux from elevated anthropogenic sources @@ -9996,7 +9993,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 12 ; } #Emission mass flux from surface anthropogenic sources @@ -10004,7 +10000,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 13 ; } #Emission from aviation @@ -10012,7 +10007,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 1 ; } #Emission mass flux from agriculture livestock @@ -10020,7 +10014,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 14 ; } #Emission mass flux from agriculture soils @@ -10028,7 +10021,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 15 ; } #Emission mass flux from agricultural waste burning @@ -10036,7 +10028,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 16 ; } #Emission mass flux from residential, commercial and other combustion @@ -10044,7 +10035,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 18 ; } #Emission mass flux from power generation @@ -10052,7 +10042,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 19 ; } #Emission mass flux from fugitives @@ -10060,7 +10049,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 21 ; } #Emission mass flux from industrial process @@ -10068,7 +10056,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 22 ; } #Emission mass flux from solvents @@ -10076,7 +10063,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 23 ; } #Emission mass flux from ships @@ -10084,7 +10070,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 24 ; } #Emission mass flux from wastes (solid and water) @@ -10092,7 +10077,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 25 ; } #Emission mass flux from off-road transportation @@ -10100,7 +10084,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 27 ; } #Emission mass flux from road transportation @@ -10108,7 +10091,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 26 ; } #Emission mass flux from super power stations @@ -10116,7 +10098,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 20 ; } #Emission mass flux from volcanoes @@ -10124,7 +10105,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Emission mass flux from wetlands @@ -10132,7 +10112,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 10 ; } #Net ecosystem exchange flux @@ -10200,7 +10179,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 8 ; } #Emission mass flux from fossil fuel @@ -10208,7 +10186,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 9 ; } #Emission mass flux from other @@ -10216,7 +10193,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 0 ; } #Emission mass flux from oceans @@ -10224,7 +10200,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 11 ; } #Accumulated wet deposition mass flux @@ -10252,7 +10227,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 2 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Total column vertically-integrated mass density from volcanoes @@ -10262,7 +10236,6 @@ parameterNumber = 1 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Dry deposition velocity from volcanoes @@ -10270,7 +10243,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 15 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Aerosol optical depth diff --git a/definitions/grib2/localConcepts/ecmf/cfVarName.def b/definitions/grib2/localConcepts/ecmf/cfVarName.def index f1a26b807..b2c177989 100644 --- a/definitions/grib2/localConcepts/ecmf/cfVarName.def +++ b/definitions/grib2/localConcepts/ecmf/cfVarName.def @@ -14121,7 +14121,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 192 ; } #Emission mass flux from biomass burning @@ -14130,7 +14129,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 193 ; } #Emission mass flux from settlements @@ -14139,7 +14137,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 194 ; } #Emission mass flux from soil @@ -14148,7 +14145,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 195 ; } #Emission mass flux from wild animals @@ -14157,7 +14153,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 196 ; } #Aerosol negative fixer mass flux @@ -14187,7 +14182,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 197 ; } #Emission mass flux from residential heating @@ -14196,7 +14190,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 198 ; } #Emission mass flux from oil refineries and transformation industry @@ -14205,7 +14198,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 199 ; } #Emission mass flux from gas production @@ -14214,7 +14206,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 200 ; } #Stream function gradient diff --git a/definitions/grib2/localConcepts/ecmf/name.def b/definitions/grib2/localConcepts/ecmf/name.def index 46f80dc2c..888748dfb 100644 --- a/definitions/grib2/localConcepts/ecmf/name.def +++ b/definitions/grib2/localConcepts/ecmf/name.def @@ -14121,7 +14121,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 192 ; } #Emission mass flux from biomass burning @@ -14130,7 +14129,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 193 ; } #Emission mass flux from settlements @@ -14139,7 +14137,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 194 ; } #Emission mass flux from soil @@ -14148,7 +14145,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 195 ; } #Emission mass flux from wild animals @@ -14157,7 +14153,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 196 ; } #Aerosol negative fixer mass flux @@ -14187,7 +14182,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 197 ; } #Emission mass flux from residential heating @@ -14196,7 +14190,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 198 ; } #Emission mass flux from oil refineries and transformation industry @@ -14205,7 +14198,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 199 ; } #Emission mass flux from gas production @@ -14214,7 +14206,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 200 ; } #Stream function gradient diff --git a/definitions/grib2/localConcepts/ecmf/paramId.def b/definitions/grib2/localConcepts/ecmf/paramId.def index 10245c6bb..3ca97c1b6 100644 --- a/definitions/grib2/localConcepts/ecmf/paramId.def +++ b/definitions/grib2/localConcepts/ecmf/paramId.def @@ -14121,7 +14121,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 192 ; } #Emission mass flux from biomass burning @@ -14130,7 +14129,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 193 ; } #Emission mass flux from settlements @@ -14139,7 +14137,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 194 ; } #Emission mass flux from soil @@ -14148,7 +14145,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 195 ; } #Emission mass flux from wild animals @@ -14157,7 +14153,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 196 ; } #Aerosol negative fixer mass flux @@ -14187,7 +14182,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 197 ; } #Emission mass flux from residential heating @@ -14196,7 +14190,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 198 ; } #Emission mass flux from oil refineries and transformation industry @@ -14205,7 +14198,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 199 ; } #Emission mass flux from gas production @@ -14214,7 +14206,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 200 ; } #Stream function gradient diff --git a/definitions/grib2/localConcepts/ecmf/shortName.def b/definitions/grib2/localConcepts/ecmf/shortName.def index 88148b199..32d77c7e1 100644 --- a/definitions/grib2/localConcepts/ecmf/shortName.def +++ b/definitions/grib2/localConcepts/ecmf/shortName.def @@ -14121,7 +14121,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 192 ; } #Emission mass flux from biomass burning @@ -14130,7 +14129,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 193 ; } #Emission mass flux from settlements @@ -14139,7 +14137,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 194 ; } #Emission mass flux from soil @@ -14148,7 +14145,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 195 ; } #Emission mass flux from wild animals @@ -14157,7 +14153,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 196 ; } #Aerosol negative fixer mass flux @@ -14187,7 +14182,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 197 ; } #Emission mass flux from residential heating @@ -14196,7 +14190,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 198 ; } #Emission mass flux from oil refineries and transformation industry @@ -14205,7 +14198,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 199 ; } #Emission mass flux from gas production @@ -14214,7 +14206,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 200 ; } #Stream function gradient diff --git a/definitions/grib2/localConcepts/ecmf/units.def b/definitions/grib2/localConcepts/ecmf/units.def index 720c17198..53160fa65 100644 --- a/definitions/grib2/localConcepts/ecmf/units.def +++ b/definitions/grib2/localConcepts/ecmf/units.def @@ -14121,7 +14121,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 192 ; } #Emission mass flux from biomass burning @@ -14130,7 +14129,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 193 ; } #Emission mass flux from settlements @@ -14139,7 +14137,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 194 ; } #Emission mass flux from soil @@ -14148,7 +14145,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 195 ; } #Emission mass flux from wild animals @@ -14157,7 +14153,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 196 ; } #Aerosol negative fixer mass flux @@ -14187,7 +14182,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 197 ; } #Emission mass flux from residential heating @@ -14196,7 +14190,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 198 ; } #Emission mass flux from oil refineries and transformation industry @@ -14205,7 +14198,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 199 ; } #Emission mass flux from gas production @@ -14214,7 +14206,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 200 ; } #Stream function gradient diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 7764aed03..f2baef1fb 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -9930,7 +9930,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 255 ; } #Dry deposition velocity @@ -9980,7 +9979,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 6 ; } #Emission mass flux from anthropogenic sources @@ -9988,7 +9986,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 4 ; } #Emission mass flux from elevated anthropogenic sources @@ -9996,7 +9993,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 12 ; } #Emission mass flux from surface anthropogenic sources @@ -10004,7 +10000,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 13 ; } #Emission from aviation @@ -10012,7 +10007,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 1 ; } #Emission mass flux from agriculture livestock @@ -10020,7 +10014,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 14 ; } #Emission mass flux from agriculture soils @@ -10028,7 +10021,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 15 ; } #Emission mass flux from agricultural waste burning @@ -10036,7 +10028,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 16 ; } #Emission mass flux from residential, commercial and other combustion @@ -10044,7 +10035,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 18 ; } #Emission mass flux from power generation @@ -10052,7 +10042,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 19 ; } #Emission mass flux from fugitives @@ -10060,7 +10049,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 21 ; } #Emission mass flux from industrial process @@ -10068,7 +10056,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 22 ; } #Emission mass flux from solvents @@ -10076,7 +10063,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 23 ; } #Emission mass flux from ships @@ -10084,7 +10070,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 24 ; } #Emission mass flux from wastes (solid and water) @@ -10092,7 +10077,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 25 ; } #Emission mass flux from off-road transportation @@ -10100,7 +10084,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 27 ; } #Emission mass flux from road transportation @@ -10108,7 +10091,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 26 ; } #Emission mass flux from super power stations @@ -10116,7 +10098,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 20 ; } #Emission mass flux from volcanoes @@ -10124,7 +10105,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Emission mass flux from wetlands @@ -10132,7 +10112,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 10 ; } #Net ecosystem exchange flux @@ -10200,7 +10179,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 8 ; } #Emission mass flux from fossil fuel @@ -10208,7 +10186,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 9 ; } #Emission mass flux from other @@ -10216,7 +10193,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 0 ; } #Emission mass flux from oceans @@ -10224,7 +10200,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 11 ; } #Accumulated wet deposition mass flux @@ -10252,7 +10227,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 2 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Total column vertically-integrated mass density from volcanoes @@ -10262,7 +10236,6 @@ parameterNumber = 1 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Dry deposition velocity from volcanoes @@ -10270,7 +10243,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 15 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Aerosol optical depth diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 4364fde7b..edc5f855c 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -9930,7 +9930,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 255 ; } #Dry deposition velocity @@ -9980,7 +9979,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 6 ; } #Emission mass flux from anthropogenic sources @@ -9988,7 +9986,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 4 ; } #Emission mass flux from elevated anthropogenic sources @@ -9996,7 +9993,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 12 ; } #Emission mass flux from surface anthropogenic sources @@ -10004,7 +10000,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 13 ; } #Emission from aviation @@ -10012,7 +10007,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 1 ; } #Emission mass flux from agriculture livestock @@ -10020,7 +10014,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 14 ; } #Emission mass flux from agriculture soils @@ -10028,7 +10021,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 15 ; } #Emission mass flux from agricultural waste burning @@ -10036,7 +10028,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 16 ; } #Emission mass flux from residential, commercial and other combustion @@ -10044,7 +10035,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 18 ; } #Emission mass flux from power generation @@ -10052,7 +10042,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 19 ; } #Emission mass flux from fugitives @@ -10060,7 +10049,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 21 ; } #Emission mass flux from industrial process @@ -10068,7 +10056,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 22 ; } #Emission mass flux from solvents @@ -10076,7 +10063,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 23 ; } #Emission mass flux from ships @@ -10084,7 +10070,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 24 ; } #Emission mass flux from wastes (solid and water) @@ -10092,7 +10077,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 25 ; } #Emission mass flux from off-road transportation @@ -10100,7 +10084,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 27 ; } #Emission mass flux from road transportation @@ -10108,7 +10091,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 26 ; } #Emission mass flux from super power stations @@ -10116,7 +10098,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 20 ; } #Emission mass flux from volcanoes @@ -10124,7 +10105,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Emission mass flux from wetlands @@ -10132,7 +10112,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 10 ; } #Net ecosystem exchange flux @@ -10200,7 +10179,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 8 ; } #Emission mass flux from fossil fuel @@ -10208,7 +10186,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 9 ; } #Emission mass flux from other @@ -10216,7 +10193,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 0 ; } #Emission mass flux from oceans @@ -10224,7 +10200,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 11 ; } #Accumulated wet deposition mass flux @@ -10252,7 +10227,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 2 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Total column vertically-integrated mass density from volcanoes @@ -10262,7 +10236,6 @@ parameterNumber = 1 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Dry deposition velocity from volcanoes @@ -10270,7 +10243,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 15 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Aerosol optical depth diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index c85560c5a..208d8f372 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -9930,7 +9930,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 255 ; } #Dry deposition velocity @@ -9980,7 +9979,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 6 ; } #Emission mass flux from anthropogenic sources @@ -9988,7 +9986,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 4 ; } #Emission mass flux from elevated anthropogenic sources @@ -9996,7 +9993,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 12 ; } #Emission mass flux from surface anthropogenic sources @@ -10004,7 +10000,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 13 ; } #Emission from aviation @@ -10012,7 +10007,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 1 ; } #Emission mass flux from agriculture livestock @@ -10020,7 +10014,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 14 ; } #Emission mass flux from agriculture soils @@ -10028,7 +10021,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 15 ; } #Emission mass flux from agricultural waste burning @@ -10036,7 +10028,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 16 ; } #Emission mass flux from residential, commercial and other combustion @@ -10044,7 +10035,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 18 ; } #Emission mass flux from power generation @@ -10052,7 +10042,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 19 ; } #Emission mass flux from fugitives @@ -10060,7 +10049,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 21 ; } #Emission mass flux from industrial process @@ -10068,7 +10056,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 22 ; } #Emission mass flux from solvents @@ -10076,7 +10063,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 23 ; } #Emission mass flux from ships @@ -10084,7 +10070,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 24 ; } #Emission mass flux from wastes (solid and water) @@ -10092,7 +10077,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 25 ; } #Emission mass flux from off-road transportation @@ -10100,7 +10084,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 27 ; } #Emission mass flux from road transportation @@ -10108,7 +10091,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 26 ; } #Emission mass flux from super power stations @@ -10116,7 +10098,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 20 ; } #Emission mass flux from volcanoes @@ -10124,7 +10105,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Emission mass flux from wetlands @@ -10132,7 +10112,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 10 ; } #Net ecosystem exchange flux @@ -10200,7 +10179,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 8 ; } #Emission mass flux from fossil fuel @@ -10208,7 +10186,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 9 ; } #Emission mass flux from other @@ -10216,7 +10193,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 0 ; } #Emission mass flux from oceans @@ -10224,7 +10200,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 11 ; } #Accumulated wet deposition mass flux @@ -10252,7 +10227,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 2 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Total column vertically-integrated mass density from volcanoes @@ -10262,7 +10236,6 @@ parameterNumber = 1 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Dry deposition velocity from volcanoes @@ -10270,7 +10243,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 15 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Aerosol optical depth diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index c2f4e3270..e11e8ddc9 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -9930,7 +9930,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 255 ; } #Dry deposition velocity @@ -9980,7 +9979,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 6 ; } #Emission mass flux from anthropogenic sources @@ -9988,7 +9986,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 4 ; } #Emission mass flux from elevated anthropogenic sources @@ -9996,7 +9993,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 12 ; } #Emission mass flux from surface anthropogenic sources @@ -10004,7 +10000,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 13 ; } #Emission from aviation @@ -10012,7 +10007,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 1 ; } #Emission mass flux from agriculture livestock @@ -10020,7 +10014,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 14 ; } #Emission mass flux from agriculture soils @@ -10028,7 +10021,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 15 ; } #Emission mass flux from agricultural waste burning @@ -10036,7 +10028,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 16 ; } #Emission mass flux from residential, commercial and other combustion @@ -10044,7 +10035,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 18 ; } #Emission mass flux from power generation @@ -10052,7 +10042,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 19 ; } #Emission mass flux from fugitives @@ -10060,7 +10049,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 21 ; } #Emission mass flux from industrial process @@ -10068,7 +10056,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 22 ; } #Emission mass flux from solvents @@ -10076,7 +10063,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 23 ; } #Emission mass flux from ships @@ -10084,7 +10070,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 24 ; } #Emission mass flux from wastes (solid and water) @@ -10092,7 +10077,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 25 ; } #Emission mass flux from off-road transportation @@ -10100,7 +10084,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 27 ; } #Emission mass flux from road transportation @@ -10108,7 +10091,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 26 ; } #Emission mass flux from super power stations @@ -10116,7 +10098,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 20 ; } #Emission mass flux from volcanoes @@ -10124,7 +10105,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Emission mass flux from wetlands @@ -10132,7 +10112,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 10 ; } #Net ecosystem exchange flux @@ -10200,7 +10179,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 8 ; } #Emission mass flux from fossil fuel @@ -10208,7 +10186,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 9 ; } #Emission mass flux from other @@ -10216,7 +10193,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 0 ; } #Emission mass flux from oceans @@ -10224,7 +10200,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 77 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 11 ; } #Accumulated wet deposition mass flux @@ -10252,7 +10227,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 2 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Total column vertically-integrated mass density from volcanoes @@ -10262,7 +10236,6 @@ parameterNumber = 1 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Dry deposition velocity from volcanoes @@ -10270,7 +10243,6 @@ discipline = 0 ; parameterCategory = 20 ; parameterNumber = 15 ; - is_chemical_srcsink = 1 ; sourceSinkChemicalPhysicalProcess = 7 ; } #Aerosol optical depth diff --git a/tests/grib_local.sh b/tests/grib_local.sh index 62b1b27e4..830dd124d 100755 --- a/tests/grib_local.sh +++ b/tests/grib_local.sh @@ -217,8 +217,9 @@ ${tools_dir}/grib_compare $temp $temp.1 ${tools_dir}/grib_set -s paramId=211123,setLocalDefinition=1,localDefinitionNumber=36 $sample_g2 $temp grib_check_key_equals $temp productDefinitionTemplateNumber 40 -${tools_dir}/grib_set -s paramId=456000,setLocalDefinition=1,localDefinitionNumber=36 $sample_g2 $temp -grib_check_key_equals $temp productDefinitionTemplateNumber 76 +# Also see ECC-1760: is_chemical_srcsink removed so no automaric selection of product definition template +${tools_dir}/grib_set -s productDefinitionTemplateNumber=76,paramId=456000,setLocalDefinition=1,localDefinitionNumber=36 $sample_g2 $temp +grib_check_key_equals $temp shortName drydep_vel_vol ${tools_dir}/grib_set -s paramId=215225,setLocalDefinition=1,localDefinitionNumber=36 $sample_g2 $temp grib_check_key_equals $temp productDefinitionTemplateNumber 48 From 9b25a231ebc4c7aae67b8a78d286273afa1f438b Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 8 Jul 2024 11:05:40 +0000 Subject: [PATCH 028/277] ECC-1857: GRIB2: Update WMO encoding in soil moisture parameters and add time-mean variant --- definitions/grib2/cfVarName.def | 38 ++++++++++++++++--- .../grib2/localConcepts/s2s/cfVarName.def | 26 +++++++++++++ definitions/grib2/localConcepts/s2s/name.def | 26 +++++++++++++ .../grib2/localConcepts/s2s/paramId.def | 26 +++++++++++++ .../grib2/localConcepts/s2s/shortName.def | 26 +++++++++++++ definitions/grib2/localConcepts/s2s/units.def | 26 +++++++++++++ definitions/grib2/name.def | 38 ++++++++++++++++--- definitions/grib2/paramId.def | 38 ++++++++++++++++--- definitions/grib2/shortName.def | 38 ++++++++++++++++--- definitions/grib2/units.def | 38 ++++++++++++++++--- 10 files changed, 290 insertions(+), 30 deletions(-) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index 437d399ce..279f9a2c4 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -3060,8 +3060,8 @@ #Soil moisture top 20 cm 'sm20' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; @@ -3072,14 +3072,14 @@ #Soil moisture top 100 cm 'sm100' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 10 ; - scaleFactorOfSecondFixedSurface = 1 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; } #Total column supercooled liquid water 'tcslw' = { @@ -4958,6 +4958,32 @@ parameterNumber = 32 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean soil moisture top 20 cm +'avg_sm20' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 19 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean soil moisture top 100 cm +'avg_sm100' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 19 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean most-unstable CAPE 'avg_mucape' = { discipline = 0 ; diff --git a/definitions/grib2/localConcepts/s2s/cfVarName.def b/definitions/grib2/localConcepts/s2s/cfVarName.def index 551609168..ebbc8da75 100644 --- a/definitions/grib2/localConcepts/s2s/cfVarName.def +++ b/definitions/grib2/localConcepts/s2s/cfVarName.def @@ -173,6 +173,32 @@ scaleFactorOfSecondFixedSurface = missing() ; typeOfStatisticalProcessing = 0 ; } +#Soil moisture top 20 cm +'sm20' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Soil moisture top 100 cm +'sm100' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 10 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } #Eastward surface sea water velocity 'ocu' = { discipline = 10 ; diff --git a/definitions/grib2/localConcepts/s2s/name.def b/definitions/grib2/localConcepts/s2s/name.def index cf970208c..abed50244 100644 --- a/definitions/grib2/localConcepts/s2s/name.def +++ b/definitions/grib2/localConcepts/s2s/name.def @@ -173,6 +173,32 @@ scaleFactorOfSecondFixedSurface = missing() ; typeOfStatisticalProcessing = 0 ; } +#Soil moisture top 20 cm +'Soil moisture top 20 cm' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Soil moisture top 100 cm +'Soil moisture top 100 cm' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 10 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } #Eastward surface sea water velocity 'Eastward surface sea water velocity' = { discipline = 10 ; diff --git a/definitions/grib2/localConcepts/s2s/paramId.def b/definitions/grib2/localConcepts/s2s/paramId.def index bfc1c9ee1..b66fbed7d 100644 --- a/definitions/grib2/localConcepts/s2s/paramId.def +++ b/definitions/grib2/localConcepts/s2s/paramId.def @@ -173,6 +173,32 @@ scaleFactorOfSecondFixedSurface = missing() ; typeOfStatisticalProcessing = 0 ; } +#Soil moisture top 20 cm +'228086' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Soil moisture top 100 cm +'228087' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 10 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } #Eastward surface sea water velocity '151131' = { discipline = 10 ; diff --git a/definitions/grib2/localConcepts/s2s/shortName.def b/definitions/grib2/localConcepts/s2s/shortName.def index 135b5992a..20fda1a28 100644 --- a/definitions/grib2/localConcepts/s2s/shortName.def +++ b/definitions/grib2/localConcepts/s2s/shortName.def @@ -173,6 +173,32 @@ scaleFactorOfSecondFixedSurface = missing() ; typeOfStatisticalProcessing = 0 ; } +#Soil moisture top 20 cm +'sm20' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Soil moisture top 100 cm +'sm100' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 10 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } #Eastward surface sea water velocity 'ocu' = { discipline = 10 ; diff --git a/definitions/grib2/localConcepts/s2s/units.def b/definitions/grib2/localConcepts/s2s/units.def index a37997b56..ce7216cee 100644 --- a/definitions/grib2/localConcepts/s2s/units.def +++ b/definitions/grib2/localConcepts/s2s/units.def @@ -173,6 +173,32 @@ scaleFactorOfSecondFixedSurface = missing() ; typeOfStatisticalProcessing = 0 ; } +#Soil moisture top 20 cm +'kg m**-3' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Soil moisture top 100 cm +'kg m**-3' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 10 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } #Eastward surface sea water velocity 'm s**-1' = { discipline = 10 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index f2baef1fb..f7f2ae2b8 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -3060,8 +3060,8 @@ #Soil moisture top 20 cm 'Soil moisture top 20 cm' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; @@ -3072,14 +3072,14 @@ #Soil moisture top 100 cm 'Soil moisture top 100 cm' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 10 ; - scaleFactorOfSecondFixedSurface = 1 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; } #Total column supercooled liquid water 'Total column supercooled liquid water' = { @@ -4958,6 +4958,32 @@ parameterNumber = 32 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean soil moisture top 20 cm +'Time-mean soil moisture top 20 cm' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 19 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean soil moisture top 100 cm +'Time-mean soil moisture top 100 cm' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 19 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean most-unstable CAPE 'Time-mean most-unstable CAPE' = { discipline = 0 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index edc5f855c..b120aa998 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -3060,8 +3060,8 @@ #Soil moisture top 20 cm '228086' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; @@ -3072,14 +3072,14 @@ #Soil moisture top 100 cm '228087' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 10 ; - scaleFactorOfSecondFixedSurface = 1 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; } #Total column supercooled liquid water '228088' = { @@ -4958,6 +4958,32 @@ parameterNumber = 32 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean soil moisture top 20 cm +'235113' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 19 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean soil moisture top 100 cm +'235114' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 19 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean most-unstable CAPE '235117' = { discipline = 0 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 208d8f372..7699c9f35 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -3060,8 +3060,8 @@ #Soil moisture top 20 cm 'sm20' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; @@ -3072,14 +3072,14 @@ #Soil moisture top 100 cm 'sm100' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 10 ; - scaleFactorOfSecondFixedSurface = 1 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; } #Total column supercooled liquid water 'tcslw' = { @@ -4958,6 +4958,32 @@ parameterNumber = 32 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean soil moisture top 20 cm +'avg_sm20' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 19 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean soil moisture top 100 cm +'avg_sm100' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 19 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean most-unstable CAPE 'avg_mucape' = { discipline = 0 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index e11e8ddc9..f4b4cb7df 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -3060,8 +3060,8 @@ #Soil moisture top 20 cm 'kg m**-3' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; @@ -3072,14 +3072,14 @@ #Soil moisture top 100 cm 'kg m**-3' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 10 ; - scaleFactorOfSecondFixedSurface = 1 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; } #Total column supercooled liquid water 'kg m**-2' = { @@ -4958,6 +4958,32 @@ parameterNumber = 32 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean soil moisture top 20 cm +'kg m**-3' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 19 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean soil moisture top 100 cm +'kg m**-3' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 19 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean most-unstable CAPE 'J kg**-1' = { discipline = 0 ; From 73e0b8241779b5da429f7f48a235552bf92e240c Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 8 Jul 2024 15:47:40 +0100 Subject: [PATCH 029/277] Debugging messages --- src/grib_value.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/grib_value.cc b/src/grib_value.cc index 1142fa6a6..32c637964 100644 --- a/src/grib_value.cc +++ b/src/grib_value.cc @@ -1773,7 +1773,7 @@ int grib_set_values(grib_handle* h, grib_values* args, size_t count) if (h->context->debug) { for (i = 0; i < count; i++) { - grib_print_values("ECCODES DEBUG set key/value pairs", &args[i], stderr); + grib_print_values("ECCODES DEBUG about to set key/value pair", &args[i], stderr); } } From 8cd742d75598ca2d07e3baf725eeaf94020865ee Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 8 Jul 2024 15:17:19 +0000 Subject: [PATCH 030/277] ECC-1862: GRIB2: Add parameter for water vapour increment --- definitions/grib2/localConcepts/ecmf/cfVarName.def | 10 ++++++++++ definitions/grib2/localConcepts/ecmf/name.def | 10 ++++++++++ definitions/grib2/localConcepts/ecmf/paramId.def | 10 ++++++++++ definitions/grib2/localConcepts/ecmf/shortName.def | 10 ++++++++++ definitions/grib2/localConcepts/ecmf/units.def | 10 ++++++++++ 5 files changed, 50 insertions(+) diff --git a/definitions/grib2/localConcepts/ecmf/cfVarName.def b/definitions/grib2/localConcepts/ecmf/cfVarName.def index b2c177989..1ddf27ad0 100644 --- a/definitions/grib2/localConcepts/ecmf/cfVarName.def +++ b/definitions/grib2/localConcepts/ecmf/cfVarName.def @@ -3035,6 +3035,16 @@ parameterCategory = 211 ; parameterNumber = 56 ; } +#Water vapour (chemistry) difference +'h2odiff' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 2 ; + constituentType = 1 ; + typeOfGeneratingProcess = 20 ; + is_chemical = 1 ; + } #Altitude of emitter 'alediff' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/name.def b/definitions/grib2/localConcepts/ecmf/name.def index 888748dfb..f2d776220 100644 --- a/definitions/grib2/localConcepts/ecmf/name.def +++ b/definitions/grib2/localConcepts/ecmf/name.def @@ -3035,6 +3035,16 @@ parameterCategory = 211 ; parameterNumber = 56 ; } +#Water vapour (chemistry) difference +'Water vapour (chemistry) difference' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 2 ; + constituentType = 1 ; + typeOfGeneratingProcess = 20 ; + is_chemical = 1 ; + } #Altitude of emitter 'Altitude of emitter' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/paramId.def b/definitions/grib2/localConcepts/ecmf/paramId.def index 3ca97c1b6..705e33a26 100644 --- a/definitions/grib2/localConcepts/ecmf/paramId.def +++ b/definitions/grib2/localConcepts/ecmf/paramId.def @@ -3035,6 +3035,16 @@ parameterCategory = 211 ; parameterNumber = 56 ; } +#Water vapour (chemistry) difference +'211059' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 2 ; + constituentType = 1 ; + typeOfGeneratingProcess = 20 ; + is_chemical = 1 ; + } #Altitude of emitter '211119' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/shortName.def b/definitions/grib2/localConcepts/ecmf/shortName.def index 32d77c7e1..78f8f2fe9 100644 --- a/definitions/grib2/localConcepts/ecmf/shortName.def +++ b/definitions/grib2/localConcepts/ecmf/shortName.def @@ -3035,6 +3035,16 @@ parameterCategory = 211 ; parameterNumber = 56 ; } +#Water vapour (chemistry) difference +'h2odiff' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 2 ; + constituentType = 1 ; + typeOfGeneratingProcess = 20 ; + is_chemical = 1 ; + } #Altitude of emitter 'alediff' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/units.def b/definitions/grib2/localConcepts/ecmf/units.def index 53160fa65..4f611fb61 100644 --- a/definitions/grib2/localConcepts/ecmf/units.def +++ b/definitions/grib2/localConcepts/ecmf/units.def @@ -3035,6 +3035,16 @@ parameterCategory = 211 ; parameterNumber = 56 ; } +#Water vapour (chemistry) difference +'kg kg**-1' = { + localTablesVersion = 1 ; + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 2 ; + constituentType = 1 ; + typeOfGeneratingProcess = 20 ; + is_chemical = 1 ; + } #Altitude of emitter 'm' = { discipline = 192 ; From 4ba2be2f28052d2bd1bb9abe3b0cafd9ecc39826 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 8 Jul 2024 15:47:39 +0000 Subject: [PATCH 031/277] ECC-1863: GRIB2: Update WMO encoding in base soil moisture parameter --- definitions/grib2/cfVarName.def | 4 ++-- definitions/grib2/name.def | 4 ++-- definitions/grib2/paramId.def | 4 ++-- definitions/grib2/shortName.def | 4 ++-- definitions/grib2/units.def | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index 279f9a2c4..8502798d2 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -11261,8 +11261,8 @@ #Soil moisture 'sm' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; } #10 metre u-component of neutral wind 'u10n' = { diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index f7f2ae2b8..819ad1af9 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -11261,8 +11261,8 @@ #Soil moisture 'Soil moisture' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; } #10 metre u-component of neutral wind '10 metre u-component of neutral wind' = { diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index b120aa998..e60c16b6d 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -11261,8 +11261,8 @@ #Soil moisture '228039' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; } #10 metre u-component of neutral wind '228131' = { diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 7699c9f35..a35b7af85 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -11261,8 +11261,8 @@ #Soil moisture 'sm' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; } #10 metre u-component of neutral wind 'u10n' = { diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index f4b4cb7df..ca27212b5 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -11261,8 +11261,8 @@ #Soil moisture 'kg m**-3' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 3 ; + parameterNumber = 19 ; } #10 metre u-component of neutral wind 'm s**-1' = { From 80f53f83d99592c4dad61d55be5a2acb076cc098 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Tue, 9 Jul 2024 12:26:35 +0000 Subject: [PATCH 032/277] ECC-1862: Fix Soil moisture --- definitions/grib2/cfVarName.def | 6 ------ definitions/grib2/name.def | 6 ------ definitions/grib2/paramId.def | 6 ------ definitions/grib2/shortName.def | 6 ------ definitions/grib2/units.def | 6 ------ 5 files changed, 30 deletions(-) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index 8502798d2..35cf7c79a 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -11258,12 +11258,6 @@ parameterCategory = 19 ; parameterNumber = 43 ; } -#Soil moisture -'sm' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - } #10 metre u-component of neutral wind 'u10n' = { discipline = 0 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 819ad1af9..1891762ec 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -11258,12 +11258,6 @@ parameterCategory = 19 ; parameterNumber = 43 ; } -#Soil moisture -'Soil moisture' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - } #10 metre u-component of neutral wind '10 metre u-component of neutral wind' = { discipline = 0 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index e60c16b6d..be91d6934 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -11258,12 +11258,6 @@ parameterCategory = 19 ; parameterNumber = 43 ; } -#Soil moisture -'228039' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - } #10 metre u-component of neutral wind '228131' = { discipline = 0 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index a35b7af85..2f9975fcf 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -11258,12 +11258,6 @@ parameterCategory = 19 ; parameterNumber = 43 ; } -#Soil moisture -'sm' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - } #10 metre u-component of neutral wind 'u10n' = { discipline = 0 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index ca27212b5..46a9ab110 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -11258,12 +11258,6 @@ parameterCategory = 19 ; parameterNumber = 43 ; } -#Soil moisture -'kg m**-3' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - } #10 metre u-component of neutral wind 'm s**-1' = { discipline = 0 ; From 90efaac811e3a950f7ec800d26780b9eb184155a Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 9 Jul 2024 13:39:11 +0100 Subject: [PATCH 033/277] Testing: ECC-1862 soil moisture --- tests/grib_level.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/grib_level.sh b/tests/grib_level.sh index 578095c62..718362c01 100755 --- a/tests/grib_level.sh +++ b/tests/grib_level.sh @@ -116,8 +116,8 @@ grib_check_key_equals $temp2 level 5 # ${tools_dir}/grib_filter level.filter $sample_g2 # Related to ECC-530: make sure GRIB2 parameters with typeOfSecondFixedSurface -# have correct parameter definitions (grib_set does not cause scale factor/value loss -params="228086 228087 228095 228096 228170 228171 228039 228139" +# have correct parameter definitions (grib_set does not cause scale factor/value loss) +params="228086 228087 228095 228096 228170 228171 228139" for pid in $params; do ${tools_dir}/grib_set -s paramId=$pid $sample_g2 $temp grib_check_key_equals $temp paramId $pid From c2d22fc36559548935e026c540e20de5cffb31e0 Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Tue, 9 Jul 2024 11:24:38 +0000 Subject: [PATCH 034/277] Switch to Regression Suite Tests on GitHub --- .github/ci-nightly-test.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index 4eb4a54a9..eea7af99a 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -14,7 +14,9 @@ module load python3 version=$(cat $TMPDIR/eccodes/VERSION) -cd ~masn/REGRESSION_TESTING/ecCodes +regression_suite_dir=$TMPDIR/eccodes-regression-tests +mkdir -p $regression_suite_dir +git clone git@github.com:ecmwf/eccodes-regression-tests.git $regression_suite_dir ./par-suite.sh -w $TMPDIR/install/eccodes/$version # For debugging specific test(s) From 775c372c9ed72ccd9173fd2d722e85a221f6b664 Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Tue, 9 Jul 2024 11:30:24 +0000 Subject: [PATCH 035/277] Change directory to Regression Suite --- .github/ci-nightly-test.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index eea7af99a..cf0ddd4b1 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -17,6 +17,7 @@ version=$(cat $TMPDIR/eccodes/VERSION) regression_suite_dir=$TMPDIR/eccodes-regression-tests mkdir -p $regression_suite_dir git clone git@github.com:ecmwf/eccodes-regression-tests.git $regression_suite_dir +cd $regression_suite_dir ./par-suite.sh -w $TMPDIR/install/eccodes/$version # For debugging specific test(s) From aabde97e0b69c94472862be784d8816f4c5534ad Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Tue, 9 Jul 2024 11:32:46 +0000 Subject: [PATCH 036/277] Clone using web URL --- .github/ci-nightly-test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index cf0ddd4b1..5c8a35ef8 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -16,7 +16,7 @@ version=$(cat $TMPDIR/eccodes/VERSION) regression_suite_dir=$TMPDIR/eccodes-regression-tests mkdir -p $regression_suite_dir -git clone git@github.com:ecmwf/eccodes-regression-tests.git $regression_suite_dir +git clone https://github.com/ecmwf/eccodes.git $regression_suite_dir cd $regression_suite_dir ./par-suite.sh -w $TMPDIR/install/eccodes/$version From dceb761abb588377fcf7966d18a89066b7d6ad0b Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 9 Jul 2024 22:11:14 +0100 Subject: [PATCH 037/277] Regression test suite: Use the right URL --- .github/ci-nightly-test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index 5c8a35ef8..cf0ddd4b1 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -16,7 +16,7 @@ version=$(cat $TMPDIR/eccodes/VERSION) regression_suite_dir=$TMPDIR/eccodes-regression-tests mkdir -p $regression_suite_dir -git clone https://github.com/ecmwf/eccodes.git $regression_suite_dir +git clone git@github.com:ecmwf/eccodes-regression-tests.git $regression_suite_dir cd $regression_suite_dir ./par-suite.sh -w $TMPDIR/install/eccodes/$version From 96c8f791787b9a83a1b3edce692f3945417527ab Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Wed, 10 Jul 2024 08:57:06 +0000 Subject: [PATCH 038/277] Enable debug output --- .github/ci-nightly-test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index 4eb4a54a9..f46b916df 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -1,6 +1,6 @@ #!/bin/bash -set -e +set -xe # We do not want to come across the ecCodes tools in the toolbox module unload ecmwf-toolbox From 5a5eac1b36e5de4a29fcbf3873aab38379a34593 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 10 Jul 2024 13:10:56 +0100 Subject: [PATCH 039/277] ECC-1866: GRIB: Setting step on interval-based message with dataDate=0 --- .../grib_accessor_class_g2end_step.cc | 11 ++++++++-- tests/grib_step.sh | 21 ++++++++++++++++++- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/src/accessor/grib_accessor_class_g2end_step.cc b/src/accessor/grib_accessor_class_g2end_step.cc index 78fdfb129..b4a3a2a25 100644 --- a/src/accessor/grib_accessor_class_g2end_step.cc +++ b/src/accessor/grib_accessor_class_g2end_step.cc @@ -413,8 +413,8 @@ int grib_accessor_class_g2end_step_t::unpack_double(grib_accessor* a, double* va static int pack_long_(grib_accessor* a, const long end_step_value, const long end_step_unit) { grib_accessor_g2end_step_t* self = (grib_accessor_g2end_step_t*)a; - grib_handle* h = grib_handle_of_accessor(a); - int err = 0; + grib_handle* h = grib_handle_of_accessor(a); + int err = 0; long year; long month; @@ -491,6 +491,13 @@ static int pack_long_(grib_accessor* a, const long end_step_value, const long en return GRIB_WRONG_STEP; } + if (!is_date_valid(year, month, day, hour, minute, second)) { // ECC-1866 + grib_context_log(h->context, GRIB_LOG_ERROR, "%s:%s: Date/Time is not valid! " + "year=%ld month=%ld day=%ld hour=%ld minute=%ld second=%ld", + a->cclass->name, __func__, year, month, day, hour, minute, second); + return GRIB_DECODING_ERROR; + } + err = grib_datetime_to_julian(year, month, day, hour, minute, second, &dend); if (err != GRIB_SUCCESS) return err; diff --git a/tests/grib_step.sh b/tests/grib_step.sh index 4ed45a3f1..0e0ddebda 100755 --- a/tests/grib_step.sh +++ b/tests/grib_step.sh @@ -256,9 +256,28 @@ cat >$tempFilt < $tempLog -cat $tempLog grep -q "255 8 7" $tempLog +# ECC-1866: Setting step on interval-based message with dataDate=0000 +# ------------------------------------------------------------------- +tempGrbA=${data_dir}/temp.$label.A.grib +tempGrbB=${data_dir}/temp.$label.B.grib +${tools_dir}/grib_set -s stepType=accum $ECCODES_SAMPLES_PATH/GRIB2.tmpl $tempGrbA +set +e +${tools_dir}/grib_set -s year=0,month=0,day=0,step=0 $tempGrbA $tempGrbB 2>$tempLog +status=$? +set -e +[ $status -ne 0 ] +grep -q "Date/Time is not valid" $tempLog + +set +e +${tools_dir}/grib_set -s year=0,month=0,day=0,stepUnits=1 $tempGrbA $tempGrbB 2>$tempLog +status=$? +set -e +[ $status -ne 0 ] +grep -q "Date/Time is not valid" $tempLog +rm -f $tempGrbA $tempGrbB + # Clean up rm -f $temp $tempLog $tempFilt rm -f $grib2File.p8tmp ${grib2File}.tmp x.grib From e9dc7ab40c93d31c890c1a77e289548184f2a915 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 10 Jul 2024 13:27:08 +0100 Subject: [PATCH 040/277] Testing: Add tests for ensemble interval-based --- tests/grib2_chemicals_aerosols.sh | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/tests/grib2_chemicals_aerosols.sh b/tests/grib2_chemicals_aerosols.sh index 192cd6340..645dbc8e1 100755 --- a/tests/grib2_chemicals_aerosols.sh +++ b/tests/grib2_chemicals_aerosols.sh @@ -119,6 +119,25 @@ grib_check_key_equals $temp aerosolType,typeOfSizeInterval '0 0' ${tools_dir}/grib_set -s paramId=210072 $tempSample $temp ${tools_dir}/grib_ls -p firstSize,secondSize $temp + +# ============================= +# Ensemble interval-based +# ============================= +tempSample=temp.sample.$label +${tools_dir}/grib_set -s tablesVersion=$latest,productDefinitionTemplateNumber=11,typeOfStatisticalProcessing=1 $sample2 $tempSample +grib_check_key_equals $tempSample stepType,perturbationNumber 'accum 0' + +${tools_dir}/grib_set -s is_chemical=1 $tempSample $temp +grib_check_key_equals $temp productDefinitionTemplateNumber '43' +grib_check_key_equals $temp constituentType,perturbationNumber,stepType '0 0 accum' + +${tools_dir}/grib_set -s is_chemical_srcsink=1 $tempSample $temp +grib_check_key_equals $temp productDefinitionTemplateNumber '79' + +${tools_dir}/grib_set -s is_chemical_distfn=1 $tempSample $temp +grib_check_key_equals $temp productDefinitionTemplateNumber '68' + + # ECC-1303: Setting localDefinitionNumber=1 on chemical source/sink # ------------------------------------------------------------------ ${tools_dir}/grib_set -s paramId=228104,setLocalDefinition=1,localDefinitionNumber=1 $sample2 $temp From b413d15cb64b413dfbb4aae9caf9a03a5fd4cb51 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 11 Jul 2024 09:52:11 +0100 Subject: [PATCH 041/277] Regression test suite: Revert until we fix the nexus downloads --- .github/ci-nightly-test.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index d76cc8e84..c1221ccd8 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -1,6 +1,6 @@ #!/bin/bash -set -xe +set -e # We do not want to come across the ecCodes tools in the toolbox module unload ecmwf-toolbox @@ -17,7 +17,9 @@ version=$(cat $TMPDIR/eccodes/VERSION) regression_suite_dir=$TMPDIR/eccodes-regression-tests mkdir -p $regression_suite_dir git clone git@github.com:ecmwf/eccodes-regression-tests.git $regression_suite_dir -cd $regression_suite_dir +# cd $regression_suite_dir + +cd ~masn/REGRESSION_TESTING/ecCodes ./par-suite.sh -w $TMPDIR/install/eccodes/$version # For debugging specific test(s) From 3ac0b7f2b19aed8a45f7ec288c76f0f0b6432aac Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 11 Jul 2024 10:04:23 +0100 Subject: [PATCH 042/277] Formatting --- .../grib_accessor_class_g2_aerosol.cc | 46 ++++---- .../grib_accessor_class_g2_chemical.cc | 100 ++++++++++-------- 2 files changed, 81 insertions(+), 65 deletions(-) diff --git a/src/accessor/grib_accessor_class_g2_aerosol.cc b/src/accessor/grib_accessor_class_g2_aerosol.cc index 464563187..4240b74e9 100644 --- a/src/accessor/grib_accessor_class_g2_aerosol.cc +++ b/src/accessor/grib_accessor_class_g2_aerosol.cc @@ -11,23 +11,25 @@ #include "grib_accessor_class_g2_aerosol.h" -grib_accessor_class_g2_aerosol_t _grib_accessor_class_g2_aerosol{"g2_aerosol"}; +grib_accessor_class_g2_aerosol_t _grib_accessor_class_g2_aerosol{ "g2_aerosol" }; grib_accessor_class* grib_accessor_class_g2_aerosol = &_grib_accessor_class_g2_aerosol; -void grib_accessor_class_g2_aerosol_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g2_aerosol_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_unsigned_t::init(a, l, c); grib_accessor_g2_aerosol_t* self = (grib_accessor_g2_aerosol_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - int n = 0; + grib_handle* hand = grib_handle_of_accessor(a); + int n = 0; self->productDefinitionTemplateNumber = grib_arguments_get_name(hand, c, n++); self->stepType = grib_arguments_get_name(hand, c, n++); self->optical = grib_arguments_get_long(hand, c, n++); } -int grib_accessor_class_g2_aerosol_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - grib_accessor_g2_aerosol_t* self = (grib_accessor_g2_aerosol_t*)a; +int grib_accessor_class_g2_aerosol_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ + grib_accessor_g2_aerosol_t* self = (grib_accessor_g2_aerosol_t*)a; long productDefinitionTemplateNumber = 0; grib_get_long(grib_handle_of_accessor(a), self->productDefinitionTemplateNumber, &productDefinitionTemplateNumber); @@ -39,32 +41,31 @@ int grib_accessor_class_g2_aerosol_t::unpack_long(grib_accessor* a, long* val, s return GRIB_SUCCESS; } -int grib_accessor_class_g2_aerosol_t::pack_long(grib_accessor* a, const long* val, size_t* len){ - grib_accessor_g2_aerosol_t* self = (grib_accessor_g2_aerosol_t*)a; +int grib_accessor_class_g2_aerosol_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ + grib_accessor_g2_aerosol_t* self = (grib_accessor_g2_aerosol_t*)a; grib_handle* hand = grib_handle_of_accessor(a); long productDefinitionTemplateNumber = -1; long productDefinitionTemplateNumberNew = -1; - /*long type=-1; - long stream=-1;*/ + //long type=-1; + //long stream=-1; long eps = -1; char stepType[15] = {0,}; size_t slen = 15; - /*int aerosol = *val;*/ + //int aerosol = *val; int isInstant = 0; - /*long derivedForecast=-1;*/ + //long derivedForecast=-1; int ret = 0; if (grib_get_long(hand, self->productDefinitionTemplateNumber, &productDefinitionTemplateNumber) != GRIB_SUCCESS) return GRIB_SUCCESS; - /* - grib_get_long(hand, self->type,&type); - grib_get_long(hand, self->stream,&stream); - */ + // grib_get_long(hand, self->type,&type); + // grib_get_long(hand, self->stream,&stream); ret = grib_get_string(hand, self->stepType, stepType, &slen); Assert(ret == GRIB_SUCCESS); - //eps = grib2_is_PDTN_EPS(productDefinitionTemplateNumber); + // eps = grib2_is_PDTN_EPS(productDefinitionTemplateNumber); eps = grib_is_defined(hand, "perturbationNumber"); if (!strcmp(stepType, "instant")) @@ -75,13 +76,13 @@ int grib_accessor_class_g2_aerosol_t::pack_long(grib_accessor* a, const long* va productDefinitionTemplateNumberNew = 45; } else { - /*productDefinitionTemplateNumberNew = 47; PDT deprecated*/ + // productDefinitionTemplateNumberNew = 47; // PDT deprecated productDefinitionTemplateNumberNew = 85; } } else { if (isInstant) { - productDefinitionTemplateNumberNew = 48; /*44 is deprecated*/ + productDefinitionTemplateNumberNew = 48; // 44 is deprecated } else { productDefinitionTemplateNumberNew = 46; @@ -89,7 +90,7 @@ int grib_accessor_class_g2_aerosol_t::pack_long(grib_accessor* a, const long* va } if (self->optical) { - /* Note: There is no interval based template for optical properties of aerosol! */ + // Note: There is no interval based template for optical properties of aerosol! if (eps) productDefinitionTemplateNumberNew = 49; else @@ -102,13 +103,14 @@ int grib_accessor_class_g2_aerosol_t::pack_long(grib_accessor* a, const long* va if (productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) { grib_set_long(hand, self->productDefinitionTemplateNumber, productDefinitionTemplateNumberNew); - /*if (derivedForecast>=0) grib_set_long(hand, self->derivedForecast,derivedForecast);*/ + // if (derivedForecast>=0) grib_set_long(hand, self->derivedForecast,derivedForecast); } return 0; } -int grib_accessor_class_g2_aerosol_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_g2_aerosol_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } diff --git a/src/accessor/grib_accessor_class_g2_chemical.cc b/src/accessor/grib_accessor_class_g2_chemical.cc index 3d05886a5..7b7484ecf 100644 --- a/src/accessor/grib_accessor_class_g2_chemical.cc +++ b/src/accessor/grib_accessor_class_g2_chemical.cc @@ -11,31 +11,33 @@ #include "grib_accessor_class_g2_chemical.h" -grib_accessor_class_g2_chemical_t _grib_accessor_class_g2_chemical{"g2_chemical"}; +grib_accessor_class_g2_chemical_t _grib_accessor_class_g2_chemical{ "g2_chemical" }; grib_accessor_class* grib_accessor_class_g2_chemical = &_grib_accessor_class_g2_chemical; -void grib_accessor_class_g2_chemical_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g2_chemical_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_unsigned_t::init(a, l, c); grib_accessor_g2_chemical_t* self = (grib_accessor_g2_chemical_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - int n = 0; + grib_handle* hand = grib_handle_of_accessor(a); + int n = 0; self->productDefinitionTemplateNumber = grib_arguments_get_name(hand, c, n++); self->stepType = grib_arguments_get_name(hand, c, n++); - self->chemical_type = grib_arguments_get_long(hand, c, n++); + self->chemical_type = grib_arguments_get_long(hand, c, n++); } -int grib_accessor_class_g2_chemical_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - grib_accessor_g2_chemical_t* self = (grib_accessor_g2_chemical_t*)a; +int grib_accessor_class_g2_chemical_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ + grib_accessor_g2_chemical_t* self = (grib_accessor_g2_chemical_t*)a; long productDefinitionTemplateNumber = 0; grib_get_long(grib_handle_of_accessor(a), self->productDefinitionTemplateNumber, &productDefinitionTemplateNumber); - /* - * 0 = atmospheric chemical constituents - * 1 = atmospheric chemical constituents based on a distribution function - * 2 = atmospheric chemical constituents with source or sink - */ + // Meaning of self->chemical_type: + // 0 = atmospheric chemical constituents + // 1 = atmospheric chemical constituents based on a distribution function + // 2 = atmospheric chemical constituents with source or sink + // Assert(self->chemical_type == 0 || self->chemical_type == 1 || self->chemical_type == 2); if (self->chemical_type == 1) *val = grib2_is_PDTN_ChemicalDistFunc(productDefinitionTemplateNumber); @@ -47,79 +49,91 @@ int grib_accessor_class_g2_chemical_t::unpack_long(grib_accessor* a, long* val, return GRIB_SUCCESS; } -int grib_accessor_class_g2_chemical_t::pack_long(grib_accessor* a, const long* val, size_t* len){ - grib_accessor_g2_chemical_t* self = (grib_accessor_g2_chemical_t*)a; +int grib_accessor_class_g2_chemical_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ + grib_accessor_g2_chemical_t* self = (grib_accessor_g2_chemical_t*)a; grib_handle* hand = grib_handle_of_accessor(a); long productDefinitionTemplateNumber = -1; long productDefinitionTemplateNumberNew = -1; - /*long type=-1; - long stream=-1;*/ + // long type=-1; + // long stream=-1; long eps = -1; char stepType[15] = {0,}; size_t slen = 15; - /*int chemical = *val;*/ + // int chemical = *val; int isInstant = 0; - /*long derivedForecast=-1;*/ + // long derivedForecast=-1; int ret = 0; if (grib_get_long(hand, self->productDefinitionTemplateNumber, &productDefinitionTemplateNumber) != GRIB_SUCCESS) return GRIB_SUCCESS; - /* - grib_get_long(hand, self->type,&type); - grib_get_long(hand, self->stream,&stream); - */ + // grib_get_long(hand, self->type,&type); + // grib_get_long(hand, self->stream,&stream); ret = grib_get_string(hand, self->stepType, stepType, &slen); Assert(ret == GRIB_SUCCESS); eps = grib_is_defined(hand, "perturbationNumber"); - //eps = grib2_is_PDTN_EPS(productDefinitionTemplateNumber); + // eps = grib2_is_PDTN_EPS(productDefinitionTemplateNumber); if (!strcmp(stepType, "instant")) isInstant = 1; - /* - * 0 = atmospheric chemical constituents - * 1 = atmospheric chemical constituents based on a distribution function - * 2 = atmospheric chemical constituents with source or sink - */ + // Meaning of self->chemical_type: + // 0 = atmospheric chemical constituents + // 1 = atmospheric chemical constituents based on a distribution function + // 2 = atmospheric chemical constituents with source or sink + // Assert(self->chemical_type == 0 || self->chemical_type == 1 || self->chemical_type == 2); if (eps == 1) { if (isInstant) { - if (self->chemical_type == 0) productDefinitionTemplateNumberNew=41; - else if (self->chemical_type == 1) productDefinitionTemplateNumberNew=58; - else if (self->chemical_type == 2) productDefinitionTemplateNumberNew=77; + if (self->chemical_type == 0) + productDefinitionTemplateNumberNew = 41; + else if (self->chemical_type == 1) + productDefinitionTemplateNumberNew = 58; + else if (self->chemical_type == 2) + productDefinitionTemplateNumberNew = 77; } else { - if (self->chemical_type == 0) productDefinitionTemplateNumberNew=43; - else if (self->chemical_type == 1) productDefinitionTemplateNumberNew=68; - else if (self->chemical_type == 2) productDefinitionTemplateNumberNew=79; + if (self->chemical_type == 0) + productDefinitionTemplateNumberNew = 43; + else if (self->chemical_type == 1) + productDefinitionTemplateNumberNew = 68; + else if (self->chemical_type == 2) + productDefinitionTemplateNumberNew = 79; } } else { - /* deterministic */ + // deterministic if (isInstant) { - if (self->chemical_type == 0) productDefinitionTemplateNumberNew=40; - else if (self->chemical_type == 1) productDefinitionTemplateNumberNew=57; - else if (self->chemical_type == 2) productDefinitionTemplateNumberNew=76; + if (self->chemical_type == 0) + productDefinitionTemplateNumberNew = 40; + else if (self->chemical_type == 1) + productDefinitionTemplateNumberNew = 57; + else if (self->chemical_type == 2) + productDefinitionTemplateNumberNew = 76; } else { - if (self->chemical_type == 0) productDefinitionTemplateNumberNew=42; - else if (self->chemical_type == 1) productDefinitionTemplateNumberNew=67; - else if (self->chemical_type == 2) productDefinitionTemplateNumberNew=78; + if (self->chemical_type == 0) + productDefinitionTemplateNumberNew = 42; + else if (self->chemical_type == 1) + productDefinitionTemplateNumberNew = 67; + else if (self->chemical_type == 2) + productDefinitionTemplateNumberNew = 78; } } if (productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) { grib_set_long(hand, self->productDefinitionTemplateNumber, productDefinitionTemplateNumberNew); - /*if (derivedForecast>=0) grib_set_long(hand, self->derivedForecast,derivedForecast);*/ + //if (derivedForecast>=0) grib_set_long(hand, self->derivedForecast,derivedForecast); } return 0; } -int grib_accessor_class_g2_chemical_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_g2_chemical_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } From 2cbf6034275fe3f4ac4cf21c37bef11ba096123f Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 11 Jul 2024 10:06:54 +0100 Subject: [PATCH 043/277] Definitions: Remove redundant def file --- definitions/grib3/ls.def | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 definitions/grib3/ls.def diff --git a/definitions/grib3/ls.def b/definitions/grib3/ls.def deleted file mode 100644 index 139597f9c..000000000 --- a/definitions/grib3/ls.def +++ /dev/null @@ -1,2 +0,0 @@ - - From 9808b03d7681b80ed316773155c377de4c433a34 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 12 Jul 2024 09:51:12 +0100 Subject: [PATCH 044/277] ECC-1868: CMake: Add option for enabling the Geoiterator and nearest neighbour functionality --- CMakeLists.txt | 8 +- eccodes_config.h.in | 1 + examples/C/grib_get_data.sh | 5 + examples/C/grib_iterator.sh | 5 + examples/C/grib_nearest.sh | 4 + examples/C/grib_nearest_multiple.sh | 4 + examples/C/include.ctest.sh.in | 1 + examples/F90/grib_get_data.sh | 4 + examples/F90/grib_get_data_real4.sh | 4 + examples/F90/grib_nearest.sh | 4 + examples/F90/grib_nearest_four_single.sh | 4 + examples/F90/grib_nearest_single.sh | 4 + examples/F90/include.ctest.sh.in | 1 + src/accessor/grib_accessor_class_iterator.cc | 11 ++ tests/grib_bitmap.sh | 11 +- tests/grib_change_scanning.sh | 3 + tests/grib_dump_debug.sh | 4 + tests/grib_ecc-1000.sh | 4 + tests/grib_ecc-1001.sh | 4 + tests/grib_ecc-1258.sh | 4 + tests/grib_ecc-1364.sh | 3 + tests/grib_ecc-1397.sh | 4 + tests/grib_ecc-1406.sh | 4 + tests/grib_ecc-1671.sh | 4 + tests/grib_ecc-1708.sh | 4 + tests/grib_ecc-1792.sh | 4 + tests/grib_ecc-600.sh | 4 + tests/grib_ecc-984.sh | 6 +- tests/grib_geo_iter.sh | 4 + tests/grib_grid_healpix.sh | 4 + tests/grib_grid_lamb_az_eq_area.sh | 4 + tests/grib_grid_lambert_conformal.sh | 4 + tests/grib_grid_mercator.sh | 4 + tests/grib_grid_polar_stereographic.sh | 4 + tests/grib_grid_space_view.sh | 4 + tests/grib_iterator.sh | 4 + tests/grib_jpeg.sh | 11 +- tests/grib_ls.sh | 101 ++++++++++--------- tests/grib_nearest_test.sh | 4 + tests/grib_octahedral.sh | 3 +- tests/grib_png.sh | 16 +-- tests/grib_run_length_packing.sh | 6 +- tests/grib_second_order.sh | 33 +++--- tests/grib_to_netcdf.sh | 4 + tests/grib_util_set_spec.sh | 21 ++-- tests/include.ctest.sh.in | 1 + 46 files changed, 262 insertions(+), 93 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2da7bf145..0a4c05cd7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -99,6 +99,10 @@ ecbuild_add_option( FEATURE BUILD_TOOLS DESCRIPTION "Build the command line tools" DEFAULT ON ) +ecbuild_add_option( FEATURE GEOGRAPHY + DESCRIPTION "Support for Geoiterator and nearest neighbour" + DEFAULT ON ) + ecbuild_add_option( FEATURE JPG DESCRIPTION "Support for JPG decoding/encoding" DEFAULT ON ) @@ -457,7 +461,7 @@ ecbuild_pkgconfig( DESCRIPTION "The ecCodes library" LIBRARIES eccodes IGNORE_INCLUDE_DIRS ${PYTHON_INCLUDE_DIRS} ${NUMPY_INCLUDE_DIRS} ${NETCDF_INCLUDE_DIRS} - VARIABLES HAVE_MEMFS HAVE_JPEG HAVE_LIBJASPER HAVE_LIBOPENJPEG + VARIABLES HAVE_MEMFS HAVE_GEOGRAPHY HAVE_JPEG HAVE_LIBJASPER HAVE_LIBOPENJPEG HAVE_ECCODES_THREADS HAVE_ECCODES_OMP_THREADS HAVE_NETCDF HAVE_FORTRAN HAVE_PNG HAVE_AEC ) @@ -469,7 +473,7 @@ if( HAVE_FORTRAN ) DESCRIPTION "The ecCodes library for Fortran 90" IGNORE_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/fortran ${PROJECT_BINARY_DIR}/fortran ${PYTHON_INCLUDE_DIRS} ${NUMPY_INCLUDE_DIRS} ${NETCDF_INCLUDE_DIRS} - VARIABLES HAVE_MEMFS HAVE_JPEG HAVE_LIBJASPER HAVE_LIBOPENJPEG + VARIABLES HAVE_MEMFS HAVE_GEOGRAPHY HAVE_JPEG HAVE_LIBJASPER HAVE_LIBOPENJPEG HAVE_ECCODES_THREADS HAVE_ECCODES_OMP_THREADS HAVE_NETCDF HAVE_PNG HAVE_AEC ) diff --git a/eccodes_config.h.in b/eccodes_config.h.in index d80a4554d..2278151b0 100644 --- a/eccodes_config.h.in +++ b/eccodes_config.h.in @@ -111,6 +111,7 @@ #cmakedefine HAVE_NETCDF +#cmakedefine HAVE_GEOGRAPHY #cmakedefine HAVE_MEMFS #ifdef HAVE_MEMFS diff --git a/examples/C/grib_get_data.sh b/examples/C/grib_get_data.sh index aaf25e909..ef0d701b2 100755 --- a/examples/C/grib_get_data.sh +++ b/examples/C/grib_get_data.sh @@ -8,5 +8,10 @@ # virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. . ./include.ctest.sh +set -u + +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi ${examples_dir}/c_grib_get_data > /dev/null diff --git a/examples/C/grib_iterator.sh b/examples/C/grib_iterator.sh index e54d9104d..6268cc567 100755 --- a/examples/C/grib_iterator.sh +++ b/examples/C/grib_iterator.sh @@ -8,8 +8,13 @@ # virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. . ./include.ctest.sh + temp=temp.c_grib_iterator.txt +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + # These two do not have any missing data ${examples_dir}/c_grib_iterator ${data_dir}/reduced_gaussian_model_level.grib1 > /dev/null ${examples_dir}/c_grib_iterator ${data_dir}/regular_gaussian_model_level.grib1 > /dev/null diff --git a/examples/C/grib_nearest.sh b/examples/C/grib_nearest.sh index cd0bc8324..114a01876 100755 --- a/examples/C/grib_nearest.sh +++ b/examples/C/grib_nearest.sh @@ -11,6 +11,10 @@ . ./include.ctest.sh set -u +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + label="grib_nearest_c" tempTxt=temp.$label.txt tempRef=temp.$label.ref diff --git a/examples/C/grib_nearest_multiple.sh b/examples/C/grib_nearest_multiple.sh index 3d8c1ecf3..0d06f0a5b 100755 --- a/examples/C/grib_nearest_multiple.sh +++ b/examples/C/grib_nearest_multiple.sh @@ -10,6 +10,10 @@ . ./include.ctest.sh +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + label="grib_nearest_multiple_c" temp1=$label.temp1.$$ temp2=$label.temp2.$$ diff --git a/examples/C/include.ctest.sh.in b/examples/C/include.ctest.sh.in index e861370cc..1b774a6e1 100644 --- a/examples/C/include.ctest.sh.in +++ b/examples/C/include.ctest.sh.in @@ -27,6 +27,7 @@ data_dir=@PROJECT_BINARY_DIR@/data HAVE_PRODUCT_BUFR=@HAVE_PRODUCT_BUFR@ HAVE_PRODUCT_GRIB=@HAVE_PRODUCT_GRIB@ HAVE_MEMFS=@HAVE_MEMFS@ +HAVE_GEOGRAPHY=@HAVE_GEOGRAPHY@ # use definitions from binary dir to test if installation will be correct def_dir="@CMAKE_BINARY_DIR@/@ECCODES_DEFINITION_SUFF@" diff --git a/examples/F90/grib_get_data.sh b/examples/F90/grib_get_data.sh index a77a43ed3..04125b28e 100755 --- a/examples/F90/grib_get_data.sh +++ b/examples/F90/grib_get_data.sh @@ -9,4 +9,8 @@ . ./include.ctest.sh +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + ${examples_dir}/eccodes_f_grib_get_data > /dev/null diff --git a/examples/F90/grib_get_data_real4.sh b/examples/F90/grib_get_data_real4.sh index b251fd645..4f21b3276 100755 --- a/examples/F90/grib_get_data_real4.sh +++ b/examples/F90/grib_get_data_real4.sh @@ -9,4 +9,8 @@ . ./include.ctest.sh +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + ${examples_dir}/eccodes_f_grib_get_data_real4 > /dev/null diff --git a/examples/F90/grib_nearest.sh b/examples/F90/grib_nearest.sh index 604f202d2..8b4665111 100755 --- a/examples/F90/grib_nearest.sh +++ b/examples/F90/grib_nearest.sh @@ -9,4 +9,8 @@ . ./include.ctest.sh +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + ${examples_dir}/eccodes_f_grib_nearest > /dev/null diff --git a/examples/F90/grib_nearest_four_single.sh b/examples/F90/grib_nearest_four_single.sh index 22b07624f..b4b47995f 100755 --- a/examples/F90/grib_nearest_four_single.sh +++ b/examples/F90/grib_nearest_four_single.sh @@ -9,4 +9,8 @@ . ./include.ctest.sh +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + ${examples_dir}/eccodes_f_grib_nearest_four_single diff --git a/examples/F90/grib_nearest_single.sh b/examples/F90/grib_nearest_single.sh index 0443595dd..4aa7a2c30 100755 --- a/examples/F90/grib_nearest_single.sh +++ b/examples/F90/grib_nearest_single.sh @@ -9,4 +9,8 @@ . ./include.ctest.sh +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + ${examples_dir}/eccodes_f_grib_nearest_single diff --git a/examples/F90/include.ctest.sh.in b/examples/F90/include.ctest.sh.in index 054747238..18b310526 100644 --- a/examples/F90/include.ctest.sh.in +++ b/examples/F90/include.ctest.sh.in @@ -26,6 +26,7 @@ data_dir=@PROJECT_BINARY_DIR@/data HAVE_PRODUCT_BUFR=@HAVE_PRODUCT_BUFR@ HAVE_PRODUCT_GRIB=@HAVE_PRODUCT_GRIB@ HAVE_MEMFS=@HAVE_MEMFS@ +HAVE_GEOGRAPHY=@HAVE_GEOGRAPHY@ # use definitions from binary dir to test if installation will be correct def_dir="@CMAKE_BINARY_DIR@/@ECCODES_DEFINITION_SUFF@" diff --git a/src/accessor/grib_accessor_class_iterator.cc b/src/accessor/grib_accessor_class_iterator.cc index 4cdfd6670..a92f3375b 100644 --- a/src/accessor/grib_accessor_class_iterator.cc +++ b/src/accessor/grib_accessor_class_iterator.cc @@ -26,6 +26,7 @@ void grib_accessor_class_iterator_t::dump(grib_accessor* a, grib_dumper* dumper) grib_dump_label(dumper, a, NULL); } +#if defined(HAVE_GEOGRAPHY) grib_iterator* grib_iterator_new(const grib_handle* ch, unsigned long flags, int* error) { grib_handle* h = (grib_handle*)ch; @@ -46,3 +47,13 @@ grib_iterator* grib_iterator_new(const grib_handle* ch, unsigned long flags, int return iter; } +#else +grib_iterator* grib_iterator_new(const grib_handle* ch, unsigned long flags, int* error) +{ + *error = GRIB_FUNCTIONALITY_NOT_ENABLED; + grib_context_log(ch->context, GRIB_LOG_ERROR, + "Geoiterator support not enabled. Please rebuild with -DENABLE_GEOGRAPHY=ON"); + + return NULL; +} +#endif diff --git a/tests/grib_bitmap.sh b/tests/grib_bitmap.sh index fb5994db4..456f3255e 100755 --- a/tests/grib_bitmap.sh +++ b/tests/grib_bitmap.sh @@ -87,12 +87,13 @@ EOF ${tools_dir}/grib_filter -o $temp1 $tempRules $grib1 ${tools_dir}/grib_filter -o $temp2 $tempRules $grib2 -${tools_dir}/grib_get_data -m missing $temp1 > $tempData1 -${tools_dir}/grib_get_data -m missing $temp2 > $tempData2 - -diff $tempData1 $tempData2 -rm -f $tempData1 $tempData2 +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + ${tools_dir}/grib_get_data -m missing $temp1 > $tempData1 + ${tools_dir}/grib_get_data -m missing $temp2 > $tempData2 + diff $tempData1 $tempData2 + rm -f $tempData1 $tempData2 +fi # ECC-1233: Allow printing of 'byte' keys e.g., bitmap, section paddings # ----------------------------------------------------------------------- diff --git a/tests/grib_change_scanning.sh b/tests/grib_change_scanning.sh index 5f1d46596..588189034 100755 --- a/tests/grib_change_scanning.sh +++ b/tests/grib_change_scanning.sh @@ -17,6 +17,9 @@ tempGribB=temp.$label.B.grib tempText=temp.$label.txt tempRef=temp.$label.ref +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi editions="1 2" gridTypes="regular_ll rotated_ll" diff --git a/tests/grib_dump_debug.sh b/tests/grib_dump_debug.sh index b5397cb47..56ceb40d0 100755 --- a/tests/grib_dump_debug.sh +++ b/tests/grib_dump_debug.sh @@ -12,6 +12,10 @@ label="grib_dump_debug_test" temp=temp.$label.txt +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + if [ $HAVE_MEMFS -eq 1 ]; then unset ECCODES_DEFINITION_PATH unset ECCODES_SAMPLES_PATH diff --git a/tests/grib_ecc-1000.sh b/tests/grib_ecc-1000.sh index 87f1123f4..794dd2f43 100755 --- a/tests/grib_ecc-1000.sh +++ b/tests/grib_ecc-1000.sh @@ -10,6 +10,10 @@ . ./include.ctest.sh +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + # --------------------------------------------------------- # This is the test for the JIRA issue ECC-1000 # Nearest neighbour using grib_get/grib_ls on severa files diff --git a/tests/grib_ecc-1001.sh b/tests/grib_ecc-1001.sh index 4e3142f9f..0120a9e2d 100755 --- a/tests/grib_ecc-1001.sh +++ b/tests/grib_ecc-1001.sh @@ -10,6 +10,10 @@ . ./include.ctest.sh +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + # --------------------------------------------------------- # This is the test for the JIRA issue ECC-1001 # grib_ls -j -l command (JSON for nearest) diff --git a/tests/grib_ecc-1258.sh b/tests/grib_ecc-1258.sh index da86e0b6a..1c08b6889 100755 --- a/tests/grib_ecc-1258.sh +++ b/tests/grib_ecc-1258.sh @@ -16,6 +16,10 @@ tempGrib=temp.$label.grib tempOut=temp.$label.txt sample_grib1=$ECCODES_SAMPLES_PATH/GRIB1.tmpl +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + cat > $tempFilt < $tempLog ${tools_dir}/grib_ls -p count,step $infile >> $tempLog ${tools_dir}/grib_ls $infile >> $tempLog -${tools_dir}/grib_ls -l 0,0,1 $infile >> $tempLog -${tools_dir}/grib_get -l 0,0,1 $infile >> $tempLog +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + ${tools_dir}/grib_ls -l 0,0,1 $infile >> $tempLog + ${tools_dir}/grib_get -l 0,0,1 $infile >> $tempLog +fi ${tools_dir}/grib_get -p count,step $infile >> $tempLog ${tools_dir}/grib_get -P count $infile >> $tempLog @@ -90,15 +92,16 @@ regular_gaussian_surface.grib2 regular_latlon_surface.grib1 regular_latlon_surface.grib2 " - -for file in $files; do - [ -f "$file" ] - echo $file >> $tempLog - ${tools_dir}/grib_ls -l 40,28 $file | grep index | awk '{print $4;}' >> $tempLog -done - -diff $tempLog ls.log -rm -f $tempLog +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + for file in $files; do + [ -f "$file" ] + echo $file >> $tempLog + ${tools_dir}/grib_ls -l 40,28 $file | grep index | awk '{print $4;}' >> $tempLog + done + + diff $tempLog ls.log + rm -f $tempLog +fi echo "Test for bug GRIB-56..." # ------------------------------ @@ -123,16 +126,18 @@ type=`${tools_dir}/grib_get -wcount=1 -p typeOfLevel test_uuid.grib2` [ "$type" = "generalVertical" ] -echo "GRIB-213 nearest with land-sea mask..." -# ---------------------------------------------------------- -${tools_dir}/grib_ls -l 85,13,1,reduced_gaussian_lsm.grib1 reduced_gaussian_surface.grib1 >$tempText -grep -q 'Point chosen #3 index=21 .* distance=11\.' $tempText +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + echo "GRIB-213 nearest with land-sea mask..." + # ---------------------------------------------------------- + ${tools_dir}/grib_ls -l 85,13,1,reduced_gaussian_lsm.grib1 reduced_gaussian_surface.grib1 >$tempText + grep -q 'Point chosen #3 index=21 .* distance=11\.' $tempText -${tools_dir}/grib_ls -l 53,2,1,reduced_gaussian_lsm.grib1 reduced_gaussian_surface.grib1 >$tempText -grep -q 'Point chosen #2 index=749 .* distance=204\.' $tempText + ${tools_dir}/grib_ls -l 53,2,1,reduced_gaussian_lsm.grib1 reduced_gaussian_surface.grib1 >$tempText + grep -q 'Point chosen #2 index=749 .* distance=204\.' $tempText -${tools_dir}/grib_get -F%.2f -l 85,13,1,reduced_gaussian_lsm.grib1 reduced_gaussian_surface.grib1 >$tempText -grep -q '252.88' $tempText + ${tools_dir}/grib_get -F%.2f -l 85,13,1,reduced_gaussian_lsm.grib1 reduced_gaussian_surface.grib1 >$tempText + grep -q '252.88' $tempText +fi echo "ECC-278: grib_ls -n namespace..." # ---------------------------------------------------------- @@ -247,42 +252,44 @@ file=$ECCODES_SAMPLES_PATH/reduced_gg_pl_32_grib2.tmpl grib_check_key_equals $file 'expver:d' 1 grib_check_key_equals $file 'expver:s' '0001' -# JSON and lat/lon -${tools_dir}/grib_ls -j -l0,0 -p referenceValue:d $data_dir/sample.grib2 -${tools_dir}/grib_ls -j -l0,0 -p referenceValue:i $data_dir/sample.grib2 -${tools_dir}/grib_ls -j -l0,0 -p bitmap $data_dir/simple_bitmap.grib > $tempText 2>&1 -grep -q "invalid_type" $tempText -${tools_dir}/grib_ls -j -l0,0 -p nosuchkey $data_dir/sample.grib2 > $tempText 2>&1 -grep -q "nosuchkey.* null" $tempText +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + # JSON and lat/lon + ${tools_dir}/grib_ls -j -l0,0 -p referenceValue:d $data_dir/sample.grib2 + ${tools_dir}/grib_ls -j -l0,0 -p referenceValue:i $data_dir/sample.grib2 + ${tools_dir}/grib_ls -j -l0,0 -p bitmap $data_dir/simple_bitmap.grib > $tempText 2>&1 + grep -q "invalid_type" $tempText + ${tools_dir}/grib_ls -j -l0,0 -p nosuchkey $data_dir/sample.grib2 > $tempText 2>&1 + grep -q "nosuchkey.* null" $tempText +fi # -M and -g options ${tools_dir}/grib_ls -M -g $data_dir/gts.grib -${tools_dir}/grib_get -l0,0,4 $data_dir/sample.grib2 - -set +e -${tools_dir}/grib_ls -l0,0,666 $data_dir/sample.grib2 > $tempText 2>&1 -status=$? -set -e -[ $status -ne 0 ] -grep -q "Wrong mode given" $tempText - -set +e -${tools_dir}/grib_ls -l poo $data_dir/sample.grib2 > $tempText 2>&1 -status=$? -set -e -[ $status -ne 0 ] -grep -q "Wrong latitude value" $tempText +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + ${tools_dir}/grib_get -l0,0,4 $data_dir/sample.grib2 + set +e + ${tools_dir}/grib_ls -l0,0,666 $data_dir/sample.grib2 > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "Wrong mode given" $tempText -set +e -${tools_dir}/grib_ls -l0,0,1,nonexistingmask $data_dir/sample.grib2 > $tempText 2>&1 -status=$? -set -e -[ $status -ne 0 ] -grep -q "unable to open mask file" $tempText + set +e + ${tools_dir}/grib_ls -l poo $data_dir/sample.grib2 > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "Wrong latitude value" $tempText + set +e + ${tools_dir}/grib_ls -l0,0,1,nonexistingmask $data_dir/sample.grib2 > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "unable to open mask file" $tempText +fi # Clean up rm -f $temp1 $temp2 $tempText $tempLog diff --git a/tests/grib_nearest_test.sh b/tests/grib_nearest_test.sh index 998af27c9..7160bef74 100755 --- a/tests/grib_nearest_test.sh +++ b/tests/grib_nearest_test.sh @@ -10,6 +10,10 @@ . ./include.ctest.sh +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + label="grib_nearest_test" temp=temp.$label.txt tempGrib=temp.$label.grib diff --git a/tests/grib_octahedral.sh b/tests/grib_octahedral.sh index 6ed838d99..5c6cbdeb4 100755 --- a/tests/grib_octahedral.sh +++ b/tests/grib_octahedral.sh @@ -25,9 +25,8 @@ grib_check_key_equals $input "global,isOctahedral" "1 1" # Check numberOfDataPoints grib_check_key_equals $input "numberOfDataPoints,numberOfCodedValues" "6599680 6599680" - # Only do lengthy iterator test if extra tests are enabled -if [ $HAVE_EXTRA_TESTS -eq 1 ]; then +if [ $HAVE_EXTRA_TESTS -eq 1 -a $HAVE_GEOGRAPHY -eq 1 ]; then ${tools_dir}/grib_get_data $input > $temp numlines=`wc -l $temp | awk '{print $1}'` [ "$numlines" = "6599681" ] # 1 + numberOfDataPoints diff --git a/tests/grib_png.sh b/tests/grib_png.sh index 64c6ba4de..f92772526 100755 --- a/tests/grib_png.sh +++ b/tests/grib_png.sh @@ -57,13 +57,15 @@ grep -q "Unable to set double array 'codedValues'" $tempErr # Nearest neighbour # ---------------------- -infile=${data_dir}/reduced_gaussian_model_level.grib2 -${tools_dir}/grib_set -r -s packingType=grid_png $infile $temp -${tools_dir}/grib_get -F%.6g -l 48.835,327.600,1 $temp > $temp1 -grep -q "224.455" $temp1 - -${tools_dir}/grib_ls -F%.6g -l 48.835,327.600 $temp > $temp1 -grep -q "Grid Point chosen #4 index=936 " $temp1 +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + infile=${data_dir}/reduced_gaussian_model_level.grib2 + ${tools_dir}/grib_set -r -s packingType=grid_png $infile $temp + ${tools_dir}/grib_get -F%.6g -l 48.835,327.600,1 $temp > $temp1 + grep -q "224.455" $temp1 + + ${tools_dir}/grib_ls -F%.6g -l 48.835,327.600 $temp > $temp1 + grep -q "Grid Point chosen #4 index=936 " $temp1 +fi # jPointsAreConsecutive infile=${data_dir}/reduced_gaussian_model_level.grib2 diff --git a/tests/grib_run_length_packing.sh b/tests/grib_run_length_packing.sh index 3b39bf0e8..a41fd5d7f 100755 --- a/tests/grib_run_length_packing.sh +++ b/tests/grib_run_length_packing.sh @@ -39,7 +39,11 @@ $EXEC ${test_dir}/grib_run_length_packing $tempGrib unset ECCODES_DEBUG ${tools_dir}/grib_dump -O $tempGrib -${tools_dir}/grib_get_data -mXXX $tempGrib + +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + ${tools_dir}/grib_get_data -mXXX $tempGrib +fi + grib_check_key_equals $tempGrib packingType grid_run_length stats=`${tools_dir}/grib_get -M -F%.1f -p min,max,avg $tempGrib` diff --git a/tests/grib_second_order.sh b/tests/grib_second_order.sh index 1dc6092df..0d44a87cb 100755 --- a/tests/grib_second_order.sh +++ b/tests/grib_second_order.sh @@ -94,21 +94,23 @@ grib_check_key_equals $sec_ord_bmp accuracy 4 nums=`${tools_dir}/grib_get -p numberOfDataPoints,numberOfCodedValues,numberOfMissing $sec_ord_bmp` [ "$nums" = "5969 4 5965" ] -res=`${tools_dir}/grib_get -l 33,88.5 $sec_ord_bmp` -[ "$res" = "9999 5.51552 9999 9999 " ] +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + res=`${tools_dir}/grib_get -l 33,88.5 $sec_ord_bmp` + [ "$res" = "9999 5.51552 9999 9999 " ] -res=`${tools_dir}/grib_get -l 30,90.0 $sec_ord_bmp` -[ "$res" = "5.26552 9999 9999 9999 " ] + res=`${tools_dir}/grib_get -l 30,90.0 $sec_ord_bmp` + [ "$res" = "5.26552 9999 9999 9999 " ] -res=`${tools_dir}/grib_get -l 28.5,87 $sec_ord_bmp` -[ "$res" = "9999 2.51552 9999 9999 " ] + res=`${tools_dir}/grib_get -l 28.5,87 $sec_ord_bmp` + [ "$res" = "9999 2.51552 9999 9999 " ] -res=`${tools_dir}/grib_get -l 28.5,90 $sec_ord_bmp` -[ "$res" = "3.51552 9999 5.26552 9999 " ] + res=`${tools_dir}/grib_get -l 28.5,90 $sec_ord_bmp` + [ "$res" = "3.51552 9999 5.26552 9999 " ] -# GRIB-203 nearest on M-F second order boustrophedonic -res=`${tools_dir}/grib_get -w count=1 -l 0,0,1 lfpw.grib1` -[ "$res" = "20563.4 " ] + # GRIB-203 nearest on M-F second order boustrophedonic + res=`${tools_dir}/grib_get -w count=1 -l 0,0,1 lfpw.grib1` + [ "$res" = "20563.4 " ] +fi # Unpack/pack test for second order grib1 data # -------------------------------------------- @@ -196,10 +198,11 @@ set -e [ $status -ne 0 ] grep -q "Not implemented" $tempText -${tools_dir}/grib_get_data $temp1 > $REDIRECT -${tools_dir}/grib_ls -l46,1 $temp1 > $REDIRECT -${tools_dir}/grib_ls -j -l46,1,1 $temp1 > $REDIRECT - +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + ${tools_dir}/grib_get_data $temp1 > $REDIRECT + ${tools_dir}/grib_ls -l46,1 $temp1 > $REDIRECT + ${tools_dir}/grib_ls -j -l46,1,1 $temp1 > $REDIRECT +fi # Encoding input=second_ord_rbr.grib1 diff --git a/tests/grib_to_netcdf.sh b/tests/grib_to_netcdf.sh index ba3589329..5e1aaf015 100755 --- a/tests/grib_to_netcdf.sh +++ b/tests/grib_to_netcdf.sh @@ -9,6 +9,10 @@ . ./include.ctest.sh +if [ $HAVE_GEOGRAPHY -eq 0 ]; then + exit 0 +fi + if [ $ECCODES_ON_WINDOWS -eq 1 ]; then # m2-bash messes with the system path. # %CONDA_PREFIX%\Library\usr\bin is converted to /usr/bin. diff --git a/tests/grib_util_set_spec.sh b/tests/grib_util_set_spec.sh index e18047bae..2b923edc9 100755 --- a/tests/grib_util_set_spec.sh +++ b/tests/grib_util_set_spec.sh @@ -27,8 +27,10 @@ $EXEC $grib_util_set_spec -e 2 -r $infile $outfile > /dev/null res=`${tools_dir}/grib_get -p edition,section2Used,Ni,Nj,numberOfValues,bitsPerValue $outfile` [ "$res" = "2 0 17 14 238 24" ] -# Check output file geometry -${tools_dir}/grib_get_data $outfile > /dev/null +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + # Check output file geometry + ${tools_dir}/grib_get_data $outfile > /dev/null +fi # Remove the local definition from input ${tools_dir}/grib_set -s deleteLocalDefinition=1 $infile $tempOut @@ -110,10 +112,12 @@ grib_check_key_equals $outfile packingType grid_second_order stats_new=`${tools_dir}/grib_get -F%.2f -p min,max $outfile` [ "$stats_new" = "4.84 246.90" ] -${tools_dir}/grib_get_data $outfile > /dev/null -CHECK_TOOL="${tools_dir}/grib_check_gaussian_grid" -if [ -x $CHECK_TOOL ]; then - $CHECK_TOOL $outfile +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + ${tools_dir}/grib_get_data $outfile > /dev/null + CHECK_TOOL="${tools_dir}/grib_check_gaussian_grid" + if [ -x $CHECK_TOOL ]; then + $CHECK_TOOL $outfile + fi fi ### Constant field N=32 @@ -123,8 +127,9 @@ rm -f $outfile $EXEC $grib_util_set_spec $infile $outfile grib_check_key_equals $outfile "packingType,const" "grid_simple 0" -${tools_dir}/grib_get_data $outfile > /dev/null - +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + ${tools_dir}/grib_get_data $outfile > /dev/null +fi # CCSDS input # --------------------------- diff --git a/tests/include.ctest.sh.in b/tests/include.ctest.sh.in index 8832e2d0b..90473b7ad 100644 --- a/tests/include.ctest.sh.in +++ b/tests/include.ctest.sh.in @@ -65,6 +65,7 @@ HAVE_LIBJASPER=@HAVE_LIBJASPER@ HAVE_LIBOPENJPEG=@HAVE_LIBOPENJPEG@ HAVE_PNG=@HAVE_PNG@ HAVE_AEC=@HAVE_AEC@ +HAVE_GEOGRAPHY=@HAVE_GEOGRAPHY@ HAVE_EXTRA_TESTS=@HAVE_EXTRA_TESTS@ HAVE_MEMFS=@HAVE_MEMFS@ ECCODES_ON_WINDOWS=@ECCODES_ON_WINDOWS@ From 1f3aac3b539c4e3259d1d3309c4666a2437934e9 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 12 Jul 2024 14:37:29 +0100 Subject: [PATCH 045/277] ECC-1867: GRIB: Unexpected PDT change for GRIB2 wave template for ensemble DA streams --- .../grib_accessor_class_g2_mars_labeling.cc | 9 +++++++++ tests/grib2_wave_spectra.sh | 17 ++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/src/accessor/grib_accessor_class_g2_mars_labeling.cc b/src/accessor/grib_accessor_class_g2_mars_labeling.cc index b9059220f..0603763f2 100644 --- a/src/accessor/grib_accessor_class_g2_mars_labeling.cc +++ b/src/accessor/grib_accessor_class_g2_mars_labeling.cc @@ -101,6 +101,7 @@ static int extra_set(grib_accessor* a, long val) long is_chemical_srcsink = 0; long is_aerosol = 0; long is_aerosol_optical = 0; + long is_wave = 0, is_wave_prange = 0; grib_get_long(hand, "is_chemical", &is_chemical); grib_get_long(hand, "is_chemical_srcsink", &is_chemical_srcsink); @@ -108,6 +109,9 @@ static int extra_set(grib_accessor* a, long val) grib_get_long(hand, "is_aerosol", &is_aerosol); grib_get_long(hand, "is_aerosol_optical", &is_aerosol_optical); + is_wave = grib_is_defined(hand, "waveDirectionNumber"); + is_wave_prange = grib_is_defined(hand, "typeOfWavePeriodInterval"); + switch (self->index) { case 0: /* class */ @@ -287,6 +291,11 @@ static int extra_set(grib_accessor* a, long val) return GRIB_INTERNAL_ERROR; } + if (is_wave || is_wave_prange) { + // ECC-1867 + productDefinitionTemplateNumberNew = -1; // disable PDT selection + } + if (productDefinitionTemplateNumberNew >= 0) { grib_get_long(hand, self->productDefinitionTemplateNumber, &productDefinitionTemplateNumber); if (productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) diff --git a/tests/grib2_wave_spectra.sh b/tests/grib2_wave_spectra.sh index 44b58add8..ea465b04b 100755 --- a/tests/grib2_wave_spectra.sh +++ b/tests/grib2_wave_spectra.sh @@ -12,6 +12,8 @@ label="grib2_wave_spectra_test" temp=temp.$label +tempGribA=temp.$label.A.grib +tempGribB=temp.$label.B.grib tempSample=temp.$label.tmpl sample2=$ECCODES_SAMPLES_PATH/GRIB2.tmpl @@ -52,5 +54,18 @@ grib_check_key_equals $temp firstWavelengthInNanometres '12' grib_check_key_equals $temp firstWavelengthInMetres '1.2e-08' +# ECC-1867: Unexpected PDT change for wave template for ensemble DA streams +sample_ld=$ECCODES_SAMPLES_PATH/reduced_gg_pl_32_grib2.tmpl # Sample with a mars local def +${tools_dir}/grib_set -s tablesVersion=32,productDefinitionTemplateNumber=99,waveFrequencyNumber=14 $sample_ld $tempGribA +${tools_dir}/grib_set -s stream=ewla $tempGribA $tempGribB +grib_check_key_equals $tempGribB productDefinitionTemplateNumber,waveFrequencyNumber '99 14' +${tools_dir}/grib_compare -b marsStream $tempGribA $tempGribB + +${tools_dir}/grib_set -s type=em $tempGribA $tempGribB +${tools_dir}/grib_compare -b marsType,typeOfProcessedData,typeOfGeneratingProcess $tempGribA $tempGribB +${tools_dir}/grib_set -s type=es $tempGribA $tempGribB +${tools_dir}/grib_compare -b marsType,typeOfProcessedData,typeOfGeneratingProcess $tempGribA $tempGribB + + # Clean up -rm -f $tempSample $temp +rm -f $tempSample $temp $tempGribA $tempGribB From 39f73fda5c1e2582190bd700d5c895c580c12079 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 12 Jul 2024 20:08:03 +0100 Subject: [PATCH 046/277] ECC-1868: Nearest neighbour --- src/accessor/grib_accessor_class_iterator.cc | 2 +- src/accessor/grib_accessor_class_nearest.cc | 11 +++ tests/grib_get_fail.sh | 75 ++++++++++---------- tests/grib_global.sh | 17 ++--- tests/grib_gridType.sh | 15 ++-- 5 files changed, 67 insertions(+), 53 deletions(-) diff --git a/src/accessor/grib_accessor_class_iterator.cc b/src/accessor/grib_accessor_class_iterator.cc index a92f3375b..27c2b4242 100644 --- a/src/accessor/grib_accessor_class_iterator.cc +++ b/src/accessor/grib_accessor_class_iterator.cc @@ -52,7 +52,7 @@ grib_iterator* grib_iterator_new(const grib_handle* ch, unsigned long flags, int { *error = GRIB_FUNCTIONALITY_NOT_ENABLED; grib_context_log(ch->context, GRIB_LOG_ERROR, - "Geoiterator support not enabled. Please rebuild with -DENABLE_GEOGRAPHY=ON"); + "Geoiterator functionality not enabled. Please rebuild with -DENABLE_GEOGRAPHY=ON"); return NULL; } diff --git a/src/accessor/grib_accessor_class_nearest.cc b/src/accessor/grib_accessor_class_nearest.cc index 6dbac1722..a958c5092 100644 --- a/src/accessor/grib_accessor_class_nearest.cc +++ b/src/accessor/grib_accessor_class_nearest.cc @@ -27,6 +27,7 @@ void grib_accessor_class_nearest_t::dump(grib_accessor* a, grib_dumper* dumper) grib_dump_label(dumper, a, NULL); } +#if defined(HAVE_GEOGRAPHY) grib_nearest* grib_nearest_new(const grib_handle* ch, int* error) { grib_handle* h = (grib_handle*)ch; @@ -47,3 +48,13 @@ grib_nearest* grib_nearest_new(const grib_handle* ch, int* error) return n; } +#else +grib_nearest* grib_nearest_new(const grib_handle* ch, int* error) +{ + *error = GRIB_FUNCTIONALITY_NOT_ENABLED; + grib_context_log(ch->context, GRIB_LOG_ERROR, + "Nearest neighbour functionality not enabled. Please rebuild with -DENABLE_GEOGRAPHY=ON"); + + return NULL; +} +#endif diff --git a/tests/grib_get_fail.sh b/tests/grib_get_fail.sh index 7f1c967e4..a76f7c39f 100755 --- a/tests/grib_get_fail.sh +++ b/tests/grib_get_fail.sh @@ -35,44 +35,43 @@ grep -q "Nh (Key/value not found)" $tempText # Nearest # --------- -set +e -${tools_dir}/grib_get -l abc $ECCODES_SAMPLES_PATH/GRIB2.tmpl > $tempText 2>&1 -status=$? -set -e -[ $status -ne 0 ] -grep -q "Wrong latitude value" $tempText - -set +e -${tools_dir}/grib_get -s Nj=MISSING -l 0,0,1 $ECCODES_SAMPLES_PATH/reduced_ll_sfc_grib1.tmpl > $tempText 2>&1 -status=$? -set -e -[ $status -ne 0 ] -grep -q "Key Nj cannot be 'missing'" $tempText - -set +e -${tools_dir}/grib_get -s Nj=0 -l 0,0,1 $ECCODES_SAMPLES_PATH/reduced_ll_sfc_grib1.tmpl > $tempText 2>&1 -status=$? -set -e -[ $status -ne 0 ] -grep -q "Key Nj cannot be 0" $tempText - - -set +e -${tools_dir}/grib_get -l 0,0,5 $ECCODES_SAMPLES_PATH/reduced_ll_sfc_grib2.tmpl > $tempText 2>&1 -status=$? -set -e -[ $status -ne 0 ] -grep -q "Wrong mode given" $tempText - - -set +e -${tools_dir}/grib_get -l 0,0,1,nonexistingmask $ECCODES_SAMPLES_PATH/reduced_ll_sfc_grib1.tmpl > $tempText 2>&1 -status=$? -set -e -[ $status -ne 0 ] -cat $tempText -grep -q "unable to open mask file" $tempText - +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + set +e + ${tools_dir}/grib_get -l abc $ECCODES_SAMPLES_PATH/GRIB2.tmpl > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "Wrong latitude value" $tempText + + set +e + ${tools_dir}/grib_get -s Nj=MISSING -l 0,0,1 $ECCODES_SAMPLES_PATH/reduced_ll_sfc_grib1.tmpl > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "Key Nj cannot be 'missing'" $tempText + + set +e + ${tools_dir}/grib_get -s Nj=0 -l 0,0,1 $ECCODES_SAMPLES_PATH/reduced_ll_sfc_grib1.tmpl > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "Key Nj cannot be 0" $tempText + + set +e + ${tools_dir}/grib_get -l 0,0,5 $ECCODES_SAMPLES_PATH/reduced_ll_sfc_grib2.tmpl > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "Wrong mode given" $tempText + + set +e + ${tools_dir}/grib_get -l 0,0,1,nonexistingmask $ECCODES_SAMPLES_PATH/reduced_ll_sfc_grib1.tmpl > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + cat $tempText + grep -q "unable to open mask file" $tempText +fi # ------------------------ # Unreadable message diff --git a/tests/grib_global.sh b/tests/grib_global.sh index bc2705fb1..565ffac7c 100755 --- a/tests/grib_global.sh +++ b/tests/grib_global.sh @@ -76,14 +76,15 @@ set -e [ $status -ne 0 ] grep -q "Invalid pl array: entry at index=3 is zero" $tempText -${tools_dir}/grib_filter -o $tempGrib $tempFilt $sample1 -set +e -${tools_dir}/grib_get -l 0,0 $tempGrib > $tempText 2>&1 -status=$? -set -e -[ $status -ne 0 ] -grep -q "Invalid pl array: entry at index=3 is zero" $tempText - +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + ${tools_dir}/grib_filter -o $tempGrib $tempFilt $sample1 + set +e + ${tools_dir}/grib_get -l 0,0 $tempGrib > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "Invalid pl array: entry at index=3 is zero" $tempText +fi # Clean up rm -f $tempGrib $tempText $tempFilt diff --git a/tests/grib_gridType.sh b/tests/grib_gridType.sh index 38ed98723..77413d205 100755 --- a/tests/grib_gridType.sh +++ b/tests/grib_gridType.sh @@ -67,12 +67,15 @@ cat > $tempFilt < $tempText 2>&1 -status=$? -set -e -[ $status -ne 0 ] -grep -q "Nearest neighbour functionality is not supported for grid: Variable resolution latitude/longitude" $tempText + +if [ $HAVE_GEOGRAPHY -eq 1 ]; then + set +e + ${tools_dir}/grib_ls -l 0,0 $tempGrib > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "Nearest neighbour functionality is not supported for grid: Variable resolution latitude/longitude" $tempText +fi # Check the keys isSpectral and isGridded # ---------------------------------------- From b8f157f105daa70cf6ae66134455999e95c12554 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 13 Jul 2024 12:50:39 +0100 Subject: [PATCH 047/277] Regression test suite: Cloning fails: organization has enabled or enforced SAML SSO --- .github/ci-nightly-test.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index c1221ccd8..f83f9ad06 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -14,13 +14,13 @@ module load python3 version=$(cat $TMPDIR/eccodes/VERSION) -regression_suite_dir=$TMPDIR/eccodes-regression-tests -mkdir -p $regression_suite_dir -git clone git@github.com:ecmwf/eccodes-regression-tests.git $regression_suite_dir +# regression_suite_dir=$TMPDIR/eccodes-regression-tests +# mkdir -p $regression_suite_dir +# git clone git@github.com:ecmwf/eccodes-regression-tests.git $regression_suite_dir # cd $regression_suite_dir cd ~masn/REGRESSION_TESTING/ecCodes ./par-suite.sh -w $TMPDIR/install/eccodes/$version # For debugging specific test(s) -# ./seq-suite.sh -w $TMPDIR/install/eccodes/$version -d -t py_ +# ./seq-suite.sh -w $TMPDIR/install/eccodes/$version -d -t $test_name From 56a7dc39a1685a97bc06314e0d35b06be1bf33d7 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 13 Jul 2024 13:10:08 +0100 Subject: [PATCH 048/277] Formatting --- .../grib_accessor_class_optimal_step_units.cc | 100 ++++++++++-------- .../grib_accessor_class_packing_type.cc | 31 +++--- ...essor_class_second_order_bits_per_value.cc | 33 +++--- ...rib_accessor_class_select_step_template.cc | 57 +++++----- ...rib_accessor_class_simple_packing_error.cc | 11 +- ...grib_accessor_class_spectral_truncation.cc | 13 +-- src/accessor/grib_accessor_class_sprintf.cc | 20 ++-- 7 files changed, 146 insertions(+), 119 deletions(-) diff --git a/src/accessor/grib_accessor_class_optimal_step_units.cc b/src/accessor/grib_accessor_class_optimal_step_units.cc index adc89e743..e6ff3fe73 100644 --- a/src/accessor/grib_accessor_class_optimal_step_units.cc +++ b/src/accessor/grib_accessor_class_optimal_step_units.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -13,11 +12,12 @@ #include "step.h" #include "step_utilities.h" -grib_accessor_class_optimal_step_units_t _grib_accessor_class_optimal_step_units{"optimal_step_units"}; +grib_accessor_class_optimal_step_units_t _grib_accessor_class_optimal_step_units{ "optimal_step_units" }; grib_accessor_class* grib_accessor_class_optimal_step_units = &_grib_accessor_class_optimal_step_units; -void grib_accessor_class_optimal_step_units_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_optimal_step_units_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_gen_t::init(a, l, c); grib_accessor_optimal_step_units_t* self = (grib_accessor_optimal_step_units_t*)a; grib_handle* hand = grib_handle_of_accessor(a); @@ -27,72 +27,78 @@ void grib_accessor_class_optimal_step_units_t::init(grib_accessor* a, const long self->forecast_time_unit = grib_arguments_get_name(hand, c, n++); self->time_range_value = grib_arguments_get_name(hand, c, n++); self->time_range_unit = grib_arguments_get_name(hand, c, n++); - a->length = 0; - self->overwriteStepUnits = eccodes::Unit{eccodes::Unit::Value::MISSING}.value(); + a->length = 0; + self->overwriteStepUnits = eccodes::Unit{ eccodes::Unit::Value::MISSING }.value(); } -void grib_accessor_class_optimal_step_units_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_optimal_step_units_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -size_t grib_accessor_class_optimal_step_units_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_optimal_step_units_t::string_length(grib_accessor* a) +{ return 255; } -int grib_accessor_class_optimal_step_units_t::pack_expression(grib_accessor* a, grib_expression* e){ - const char* cval = NULL; - int ret = 0; - long lval = 0; - size_t len = 1; - grib_handle* hand = grib_handle_of_accessor(a); +int grib_accessor_class_optimal_step_units_t::pack_expression(grib_accessor* a, grib_expression* e) +{ + const char* cval = NULL; + int ret = 0; + long lval = 0; + size_t len = 1; + grib_handle* hand = grib_handle_of_accessor(a); const char* cclass_name = a->cclass->name; if (strcmp(e->cclass->name, "long") == 0) { - grib_expression_evaluate_long(hand, e, &lval); /* TODO: check return value */ - ret = a->pack_long(&lval, &len); } + grib_expression_evaluate_long(hand, e, &lval); // TODO: check return value + ret = a->pack_long(&lval, &len); + } else { char tmp[1024]; len = sizeof(tmp); cval = grib_expression_evaluate_string(hand, e, tmp, &len, &ret); if (ret != GRIB_SUCCESS) { grib_context_log(a->context, GRIB_LOG_ERROR, - "%s.%s: Unable to evaluate string %s to be set in %s", - cclass_name, __func__, grib_expression_get_name(e), a->name); + "%s.%s: Unable to evaluate string %s to be set in %s", + cclass_name, __func__, grib_expression_get_name(e), a->name); return ret; } len = strlen(cval) + 1; - //if (hand->context->debug) - // printf("ECCODES DEBUG grib_accessor_class_codetable::pack_expression %s %s\n", a->name, cval); - ret = a->pack_string(cval, &len); } + // if (hand->context->debug) + // printf("ECCODES DEBUG grib_accessor_class_codetable::pack_expression %s %s\n", a->name, cval); + ret = a->pack_string(cval, &len); + } return ret; } -int grib_accessor_class_optimal_step_units_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_optimal_step_units_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_handle* h = grib_handle_of_accessor(a); grib_accessor_optimal_step_units_t* self = (grib_accessor_optimal_step_units_t*)a; - long start_step = 0; + long start_step = 0; long start_step_unit = 0; - long end_step = 0; - long end_step_unit = 0; + long end_step = 0; + long end_step_unit = 0; int ret; auto supported_units = eccodes::Unit::list_supported_units(); try { - eccodes::Unit unit{*val}; // throws if not supported + eccodes::Unit unit{ *val }; // throws if not supported auto iter = std::find(supported_units.begin(), supported_units.end(), unit); if (iter == supported_units.end()) { - throw std::runtime_error{"eccodes::Unit not supported"}; + throw std::runtime_error{ "eccodes::Unit not supported" }; } } catch (std::exception& e) { std::string supported_units_str; for (auto& u : supported_units) - supported_units_str += eccodes::Unit{u}.value() + ","; + supported_units_str += eccodes::Unit{ u }.value() + ","; supported_units_str.pop_back(); - std::string msg = std::string{"Invalid unit: "} + std::to_string(*val) + " (" + e.what() + ")" + - ". Available units are: " + supported_units_str; + std::string msg = std::string{ "Invalid unit: " } + std::to_string(*val) + " (" + e.what() + ")" + + ". Available units are: " + supported_units_str; grib_context_log(a->context, GRIB_LOG_ERROR, "%s", msg.c_str()); return GRIB_INVALID_ARGUMENT; } @@ -115,9 +121,9 @@ int grib_accessor_class_optimal_step_units_t::pack_long(grib_accessor* a, const return ret; try { - eccodes::Step start{start_step, start_step_unit}; + eccodes::Step start{ start_step, start_step_unit }; start.set_unit(*val); - eccodes::Step end{end_step, end_step_unit}; + eccodes::Step end{ end_step, end_step_unit }; end.set_unit(*val); if ((ret = grib_set_long_internal(h, "startStepUnit", start.unit().value())) != GRIB_SUCCESS) @@ -130,7 +136,7 @@ int grib_accessor_class_optimal_step_units_t::pack_long(grib_accessor* a, const return ret; } catch (std::exception& e) { - std::string msg = std::string{"Failed to convert steps to: "} + std::to_string(*val) + " (" + e.what() + ")"; + std::string msg = std::string{ "Failed to convert steps to: " } + std::to_string(*val) + " (" + e.what() + ")"; grib_context_log(a->context, GRIB_LOG_ERROR, "%s", msg.c_str()); return GRIB_INTERNAL_ERROR; } @@ -144,17 +150,17 @@ int grib_accessor_class_optimal_step_units_t::unpack_long(grib_accessor* a, long grib_handle* h = grib_handle_of_accessor(a); try { - if (eccodes::Unit{self->overwriteStepUnits} != eccodes::Unit{eccodes::Unit::Value::MISSING}) { + if (eccodes::Unit{ self->overwriteStepUnits } != eccodes::Unit{ eccodes::Unit::Value::MISSING }) { *val = self->overwriteStepUnits; return GRIB_SUCCESS; } auto forecast_time_opt = get_step(h, self->forecast_time_value, self->forecast_time_unit); - auto time_range_opt = get_step(h, self->time_range_value, self->time_range_unit); + auto time_range_opt = get_step(h, self->time_range_value, self->time_range_unit); if (forecast_time_opt && time_range_opt) { auto [step_a, step_b] = find_common_units(forecast_time_opt.value().optimize_unit(), - (forecast_time_opt.value() + time_range_opt.value()).optimize_unit()); + (forecast_time_opt.value() + time_range_opt.value()).optimize_unit()); *val = step_a.unit().value(); } else if (forecast_time_opt && !time_range_opt) { @@ -164,7 +170,7 @@ int grib_accessor_class_optimal_step_units_t::unpack_long(grib_accessor* a, long *val = time_range_opt.value().optimize_unit().unit().value(); } else if (!forecast_time_opt && !time_range_opt) { - *val = eccodes::Unit{eccodes::Unit::Value::HOUR}.value(); + *val = eccodes::Unit{ eccodes::Unit::Value::HOUR }.value(); } } catch (std::exception& e) { @@ -175,16 +181,17 @@ int grib_accessor_class_optimal_step_units_t::unpack_long(grib_accessor* a, long return GRIB_SUCCESS; } -int grib_accessor_class_optimal_step_units_t::pack_string(grib_accessor* a, const char* val, size_t* len){ +int grib_accessor_class_optimal_step_units_t::pack_string(grib_accessor* a, const char* val, size_t* len) +{ try { - long unit = eccodes::Unit{val}.value(); + long unit = eccodes::Unit{ val }.value(); pack_long(a, &unit, len); } catch (std::exception& e) { auto supported_units = eccodes::Unit::list_supported_units(); std::string supported_units_str; for (auto& u : supported_units) - supported_units_str += eccodes::Unit{u}.value() + ","; + supported_units_str += eccodes::Unit{ u }.value() + ","; supported_units_str.pop_back(); std::string msg = "Invalid unit: " + std::string(val) + " (" + e.what() + ")" + ". Available units are: " + supported_units_str; @@ -195,22 +202,25 @@ int grib_accessor_class_optimal_step_units_t::pack_string(grib_accessor* a, cons return GRIB_SUCCESS; } -int grib_accessor_class_optimal_step_units_t::unpack_string(grib_accessor* a, char* val, size_t* len){ - int ret = 0; - long unit = 0; +int grib_accessor_class_optimal_step_units_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ + int ret = 0; + long unit = 0; size_t unit_len = 0; if ((ret = unpack_long(a, &unit, &unit_len)) != GRIB_SUCCESS) return ret; - *len = snprintf(val, *len, "%s", eccodes::Unit{unit}.value().c_str()); + *len = snprintf(val, *len, "%s", eccodes::Unit{ unit }.value().c_str()); return GRIB_SUCCESS; } // Step units are never missing // If the user does not specify a step unit, we default to hours -int grib_accessor_class_optimal_step_units_t::is_missing(grib_accessor* a){ +int grib_accessor_class_optimal_step_units_t::is_missing(grib_accessor* a) +{ return 0; } -int grib_accessor_class_optimal_step_units_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_optimal_step_units_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_packing_type.cc b/src/accessor/grib_accessor_class_packing_type.cc index 5dd862a07..50ac9540d 100644 --- a/src/accessor/grib_accessor_class_packing_type.cc +++ b/src/accessor/grib_accessor_class_packing_type.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,13 +10,14 @@ #include "grib_accessor_class_packing_type.h" -grib_accessor_class_packing_type_t _grib_accessor_class_packing_type{"packing_type"}; +grib_accessor_class_packing_type_t _grib_accessor_class_packing_type{ "packing_type" }; grib_accessor_class* grib_accessor_class_packing_type = &_grib_accessor_class_packing_type; -void grib_accessor_class_packing_type_t::init(grib_accessor* a, const long l, grib_arguments* args){ +void grib_accessor_class_packing_type_t::init(grib_accessor* a, const long l, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, l, args); - int n = 0; + int n = 0; grib_accessor_packing_type_t* self = (grib_accessor_packing_type_t*)a; self->values = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); self->packing_type = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); @@ -25,21 +25,25 @@ void grib_accessor_class_packing_type_t::init(grib_accessor* a, const long l, gr a->length = 0; } -size_t grib_accessor_class_packing_type_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_packing_type_t::string_length(grib_accessor* a) +{ return 1024; } -int grib_accessor_class_packing_type_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_packing_type_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_STRING; } -int grib_accessor_class_packing_type_t::pack_string(grib_accessor*a, const char* sval, size_t* len){ +int grib_accessor_class_packing_type_t::pack_string(grib_accessor* a, const char* sval, size_t* len) +{ grib_accessor_packing_type_t* self = (grib_accessor_packing_type_t*)a; - grib_handle* h = grib_handle_of_accessor(a); - double* values = NULL; + + grib_handle* h = grib_handle_of_accessor(a); + double* values = NULL; grib_context* c = a->context; - size_t size = 0; - int err = 0; + size_t size = 0; + int err = 0; if ((err = grib_get_size(h, self->values, &size)) != GRIB_SUCCESS) return err; @@ -66,9 +70,10 @@ int grib_accessor_class_packing_type_t::pack_string(grib_accessor*a, const char* return GRIB_SUCCESS; } -int grib_accessor_class_packing_type_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_packing_type_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_packing_type_t* self = (grib_accessor_packing_type_t*)a; - grib_handle* h = grib_handle_of_accessor(a); + grib_handle* h = grib_handle_of_accessor(a); return grib_get_string(h, self->packing_type, val, len); } diff --git a/src/accessor/grib_accessor_class_second_order_bits_per_value.cc b/src/accessor/grib_accessor_class_second_order_bits_per_value.cc index ea7c4c931..8d5f4b99f 100644 --- a/src/accessor/grib_accessor_class_second_order_bits_per_value.cc +++ b/src/accessor/grib_accessor_class_second_order_bits_per_value.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -12,7 +11,7 @@ #include "grib_accessor_class_second_order_bits_per_value.h" #include "grib_scaling.h" -grib_accessor_class_second_order_bits_per_value_t _grib_accessor_class_second_order_bits_per_value{"second_order_bits_per_value"}; +grib_accessor_class_second_order_bits_per_value_t _grib_accessor_class_second_order_bits_per_value{ "second_order_bits_per_value" }; grib_accessor_class* grib_accessor_class_second_order_bits_per_value = &_grib_accessor_class_second_order_bits_per_value; @@ -35,10 +34,11 @@ static const size_t nbits[64] = { 0x1000000000000000, 0x2000000000000000, 0x4000000000000000, 0x8000000000000000 }; -static int number_of_bits(size_t x, long* result){ +static int number_of_bits(size_t x, long* result) +{ const size_t* n = nbits; const int count = sizeof(nbits) / sizeof(nbits[0]); - *result = 0; + *result = 0; while (x >= *n) { n++; (*result)++; @@ -49,27 +49,30 @@ static int number_of_bits(size_t x, long* result){ return GRIB_SUCCESS; } -void grib_accessor_class_second_order_bits_per_value_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_second_order_bits_per_value_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); - int n = 0; + int n = 0; grib_accessor_second_order_bits_per_value_t* self = (grib_accessor_second_order_bits_per_value_t*)a; - self->values = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->binaryScaleFactor = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->decimalScaleFactor = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->bitsPerValue = 0; + self->values = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->binaryScaleFactor = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->decimalScaleFactor = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->bitsPerValue = 0; a->length = 0; } -int grib_accessor_class_second_order_bits_per_value_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_second_order_bits_per_value_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_second_order_bits_per_value_t* self = (grib_accessor_second_order_bits_per_value_t*)a; - self->bitsPerValue = (long)*val; - *len = 1; + self->bitsPerValue = (long)*val; + *len = 1; - return 0; + return GRIB_SUCCESS; } -int grib_accessor_class_second_order_bits_per_value_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_second_order_bits_per_value_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ int ret = GRIB_SUCCESS; size_t size = 0; size_t i; diff --git a/src/accessor/grib_accessor_class_select_step_template.cc b/src/accessor/grib_accessor_class_select_step_template.cc index bc72a5220..d2c5eeb6a 100644 --- a/src/accessor/grib_accessor_class_select_step_template.cc +++ b/src/accessor/grib_accessor_class_select_step_template.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,30 +10,33 @@ #include "grib_accessor_class_select_step_template.h" -grib_accessor_class_select_step_template_t _grib_accessor_class_select_step_template{"select_step_template"}; +grib_accessor_class_select_step_template_t _grib_accessor_class_select_step_template{ "select_step_template" }; grib_accessor_class* grib_accessor_class_select_step_template = &_grib_accessor_class_select_step_template; -void grib_accessor_class_select_step_template_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_select_step_template_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_unsigned_t::init(a, l, c); grib_accessor_select_step_template_t* self = (grib_accessor_select_step_template_t*)a; grib_handle* hand = grib_handle_of_accessor(a); int n = 0; self->productDefinitionTemplateNumber = grib_arguments_get_name(hand, c, n++); - self->instant = grib_arguments_get_long(hand, c, n++); + self->instant = grib_arguments_get_long(hand, c, n++); } -int grib_accessor_class_select_step_template_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_select_step_template_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ *val = 1; return GRIB_SUCCESS; } -int grib_accessor_class_select_step_template_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_select_step_template_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_select_step_template_t* self = (grib_accessor_select_step_template_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - long productDefinitionTemplateNumber = 0; - long productDefinitionTemplateNumberNew = 0; + grib_handle* hand = grib_handle_of_accessor(a); + long productDefinitionTemplateNumber = 0; + long productDefinitionTemplateNumberNew = 0; grib_get_long(hand, self->productDefinitionTemplateNumber, &productDefinitionTemplateNumber); @@ -64,28 +66,28 @@ int grib_accessor_class_select_step_template_t::pack_long(grib_accessor* a, cons case 14: productDefinitionTemplateNumberNew = 4; break; - case 42: // DET chemical + case 42: // DET chemical productDefinitionTemplateNumberNew = 40; break; - case 43: // ENS chemical + case 43: // ENS chemical productDefinitionTemplateNumberNew = 41; break; - case 46: // DET aerosol - productDefinitionTemplateNumberNew = 48; // 44 is deprecated + case 46: // DET aerosol + productDefinitionTemplateNumberNew = 48; // 44 is deprecated break; - case 47: // ENS aerosol + case 47: // ENS aerosol productDefinitionTemplateNumberNew = 45; break; - case 67: // DET chemical distrib func + case 67: // DET chemical distrib func productDefinitionTemplateNumberNew = 57; break; - case 68: // ENS chemical distrib func + case 68: // ENS chemical distrib func productDefinitionTemplateNumberNew = 58; break; - case 72: // DET post-processing + case 72: // DET post-processing productDefinitionTemplateNumberNew = 70; break; - case 73: // ENS post-processing */ + case 73: // ENS post-processing */ productDefinitionTemplateNumberNew = 71; break; case 0: @@ -128,25 +130,25 @@ int grib_accessor_class_select_step_template_t::pack_long(grib_accessor* a, cons case 6: productDefinitionTemplateNumberNew = 10; break; - case 40: // DET chemical + case 40: // DET chemical productDefinitionTemplateNumberNew = 42; break; - case 41: // ENS chemical + case 41: // ENS chemical productDefinitionTemplateNumberNew = 43; break; - case 45: // ENS aerosol - productDefinitionTemplateNumberNew = 85; // 47 is deprecated + case 45: // ENS aerosol + productDefinitionTemplateNumberNew = 85; // 47 is deprecated break; - case 57: // DET chemical distrib func + case 57: // DET chemical distrib func productDefinitionTemplateNumberNew = 67; break; - case 58: // ENS chemical distrib func + case 58: // ENS chemical distrib func productDefinitionTemplateNumberNew = 68; break; - case 70: // DET post-processing + case 70: // DET post-processing productDefinitionTemplateNumberNew = 72; break; - case 71: // ENS post-processing + case 71: // ENS post-processing productDefinitionTemplateNumberNew = 73; break; case 7: @@ -172,7 +174,8 @@ int grib_accessor_class_select_step_template_t::pack_long(grib_accessor* a, cons return GRIB_SUCCESS; } -int grib_accessor_class_select_step_template_t::value_count(grib_accessor* a, long* c){ +int grib_accessor_class_select_step_template_t::value_count(grib_accessor* a, long* c) +{ *c = 1; return 0; } diff --git a/src/accessor/grib_accessor_class_simple_packing_error.cc b/src/accessor/grib_accessor_class_simple_packing_error.cc index 5f713a950..5bdd21553 100644 --- a/src/accessor/grib_accessor_class_simple_packing_error.cc +++ b/src/accessor/grib_accessor_class_simple_packing_error.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -12,11 +11,12 @@ #include "grib_accessor_class_simple_packing_error.h" #include "grib_scaling.h" -grib_accessor_class_simple_packing_error_t _grib_accessor_class_simple_packing_error{"simple_packing_error"}; +grib_accessor_class_simple_packing_error_t _grib_accessor_class_simple_packing_error{ "simple_packing_error" }; grib_accessor_class* grib_accessor_class_simple_packing_error = &_grib_accessor_class_simple_packing_error; -void grib_accessor_class_simple_packing_error_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_simple_packing_error_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); grib_accessor_simple_packing_error_t* self = (grib_accessor_simple_packing_error_t*)a; int n = 0; @@ -32,7 +32,8 @@ void grib_accessor_class_simple_packing_error_t::init(grib_accessor* a, const lo a->length = 0; } -int grib_accessor_class_simple_packing_error_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_simple_packing_error_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_simple_packing_error_t* self = (grib_accessor_simple_packing_error_t*)a; int ret = 0; @@ -40,7 +41,7 @@ int grib_accessor_class_simple_packing_error_t::unpack_double(grib_accessor* a, long bitsPerValue = 0; long decimalScaleFactor = 0; double referenceValue = 0; - grib_handle* h = grib_handle_of_accessor(a); + grib_handle* h = grib_handle_of_accessor(a); if ((ret = grib_get_long_internal(h, self->binaryScaleFactor, &binaryScaleFactor)) != GRIB_SUCCESS) return ret; diff --git a/src/accessor/grib_accessor_class_spectral_truncation.cc b/src/accessor/grib_accessor_class_spectral_truncation.cc index 2fc45511f..fda29784c 100644 --- a/src/accessor/grib_accessor_class_spectral_truncation.cc +++ b/src/accessor/grib_accessor_class_spectral_truncation.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,14 +10,15 @@ #include "grib_accessor_class_spectral_truncation.h" -grib_accessor_class_spectral_truncation_t _grib_accessor_class_spectral_truncation{"spectral_truncation"}; +grib_accessor_class_spectral_truncation_t _grib_accessor_class_spectral_truncation{ "spectral_truncation" }; grib_accessor_class* grib_accessor_class_spectral_truncation = &_grib_accessor_class_spectral_truncation; -void grib_accessor_class_spectral_truncation_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_spectral_truncation_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); grib_accessor_spectral_truncation_t* self = (grib_accessor_spectral_truncation_t*)a; - int n = 0; + int n = 0; self->J = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->K = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); @@ -28,9 +28,10 @@ void grib_accessor_class_spectral_truncation_t::init(grib_accessor* a, const lon a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_spectral_truncation_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_spectral_truncation_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_spectral_truncation_t* self = (grib_accessor_spectral_truncation_t*)a; - int ret = 0; + int ret = GRIB_SUCCESS; long J, K, M, T, Tc; diff --git a/src/accessor/grib_accessor_class_sprintf.cc b/src/accessor/grib_accessor_class_sprintf.cc index cc9e37e6a..533d66d7a 100644 --- a/src/accessor/grib_accessor_class_sprintf.cc +++ b/src/accessor/grib_accessor_class_sprintf.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,18 +10,20 @@ #include "grib_accessor_class_sprintf.h" -grib_accessor_class_sprintf_t _grib_accessor_class_sprintf{"sprintf"}; +grib_accessor_class_sprintf_t _grib_accessor_class_sprintf{ "sprintf" }; grib_accessor_class* grib_accessor_class_sprintf = &_grib_accessor_class_sprintf; -void grib_accessor_class_sprintf_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_sprintf_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_ascii_t::init(a, l, c); grib_accessor_sprintf_t* self = (grib_accessor_sprintf_t*)a; - self->args = c; + self->args = c; a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_sprintf_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_sprintf_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_sprintf_t* self = (grib_accessor_sprintf_t*)a; char result[1024]; char tempBuffer[2048]; @@ -61,7 +62,8 @@ int grib_accessor_class_sprintf_t::unpack_string(grib_accessor* a, char* val, si if ((ret = grib_get_long_internal(grib_handle_of_accessor(a), tempname, &ires)) != GRIB_SUCCESS) return ret; /* Bug GRIB-56: Check to see if the key is missing */ - is_missing = grib_is_missing(grib_handle_of_accessor(a), tempname, &ret); if (ret != GRIB_SUCCESS) + is_missing = grib_is_missing(grib_handle_of_accessor(a), tempname, &ret); + if (ret != GRIB_SUCCESS) return ret; if (is_missing) { snprintf(tempBuffer, sizeof(tempBuffer), "%sMISSING", result); @@ -117,11 +119,13 @@ int grib_accessor_class_sprintf_t::unpack_string(grib_accessor* a, char* val, si return GRIB_SUCCESS; } -int grib_accessor_class_sprintf_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_sprintf_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -size_t grib_accessor_class_sprintf_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_sprintf_t::string_length(grib_accessor* a) +{ return 1024; } From b2a8889658e173c25504ad5cd9e5ef23881986f6 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 15 Jul 2024 11:32:17 +0100 Subject: [PATCH 049/277] ECC-1870: Tools: Improve error message when printing array keys via grib_get, grib_ls --- tests/grib_get_fail.sh | 10 ++++++++++ tests/grib_ls.sh | 10 ++++++++++ tools/grib_tools.cc | 6 +++++- 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/tests/grib_get_fail.sh b/tests/grib_get_fail.sh index 7f1c967e4..7dc795226 100755 --- a/tests/grib_get_fail.sh +++ b/tests/grib_get_fail.sh @@ -87,6 +87,16 @@ set -e grep -q "unreadable message" $tempText rm -f $outfile +# ---------------------- +# Printing array keys +# ---------------------- +set +e +${tools_dir}/grib_get -p bitmap $data_dir/reduced_latlon_surface.grib2 > $tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Hint: Tool grib_get cannot print keys of array type" $tempText + # ---------------------- # Wrong message type diff --git a/tests/grib_ls.sh b/tests/grib_ls.sh index be4f7a38b..244ad76ba 100755 --- a/tests/grib_ls.sh +++ b/tests/grib_ls.sh @@ -283,6 +283,16 @@ set -e [ $status -ne 0 ] grep -q "unable to open mask file" $tempText +# ---------------------- +# Printing array keys +# ---------------------- +set +e +${tools_dir}/grib_ls -p bitmap $data_dir/reduced_latlon_surface.grib2 > $tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Hint: Tool grib_ls cannot print keys of array type" $tempText + # Clean up rm -f $temp1 $temp2 $tempText $tempLog diff --git a/tools/grib_tools.cc b/tools/grib_tools.cc index 976f712be..cde99abac 100644 --- a/tools/grib_tools.cc +++ b/tools/grib_tools.cc @@ -1239,14 +1239,18 @@ void grib_print_key_values(grib_runtime_options* options, grib_handle* h) //GRIB_CHECK_NOLINE(ret, options->print_keys[i].name); grib_context_log(h->context, GRIB_LOG_ERROR, "%s (%s)", options->print_keys[i].name, grib_get_error_message(ret)); + if (ret == GRIB_ARRAY_TOO_SMALL || ret == GRIB_BUFFER_TOO_SMALL) { + fprintf(dump_file, "\tHint: Tool %s cannot print keys of array type. Use grib_filter.\n", tool_name); + } exit(ret); } if (ret == GRIB_NOT_FOUND) { strcpy(value, notfound); } else { fprintf(dump_file, "%s (%s)\n", options->print_keys[i].name, grib_get_error_message(ret)); - if (ret == GRIB_ARRAY_TOO_SMALL) + if (ret == GRIB_ARRAY_TOO_SMALL || ret == GRIB_BUFFER_TOO_SMALL) { fprintf(dump_file, "\tHint: Tool %s cannot print keys of array type. Use grib_filter.\n", tool_name); + } exit(ret); } } From 711a8f372afba370b788daec1feb749676c680f7 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 16 Jul 2024 10:39:48 +0100 Subject: [PATCH 050/277] ECC-1871: grib_index_rewind --- src/eccodes_prototypes.h | 1 + src/grib_index.cc | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 9bceeb202..6cbb4a5bc 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -281,6 +281,7 @@ int grib_index_dump_file(FILE* fout, const char* filename, unsigned long flags); void grib_index_dump(FILE* fout, grib_index* index, unsigned long flags); char* grib_get_field_file(grib_index* index, off_t* offset); grib_handle* grib_handle_new_from_index(grib_index* index, int* err); +void grib_index_rewind(grib_index *index); grib_handle* codes_new_from_index(grib_index* index, int message_type, int* err); int codes_index_set_product_kind(grib_index* index, ProductKind product_kind); int codes_index_set_unpack_bufr(grib_index* index, int unpack); diff --git a/src/grib_index.cc b/src/grib_index.cc index 211b30cb5..0a96b57e3 100644 --- a/src/grib_index.cc +++ b/src/grib_index.cc @@ -65,7 +65,6 @@ static int index_count; static long values_count = 0; static int codes_index_add_file_internal(grib_index* index, const char* filename, int message_type); -static void grib_index_rewind(grib_index* index); static char* get_key(char** keys, int* type) { @@ -1967,7 +1966,7 @@ grib_handle* codes_new_from_index(grib_index* index, int message_type, int* err) return h; } -static void grib_index_rewind(grib_index* index) +void grib_index_rewind(grib_index* index) { index->rewind = 1; } From f10d3f3c1be3737a231d4a2c19f45535de4d4424 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 16 Jul 2024 10:56:48 +0100 Subject: [PATCH 051/277] Formatting --- .../grib_accessor_class_g2_mars_labeling.cc | 1 - src/accessor/grib_accessor_class_gen.cc | 64 ++++++++------- src/accessor/grib_accessor_class_getenv.cc | 24 +++--- .../grib_accessor_class_global_gaussian.cc | 20 +++-- .../grib_accessor_class_julian_date.cc | 71 +++++++++------- .../grib_accessor_class_julian_day.cc | 37 +++++---- .../grib_accessor_class_local_definition.cc | 82 ++++++++++--------- 7 files changed, 165 insertions(+), 134 deletions(-) diff --git a/src/accessor/grib_accessor_class_g2_mars_labeling.cc b/src/accessor/grib_accessor_class_g2_mars_labeling.cc index 0603763f2..06163f8d2 100644 --- a/src/accessor/grib_accessor_class_g2_mars_labeling.cc +++ b/src/accessor/grib_accessor_class_g2_mars_labeling.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_gen.cc b/src/accessor/grib_accessor_class_gen.cc index 7223f39a9..3a721f196 100644 --- a/src/accessor/grib_accessor_class_gen.cc +++ b/src/accessor/grib_accessor_class_gen.cc @@ -202,13 +202,11 @@ void grib_accessor_gen_t::destroy(grib_context* ct) } - - // ======================== grib_accessor_class_gen ======================== -grib_accessor_class_gen_t _grib_accessor_class_gen = grib_accessor_class_gen_t("gen"); -grib_accessor_class* grib_accessor_class_gen = &_grib_accessor_class_gen; +grib_accessor_class_gen_t _grib_accessor_class_gen = grib_accessor_class_gen_t("gen"); +grib_accessor_class* grib_accessor_class_gen = &_grib_accessor_class_gen; void grib_accessor_class_gen_t::init(grib_accessor* a, const long len, grib_arguments* param) { @@ -229,7 +227,7 @@ void grib_accessor_class_gen_t::init(grib_accessor* a, const long len, grib_argu grib_expression* expression = grib_arguments_get_expression(grib_handle_of_accessor(a), act->default_value, 0); int type = grib_expression_native_type(grib_handle_of_accessor(a), expression); switch (type) { - // TODO(maee): add single-precision case + // TODO(maee): add single-precision case case GRIB_TYPE_DOUBLE: grib_expression_evaluate_double(grib_handle_of_accessor(a), expression, &d); @@ -313,8 +311,8 @@ long grib_accessor_class_gen_t::byte_offset(grib_accessor* a) int grib_accessor_class_gen_t::unpack_bytes(grib_accessor* a, unsigned char* val, size_t* len) { unsigned char* buf = grib_handle_of_accessor(a)->buffer->data; - const long length = a->byte_count(); - const long offset = a->byte_offset(); + const long length = a->byte_count(); + const long offset = a->byte_offset(); if (*len < length) { grib_context_log(a->context, GRIB_LOG_ERROR, "Wrong size for %s, it is %ld bytes long", a->name, length); @@ -331,8 +329,8 @@ int grib_accessor_class_gen_t::unpack_bytes(grib_accessor* a, unsigned char* val int grib_accessor_class_gen_t::clear(grib_accessor* a) { unsigned char* buf = grib_handle_of_accessor(a)->buffer->data; - const long length = a->byte_count(); - const long offset = a->byte_offset(); + const long length = a->byte_count(); + const long offset = a->byte_offset(); memset(buf + offset, 0, length); @@ -342,7 +340,7 @@ int grib_accessor_class_gen_t::clear(grib_accessor* a) int grib_accessor_class_gen_t::unpack_long(grib_accessor* a, long* v, size_t* len) { is_overridden_[UNPACK_LONG] = 0; - int type = GRIB_TYPE_UNDEFINED; + int type = GRIB_TYPE_UNDEFINED; if (is_overridden_[UNPACK_DOUBLE] == 1) { double val = 0.0; size_t l = 1; @@ -398,7 +396,7 @@ int grib_accessor_class_gen_t::unpack_string(grib_accessor* a, char* v, size_t* if (is_overridden_[UNPACK_DOUBLE] == 1) { double val = 0.0; size_t l = 1; - err = a->unpack_double(&val, &l); + err = a->unpack_double(&val, &l); if (is_overridden_[UNPACK_DOUBLE] == 1) { if (err) return err; snprintf(v, 64, "%g", val); @@ -411,7 +409,7 @@ int grib_accessor_class_gen_t::unpack_string(grib_accessor* a, char* v, size_t* if (is_overridden_[UNPACK_LONG] == 1) { long val = 0; size_t l = 1; - err = a->unpack_long(&val, &l); + err = a->unpack_long(&val, &l); if (is_overridden_[UNPACK_LONG] == 1) { if (err) return err; snprintf(v, 64, "%ld", val); @@ -432,7 +430,7 @@ int grib_accessor_class_gen_t::unpack_string_array(grib_accessor* a, char** v, s if (err) return err; v[0] = (char*)grib_context_malloc_clear(a->context, length); - a->unpack_string(v[0], &length); // TODO(masn): check return value + a->unpack_string(v[0], &length); // TODO(masn): check return value *len = 1; return GRIB_SUCCESS; @@ -497,7 +495,7 @@ int grib_accessor_class_gen_t::pack_expression(grib_accessor* a, grib_expression int grib_accessor_class_gen_t::pack_long(grib_accessor* a, const long* v, size_t* len) { is_overridden_[PACK_LONG] = 0; - grib_context* c = a->context; + grib_context* c = a->context; if (is_overridden_[PACK_DOUBLE]) { double* val = (double*)grib_context_malloc(c, *len * (sizeof(double))); if (!val) { @@ -541,7 +539,7 @@ int pack_double_array_as_long(grib_accessor* a, const double* v, size_t* len) int grib_accessor_class_gen_t::pack_double(grib_accessor* a, const double* v, size_t* len) { is_overridden_[PACK_DOUBLE] = 0; - grib_context* c = a->context; + grib_context* c = a->context; if (is_overridden_[PACK_LONG] || strcmp(a->cclass->name, "codetable") == 0) { /* ECC-648: Special case of codetable */ @@ -561,7 +559,7 @@ int grib_accessor_class_gen_t::pack_string_array(grib_accessor* a, const char** size_t length = 0; grib_accessor* as = 0; - as = a; + as = a; long i = (long)*len - 1; while (as && i >= 0) { length = strlen(v[i]); @@ -578,9 +576,9 @@ int grib_accessor_class_gen_t::pack_string(grib_accessor* a, const char* v, size { is_overridden_[PACK_STRING] = 0; if (is_overridden_[PACK_DOUBLE]) { - size_t l = 1; + size_t l = 1; char* endPtr = NULL; /* for error handling */ - double val = strtod(v, &endPtr); + double val = strtod(v, &endPtr); if (*endPtr) { grib_context_log(a->context, GRIB_LOG_ERROR, "%s: Invalid value (%s) for key '%s'. String cannot be converted to a double", @@ -593,7 +591,7 @@ int grib_accessor_class_gen_t::pack_string(grib_accessor* a, const char* v, size if (is_overridden_[PACK_LONG]) { size_t l = 1; long val = atol(v); - int err = a->pack_long(&val, &l); + int err = a->pack_long(&val, &l); if (is_overridden_[PACK_LONG]) { return err; } @@ -721,31 +719,37 @@ grib_accessor* grib_accessor_class_gen_t::make_clone(grib_accessor* a, grib_sect } +grib_accessor_class_gen_t::~grib_accessor_class_gen_t() {}; - -grib_accessor_class_gen_t::~grib_accessor_class_gen_t(){}; - -void grib_accessor_class_gen_t::post_init(grib_accessor*){ +void grib_accessor_class_gen_t::post_init(grib_accessor*) +{ return; }; -int grib_accessor_class_gen_t::pack_missing(grib_accessor*) { +int grib_accessor_class_gen_t::pack_missing(grib_accessor*) +{ throw std::runtime_error("grib_accessor_class_gen_t::pack_missing not implemented"); }; -int grib_accessor_class_gen_t::pack_float(grib_accessor*, const float*, size_t* len) { +int grib_accessor_class_gen_t::pack_float(grib_accessor*, const float*, size_t* len) +{ throw std::runtime_error("grib_accessor_class_gen_t::pack_float not implemented"); }; -void grib_accessor_class_gen_t::resize(grib_accessor*, size_t) { +void grib_accessor_class_gen_t::resize(grib_accessor*, size_t) +{ throw std::runtime_error("grib_accessor_class_gen_t::resize not implemented"); }; -int grib_accessor_class_gen_t::nearest_smaller_value(grib_accessor*, double, double*) { +int grib_accessor_class_gen_t::nearest_smaller_value(grib_accessor*, double, double*) +{ throw std::runtime_error("grib_accessor_class_gen_t::nearest_smaller_value not implemented"); }; -int grib_accessor_class_gen_t::unpack_float_element(grib_accessor*, size_t, float*) { +int grib_accessor_class_gen_t::unpack_float_element(grib_accessor*, size_t, float*) +{ throw std::runtime_error("grib_accessor_class_gen_t::unpack_float_element not implemented"); }; -int unpack_element_set(grib_accessor*, const size_t*, size_t, double*) { +int unpack_element_set(grib_accessor*, const size_t*, size_t, double*) +{ throw std::runtime_error("grib_accessor_class_gen_t::unpack_element_set not implemented"); }; -int grib_accessor_class_gen_t::unpack_float_element_set(grib_accessor*, const size_t*, size_t, float*) { +int grib_accessor_class_gen_t::unpack_float_element_set(grib_accessor*, const size_t*, size_t, float*) +{ throw std::runtime_error("grib_accessor_class_gen_t::unpack_float_element_set not implemented"); }; diff --git a/src/accessor/grib_accessor_class_getenv.cc b/src/accessor/grib_accessor_class_getenv.cc index d812cc276..a6d6f9c72 100644 --- a/src/accessor/grib_accessor_class_getenv.cc +++ b/src/accessor/grib_accessor_class_getenv.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,14 +10,15 @@ #include "grib_accessor_class_getenv.h" -grib_accessor_class_getenv_t _grib_accessor_class_getenv{"getenv"}; +grib_accessor_class_getenv_t _grib_accessor_class_getenv{ "getenv" }; grib_accessor_class* grib_accessor_class_getenv = &_grib_accessor_class_getenv; -void grib_accessor_class_getenv_t::init(grib_accessor* a, const long l, grib_arguments* args){ +void grib_accessor_class_getenv_t::init(grib_accessor* a, const long l, grib_arguments* args) +{ grib_accessor_class_ascii_t::init(a, l, args); grib_accessor_getenv_t* self = (grib_accessor_getenv_t*)a; - static char undefined[] = "undefined"; + static char undefined[] = "undefined"; self->name = grib_arguments_get_string(grib_handle_of_accessor(a), args, 0); self->default_value = grib_arguments_get_string(grib_handle_of_accessor(a), args, 1); @@ -27,14 +27,16 @@ void grib_accessor_class_getenv_t::init(grib_accessor* a, const long l, grib_arg self->value = 0; } -int grib_accessor_class_getenv_t::pack_string(grib_accessor* a, const char* val, size_t* len){ +int grib_accessor_class_getenv_t::pack_string(grib_accessor* a, const char* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_getenv_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_getenv_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_getenv_t* self = (grib_accessor_getenv_t*)a; - char* v = 0; - size_t l = 0; + char* v = 0; + size_t l = 0; if (!self->value) { v = getenv(self->name); @@ -52,11 +54,13 @@ int grib_accessor_class_getenv_t::unpack_string(grib_accessor* a, char* val, siz return GRIB_SUCCESS; } -int grib_accessor_class_getenv_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_getenv_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -size_t grib_accessor_class_getenv_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_getenv_t::string_length(grib_accessor* a) +{ return 1024; } diff --git a/src/accessor/grib_accessor_class_global_gaussian.cc b/src/accessor/grib_accessor_class_global_gaussian.cc index 34ac67881..7fa8c96e6 100644 --- a/src/accessor/grib_accessor_class_global_gaussian.cc +++ b/src/accessor/grib_accessor_class_global_gaussian.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,16 @@ #include "grib_accessor_class_global_gaussian.h" -grib_accessor_class_global_gaussian_t _grib_accessor_class_global_gaussian{"global_gaussian"}; +grib_accessor_class_global_gaussian_t _grib_accessor_class_global_gaussian{ "global_gaussian" }; grib_accessor_class* grib_accessor_class_global_gaussian = &_grib_accessor_class_global_gaussian; -void grib_accessor_class_global_gaussian_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_global_gaussian_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); grib_accessor_global_gaussian_t* self = (grib_accessor_global_gaussian_t*)a; - int n = 0; - grib_handle* h = grib_handle_of_accessor(a); + int n = 0; + grib_handle* h = grib_handle_of_accessor(a); self->N = grib_arguments_get_name(h, c, n++); self->Ni = grib_arguments_get_name(h, c, n++); @@ -34,9 +34,10 @@ void grib_accessor_class_global_gaussian_t::init(grib_accessor* a, const long l, self->subdivision = grib_arguments_get_name(h, c, n++); } -int grib_accessor_class_global_gaussian_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_global_gaussian_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_global_gaussian_t* self = (grib_accessor_global_gaussian_t*)a; - int ret = GRIB_SUCCESS; + int ret = GRIB_SUCCESS; long latfirst, latlast, lonfirst, lonlast, basic_angle, subdivision, N, Ni; double dlatfirst, dlatlast, dlonfirst, dlonlast; double angular_precision = 0; @@ -140,9 +141,10 @@ int grib_accessor_class_global_gaussian_t::unpack_long(grib_accessor* a, long* v return ret; } -int grib_accessor_class_global_gaussian_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_global_gaussian_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_global_gaussian_t* self = (grib_accessor_global_gaussian_t*)a; - int ret = GRIB_SUCCESS; + int ret = GRIB_SUCCESS; long latfirst, latlast, lonfirst, lonlast, di, diold, basic_angle = 0, N, Ni; long factor; double* lats; diff --git a/src/accessor/grib_accessor_class_julian_date.cc b/src/accessor/grib_accessor_class_julian_date.cc index e633b42e4..945f4e803 100644 --- a/src/accessor/grib_accessor_class_julian_date.cc +++ b/src/accessor/grib_accessor_class_julian_date.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,16 +10,16 @@ #include "grib_accessor_class_julian_date.h" -grib_accessor_class_julian_date_t _grib_accessor_class_julian_date{"julian_date"}; +grib_accessor_class_julian_date_t _grib_accessor_class_julian_date{ "julian_date" }; grib_accessor_class* grib_accessor_class_julian_date = &_grib_accessor_class_julian_date; - -void grib_accessor_class_julian_date_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_julian_date_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); grib_accessor_julian_date_t* self = (grib_accessor_julian_date_t*)a; - int n = 0; - grib_handle* h = grib_handle_of_accessor(a); + int n = 0; + grib_handle* h = grib_handle_of_accessor(a); self->year = grib_arguments_get_name(h, c, n++); self->month = grib_arguments_get_name(h, c, n++); @@ -51,15 +50,17 @@ void grib_accessor_class_julian_date_t::init(grib_accessor* a, const long l, gri a->length = 0; } -void grib_accessor_class_julian_date_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_julian_date_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -int grib_accessor_class_julian_date_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_julian_date_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ int ret = 0; long hour, minute, second; long year, month, day, ymd, hms; - grib_handle* h = grib_handle_of_accessor(a); + grib_handle* h = grib_handle_of_accessor(a); grib_accessor_julian_date_t* self = (grib_accessor_julian_date_t*)a; if (self->ymd == NULL) { @@ -108,12 +109,14 @@ int grib_accessor_class_julian_date_t::unpack_double(grib_accessor* a, double* v return ret; } -int grib_accessor_class_julian_date_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_julian_date_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_julian_date_t* self = (grib_accessor_julian_date_t*)a; - int ret = 0; - long hour = 0; - long minute = 0; - long second = 0; + + int ret = 0; + long hour = 0; + long minute = 0; + long second = 0; long ymd = 0, hms = 0; long year, month, day; grib_handle* h = grib_handle_of_accessor(a); @@ -157,13 +160,14 @@ int grib_accessor_class_julian_date_t::pack_double(grib_accessor* a, const doubl return ret; } -int grib_accessor_class_julian_date_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_julian_date_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ int ret = 0; long hour, minute, second; long year, month, day, ymd, hms; grib_accessor_julian_date_t* self = (grib_accessor_julian_date_t*)a; - char* sep = self->sep; - grib_handle* h = grib_handle_of_accessor(a); + char* sep = self->sep; + grib_handle* h = grib_handle_of_accessor(a); if (*len < 15) return GRIB_BUFFER_TOO_SMALL; @@ -210,7 +214,8 @@ int grib_accessor_class_julian_date_t::unpack_string(grib_accessor* a, char* val } if (sep[1] != 0 && sep[2] != 0 && sep[3] != 0 && sep[4] != 0) { - snprintf(val, 1024, "%04ld%c%02ld%c%02ld%c%02ld%c%02ld%c%02ld", year, sep[0], month, sep[1], day, sep[2], hour, sep[3], minute, sep[4], second); + snprintf(val, 1024, "%04ld%c%02ld%c%02ld%c%02ld%c%02ld%c%02ld", + year, sep[0], month, sep[1], day, sep[2], hour, sep[3], minute, sep[4], second); } else if (sep[0] != 0) { snprintf(val, 1024, "%04ld%02ld%02ld%c%02ld%02ld%02ld", year, month, day, sep[0], hour, minute, second); @@ -218,19 +223,21 @@ int grib_accessor_class_julian_date_t::unpack_string(grib_accessor* a, char* val else { snprintf(val, 1024, "%04ld%02ld%02ld%02ld%02ld%02ld", year, month, day, hour, minute, second); } - *len = strlen(val)+1; + *len = strlen(val) + 1; return ret; } -int grib_accessor_class_julian_date_t::pack_string(grib_accessor* a, const char* val, size_t* len){ +int grib_accessor_class_julian_date_t::pack_string(grib_accessor* a, const char* val, size_t* len) +{ int ret = 0; long hour, minute, second; long year, month, day, ymd, hms; grib_accessor_julian_date_t* self = (grib_accessor_julian_date_t*)a; - char* sep = self->sep; - grib_handle* h = grib_handle_of_accessor(a); + char* sep = self->sep; + grib_handle* h = grib_handle_of_accessor(a); - ret = sscanf(val, "%04ld%c%02ld%c%02ld%c%02ld%c%02ld%c%02ld", &year, &sep[0], &month, &sep[1], &day, &sep[2], &hour, &sep[3], &minute, &sep[4], &second); + ret = sscanf(val, "%04ld%c%02ld%c%02ld%c%02ld%c%02ld%c%02ld", + &year, &sep[0], &month, &sep[1], &day, &sep[2], &hour, &sep[3], &minute, &sep[4], &second); if (ret != 11) { if (strlen(val) == 15) { ret = sscanf(val, "%04ld%02ld%02ld%c%02ld%02ld%02ld", &year, &month, &day, &sep[0], &hour, &minute, &second); @@ -292,16 +299,19 @@ int grib_accessor_class_julian_date_t::pack_string(grib_accessor* a, const char* return ret; } -int grib_accessor_class_julian_date_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_julian_date_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_context_log(a->context, GRIB_LOG_ERROR, " Cannot unpack %s as long", a->name); return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_julian_date_t::pack_long(grib_accessor* a, const long* v, size_t* len){ +int grib_accessor_class_julian_date_t::pack_long(grib_accessor* a, const long* v, size_t* len) +{ grib_context_log(a->context, GRIB_LOG_ERROR, " Cannot pack %s as long", a->name); return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_julian_date_t::pack_expression(grib_accessor* a, grib_expression* e){ +int grib_accessor_class_julian_date_t::pack_expression(grib_accessor* a, grib_expression* e) +{ size_t len = 1; long lval = 0; double dval = 0; @@ -319,14 +329,16 @@ int grib_accessor_class_julian_date_t::pack_expression(grib_accessor* a, grib_ex } /*if (hand->context->debug) printf("ECCODES DEBUG grib_accessor_class_gen::pack_expression %s %ld\n", a->name,lval);*/ - return a->pack_long(&lval, &len); } + return a->pack_long(&lval, &len); + } case GRIB_TYPE_DOUBLE: { len = 1; ret = grib_expression_evaluate_double(hand, e, &dval); /*if (hand->context->debug) printf("ECCODES DEBUG grib_accessor_class_gen::pack_expression %s %g\n", a->name, dval);*/ - return a->pack_double(&dval, &len); } + return a->pack_double(&dval, &len); + } case GRIB_TYPE_STRING: { char tmp[1024]; @@ -339,7 +351,8 @@ int grib_accessor_class_julian_date_t::pack_expression(grib_accessor* a, grib_ex len = strlen(cval); /*if (hand->context->debug) printf("ECCODES DEBUG grib_accessor_class_gen::pack_expression %s %s\n", a->name, cval);*/ - return a->pack_string(cval, &len); } + return a->pack_string(cval, &len); + } } return GRIB_NOT_IMPLEMENTED; diff --git a/src/accessor/grib_accessor_class_julian_day.cc b/src/accessor/grib_accessor_class_julian_day.cc index e46751181..a27772e6b 100644 --- a/src/accessor/grib_accessor_class_julian_day.cc +++ b/src/accessor/grib_accessor_class_julian_day.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,14 +10,15 @@ #include "grib_accessor_class_julian_day.h" -grib_accessor_class_julian_day_t _grib_accessor_class_julian_day{"julian_day"}; +grib_accessor_class_julian_day_t _grib_accessor_class_julian_day{ "julian_day" }; grib_accessor_class* grib_accessor_class_julian_day = &_grib_accessor_class_julian_day; -void grib_accessor_class_julian_day_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_julian_day_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); grib_accessor_julian_day_t* self = (grib_accessor_julian_day_t*)a; - int n = 0; + int n = 0; self->date = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->hour = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); @@ -28,22 +28,26 @@ void grib_accessor_class_julian_day_t::init(grib_accessor* a, const long l, grib a->length = 0; } -void grib_accessor_class_julian_day_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_julian_day_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -int grib_accessor_class_julian_day_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_julian_day_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ const double v = *val; return pack_double(a, &v, len); } -int grib_accessor_class_julian_day_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_julian_day_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_julian_day_t* self = (grib_accessor_julian_day_t*)a; - int ret = 0; - long hour = 0; - long minute = 0; - long second = 0; - long date = 0; + + int ret = 0; + long hour = 0; + long minute = 0; + long second = 0; + long date = 0; long year, month, day; ret = grib_julian_to_datetime(*val, &year, &month, &day, &hour, &minute, &second); @@ -66,17 +70,18 @@ int grib_accessor_class_julian_day_t::pack_double(grib_accessor* a, const double return ret; } -int grib_accessor_class_julian_day_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - int ret = 0; +int grib_accessor_class_julian_day_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ double v = 0; - ret = unpack_double(a, &v, len); + int ret = unpack_double(a, &v, len); *val = (long)v; return ret; } -int grib_accessor_class_julian_day_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_julian_day_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ int ret = 0; long date, hour, minute, second; long year, month, day; diff --git a/src/accessor/grib_accessor_class_local_definition.cc b/src/accessor/grib_accessor_class_local_definition.cc index 0964a3005..95f671118 100644 --- a/src/accessor/grib_accessor_class_local_definition.cc +++ b/src/accessor/grib_accessor_class_local_definition.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,16 @@ #include "grib_accessor_class_local_definition.h" -grib_accessor_class_local_definition_t _grib_accessor_class_local_definition{"local_definition"}; +grib_accessor_class_local_definition_t _grib_accessor_class_local_definition{ "local_definition" }; grib_accessor_class* grib_accessor_class_local_definition = &_grib_accessor_class_local_definition; -void grib_accessor_class_local_definition_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_local_definition_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_unsigned_t::init(a, l, c); grib_accessor_local_definition_t* self = (grib_accessor_local_definition_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - int n = 0; + grib_handle* hand = grib_handle_of_accessor(a); + int n = 0; self->grib2LocalSectionNumber = grib_arguments_get_name(hand, c, n++); self->productDefinitionTemplateNumber = grib_arguments_get_name(hand, c, n++); @@ -32,15 +32,18 @@ void grib_accessor_class_local_definition_t::init(grib_accessor* a, const long l self->derivedForecast = grib_arguments_get_name(hand, c, n++); } -int grib_accessor_class_local_definition_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_local_definition_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_local_definition_t* self = (grib_accessor_local_definition_t*)a; return grib_get_long(grib_handle_of_accessor(a), self->grib2LocalSectionNumber, val); } -int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const long* val, size_t* len){ - grib_accessor_local_definition_t* self = (grib_accessor_local_definition_t*)a; +int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ + grib_accessor_local_definition_t* self = (grib_accessor_local_definition_t*)a; grib_handle* hand = grib_handle_of_accessor(a); + long productDefinitionTemplateNumber = -1; long productDefinitionTemplateNumberInternal = -1; long productDefinitionTemplateNumberNew = -1; @@ -90,8 +93,8 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo if (grib_is_defined(hand, "perturbationNumber")) { eps = 1; } - //if (grib2_is_PDTN_EPS(productDefinitionTemplateNumber)) - // eps = 1; + // if (grib2_is_PDTN_EPS(productDefinitionTemplateNumber)) + // eps = 1; switch (localDefinitionNumber) { case 0: @@ -107,10 +110,10 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo productDefinitionTemplateNumberNew = 0; break; - case 1: // MARS labelling - case 36: // MARS labelling for long window 4Dvar system - case 40: // MARS labeling with domain and model (for LAM) - case 42: // LC-WFV: Wave forecast verification + case 1: // MARS labelling + case 36: // MARS labelling for long window 4Dvar system + case 40: // MARS labeling with domain and model (for LAM) + case 42: // LC-WFV: Wave forecast verification if (isInstant) { // type=em || type=es if (type == 17) { @@ -148,7 +151,7 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo } } break; - case 41: // EFAS: uses post-processing templates + case 41: // EFAS: uses post-processing templates if (isInstant) { if (eps == 1) productDefinitionTemplateNumberNew = 71; @@ -164,12 +167,12 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo } break; - case 15: // Seasonal forecast data - case 16: // Seasonal forecast monthly mean data - case 12: // Seasonal forecast monthly mean data for lagged systems - case 18: // Multianalysis ensemble data - case 26: // MARS labelling or ensemble forecast data - case 30: // Forecasting Systems with Variable Resolution + case 15: // Seasonal forecast data + case 16: // Seasonal forecast monthly mean data + case 12: // Seasonal forecast monthly mean data for lagged systems + case 18: // Multianalysis ensemble data + case 26: // MARS labelling or ensemble forecast data + case 30: // Forecasting Systems with Variable Resolution if (isInstant) { productDefinitionTemplateNumberNew = 1; } @@ -178,21 +181,21 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo } break; - case 5: // Forecast probability data - case 7: // Sensitivity data - case 9: // Singular vectors and ensemble perturbations - case 11: // Supplementary data used by the analysis - case 14: // Brightness temperature - case 20: // 4D variational increments - case 21: // Sensitive area predictions - case 23: // Coupled atmospheric, wave and ocean means - case 24: // Satellite Channel Number Data + case 5: // Forecast probability data + case 7: // Sensitivity data + case 9: // Singular vectors and ensemble perturbations + case 11: // Supplementary data used by the analysis + case 14: // Brightness temperature + case 20: // 4D variational increments + case 21: // Sensitive area predictions + case 23: // Coupled atmospheric, wave and ocean means + case 24: // Satellite Channel Number Data case 25: - case 28: // COSMO local area EPS - case 38: // 4D variational increments for long window 4Dvar system - case 39: // 4DVar model errors for long window 4Dvar system - case 60: // Ocean data analysis - case 192: // Multiple ECMWF local definitions + case 28: // COSMO local area EPS + case 38: // 4D variational increments for long window 4Dvar system + case 39: // 4DVar model errors for long window 4Dvar system + case 60: // Ocean data analysis + case 192: // Multiple ECMWF local definitions if (isInstant) { productDefinitionTemplateNumberNew = 0; } @@ -279,13 +282,13 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo productDefinitionTemplateNumberNew = 45; } else { - //productDefinitionTemplateNumberNew = 47; This PDT is deprecated + // productDefinitionTemplateNumberNew = 47; This PDT is deprecated productDefinitionTemplateNumberNew = 85; } } else { if (isInstant) { - productDefinitionTemplateNumberNew = 48; //44 is deprecated*/ + productDefinitionTemplateNumberNew = 48; // 44 is deprecated*/ } else { productDefinitionTemplateNumberNew = 46; @@ -309,7 +312,7 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo if (productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) { if (a->context->debug) { fprintf(stderr, "ECCODES DEBUG grib_accessor_local_definition_t: ldNumber=%d, newPDTN=%ld\n", - localDefinitionNumber, productDefinitionTemplateNumberNew); + localDefinitionNumber, productDefinitionTemplateNumberNew); } if (tooEarly) grib_set_long(hand, self->productDefinitionTemplateNumberInternal, productDefinitionTemplateNumberNew); @@ -324,7 +327,8 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo return 0; } -int grib_accessor_class_local_definition_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_local_definition_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } From 3381521394543bf2b1766643ded3d60d0d57ccf7 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 16 Jul 2024 11:54:39 +0100 Subject: [PATCH 052/277] Testing: Rename --- tests/CMakeLists.txt | 2 +- tests/{grib_ecc-1846.sh => grib_modelName.sh} | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) rename tests/{grib_ecc-1846.sh => grib_modelName.sh} (97%) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 9a4464136..cedaf00d3 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -276,7 +276,7 @@ if( HAVE_BUILD_TOOLS ) grib_ecc-1467 grib_ecc-1764 grib_ecc-1792 - grib_ecc-1846 + grib_modelName grib_sub_hourly grib_set_bytes grib_set_force diff --git a/tests/grib_ecc-1846.sh b/tests/grib_modelName.sh similarity index 97% rename from tests/grib_ecc-1846.sh rename to tests/grib_modelName.sh index 1416cf1e7..d0dde3cc4 100755 --- a/tests/grib_ecc-1846.sh +++ b/tests/grib_modelName.sh @@ -10,7 +10,9 @@ . ./include.ctest.sh -label="grib_ecc-1846_test" +# See ECC-1846 + +label="grib_modelName_test" tempGrib=temp.$label.grib tempFilt=temp.$label.filt tempLog=temp.$label.log From 5e4f379ea0b964260a1b387f0451c5c650ed828b Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 16 Jul 2024 11:55:07 +0100 Subject: [PATCH 053/277] Definitions: Simplify logic, use isnot operator --- definitions/grib2/local/ecmf/section4_extras.def | 2 +- .../grib2/post_meta_data.hook.products_12.def | 2 +- definitions/grib2/section.4.def | 2 +- definitions/mars/grib.mmsf.an.def | 14 +++++++------- definitions/mars/grib.mmsf.fc.def | 14 +++++++------- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/definitions/grib2/local/ecmf/section4_extras.def b/definitions/grib2/local/ecmf/section4_extras.def index 2477b2481..0d70c1ac9 100644 --- a/definitions/grib2/local/ecmf/section4_extras.def +++ b/definitions/grib2/local/ecmf/section4_extras.def @@ -4,7 +4,7 @@ if (centre is "ecmf" or datasetForLocal is "era6") { concept modelName(unknown, "modelNameConcept.def", conceptsMasterDir, conceptsLocalDirAll): no_copy, dump, read_only; - if (!(modelName is "unknown")) { + if (modelName isnot "unknown") { concept modelVersion(unknown, "modelVersionConcept_[modelName].def", conceptsMasterDir, conceptsLocalDirAll): no_copy, dump, read_only; # alias ls.model = modelName; # alias mars.model = modelName; diff --git a/definitions/grib2/post_meta_data.hook.products_12.def b/definitions/grib2/post_meta_data.hook.products_12.def index f01e08f71..e80da9e03 100644 --- a/definitions/grib2/post_meta_data.hook.products_12.def +++ b/definitions/grib2/post_meta_data.hook.products_12.def @@ -9,6 +9,6 @@ concept destineOrigin(unknown, "destineOriginConcept.def", conceptsDir2, concept unalias mars.domain; # ECC-1796: stepRange indexing for DestinE ExtremesDT and On-Demand ExtremesDT data -if ( defined(dataset) && !(dataset is "climate-dt") ) { +if ( defined(dataset) && dataset isnot "climate-dt" ) { alias mars.step=stepRange; } diff --git a/definitions/grib2/section.4.def b/definitions/grib2/section.4.def index c40709877..edb34d9b7 100644 --- a/definitions/grib2/section.4.def +++ b/definitions/grib2/section.4.def @@ -51,7 +51,7 @@ concept datasetForLocal(unknown) { "unknown" = { dummy=1; } } -if (!(datasetForLocal is "unknown")) { +if (datasetForLocal isnot "unknown") { constant conceptsDir2 = "grib2/localConcepts/[datasetForLocal]": hidden; constant conceptsDir1 = "grib2": hidden; } diff --git a/definitions/mars/grib.mmsf.an.def b/definitions/mars/grib.mmsf.an.def index 0a489319c..86ccb55b5 100644 --- a/definitions/mars/grib.mmsf.an.def +++ b/definitions/mars/grib.mmsf.an.def @@ -1,15 +1,16 @@ #no step in type an unalias mars.step; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } -if (class is "c3") { alias mars.system = systemNumber; } -if (class is "ci") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en" || + class is "c3" || class is "ci") +{ + alias mars.system = systemNumber; +} + alias mars.number = perturbationNumber; alias mars.method = methodNumber; -if (!(class is "gw")) { # ECC-1448 +if (class isnot "gw") { # ECC-1448 alias mars.origin = centre; } @@ -20,4 +21,3 @@ if (centre == 80 && subCentre == 98 && class is "c3") { } if (class is "ci") { unalias mars.method; } - diff --git a/definitions/mars/grib.mmsf.fc.def b/definitions/mars/grib.mmsf.fc.def index c002f9d76..30b2f7394 100644 --- a/definitions/mars/grib.mmsf.fc.def +++ b/definitions/mars/grib.mmsf.fc.def @@ -4,15 +4,16 @@ if (levtype is "o2d" || levtype is "o3d") { alias mars.step = endStep; } -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } -if (class is "c3") { alias mars.system = systemNumber; } -if (class is "ci") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en" || + class is "c3" || class is "ci") +{ + alias mars.system = systemNumber; +} + alias mars.number = perturbationNumber; alias mars.method = methodNumber; -if (!(class is "gw")) { # ECC-1448 +if (class isnot "gw") { # ECC-1448 alias mars.origin = centre; } @@ -23,4 +24,3 @@ if (centre == 80 && subCentre == 98 && class is "c3") { } if (class is "ci") { unalias mars.method; } - From 8fb29cb25b8ebd7a2f936ed4f3f5702829b9c98b Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 16 Jul 2024 12:30:03 +0100 Subject: [PATCH 054/277] ECC-1873: GRIB: Incorrect mapping of flag bits to keys (resolutionAndComponentFlags) --- definitions/grib2/template.3.resolution_flags.def | 11 +++++------ definitions/grib2/template.3.scanning_mode.def | 9 +++++---- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/definitions/grib2/template.3.resolution_flags.def b/definitions/grib2/template.3.resolution_flags.def index 01c65f762..78e0eecaf 100644 --- a/definitions/grib2/template.3.resolution_flags.def +++ b/definitions/grib2/template.3.resolution_flags.def @@ -1,19 +1,18 @@ # (C) Copyright 2005- ECMWF. -# Resolution and component flags flags[1] resolutionAndComponentFlags 'grib2/tables/[tablesVersion]/3.3.table' : edition_specific,no_copy; # Note our flagbit numbers run from 7 to 0, while WMO convention uses 1 to 8 # (most significant to least significant) -flagbit resolutionAndComponentFlags1(resolutionAndComponentFlags,7) = 0: read_only; -flagbit resolutionAndComponentFlags2(resolutionAndComponentFlags,6) = 0: read_only; +flagbit resolutionAndComponentFlags1(resolutionAndComponentFlags,7) = 0: read_only; #Reserved +flagbit resolutionAndComponentFlags2(resolutionAndComponentFlags,6) = 0: read_only; #Reserved flagbit iDirectionIncrementGiven(resolutionAndComponentFlags,5); flagbit jDirectionIncrementGiven(resolutionAndComponentFlags,4); flagbit uvRelativeToGrid(resolutionAndComponentFlags,3); -flagbit resolutionAndComponentFlags6(resolutionAndComponentFlags,7) = 0: read_only; -flagbit resolutionAndComponentFlags7(resolutionAndComponentFlags,6) = 0: read_only; -flagbit resolutionAndComponentFlags8(resolutionAndComponentFlags,6) = 0: read_only; +flagbit resolutionAndComponentFlags6(resolutionAndComponentFlags,2) = 0: read_only; #Reserved +flagbit resolutionAndComponentFlags7(resolutionAndComponentFlags,1) = 0: read_only; #Reserved +flagbit resolutionAndComponentFlags8(resolutionAndComponentFlags,0) = 0: read_only; #Reserved concept ijDirectionIncrementGiven { '1' = { diff --git a/definitions/grib2/template.3.scanning_mode.def b/definitions/grib2/template.3.scanning_mode.def index 1be608f41..1028d290d 100644 --- a/definitions/grib2/template.3.scanning_mode.def +++ b/definitions/grib2/template.3.scanning_mode.def @@ -23,10 +23,11 @@ alias geography.jPointsAreConsecutive=jPointsAreConsecutive; transient iScansPositively = !iScansNegatively : constraint, read_only; transient jScansNegatively = !jScansPositively : constraint, read_only; -flagbit scanningMode5(scanningMode,3) = 0: read_only; -flagbit scanningMode6(scanningMode,2) = 0: read_only; -flagbit scanningMode7(scanningMode,1) = 0: read_only; -flagbit scanningMode8(scanningMode,0) = 0: read_only; +# The following modes are not yet supported +flagbit scanningMode5(scanningMode,3) = 0: read_only; #Points within odd rows... +flagbit scanningMode6(scanningMode,2) = 0: read_only; #Points within even rows... +flagbit scanningMode7(scanningMode,1) = 0: read_only; #Points offset +flagbit scanningMode8(scanningMode,0) = 0: read_only; #Rows have Ni grid points... meta swapScanningX change_scanning_direction( values,Ni,Nj, From 52c846e6ec9db2fddf58e92df66f24bd4f3f03dd Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 16 Jul 2024 15:55:06 +0100 Subject: [PATCH 055/277] Formatting --- src/accessor/grib_accessor_class_codeflag.cc | 7 ++-- .../grib_accessor_class_latlon_increment.cc | 33 ++++++++++--------- .../grib_accessor_class_number_of_values.cc | 26 ++++++++------- .../grib_accessor_class_offset_file.cc | 15 +++++---- .../grib_accessor_class_offset_values.cc | 22 +++++++------ 5 files changed, 57 insertions(+), 46 deletions(-) diff --git a/src/accessor/grib_accessor_class_codeflag.cc b/src/accessor/grib_accessor_class_codeflag.cc index 6cfda6942..8b08ac5a2 100644 --- a/src/accessor/grib_accessor_class_codeflag.cc +++ b/src/accessor/grib_accessor_class_codeflag.cc @@ -78,8 +78,8 @@ static int grib_get_codeflag(grib_accessor* a, long code, char* codename) codename[j++] = bval[0]; codename[j++] = ')'; codename[j++] = ' '; - if (j) - codename[j++] = ' '; + //if (j) + // codename[j++] = ' '; for (i = (strlen(num) + strlen(bval) + 2); i < linelen - 1; i++) codename[j++] = line[i]; @@ -94,8 +94,9 @@ static int grib_get_codeflag(grib_accessor* a, long code, char* codename) j--; codename[j] = 0; - strcat(codename, ":"); + strcat(codename, " ("); strcat(codename, fname); + strcat(codename, ")"); fclose(f); return GRIB_SUCCESS; diff --git a/src/accessor/grib_accessor_class_latlon_increment.cc b/src/accessor/grib_accessor_class_latlon_increment.cc index 885a4cd61..3ab3a07a0 100644 --- a/src/accessor/grib_accessor_class_latlon_increment.cc +++ b/src/accessor/grib_accessor_class_latlon_increment.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,16 +10,17 @@ #include "grib_accessor_class_latlon_increment.h" -grib_accessor_class_latlon_increment_t _grib_accessor_class_latlon_increment{"latlon_increment"}; +grib_accessor_class_latlon_increment_t _grib_accessor_class_latlon_increment{ "latlon_increment" }; grib_accessor_class* grib_accessor_class_latlon_increment = &_grib_accessor_class_latlon_increment; -void grib_accessor_class_latlon_increment_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_latlon_increment_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); grib_accessor_latlon_increment_t* self = (grib_accessor_latlon_increment_t*)a; - int n = 0; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); + int n = 0; self->directionIncrementGiven = grib_arguments_get_name(hand, c, n++); self->directionIncrement = grib_arguments_get_name(hand, c, n++); self->scansPositively = grib_arguments_get_name(hand, c, n++); @@ -32,10 +32,11 @@ void grib_accessor_class_latlon_increment_t::init(grib_accessor* a, const long l self->isLongitude = grib_arguments_get_long(hand, c, n++); } -int grib_accessor_class_latlon_increment_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_latlon_increment_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_latlon_increment_t* self = (grib_accessor_latlon_increment_t*)a; - int ret = 0; - grib_handle* hand = grib_handle_of_accessor(a); + int ret = GRIB_SUCCESS; + grib_handle* hand = grib_handle_of_accessor(a); long directionIncrementGiven = 0; long directionIncrement = 0; @@ -118,11 +119,12 @@ int grib_accessor_class_latlon_increment_t::unpack_double(grib_accessor* a, doub return ret; } -int grib_accessor_class_latlon_increment_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_latlon_increment_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_latlon_increment_t* self = (grib_accessor_latlon_increment_t*)a; - int ret = 0; - long codedNumberOfPoints = 0; - grib_handle* hand = grib_handle_of_accessor(a); + int ret = GRIB_SUCCESS; + long codedNumberOfPoints = 0; + grib_handle* hand = grib_handle_of_accessor(a); long directionIncrementGiven = 0; long directionIncrement = 0; @@ -182,8 +184,8 @@ int grib_accessor_class_latlon_increment_t::pack_double(grib_accessor* a, const } } - //ret = grib_set_long_internal(hand, self->numberOfPoints,numberOfPoints); - //if(ret) grib_context_log(a->context, GRIB_LOG_ERROR, "Accessor %s cannot pack value for %s error %d \n", a->name, self->numberOfPoints, ret); + // ret = grib_set_long_internal(hand, self->numberOfPoints,numberOfPoints); + // if(ret) grib_context_log(a->context, GRIB_LOG_ERROR, "Accessor %s cannot pack value for %s error %d \n", a->name, self->numberOfPoints, ret); grib_get_long_internal(hand, self->numberOfPoints, &codedNumberOfPoints); @@ -201,7 +203,8 @@ int grib_accessor_class_latlon_increment_t::pack_double(grib_accessor* a, const return GRIB_SUCCESS; } -int grib_accessor_class_latlon_increment_t::is_missing(grib_accessor* a){ +int grib_accessor_class_latlon_increment_t::is_missing(grib_accessor* a) +{ size_t len = 1; double val = 0; diff --git a/src/accessor/grib_accessor_class_number_of_values.cc b/src/accessor/grib_accessor_class_number_of_values.cc index 414cf5e05..80cd39f85 100644 --- a/src/accessor/grib_accessor_class_number_of_values.cc +++ b/src/accessor/grib_accessor_class_number_of_values.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,16 @@ #include "grib_accessor_class_number_of_values.h" -grib_accessor_class_number_of_values_t _grib_accessor_class_number_of_values{"number_of_values"}; +grib_accessor_class_number_of_values_t _grib_accessor_class_number_of_values{ "number_of_values" }; grib_accessor_class* grib_accessor_class_number_of_values = &_grib_accessor_class_number_of_values; -void grib_accessor_class_number_of_values_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_number_of_values_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); - int n = 0; + int n = 0; grib_accessor_number_of_values_t* self = (grib_accessor_number_of_values_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); self->values = grib_arguments_get_name(hand, c, n++); self->bitsPerValue = grib_arguments_get_name(hand, c, n++); @@ -32,9 +32,10 @@ void grib_accessor_class_number_of_values_t::init(grib_accessor* a, const long l a->length = 0; } -int grib_accessor_class_number_of_values_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_number_of_values_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_number_of_values_t* self = (grib_accessor_number_of_values_t*)a; - int ret = GRIB_SUCCESS, i; + int ret = GRIB_SUCCESS; long npoints = 0, bitmap_present = 0; size_t size = 0; @@ -45,17 +46,18 @@ int grib_accessor_class_number_of_values_t::unpack_long(grib_accessor* a, long* return ret; if (bitmap_present) { - double* bitmap; - size = npoints; - bitmap = (double*)grib_context_malloc(a->context, sizeof(double) * size); + size = npoints; + double* bitmap = (double*)grib_context_malloc(a->context, sizeof(double) * size); if ((ret = grib_get_double_array_internal(grib_handle_of_accessor(a), self->bitmap, bitmap, &size)) != GRIB_SUCCESS) { grib_context_free(a->context, bitmap); return ret; } *val = 0; - for (i = 0; i < size; i++) - if (bitmap[i] != 0) + for (size_t i = 0; i < size; i++) { + if (bitmap[i] != 0) { (*val)++; + } + } grib_context_free(a->context, bitmap); } diff --git a/src/accessor/grib_accessor_class_offset_file.cc b/src/accessor/grib_accessor_class_offset_file.cc index b52e8eb41..8c06bfb78 100644 --- a/src/accessor/grib_accessor_class_offset_file.cc +++ b/src/accessor/grib_accessor_class_offset_file.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,30 +10,34 @@ #include "grib_accessor_class_offset_file.h" -grib_accessor_class_offset_file_t _grib_accessor_class_offset_file{"offset_file"}; +grib_accessor_class_offset_file_t _grib_accessor_class_offset_file{ "offset_file" }; grib_accessor_class* grib_accessor_class_offset_file = &_grib_accessor_class_offset_file; -void grib_accessor_class_offset_file_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_offset_file_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; a->length = 0; } -int grib_accessor_class_offset_file_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_offset_file_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ *val = (double)grib_handle_of_accessor(a)->offset; *len = 1; return GRIB_SUCCESS; } -int grib_accessor_class_offset_file_t::unpack_string(grib_accessor* a, char* v, size_t* len){ +int grib_accessor_class_offset_file_t::unpack_string(grib_accessor* a, char* v, size_t* len) +{ double val = 0; size_t l = 1; char repres[1024] = {0,}; int err = 0; const char* cclass_name = a->cclass->name; - err = a->unpack_double(&val, &l); if (err) return err; + err = a->unpack_double(&val, &l); + if (err) return err; snprintf(repres, sizeof(repres), "%.0f", val); diff --git a/src/accessor/grib_accessor_class_offset_values.cc b/src/accessor/grib_accessor_class_offset_values.cc index 26f78b5c3..1219d0030 100644 --- a/src/accessor/grib_accessor_class_offset_values.cc +++ b/src/accessor/grib_accessor_class_offset_values.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,36 +10,39 @@ #include "grib_accessor_class_offset_values.h" -grib_accessor_class_offset_values_t _grib_accessor_class_offset_values{"offset_values"}; +grib_accessor_class_offset_values_t _grib_accessor_class_offset_values{ "offset_values" }; grib_accessor_class* grib_accessor_class_offset_values = &_grib_accessor_class_offset_values; -void grib_accessor_class_offset_values_t::init(grib_accessor* a, const long l, grib_arguments* args){ +void grib_accessor_class_offset_values_t::init(grib_accessor* a, const long l, grib_arguments* args) +{ grib_accessor_class_double_t::init(a, l, args); - int n = 0; + int n = 0; grib_accessor_offset_values_t* self = (grib_accessor_offset_values_t*)a; - self->values = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); - self->missingValue = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); + self->values = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); + self->missingValue = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); a->flags |= GRIB_ACCESSOR_FLAG_FUNCTION; a->length = 0; } -int grib_accessor_class_offset_values_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_offset_values_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ int ret = 0; *val = 0; *len = 1; return ret; } -int grib_accessor_class_offset_values_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_offset_values_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ double* values = NULL; size_t size = 0; double missingValue = 0; long missingValuesPresent = 0; int ret = 0, i = 0; grib_accessor_offset_values_t* self = (grib_accessor_offset_values_t*)a; - grib_context* c = a->context; - grib_handle* h = grib_handle_of_accessor(a); + grib_context* c = a->context; + grib_handle* h = grib_handle_of_accessor(a); if (*val == 0) return GRIB_SUCCESS; From 86c0dfbe41d122c4c5dbcc4b6d80595a86b1dbdf Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 17 Jul 2024 10:38:27 +0100 Subject: [PATCH 056/277] ECC-1874: GRIB: Sample files for regular Gaussian grids should have jDirectionIncrementGiven=0 --- samples/regular_gg_ml_grib2.tmpl | Bin 915 -> 915 bytes samples/regular_gg_pl_grib2.tmpl | Bin 179 -> 179 bytes samples/regular_gg_sfc_grib2.tmpl | Bin 179 -> 179 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/samples/regular_gg_ml_grib2.tmpl b/samples/regular_gg_ml_grib2.tmpl index 788e62d071115932218d47b5c810a8690b3f4366..c8d6228cbef315d3cbd2dae3e05f85f08fc22d6e 100644 GIT binary patch delta 12 TcmbQtKAC+&G^4`C7;|O-872dW delta 12 TcmbQtKAC+&G^4@B7;|O-8FmAh diff --git a/samples/regular_gg_pl_grib2.tmpl b/samples/regular_gg_pl_grib2.tmpl index 7120a3913fb6bf0f33dfbb7fa1adcda73e17944e..629d6c294eaaebc9a45ea24f784c0f82bf565e2a 100644 GIT binary patch delta 11 ScmdnYxS4T6G^4`Am~a3Was#;l delta 11 ScmdnYxS4T6G^4@9m~a3WvIEHg diff --git a/samples/regular_gg_sfc_grib2.tmpl b/samples/regular_gg_sfc_grib2.tmpl index b0438fd006b65ecd4a9441f6deb8577312fba6a8..90bde378fed952514a0ccb0afe8d2ae6f75df554 100644 GIT binary patch delta 11 ScmdnYxS4T6G^4`Am~a3Was#;l delta 11 ScmdnYxS4T6G^4@9m~a3WvIEHg From e93d6379c769b69632ac490c891d015b0f8d3c48 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Wed, 17 Jul 2024 10:24:51 +0000 Subject: [PATCH 057/277] Fix broken grib_dump output for flag tables --- src/accessor/grib_accessor_class_codeflag.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/accessor/grib_accessor_class_codeflag.cc b/src/accessor/grib_accessor_class_codeflag.cc index 8b08ac5a2..79d6647e1 100644 --- a/src/accessor/grib_accessor_class_codeflag.cc +++ b/src/accessor/grib_accessor_class_codeflag.cc @@ -94,9 +94,9 @@ static int grib_get_codeflag(grib_accessor* a, long code, char* codename) j--; codename[j] = 0; - strcat(codename, " ("); + strcat(codename, ":"); strcat(codename, fname); - strcat(codename, ")"); + //strcat(codename, ")"); fclose(f); return GRIB_SUCCESS; From 4f78b500f7779f99079a1307b5c338d8ebfe798b Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 17 Jul 2024 13:26:38 +0100 Subject: [PATCH 058/277] Testing: grib_dump with code/flag tables --- src/accessor/grib_accessor_class_codeflag.cc | 3 --- tests/grib_dump.sh | 7 +++++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/accessor/grib_accessor_class_codeflag.cc b/src/accessor/grib_accessor_class_codeflag.cc index 79d6647e1..49f291d77 100644 --- a/src/accessor/grib_accessor_class_codeflag.cc +++ b/src/accessor/grib_accessor_class_codeflag.cc @@ -78,8 +78,6 @@ static int grib_get_codeflag(grib_accessor* a, long code, char* codename) codename[j++] = bval[0]; codename[j++] = ')'; codename[j++] = ' '; - //if (j) - // codename[j++] = ' '; for (i = (strlen(num) + strlen(bval) + 2); i < linelen - 1; i++) codename[j++] = line[i]; @@ -96,7 +94,6 @@ static int grib_get_codeflag(grib_accessor* a, long code, char* codename) strcat(codename, ":"); strcat(codename, fname); - //strcat(codename, ")"); fclose(f); return GRIB_SUCCESS; diff --git a/tests/grib_dump.sh b/tests/grib_dump.sh index 00a6412c0..dca701ff2 100755 --- a/tests/grib_dump.sh +++ b/tests/grib_dump.sh @@ -155,6 +155,13 @@ file=$data_dir/sst_globus0083.grib ${tools_dir}/grib_dump -O $file > $temp 2>&1 grep -q "12-10227752 codedValues" $temp +# Code tables and code flags +#----------------------------------------------------------- +file=$data_dir/sample.grib2 +${tools_dir}/grib_dump -Ot $file > $temp 2>&1 +fgrep -q "codetable (int) typeOfFirstFixedSurface = 103 [Specified height level above ground (m) (grib2/tables/4/4.5.table) ]" $temp +fgrep -q "codeflag (int) resolutionAndComponentFlags = 48 [00110000 (grib2/tables/4/3.3.table) ]" $temp +fgrep -q "codeflag (int) scanningMode = 0 [00000000 (grib2/tables/4/3.4.table) ]" $temp # Error conditions #----------------------------------------------------------- From 5b2e13fd82c25ec4c24b289abd133cc7a3e7422f Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 17 Jul 2024 15:28:11 +0100 Subject: [PATCH 059/277] ECC-1875: GRIB2: Unwanted PDT change if setting localDefinitionNumber --- src/accessor/grib_accessor_class_g2_mars_labeling.cc | 5 ++--- src/accessor/grib_accessor_class_local_definition.cc | 12 ++++++++++-- src/eccodes_prototypes.h | 1 + src/grib_util.cc | 10 ++++++++++ 4 files changed, 23 insertions(+), 5 deletions(-) diff --git a/src/accessor/grib_accessor_class_g2_mars_labeling.cc b/src/accessor/grib_accessor_class_g2_mars_labeling.cc index 06163f8d2..5e2e73f64 100644 --- a/src/accessor/grib_accessor_class_g2_mars_labeling.cc +++ b/src/accessor/grib_accessor_class_g2_mars_labeling.cc @@ -100,7 +100,6 @@ static int extra_set(grib_accessor* a, long val) long is_chemical_srcsink = 0; long is_aerosol = 0; long is_aerosol_optical = 0; - long is_wave = 0, is_wave_prange = 0; grib_get_long(hand, "is_chemical", &is_chemical); grib_get_long(hand, "is_chemical_srcsink", &is_chemical_srcsink); @@ -108,8 +107,8 @@ static int extra_set(grib_accessor* a, long val) grib_get_long(hand, "is_aerosol", &is_aerosol); grib_get_long(hand, "is_aerosol_optical", &is_aerosol_optical); - is_wave = grib_is_defined(hand, "waveDirectionNumber"); - is_wave_prange = grib_is_defined(hand, "typeOfWavePeriodInterval"); + const int is_wave = grib_is_defined(hand, "waveDirectionNumber"); + const int is_wave_prange = grib_is_defined(hand, "typeOfWavePeriodInterval"); switch (self->index) { case 0: diff --git a/src/accessor/grib_accessor_class_local_definition.cc b/src/accessor/grib_accessor_class_local_definition.cc index 95f671118..5fab28691 100644 --- a/src/accessor/grib_accessor_class_local_definition.cc +++ b/src/accessor/grib_accessor_class_local_definition.cc @@ -96,6 +96,9 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo // if (grib2_is_PDTN_EPS(productDefinitionTemplateNumber)) // eps = 1; + // Is this a plain vanilla product? + const int is_plain = grib2_is_PDTN_Plain(productDefinitionTemplateNumber); + switch (localDefinitionNumber) { case 0: productDefinitionTemplateNumberNew = productDefinitionTemplateNumber; @@ -216,6 +219,11 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo break; } + if (!is_plain) { + // ECC-1875 + productDefinitionTemplateNumberNew = -1; // disable PDT selection + } + // Adjust for atmospheric chemical constituents if (chemical == 1) { if (eps == 1) { @@ -309,9 +317,9 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo } } - if (productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) { + if (productDefinitionTemplateNumberNew >=0 && productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) { if (a->context->debug) { - fprintf(stderr, "ECCODES DEBUG grib_accessor_local_definition_t: ldNumber=%d, newPDTN=%ld\n", + fprintf(stderr, "ECCODES DEBUG %s %s: ldNumber=%d, newPDTN=%ld\n", a->cclass->name, __func__, localDefinitionNumber, productDefinitionTemplateNumberNew); } if (tooEarly) diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 6cbb4a5bc..3ce4d0838 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -861,6 +861,7 @@ grib_string_list* grib_util_get_param_id(const char* mars_param); grib_string_list* grib_util_get_mars_param(const char* param_id); grib_handle* grib_util_set_spec(grib_handle* h, const grib_util_grid_spec* spec, const grib_util_packing_spec* packing_spec, int flags, const double* data_values, size_t data_values_count, int* err); int parse_keyval_string(const char* grib_tool, char* arg, int values_required, int default_type, grib_values values[], int* count); +int grib2_is_PDTN_Plain(long productDefinitionTemplateNumber); int grib2_is_PDTN_EPS(long productDefinitionTemplateNumber); int grib2_is_PDTN_Chemical(long productDefinitionTemplateNumber); int grib2_is_PDTN_ChemicalSourceSink(long productDefinitionTemplateNumber); diff --git a/src/grib_util.cc b/src/grib_util.cc index 9ff8e7270..9820b3028 100644 --- a/src/grib_util.cc +++ b/src/grib_util.cc @@ -1882,6 +1882,16 @@ int grib2_is_PDTN_EPS(long pdtn) return 0; } +// Return 1 if the productDefinitionTemplateNumber (GRIB2) is for plain (vanilla) products +int grib2_is_PDTN_Plain(long pdtn) +{ + return ( + pdtn == 0 || + pdtn == 1 || + pdtn == 8 || + pdtn == 11); +} + // Return 1 if the productDefinitionTemplateNumber (GRIB2) is for atmospheric chemical constituents int grib2_is_PDTN_Chemical(long pdtn) { From bf8504e70b2879ecf7df781dc070cd9e34bb0285 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 17 Jul 2024 16:01:37 +0100 Subject: [PATCH 060/277] ECC-1875: Test --- tests/grib_true_imagery.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/grib_true_imagery.sh b/tests/grib_true_imagery.sh index 046a74f23..a2fad7d0e 100755 --- a/tests/grib_true_imagery.sh +++ b/tests/grib_true_imagery.sh @@ -37,4 +37,10 @@ ${tools_dir}/grib_set -s tablesVersion=$latest,productDefinitionTemplateNumber=1 ${tools_dir}/grib_dump -O $temp > $tempd grib_check_key_equals $temp typeOfWavelengthInterval,scaledValueOfFirstWavelength,scaledValueOfSecondWavelength "0 0 MISSING" +# ECC-1875 +${tools_dir}/grib_set -s tablesVersion=$latest,productDefinitionTemplateNumber=109 $sample_grib2 $temp +${tools_dir}/grib_set -s setLocalDefinition=1,localDefinitionNumber=14 $temp $tempd +${tools_dir}/grib_compare -b numberOfSection,totalLength $temp $tempd + +# Clean up rm -f $temp $tempd From b4211f1f87f6ed14660e19456e0780b03dcffbe5 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 17 Jul 2024 17:02:54 +0100 Subject: [PATCH 061/277] Definitions: local section 37 added for brightness temperature with anoffset --- definitions/grib2/grib2LocalSectionNumber.98.table | 1 + definitions/grib2/local.98.37.def | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 definitions/grib2/local.98.37.def diff --git a/definitions/grib2/grib2LocalSectionNumber.98.table b/definitions/grib2/grib2LocalSectionNumber.98.table index 26d0b1ec0..16d99430d 100644 --- a/definitions/grib2/grib2LocalSectionNumber.98.table +++ b/definitions/grib2/grib2LocalSectionNumber.98.table @@ -17,6 +17,7 @@ 28 28 COSMO local area EPS 30 30 Forecasting Systems with Variable Resolution 36 36 MARS labelling for long window 4DVar system +37 37 Brightness temperature for long window 4Dvar system 38 38 4D variational increments for long window 4DVar system 39 39 4DVar model errors for long window 4Dvar system 41 41 The Flood Awareness System diff --git a/definitions/grib2/local.98.37.def b/definitions/grib2/local.98.37.def new file mode 100644 index 000000000..37d99ba77 --- /dev/null +++ b/definitions/grib2/local.98.37.def @@ -0,0 +1,12 @@ +# Brightness temperature for long window 4Dvar system + +unsigned[4] channelNumber : dump ; +alias mars.channel = channelNumber; + +unsigned[1] numberOfFrequencies : dump ; +alias totalNumberOfFrequencies = numberOfFrequencies ; + +# Hours +unsigned[2] offsetToEndOf4DvarWindow : dump; +unsigned[2] lengthOf4DvarWindow : dump; +alias anoffset=offsetToEndOf4DvarWindow; From 9dc8fc792e045cfa39508a4e9a1112fc4d782ed3 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 18 Jul 2024 12:44:46 +0100 Subject: [PATCH 062/277] Debugging: When triggers --- src/action_class_if.cc | 3 +-- src/action_class_when.cc | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/action_class_if.cc b/src/action_class_if.cc index 0302e0625..c310bada2 100644 --- a/src/action_class_if.cc +++ b/src/action_class_if.cc @@ -133,7 +133,7 @@ static int create_accessor(grib_section* p, grib_action* act, grib_loader* h) { grib_action_if* a = (grib_action_if*)act; grib_action* next = NULL; - int ret = 0; + int ret = GRIB_SUCCESS; long lres = 0; grib_accessor* as = NULL; @@ -304,4 +304,3 @@ static void destroy(grib_context* context, grib_action* act) grib_context_free_persistent(context, act->debug_info); grib_context_free_persistent(context, act->op); } - diff --git a/src/action_class_when.cc b/src/action_class_when.cc index 49fc325be..31f377b44 100644 --- a/src/action_class_when.cc +++ b/src/action_class_when.cc @@ -108,6 +108,19 @@ grib_action* grib_action_create_when(grib_context* context, snprintf(name, nameLen, "_when%p", (void*)expression); + act->debug_info = NULL; + if (context->debug > 0) { + /* Construct debug information showing definition file and line */ + /* number of IF statement */ + const char* fbp = file_being_parsed(); + if (fbp) { + char debug_info[1024]; + const size_t infoLen = sizeof(debug_info); + snprintf(debug_info, infoLen, "File=%s", fbp); + act->debug_info = grib_context_strdup_persistent(context, debug_info); + } + } + act->name = grib_context_strdup_persistent(context, name); return act; @@ -189,6 +202,14 @@ static int notify_change(grib_action* a, grib_accessor* observer, grib_accessor* #endif SET_LOOP(self, 1); + if (hand->context->debug > 0) { + grib_context_log(hand->context, GRIB_LOG_DEBUG, + "------------- SECTION action %s is triggered by [%s] (%s)", + a->name, observed->name, a->debug_info ? a->debug_info : "no debug info"); + //grib_expression_print(observed->context, self->expression, 0); + //fprintf(stderr, "\n"); + } + if (lres) b = self->block_true; else @@ -229,5 +250,6 @@ static void destroy(grib_context* context, grib_action* act) grib_expression_free(context, self->expression); grib_context_free_persistent(context, act->name); + grib_context_free_persistent(context, act->debug_info); grib_context_free_persistent(context, act->op); } From 608cfd507ae4893d3580af26ae0496100b5657cc Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 18 Jul 2024 15:39:29 +0100 Subject: [PATCH 063/277] Expression: Printing should allow stream to be set --- src/action_class_assert.cc | 4 +-- src/action_class_if.cc | 14 +++++------ src/action_class_when.cc | 10 ++++---- src/eccodes_prototypes.h | 2 +- src/grib_api_internal.h | 2 +- src/grib_expression.cc | 6 ++--- src/grib_expression_class_accessor.cc | 10 ++++---- src/grib_expression_class_binop.cc | 28 +++++++++++++++------ src/grib_expression_class_double.cc | 6 ++--- src/grib_expression_class_functor.cc | 8 +++--- src/grib_expression_class_is_in_dict.cc | 10 ++++---- src/grib_expression_class_is_in_list.cc | 10 ++++---- src/grib_expression_class_is_integer.cc | 4 +-- src/grib_expression_class_length.cc | 10 ++++---- src/grib_expression_class_logical_and.cc | 14 +++++------ src/grib_expression_class_logical_or.cc | 14 +++++------ src/grib_expression_class_long.cc | 6 ++--- src/grib_expression_class_string.cc | 6 ++--- src/grib_expression_class_string_compare.cc | 14 +++++------ src/grib_expression_class_sub_string.cc | 6 ++--- src/grib_expression_class_true.cc | 8 +++--- src/grib_expression_class_unop.cc | 10 ++++---- 22 files changed, 108 insertions(+), 94 deletions(-) diff --git a/src/action_class_assert.cc b/src/action_class_assert.cc index 4261524fd..66cf04f56 100644 --- a/src/action_class_assert.cc +++ b/src/action_class_assert.cc @@ -137,8 +137,8 @@ static int execute(grib_action* a, grib_handle* h) } else { grib_context_log(h->context, GRIB_LOG_ERROR, "Assertion failure: "); - grib_expression_print(h->context, self->expression, h); - printf("\n"); + grib_expression_print(h->context, self->expression, h, stderr); + fprintf(stderr, "\n"); return GRIB_ASSERTION_FAILURE; } } diff --git a/src/action_class_if.cc b/src/action_class_if.cc index c310bada2..ec99ba315 100644 --- a/src/action_class_if.cc +++ b/src/action_class_if.cc @@ -154,9 +154,9 @@ static int create_accessor(grib_section* p, grib_action* act, grib_loader* h) next = a->block_false; if (p->h->context->debug > 1) { - printf("EVALUATE create_accessor_handle "); - grib_expression_print(p->h->context, a->expression, p->h); - printf(" [%s][_if%p]\n", (next == a->block_true ? "true" : "false"), (void*)a); + fprintf(stderr, "EVALUATE create_accessor_handle "); + grib_expression_print(p->h->context, a->expression, p->h, stderr); + fprintf(stderr, " [%s][_if%p]\n", (next == a->block_true ? "true" : "false"), (void*)a); /*grib_dump_action_branch(stdout,next,5);*/ } @@ -176,8 +176,8 @@ static int create_accessor(grib_section* p, grib_action* act, grib_loader* h) static void print_expression_debug_info(grib_context* ctx, grib_expression* exp, grib_handle* h) { - grib_expression_print(ctx, exp, h); /* writes to stdout without a newline */ - printf("\n"); + grib_expression_print(ctx, exp, h, stderr); /* writes without a newline */ + fprintf(stderr, "\n"); } static int execute(grib_action* act, grib_handle* h) @@ -240,7 +240,7 @@ static void dump(grib_action* act, FILE* f, int lvl) grib_context_print(act->context, f, " "); printf("if(%s) { ", act->name); - grib_expression_print(act->context, a->expression, 0); + grib_expression_print(act->context, a->expression, 0, stdout); printf("\n"); if (a->block_true) { @@ -252,7 +252,7 @@ static void dump(grib_action* act, FILE* f, int lvl) for (i = 0; i < lvl; i++) grib_context_print(act->context, f, " "); printf("else(%s) { ", act->name); - grib_expression_print(act->context, a->expression, 0); + grib_expression_print(act->context, a->expression, 0, stdout); /* grib_context_print(act->context,f,"ELSE \n" );*/ grib_dump_action_branch(f, a->block_false, lvl + 1); } diff --git a/src/action_class_when.cc b/src/action_class_when.cc index 31f377b44..640e75aab 100644 --- a/src/action_class_when.cc +++ b/src/action_class_when.cc @@ -149,7 +149,7 @@ static void dump(grib_action* act, FILE* f, int lvl) grib_context_print(act->context, f, " "); printf("when(%s) { ", act->name); - grib_expression_print(act->context, a->expression, 0); + grib_expression_print(act->context, a->expression, 0, stdout); printf("\n"); grib_dump_action_branch(f, a->block_true, lvl + 1); @@ -195,8 +195,8 @@ static int notify_change(grib_action* a, grib_accessor* observer, grib_accessor* if (self->loop) { printf("LOOP detected...\n"); printf("WHEN triggered by %s %ld\n", observed->name, lres); - grib_expression_print(observed->context, self->expression, 0); - printf("\n"); + grib_expression_print(observed->context, self->expression, 0, stderr); + fprintf(stderr, "\n"); return ret; } #endif @@ -206,8 +206,8 @@ static int notify_change(grib_action* a, grib_accessor* observer, grib_accessor* grib_context_log(hand->context, GRIB_LOG_DEBUG, "------------- SECTION action %s is triggered by [%s] (%s)", a->name, observed->name, a->debug_info ? a->debug_info : "no debug info"); - //grib_expression_print(observed->context, self->expression, 0); - //fprintf(stderr, "\n"); + grib_expression_print(observed->context, self->expression, 0, stderr); + fprintf(stderr, "\n"); } if (lres) diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 3ce4d0838..61b02b61d 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -830,7 +830,7 @@ int grib_expression_evaluate_long(grib_handle* h, grib_expression* g, long* resu int grib_expression_evaluate_double(grib_handle* h, grib_expression* g, double* result); const char* grib_expression_evaluate_string(grib_handle* h, grib_expression* g, char* buf, size_t* size, int* err); const char* grib_expression_get_name(grib_expression* g); -void grib_expression_print(grib_context* ctx, grib_expression* g, grib_handle* f); +void grib_expression_print(grib_context* ctx, grib_expression* g, grib_handle* f, FILE*); void grib_expression_free(grib_context* ctx, grib_expression* g); void grib_expression_add_dependency(grib_expression* e, grib_accessor* observer); grib_arguments* grib_arguments_new(grib_context* c, grib_expression* g, grib_arguments* n); diff --git a/src/grib_api_internal.h b/src/grib_api_internal.h index 335da5954..dc0742d8a 100644 --- a/src/grib_api_internal.h +++ b/src/grib_api_internal.h @@ -891,7 +891,7 @@ typedef int (*expression_evaluate_double_proc)(grib_expression*, grib_handle*, d typedef const char* (*expression_evaluate_string_proc)(grib_expression*, grib_handle*, char*, size_t*, int*); typedef const char* (*expression_get_name_proc)(grib_expression*); -typedef void (*expression_print_proc)(grib_context*, grib_expression*, grib_handle*); +typedef void (*expression_print_proc)(grib_context*, grib_expression*, grib_handle*, FILE*); typedef void (*expression_add_dependency_proc)(grib_expression* e, grib_accessor* observer); typedef struct grib_expression_class grib_expression_class; diff --git a/src/grib_expression.cc b/src/grib_expression.cc index 4c1109640..314e5ad8d 100644 --- a/src/grib_expression.cc +++ b/src/grib_expression.cc @@ -74,12 +74,12 @@ const char* grib_expression_get_name(grib_expression* g) return 0; } -void grib_expression_print(grib_context* ctx, grib_expression* g, grib_handle* f) +void grib_expression_print(grib_context* ctx, grib_expression* g, grib_handle* f, FILE* out) { grib_expression_class* c = g->cclass; while (c) { if (c->print) { - c->print(ctx, g, f); + c->print(ctx, g, f, out); return; } c = c->super ? *(c->super) : NULL; @@ -163,7 +163,7 @@ void grib_arguments_print(grib_context* c, grib_arguments* g, grib_handle* f) { if (g) { if (g->expression) - grib_expression_print(c, g->expression, f); + grib_expression_print(c, g->expression, f, stdout); if (g->next) { printf(","); grib_arguments_print(c, g->next, f); diff --git a/src/grib_expression_class_accessor.cc b/src/grib_expression_class_accessor.cc index 064cc2051..efa42714a 100644 --- a/src/grib_expression_class_accessor.cc +++ b/src/grib_expression_class_accessor.cc @@ -42,7 +42,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -128,16 +128,16 @@ static string evaluate_string(grib_expression* g, grib_handle* h, char* buf, siz return buf; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { const grib_expression_accessor* e = (grib_expression_accessor*)g; - printf("access('%s", e->name); + fprintf(out, "access('%s", e->name); if (f) { long s = 0; grib_get_long(f, e->name, &s); - printf("=%ld", s); + fprintf(out, "=%ld", s); } - printf("')"); + fprintf(out, "')"); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_binop.cc b/src/grib_expression_class_binop.cc index 5caefd701..e1c4f3d02 100644 --- a/src/grib_expression_class_binop.cc +++ b/src/grib_expression_class_binop.cc @@ -42,7 +42,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -144,14 +144,28 @@ static int evaluate_double(grib_expression* g, grib_handle* h, double* dres) return GRIB_SUCCESS; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { grib_expression_binop* e = (grib_expression_binop*)g; - printf("binop("); - grib_expression_print(c, e->left, f); - printf(","); - grib_expression_print(c, e->right, f); - printf(")"); + + // Cover a subset of the most commonly used functions + // TODO(masn): Can be done in a much better way! + // e.g., the yacc parser passing in the functions name + if (e->long_func && e->long_func == grib_op_eq) { + fprintf(out, "equals("); + } else if (e->long_func && e->long_func == grib_op_ne) { + fprintf(out, "not_equals("); + } else if (e->long_func && e->long_func == grib_op_lt) { + fprintf(out, "less_than("); + } else if (e->long_func && e->long_func == grib_op_gt) { + fprintf(out, "greater_than("); + } else { + fprintf(out, "binop("); + } + grib_expression_print(c, e->left, f, out); + fprintf(out, ","); + grib_expression_print(c, e->right, f, out); + fprintf(out, ")"); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_double.cc b/src/grib_expression_class_double.cc index 89747194b..52d40832f 100644 --- a/src/grib_expression_class_double.cc +++ b/src/grib_expression_class_double.cc @@ -38,7 +38,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -85,10 +85,10 @@ static int evaluate_double(grib_expression* g, grib_handle* h, double* dres) return GRIB_SUCCESS; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { const grib_expression_double* e = (grib_expression_double*)g; - printf("double(%g)", e->value); + fprintf(out, "double(%g)", e->value); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_functor.cc b/src/grib_expression_class_functor.cc index 530654ea2..f335966a0 100644 --- a/src/grib_expression_class_functor.cc +++ b/src/grib_expression_class_functor.cc @@ -38,7 +38,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -216,12 +216,12 @@ static int evaluate_long(grib_expression* g, grib_handle* h, long* lres) return GRIB_NOT_IMPLEMENTED; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { const grib_expression_functor* e = (grib_expression_functor*)g; - printf("%s(", e->name); + fprintf(out, "%s(", e->name); // grib_expression_print(c,e->args,f); - printf(")"); + fprintf(out, ")"); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_is_in_dict.cc b/src/grib_expression_class_is_in_dict.cc index 142287cdc..46e0833f6 100644 --- a/src/grib_expression_class_is_in_dict.cc +++ b/src/grib_expression_class_is_in_dict.cc @@ -39,7 +39,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -200,16 +200,16 @@ static string evaluate_string(grib_expression* g, grib_handle* h, char* buf, siz // return buf; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { const grib_expression_is_in_dict* e = (grib_expression_is_in_dict*)g; - printf("access('%s", e->key); + fprintf(out, "access('%s", e->key); if (f) { long s = 0; grib_get_long(f, e->key, &s); - printf("=%ld", s); + fprintf(out, "=%ld", s); } - printf("')"); + fprintf(out, "')"); } grib_expression* new_is_in_dict_expression(grib_context* c, const char* name, const char* list) diff --git a/src/grib_expression_class_is_in_list.cc b/src/grib_expression_class_is_in_list.cc index f5339c309..3e5e3728d 100644 --- a/src/grib_expression_class_is_in_list.cc +++ b/src/grib_expression_class_is_in_list.cc @@ -41,7 +41,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -199,16 +199,16 @@ static string evaluate_string(grib_expression* g, grib_handle* h, char* buf, siz return buf; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { const grib_expression_is_in_list* e = (grib_expression_is_in_list*)g; - printf("access('%s", e->name); + fprintf(out, "access('%s", e->name); if (f) { long s = 0; grib_get_long(f, e->name, &s); - printf("=%ld", s); + fprintf(out, "=%ld", s); } - printf("')"); + fprintf(out, "')"); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_is_integer.cc b/src/grib_expression_class_is_integer.cc index da81cc4cb..bf203bc81 100644 --- a/src/grib_expression_class_is_integer.cc +++ b/src/grib_expression_class_is_integer.cc @@ -42,7 +42,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -140,7 +140,7 @@ static string evaluate_string(grib_expression* g, grib_handle* h, char* buf, siz return buf; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { // grib_expression_is_integer* e = (grib_expression_is_integer*)g; // printf("access('%s", e->name); diff --git a/src/grib_expression_class_length.cc b/src/grib_expression_class_length.cc index c9e967c77..c8c63f8e8 100644 --- a/src/grib_expression_class_length.cc +++ b/src/grib_expression_class_length.cc @@ -42,7 +42,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -123,16 +123,16 @@ static string evaluate_string(grib_expression* g, grib_handle* h, char* buf, siz return buf; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { const grib_expression_length* e = (grib_expression_length*)g; - printf("access('%s", e->name); + fprintf(out, "access('%s", e->name); if (f) { long s = 0; grib_get_long(f, e->name, &s); - printf("=%ld", s); + fprintf(out, "=%ld", s); } - printf("')"); + fprintf(out, "')"); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_logical_and.cc b/src/grib_expression_class_logical_and.cc index 902119a5e..d95de8d92 100644 --- a/src/grib_expression_class_logical_and.cc +++ b/src/grib_expression_class_logical_and.cc @@ -39,7 +39,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -133,14 +133,14 @@ static int evaluate_double(grib_expression* g, grib_handle* h, double* dres) return ret; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { grib_expression_logical_and* e = (grib_expression_logical_and*)g; - printf("("); - grib_expression_print(c, e->left, f); - printf(" && "); - grib_expression_print(c, e->right, f); - printf(")"); + fprintf(out, "("); + grib_expression_print(c, e->left, f, out); + fprintf(out, " && "); + grib_expression_print(c, e->right, f, out); + fprintf(out, ")"); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_logical_or.cc b/src/grib_expression_class_logical_or.cc index 772a73d8a..aed0618f3 100644 --- a/src/grib_expression_class_logical_or.cc +++ b/src/grib_expression_class_logical_or.cc @@ -39,7 +39,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -134,14 +134,14 @@ static int evaluate_double(grib_expression* g, grib_handle* h, double* dres) return ret; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { grib_expression_logical_or* e = (grib_expression_logical_or*)g; - printf("("); - grib_expression_print(c, e->left, f); - printf(" || "); - grib_expression_print(c, e->right, f); - printf(")"); + fprintf(out, "("); + grib_expression_print(c, e->left, f, out); + fprintf(out, " || "); + grib_expression_print(c, e->right, f, out); + fprintf(out, ")"); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_long.cc b/src/grib_expression_class_long.cc index 3b61a83d1..774f736e6 100644 --- a/src/grib_expression_class_long.cc +++ b/src/grib_expression_class_long.cc @@ -38,7 +38,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -85,10 +85,10 @@ static int evaluate_double(grib_expression* g, grib_handle* h, double* dres) return GRIB_SUCCESS; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { const grib_expression_long* e = (grib_expression_long*)g; - printf("long(%ld)", e->value); + fprintf(out, "long(%ld)", e->value); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_string.cc b/src/grib_expression_class_string.cc index 79d42e247..379140de7 100644 --- a/src/grib_expression_class_string.cc +++ b/src/grib_expression_class_string.cc @@ -37,7 +37,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static string evaluate_string(grib_expression*,grib_handle*,char*,size_t*,int*); @@ -76,10 +76,10 @@ static const char* evaluate_string(grib_expression* g, grib_handle* h, char* buf return e->value; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { const grib_expression_string* e = (grib_expression_string*)g; - printf("string('%s')", e->value); + fprintf(out, "string('%s')", e->value); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_string_compare.cc b/src/grib_expression_class_string_compare.cc index 3003b5ef6..ac54cb6d2 100644 --- a/src/grib_expression_class_string_compare.cc +++ b/src/grib_expression_class_string_compare.cc @@ -40,7 +40,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -128,14 +128,14 @@ static int evaluate_double(grib_expression* g, grib_handle* h, double* dres) return ret; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { grib_expression_string_compare* e = (grib_expression_string_compare*)g; - printf("string_compare("); - grib_expression_print(c, e->left, f); - printf(","); - grib_expression_print(c, e->right, f); - printf(")"); + fprintf(out, "string_compare("); + grib_expression_print(c, e->left, f, out); + fprintf(out, ","); + grib_expression_print(c, e->right, f, out); + fprintf(out, ")"); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_sub_string.cc b/src/grib_expression_class_sub_string.cc index a5a0da732..dd44ec323 100644 --- a/src/grib_expression_class_sub_string.cc +++ b/src/grib_expression_class_sub_string.cc @@ -37,7 +37,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static string evaluate_string(grib_expression*,grib_handle*,char*,size_t*,int*); @@ -76,10 +76,10 @@ static const char* evaluate_string(grib_expression* g, grib_handle* h, char* buf return e->value; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { const grib_expression_sub_string* e = (grib_expression_sub_string*)g; - printf("string('%s')", e->value); + fprintf(out, "string('%s')", e->value); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_true.cc b/src/grib_expression_class_true.cc index 6b418cb2c..382dec868 100644 --- a/src/grib_expression_class_true.cc +++ b/src/grib_expression_class_true.cc @@ -37,7 +37,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -81,10 +81,10 @@ static int evaluate_double(grib_expression* g, grib_handle* h, double* dres) return GRIB_SUCCESS; } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { - printf("true("); - printf(")"); + fprintf(out, "true("); + fprintf(out, ")"); } static void destroy(grib_context* c, grib_expression* g) diff --git a/src/grib_expression_class_unop.cc b/src/grib_expression_class_unop.cc index ae7678043..0de77a02d 100644 --- a/src/grib_expression_class_unop.cc +++ b/src/grib_expression_class_unop.cc @@ -41,7 +41,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*,grib_expression*,grib_handle*,FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -105,12 +105,12 @@ static const char* get_name(grib_expression* g) return grib_expression_get_name(e->exp); } -static void print(grib_context* c, grib_expression* g, grib_handle* f) +static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { grib_expression_unop* e = (grib_expression_unop*)g; - printf("unop("); - grib_expression_print(c, e->exp, f); - printf(")"); + fprintf(out, "unop("); + grib_expression_print(c, e->exp, f, out); + fprintf(out, ")"); } static void destroy(grib_context* c, grib_expression* g) From 1aba5b30591af7e4d7fa5d8f2cb2748b0a8a0e44 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 19 Jul 2024 09:54:33 +0000 Subject: [PATCH 064/277] ECC-1878: grib_filter/bufr_filter: Add a '=' specifier for the print statement --- src/grib_parse_utils.cc | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/grib_parse_utils.cc b/src/grib_parse_utils.cc index 51de29332..13a623a37 100644 --- a/src/grib_parse_utils.cc +++ b/src/grib_parse_utils.cc @@ -300,7 +300,8 @@ int grib_recompose_name(grib_handle* h, grib_accessor* observer, const char* una // } int grib_accessors_list_print(grib_handle* h, grib_accessors_list* al, const char* name, - int type, const char* format, const char* separator, int maxcols, int* newline, FILE* out) + int type, const char* format, const char* separator, int equal, + int maxcols, int* newline, FILE* out) { size_t size = 0, len = 0, replen = 0, j = 0; unsigned char* bval = NULL; @@ -320,6 +321,8 @@ int grib_accessors_list_print(grib_handle* h, grib_accessors_list* al, const cha if (maxcols == 0) maxcols = INT_MAX; + if (equal) fprintf(out, "%s=", name); + if (type == -1) type = al->accessor->get_native_type(); al->value_count(&size); @@ -436,6 +439,7 @@ int grib_recompose_print(grib_handle* h, grib_accessor* observer, const char* un char* format = NULL; int type = -1; char* separator = NULL; + int equal = 0; int l; char buff[10] = {0,}; char buff1[1024] = {0,}; @@ -487,8 +491,9 @@ int grib_recompose_print(grib_handle* h, grib_accessor* observer, const char* un i += pp - uname - i - 1; break; case ']': - loc[mode] = 0; - mode = -1; + if (loc[mode - 1] == '=') { loc[mode-1] = 0; equal = 1; } + else { loc[mode] = 0; } + mode = -1; if (al) grib_accessors_list_delete(h->context, al); al = grib_find_accessors_list(h, loc); /* This allocates memory */ if (!al) { @@ -503,7 +508,7 @@ int grib_recompose_print(grib_handle* h, grib_accessor* observer, const char* un } } else { - ret = grib_accessors_list_print(h, al, loc, type, format, separator, maxcols, &newline, out); + ret = grib_accessors_list_print(h, al, loc, type, format, separator, equal, maxcols, &newline, out); if (ret != GRIB_SUCCESS) { /* grib_context_log(h->context, GRIB_LOG_ERROR,"grib_recompose_print: Could not recompose print : %s", uname); */ From 60af035f3c1370732fc307f4c90a1b1e305d17c2 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 19 Jul 2024 10:01:07 +0000 Subject: [PATCH 065/277] ECC-1865: GRIB: Resolve duplicate shortName of ucq --- definitions/grib2/cfVarName.def | 4 ++-- definitions/grib2/shortName.def | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index 35cf7c79a..b536a270d 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -3793,7 +3793,7 @@ typeOfFirstFixedSurface = 187 ; } #Urban canyon temperature -'uct' = { +'urct' = { discipline = 0 ; parameterCategory = 0 ; parameterNumber = 0 ; @@ -3801,7 +3801,7 @@ typeOfSecondFixedSurface = 185 ; } #Urban canyon specific humidity -'ucq' = { +'urcq' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 0 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 2f9975fcf..80baac219 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -3793,7 +3793,7 @@ typeOfFirstFixedSurface = 187 ; } #Urban canyon temperature -'uct' = { +'urct' = { discipline = 0 ; parameterCategory = 0 ; parameterNumber = 0 ; @@ -3801,7 +3801,7 @@ typeOfSecondFixedSurface = 185 ; } #Urban canyon specific humidity -'ucq' = { +'urcq' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 0 ; From 58e733e4c4d17cf82adfbbc90271a5b76d763f35 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 19 Jul 2024 11:11:46 +0100 Subject: [PATCH 066/277] ECC-1878: Add test --- src/grib_parse_utils.cc | 5 +++-- tests/grib_filter.sh | 18 ++++++++++++++++++ 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/grib_parse_utils.cc b/src/grib_parse_utils.cc index 13a623a37..8eb9a2938 100644 --- a/src/grib_parse_utils.cc +++ b/src/grib_parse_utils.cc @@ -321,7 +321,7 @@ int grib_accessors_list_print(grib_handle* h, grib_accessors_list* al, const cha if (maxcols == 0) maxcols = INT_MAX; - if (equal) fprintf(out, "%s=", name); + if (equal) fprintf(out, "%s=", name); // ECC-1878 if (type == -1) type = al->accessor->get_native_type(); @@ -439,7 +439,7 @@ int grib_recompose_print(grib_handle* h, grib_accessor* observer, const char* un char* format = NULL; int type = -1; char* separator = NULL; - int equal = 0; + int equal = 0; // See ECC-1878 int l; char buff[10] = {0,}; char buff1[1024] = {0,}; @@ -491,6 +491,7 @@ int grib_recompose_print(grib_handle* h, grib_accessor* observer, const char* un i += pp - uname - i - 1; break; case ']': + // ECC-1878: The '=' format specifier if (loc[mode - 1] == '=') { loc[mode-1] = 0; equal = 1; } else { loc[mode] = 0; } mode = -1; diff --git a/tests/grib_filter.sh b/tests/grib_filter.sh index 5ca6cce8f..e85eb2c6c 100755 --- a/tests/grib_filter.sh +++ b/tests/grib_filter.sh @@ -460,6 +460,24 @@ EOF ${tools_dir}/grib_filter $tempFilt $input +# ECC-1878: The '=' specifier for the print statement +# ---------------------------------------------------- +input=$data_dir/sample.grib2 +cat > $tempFilt < $tempOut +cat > $tempRef < Date: Fri, 19 Jul 2024 13:08:57 +0100 Subject: [PATCH 067/277] Expression: Print based on type of expression --- src/grib_expression_class_accessor.cc | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/grib_expression_class_accessor.cc b/src/grib_expression_class_accessor.cc index efa42714a..ed3fcd9fe 100644 --- a/src/grib_expression_class_accessor.cc +++ b/src/grib_expression_class_accessor.cc @@ -128,14 +128,24 @@ static string evaluate_string(grib_expression* g, grib_handle* h, char* buf, siz return buf; } -static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) +static void print(grib_context* c, grib_expression* g, grib_handle* hand, FILE* out) { const grib_expression_accessor* e = (grib_expression_accessor*)g; + int err = 0; fprintf(out, "access('%s", e->name); - if (f) { - long s = 0; - grib_get_long(f, e->name, &s); - fprintf(out, "=%ld", s); + if (hand) { + const int ntype = native_type(g, hand); + if (ntype == GRIB_TYPE_STRING) { + char buf[256] = {0,}; + size_t len = sizeof(buf); + err = grib_get_string(hand, e->name, buf, &len); + if (!err) fprintf(out, "=%s", buf); + } + else if (ntype == GRIB_TYPE_LONG) { + long lVal = 0; + err = grib_get_long(hand, e->name, &lVal); + if (!err) fprintf(out, "=%ld", lVal); + } } fprintf(out, "')"); } From 03be2c92a2ca6f8acaf6eddc9c71eea633a4ffd3 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 19 Jul 2024 13:17:03 +0100 Subject: [PATCH 068/277] Switch: Cosmetics --- src/action_class_switch.cc | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/action_class_switch.cc b/src/action_class_switch.cc index b116aa846..fa58071ce 100644 --- a/src/action_class_switch.cc +++ b/src/action_class_switch.cc @@ -125,8 +125,8 @@ static int execute(grib_action* act, grib_handle* h) grib_action* next = a->Default; grib_arguments* args = a->args; grib_arguments* values; - grib_expression* e; - grib_expression* value; + grib_expression* e; // The expression in the switch statement + grib_expression* value; // The value in each 'case' int ret = 0; long lres = 0; double dres = 0; @@ -172,8 +172,10 @@ static int execute(grib_action* act, grib_handle* h) len = sizeof(buf); size = sizeof(tmp); ok = ((cres = grib_expression_evaluate_string(h, e, buf, &len, &err)) != NULL) && - (err == 0) && ((cval = grib_expression_evaluate_string(h, value, tmp, &size, &err)) != NULL) && - (err == 0) && ((strcmp(buf, cval) == 0) || (strcmp(cval, "*") == 0)); + (err == 0) && + ((cval = grib_expression_evaluate_string(h, value, tmp, &size, &err)) != NULL) && + (err == 0) && + ((strcmp(buf, cval) == 0) || (strcmp(cval, "*") == 0)); break; default: From 52f4e092af9c163729a9ea903e7c07e1fe89dc45 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 19 Jul 2024 13:04:52 +0000 Subject: [PATCH 069/277] ECC-1876: GRIB: Resolve duplicate shortName of vo and avg_vo --- definitions/grib2/cfVarName.def | 8 ++++---- definitions/grib2/shortName.def | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index b536a270d..8b226882f 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -8498,7 +8498,7 @@ typeOfSecondFixedSurface = 168 ; } #Y-component of sea water velocity -'vo' = { +'voy' = { discipline = 10 ; parameterCategory = 4 ; parameterNumber = 26 ; @@ -8506,7 +8506,7 @@ typeOfSecondFixedSurface = 168 ; } #X-component of sea water velocity -'uo' = { +'uox' = { discipline = 10 ; parameterCategory = 4 ; parameterNumber = 25 ; @@ -9629,7 +9629,7 @@ typeOfStatisticalProcessing = 0 ; } #Time-mean Y-component of sea water velocity -'avg_vo' = { +'avg_voy' = { discipline = 10 ; parameterCategory = 4 ; parameterNumber = 26 ; @@ -9638,7 +9638,7 @@ typeOfStatisticalProcessing = 0 ; } #Time-mean X-component of sea water velocity -'avg_uo' = { +'avg_uox' = { discipline = 10 ; parameterCategory = 4 ; parameterNumber = 25 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 80baac219..f65e57daf 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -8498,7 +8498,7 @@ typeOfSecondFixedSurface = 168 ; } #Y-component of sea water velocity -'vo' = { +'voy' = { discipline = 10 ; parameterCategory = 4 ; parameterNumber = 26 ; @@ -8506,7 +8506,7 @@ typeOfSecondFixedSurface = 168 ; } #X-component of sea water velocity -'uo' = { +'uox' = { discipline = 10 ; parameterCategory = 4 ; parameterNumber = 25 ; @@ -9629,7 +9629,7 @@ typeOfStatisticalProcessing = 0 ; } #Time-mean Y-component of sea water velocity -'avg_vo' = { +'avg_voy' = { discipline = 10 ; parameterCategory = 4 ; parameterNumber = 26 ; @@ -9638,7 +9638,7 @@ typeOfStatisticalProcessing = 0 ; } #Time-mean X-component of sea water velocity -'avg_uo' = { +'avg_uox' = { discipline = 10 ; parameterCategory = 4 ; parameterNumber = 25 ; From be9f46ab5e0d7d4ae8d923791c31893d4a153a63 Mon Sep 17 00:00:00 2001 From: Iain Russell <40060766+iainrussell@users.noreply.github.com> Date: Fri, 19 Jul 2024 10:24:10 +0100 Subject: [PATCH 070/277] Remove nvidia compiler temporarily from private-downstream-ci --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 17873147b..d2eb90bb2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -73,7 +73,7 @@ jobs: owner: ecmwf-actions repository: private-downstream-ci event_type: downstream-ci-hpc - payload: '{"eccodes": "ecmwf/eccodes@${{ github.event.pull_request.head.sha || github.sha }}"}' + payload: '{"eccodes": "ecmwf/eccodes@${{ github.event.pull_request.head.sha || github.sha }}","skip_matrix_jobs": "nvidia-22.11"}' notify: runs-on: ubuntu-latest From 4de759913711586322569e8a6dfdb2ee1c51cd77 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 19 Jul 2024 14:50:29 +0000 Subject: [PATCH 071/277] ECC-1864: GRIB2: Update WMO encoding in soil temperature parameters and add time-mean variant --- definitions/grib2/cfVarName.def | 44 ++++++++++++++----- definitions/grib2/cfVarName.legacy.def | 6 +++ .../grib2/localConcepts/s2s/cfVarName.def | 26 +++++++++++ definitions/grib2/localConcepts/s2s/name.def | 26 +++++++++++ .../grib2/localConcepts/s2s/paramId.def | 26 +++++++++++ .../grib2/localConcepts/s2s/shortName.def | 26 +++++++++++ definitions/grib2/localConcepts/s2s/units.def | 26 +++++++++++ definitions/grib2/name.def | 44 ++++++++++++++----- definitions/grib2/name.legacy.def | 6 +++ definitions/grib2/paramId.def | 44 ++++++++++++++----- definitions/grib2/paramId.legacy.def | 6 +++ definitions/grib2/shortName.def | 44 ++++++++++++++----- definitions/grib2/shortName.legacy.def | 6 +++ definitions/grib2/units.def | 44 ++++++++++++++----- definitions/grib2/units.legacy.def | 6 +++ tests/grib_level.sh | 2 +- 16 files changed, 321 insertions(+), 61 deletions(-) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index 8b226882f..f2a45ec97 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -3114,8 +3114,8 @@ #Soil temperature top 20 cm 'st20' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; @@ -3126,14 +3126,14 @@ #Soil temperature top 100 cm 'st100' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 10 ; - scaleFactorOfSecondFixedSurface = 1 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; } #Atmosphere emission mass flux of Methane from Wetlands 'e_WLCH4' = { @@ -4984,6 +4984,32 @@ scaleFactorOfSecondFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean soil temperature top 20 cm +'avg_st20' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean soil temperature top 100 cm +'avg_st100' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean most-unstable CAPE 'avg_mucape' = { discipline = 0 ; @@ -11276,12 +11302,6 @@ scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Soil temperature -'st' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; - } #Snow depth water equivalent 'sd' = { discipline = 0 ; diff --git a/definitions/grib2/cfVarName.legacy.def b/definitions/grib2/cfVarName.legacy.def index 40909c342..ffd6469d2 100644 --- a/definitions/grib2/cfVarName.legacy.def +++ b/definitions/grib2/cfVarName.legacy.def @@ -180,3 +180,9 @@ parameterCategory = 0 ; parameterNumber = 24 ; } +#Soil temperature +'st' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; +} diff --git a/definitions/grib2/localConcepts/s2s/cfVarName.def b/definitions/grib2/localConcepts/s2s/cfVarName.def index ebbc8da75..383ce14f1 100644 --- a/definitions/grib2/localConcepts/s2s/cfVarName.def +++ b/definitions/grib2/localConcepts/s2s/cfVarName.def @@ -199,6 +199,32 @@ scaleFactorOfSecondFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } +#Soil temperature top 20 cm +'st20' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Soil temperature top 100 cm +'st100' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 10 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } #Eastward surface sea water velocity 'ocu' = { discipline = 10 ; diff --git a/definitions/grib2/localConcepts/s2s/name.def b/definitions/grib2/localConcepts/s2s/name.def index abed50244..c94074156 100644 --- a/definitions/grib2/localConcepts/s2s/name.def +++ b/definitions/grib2/localConcepts/s2s/name.def @@ -199,6 +199,32 @@ scaleFactorOfSecondFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } +#Soil temperature top 20 cm +'Soil temperature top 20 cm' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Soil temperature top 100 cm +'Soil temperature top 100 cm' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 10 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } #Eastward surface sea water velocity 'Eastward surface sea water velocity' = { discipline = 10 ; diff --git a/definitions/grib2/localConcepts/s2s/paramId.def b/definitions/grib2/localConcepts/s2s/paramId.def index b66fbed7d..25e615250 100644 --- a/definitions/grib2/localConcepts/s2s/paramId.def +++ b/definitions/grib2/localConcepts/s2s/paramId.def @@ -199,6 +199,32 @@ scaleFactorOfSecondFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } +#Soil temperature top 20 cm +'228095' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Soil temperature top 100 cm +'228096' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 10 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } #Eastward surface sea water velocity '151131' = { discipline = 10 ; diff --git a/definitions/grib2/localConcepts/s2s/shortName.def b/definitions/grib2/localConcepts/s2s/shortName.def index 20fda1a28..a4b7406c1 100644 --- a/definitions/grib2/localConcepts/s2s/shortName.def +++ b/definitions/grib2/localConcepts/s2s/shortName.def @@ -199,6 +199,32 @@ scaleFactorOfSecondFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } +#Soil temperature top 20 cm +'st20' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Soil temperature top 100 cm +'st100' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 10 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } #Eastward surface sea water velocity 'ocu' = { discipline = 10 ; diff --git a/definitions/grib2/localConcepts/s2s/units.def b/definitions/grib2/localConcepts/s2s/units.def index ce7216cee..96c31aab0 100644 --- a/definitions/grib2/localConcepts/s2s/units.def +++ b/definitions/grib2/localConcepts/s2s/units.def @@ -199,6 +199,32 @@ scaleFactorOfSecondFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } +#Soil temperature top 20 cm +'K' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Soil temperature top 100 cm +'K' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 10 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } #Eastward surface sea water velocity 'm s**-1' = { discipline = 10 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 1891762ec..e7ff266d0 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -3114,8 +3114,8 @@ #Soil temperature top 20 cm 'Soil temperature top 20 cm' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; @@ -3126,14 +3126,14 @@ #Soil temperature top 100 cm 'Soil temperature top 100 cm' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 10 ; - scaleFactorOfSecondFixedSurface = 1 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; } #Atmosphere emission mass flux of Methane from Wetlands 'Atmosphere emission mass flux of Methane from Wetlands' = { @@ -4984,6 +4984,32 @@ scaleFactorOfSecondFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean soil temperature top 20 cm +'Time-mean soil temperature top 20 cm' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean soil temperature top 100 cm +'Time-mean soil temperature top 100 cm' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean most-unstable CAPE 'Time-mean most-unstable CAPE' = { discipline = 0 ; @@ -11276,12 +11302,6 @@ scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Soil temperature -'Soil temperature' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; - } #Snow depth water equivalent 'Snow depth water equivalent' = { discipline = 0 ; diff --git a/definitions/grib2/name.legacy.def b/definitions/grib2/name.legacy.def index c88070508..21a90fb5d 100644 --- a/definitions/grib2/name.legacy.def +++ b/definitions/grib2/name.legacy.def @@ -180,3 +180,9 @@ parameterCategory = 0 ; parameterNumber = 24 ; } +#Soil temperature +'Soil temperature' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; +} diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index be91d6934..9fa1fe993 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -3114,8 +3114,8 @@ #Soil temperature top 20 cm '228095' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; @@ -3126,14 +3126,14 @@ #Soil temperature top 100 cm '228096' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 10 ; - scaleFactorOfSecondFixedSurface = 1 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; } #Atmosphere emission mass flux of Methane from Wetlands '228104' = { @@ -4984,6 +4984,32 @@ scaleFactorOfSecondFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean soil temperature top 20 cm +'235115' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean soil temperature top 100 cm +'235116' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean most-unstable CAPE '235117' = { discipline = 0 ; @@ -11276,12 +11302,6 @@ scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Soil temperature -'228139' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; - } #Snow depth water equivalent '228141' = { discipline = 0 ; diff --git a/definitions/grib2/paramId.legacy.def b/definitions/grib2/paramId.legacy.def index 602e1e632..2b26c1398 100644 --- a/definitions/grib2/paramId.legacy.def +++ b/definitions/grib2/paramId.legacy.def @@ -180,3 +180,9 @@ parameterCategory = 0 ; parameterNumber = 24 ; } +#Soil temperature +'228139' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; +} diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index f65e57daf..51823f5a7 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -3114,8 +3114,8 @@ #Soil temperature top 20 cm 'st20' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; @@ -3126,14 +3126,14 @@ #Soil temperature top 100 cm 'st100' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 10 ; - scaleFactorOfSecondFixedSurface = 1 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; } #Atmosphere emission mass flux of Methane from Wetlands 'e_WLCH4' = { @@ -4984,6 +4984,32 @@ scaleFactorOfSecondFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean soil temperature top 20 cm +'avg_st20' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean soil temperature top 100 cm +'avg_st100' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean most-unstable CAPE 'avg_mucape' = { discipline = 0 ; @@ -11276,12 +11302,6 @@ scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Soil temperature -'st' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; - } #Snow depth water equivalent 'sd' = { discipline = 0 ; diff --git a/definitions/grib2/shortName.legacy.def b/definitions/grib2/shortName.legacy.def index 40909c342..ffd6469d2 100644 --- a/definitions/grib2/shortName.legacy.def +++ b/definitions/grib2/shortName.legacy.def @@ -180,3 +180,9 @@ parameterCategory = 0 ; parameterNumber = 24 ; } +#Soil temperature +'st' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; +} diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index 46a9ab110..6ed54fc31 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -3114,8 +3114,8 @@ #Soil temperature top 20 cm 'K' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; @@ -3126,14 +3126,14 @@ #Soil temperature top 100 cm 'K' = { discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; typeOfFirstFixedSurface = 106 ; typeOfSecondFixedSurface = 106 ; scaledValueOfFirstFixedSurface = 0 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 10 ; - scaleFactorOfSecondFixedSurface = 1 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; } #Atmosphere emission mass flux of Methane from Wetlands 'kg m**-2 s**-1' = { @@ -4984,6 +4984,32 @@ scaleFactorOfSecondFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean soil temperature top 20 cm +'K' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 2 ; + scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean soil temperature top 100 cm +'K' = { + discipline = 2 ; + parameterCategory = 3 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 106 ; + typeOfSecondFixedSurface = 106 ; + scaledValueOfFirstFixedSurface = 0 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = 1 ; + scaleFactorOfSecondFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean most-unstable CAPE 'J kg**-1' = { discipline = 0 ; @@ -11276,12 +11302,6 @@ scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Soil temperature -'K' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; - } #Snow depth water equivalent 'kg m**-2' = { discipline = 0 ; diff --git a/definitions/grib2/units.legacy.def b/definitions/grib2/units.legacy.def index e3e8e590e..3a102bd06 100644 --- a/definitions/grib2/units.legacy.def +++ b/definitions/grib2/units.legacy.def @@ -180,3 +180,9 @@ parameterCategory = 0 ; parameterNumber = 24 ; } +#Soil temperature +'K' = { + discipline = 2 ; + parameterCategory = 0 ; + parameterNumber = 2 ; +} diff --git a/tests/grib_level.sh b/tests/grib_level.sh index 718362c01..5fcd10136 100755 --- a/tests/grib_level.sh +++ b/tests/grib_level.sh @@ -117,7 +117,7 @@ grib_check_key_equals $temp2 level 5 # Related to ECC-530: make sure GRIB2 parameters with typeOfSecondFixedSurface # have correct parameter definitions (grib_set does not cause scale factor/value loss) -params="228086 228087 228095 228096 228170 228171 228139" +params="228086 228087 228095 228096 228170 228171" for pid in $params; do ${tools_dir}/grib_set -s paramId=$pid $sample_g2 $temp grib_check_key_equals $temp paramId $pid From 3e3b2ec4ef25becefa890b1c71891c5b255ce84b Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 19 Jul 2024 16:45:03 +0100 Subject: [PATCH 072/277] Definitions: Template 4.50 for aerosols --- definitions/template.4.50.def | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 definitions/template.4.50.def diff --git a/definitions/template.4.50.def b/definitions/template.4.50.def new file mode 100644 index 000000000..1630c8b0a --- /dev/null +++ b/definitions/template.4.50.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.50, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for aerosol + +include "grib2/template.4.parameter.def" +include "grib2/template.4.aerosol.def" +include "grib2/template.4.aerosol_size.def" +include "grib2/template.4.generating_process.def" +include "grib2/template.4.forecast_time.def" +include "grib2/template.4.point_in_time.def" +include "grib2/template.4.horizontal.def" + From c5df42c7db2ed753e3b282a62989603c5ad85078 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 20 Jul 2024 17:38:49 +0100 Subject: [PATCH 073/277] Definitions: Add template 4.50 --- definitions/{ => grib2}/template.4.50.def | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename definitions/{ => grib2}/template.4.50.def (100%) diff --git a/definitions/template.4.50.def b/definitions/grib2/template.4.50.def similarity index 100% rename from definitions/template.4.50.def rename to definitions/grib2/template.4.50.def From 809fb997282dd97058862261b1a36647f919f3b2 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 22 Jul 2024 12:03:32 +0000 Subject: [PATCH 074/277] ECC-1879: Cannot build with ENABLE_ECCODES_OMP_THREADS=ON: multiple definition of thread_init() --- src/accessor/grib_accessor_class_bufr_elements_table.cc | 3 +-- src/accessor/grib_accessor_class_codetable.cc | 4 ++-- src/accessor/grib_accessor_class_smart_table.cc | 2 +- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/accessor/grib_accessor_class_bufr_elements_table.cc b/src/accessor/grib_accessor_class_bufr_elements_table.cc index ddd055544..afafb87a1 100644 --- a/src/accessor/grib_accessor_class_bufr_elements_table.cc +++ b/src/accessor/grib_accessor_class_bufr_elements_table.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -28,7 +27,7 @@ static void thread_init() static int once = 0; static omp_nest_lock_t mutex1; -void thread_init() +static void thread_init() { GRIB_OMP_CRITICAL(lock_grib_accessor_class_bufr_elements_table_c) { diff --git a/src/accessor/grib_accessor_class_codetable.cc b/src/accessor/grib_accessor_class_codetable.cc index f21ef0f86..7d4804dae 100644 --- a/src/accessor/grib_accessor_class_codetable.cc +++ b/src/accessor/grib_accessor_class_codetable.cc @@ -20,7 +20,7 @@ grib_accessor_class* grib_accessor_class_codetable = &_grib_accessor_class_codet static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER; -void thread_init() +static void thread_init() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -32,7 +32,7 @@ void thread_init() static int once = 0; static omp_nest_lock_t mutex1; -void thread_init() +static void thread_init() { GRIB_OMP_CRITICAL(lock_grib_accessor_class_codetable_c) { diff --git a/src/accessor/grib_accessor_class_smart_table.cc b/src/accessor/grib_accessor_class_smart_table.cc index 1c49f2ab0..75ceb58db 100644 --- a/src/accessor/grib_accessor_class_smart_table.cc +++ b/src/accessor/grib_accessor_class_smart_table.cc @@ -30,7 +30,7 @@ static void thread_init() static int once = 0; static omp_nest_lock_t mutex; -void thread_init() +static void thread_init() { GRIB_OMP_CRITICAL(lock_grib_accessor_class_smart_table_c) { From 5efdd287772f6c2ab9c4c965cacbb1d66a0625e0 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 22 Jul 2024 14:22:39 +0000 Subject: [PATCH 075/277] Threads: Rename init to init_mutex for clarity --- ...grib_accessor_class_bufr_elements_table.cc | 6 ++-- src/accessor/grib_accessor_class_codetable.cc | 6 ++-- .../grib_accessor_class_smart_table.cc | 6 ++-- src/action_class_concept.cc | 6 ++-- src/action_class_hash_array.cc | 6 ++-- src/grib_accessor_class.cc | 6 ++-- src/grib_bits_any_endian.cc | 6 ++-- src/grib_context.cc | 32 +++++++++---------- src/grib_filepool.cc | 16 +++++----- src/grib_hash_keys.cc | 10 +++--- src/grib_io.cc | 6 ++-- src/grib_itrie.cc | 10 +++--- src/grib_itrie_keys.cc | 10 +++--- src/grib_memory.cc | 12 +++---- src/grib_parse_utils.cc | 16 +++++----- src/grib_trie.cc | 12 +++---- src/grib_trie_with_rank.cc | 12 +++---- 17 files changed, 89 insertions(+), 89 deletions(-) diff --git a/src/accessor/grib_accessor_class_bufr_elements_table.cc b/src/accessor/grib_accessor_class_bufr_elements_table.cc index afafb87a1..b9a0d0c58 100644 --- a/src/accessor/grib_accessor_class_bufr_elements_table.cc +++ b/src/accessor/grib_accessor_class_bufr_elements_table.cc @@ -15,7 +15,7 @@ static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER; -static void thread_init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -27,7 +27,7 @@ static void thread_init() static int once = 0; static omp_nest_lock_t mutex1; -static void thread_init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_accessor_class_bufr_elements_table_c) { @@ -89,7 +89,7 @@ static grib_trie* load_bufr_elements_table(grib_accessor* a, int* err) if (self->localDir != NULL) grib_get_string(h, self->localDir, localDir, &len); - GRIB_MUTEX_INIT_ONCE(&once, &thread_init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex1); if (*masterDir != 0) { diff --git a/src/accessor/grib_accessor_class_codetable.cc b/src/accessor/grib_accessor_class_codetable.cc index 7d4804dae..9a9df9040 100644 --- a/src/accessor/grib_accessor_class_codetable.cc +++ b/src/accessor/grib_accessor_class_codetable.cc @@ -20,7 +20,7 @@ grib_accessor_class* grib_accessor_class_codetable = &_grib_accessor_class_codet static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER; -static void thread_init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -32,7 +32,7 @@ static void thread_init() static int once = 0; static omp_nest_lock_t mutex1; -static void thread_init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_accessor_class_codetable_c) { @@ -205,7 +205,7 @@ static grib_codetable* load_table(grib_accessor* a) localFilename = grib_context_full_defs_path(c, localRecomposed); } - GRIB_MUTEX_INIT_ONCE(&once, &thread_init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex1); /* GRIB-930 */ /*printf("DBG %s: Look in cache: f=%s lf=%s (recomposed=%s)\n", self->att.name, filename, localFilename,recomposed);*/ diff --git a/src/accessor/grib_accessor_class_smart_table.cc b/src/accessor/grib_accessor_class_smart_table.cc index 75ceb58db..8be64d9d5 100644 --- a/src/accessor/grib_accessor_class_smart_table.cc +++ b/src/accessor/grib_accessor_class_smart_table.cc @@ -18,7 +18,7 @@ grib_accessor_class* grib_accessor_class_smart_table = &_grib_accessor_class_sma static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; -static void thread_init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -30,7 +30,7 @@ static void thread_init() static int once = 0; static omp_nest_lock_t mutex; -static void thread_init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_accessor_class_smart_table_c) { @@ -183,7 +183,7 @@ static int grib_load_smart_table(grib_context* c, const char* filename, t->recomposed_name[0] = grib_context_strdup_persistent(c, recomposed_name); t->next = c->smart_table; t->numberOfEntries = size; - GRIB_MUTEX_INIT_ONCE(&once, &thread_init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); c->smart_table = t; GRIB_MUTEX_UNLOCK(&mutex); diff --git a/src/action_class_concept.cc b/src/action_class_concept.cc index 3f42fb9e5..b88600887 100644 --- a/src/action_class_concept.cc +++ b/src/action_class_concept.cc @@ -95,7 +95,7 @@ static void init_class(grib_action_class* c) static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -107,7 +107,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_action_class_concept_c) { @@ -306,7 +306,7 @@ static grib_concept_value* get_concept_impl(grib_handle* h, grib_action_concept* static grib_concept_value* get_concept(grib_handle* h, grib_action_concept* self) { grib_concept_value* result = NULL; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); result = get_concept_impl(h, self); diff --git a/src/action_class_hash_array.cc b/src/action_class_hash_array.cc index 430fdd92a..fd1e52976 100644 --- a/src/action_class_hash_array.cc +++ b/src/action_class_hash_array.cc @@ -98,7 +98,7 @@ static void init_class(grib_action_class* c) static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -110,7 +110,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_action_class_hash_array_c) { @@ -325,7 +325,7 @@ static grib_hash_array_value* get_hash_array_impl(grib_handle* h, grib_action* a grib_hash_array_value* get_hash_array(grib_handle* h, grib_action* a) { grib_hash_array_value* result = NULL; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); result = get_hash_array_impl(h, a); diff --git a/src/grib_accessor_class.cc b/src/grib_accessor_class.cc index 4120fb5bd..de7f8dc47 100644 --- a/src/grib_accessor_class.cc +++ b/src/grib_accessor_class.cc @@ -22,7 +22,7 @@ static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -34,7 +34,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex1; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_accessor_class_c) { @@ -77,7 +77,7 @@ grib_section* grib_create_root_section(const grib_context* context, grib_handle* char* fpath = 0; grib_section* s = (grib_section*)grib_context_malloc_clear(context, sizeof(grib_section)); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex1); if (h->context->grib_reader == NULL) { if ((fpath = grib_context_full_defs_path(h->context, "boot.def")) == NULL) { diff --git a/src/grib_bits_any_endian.cc b/src/grib_bits_any_endian.cc index 33e643a19..50a7cd9af 100644 --- a/src/grib_bits_any_endian.cc +++ b/src/grib_bits_any_endian.cc @@ -22,7 +22,7 @@ static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -34,7 +34,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_bits_any_endian_c) { @@ -77,7 +77,7 @@ static void init_bits_all_one() static void init_bits_all_one_if_needed() { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); if (!bits_all_one.inited) init_bits_all_one(); diff --git a/src/grib_context.cc b/src/grib_context.cc index a22fcc654..442faa1e8 100644 --- a/src/grib_context.cc +++ b/src/grib_context.cc @@ -41,7 +41,7 @@ static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex_mem = PTHREAD_MUTEX_INITIALIZER; static pthread_mutex_t mutex_c = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -55,7 +55,7 @@ static int once = 0; static omp_nest_lock_t mutex_mem; static omp_nest_lock_t mutex_c; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_context_c) { @@ -374,7 +374,7 @@ static grib_context default_grib_context = { grib_context* grib_context_get_default() { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); if (!default_grib_context.inited) { @@ -569,7 +569,7 @@ grib_context* grib_context_get_default() // if (!parent) parent=grib_context_get_default(); -// GRIB_MUTEX_INIT_ONCE(&once,&init); +// GRIB_MUTEX_INIT_ONCE(&once,&init_mutex); // GRIB_MUTEX_LOCK(&(parent->mutex)); // c = (grib_context*)grib_context_malloc_clear_persistent(&default_grib_context,sizeof(grib_context)); @@ -646,7 +646,7 @@ static int init_definition_files_dir(grib_context* c) strncpy(path, c->grib_definition_files_path, ECC_PATH_MAXLEN-1); path[ ECC_PATH_MAXLEN - 1 ] = '\0'; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); p = path; @@ -692,7 +692,7 @@ char* grib_context_full_defs_path(grib_context* c, const char* basename) if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); if (*basename == '/' || *basename == '.') { return (char*)basename; @@ -880,7 +880,7 @@ void grib_context_set_definitions_path(grib_context* c, const char* path) { if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); c->grib_definition_files_path = strdup(path); @@ -892,7 +892,7 @@ void grib_context_set_samples_path(grib_context* c, const char* path) { if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); c->grib_samples_path = strdup(path); @@ -1095,7 +1095,7 @@ int grib_context_get_handle_file_count(grib_context* c) int r = 0; if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); r = c->handle_file_count; GRIB_MUTEX_UNLOCK(&mutex_c); @@ -1106,7 +1106,7 @@ int grib_context_get_handle_total_count(grib_context* c) int r = 0; if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); r = c->handle_total_count; GRIB_MUTEX_UNLOCK(&mutex_c); @@ -1117,7 +1117,7 @@ void grib_context_set_handle_file_count(grib_context* c, int new_count) { if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); c->handle_file_count = new_count; GRIB_MUTEX_UNLOCK(&mutex_c); @@ -1126,7 +1126,7 @@ void grib_context_set_handle_total_count(grib_context* c, int new_count) { if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); c->handle_total_count = new_count; GRIB_MUTEX_UNLOCK(&mutex_c); @@ -1136,7 +1136,7 @@ void grib_context_increment_handle_file_count(grib_context* c) { if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); c->handle_file_count++; GRIB_MUTEX_UNLOCK(&mutex_c); @@ -1145,7 +1145,7 @@ void grib_context_increment_handle_total_count(grib_context* c) { if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); c->handle_total_count++; GRIB_MUTEX_UNLOCK(&mutex_c); @@ -1160,7 +1160,7 @@ bufr_descriptors_array* grib_context_expanded_descriptors_list_get(grib_context* if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); if (!c->expanded_descriptors) { @@ -1200,7 +1200,7 @@ void grib_context_expanded_descriptors_list_push(grib_context* c, if (!c) c = grib_context_get_default(); - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_c); newdescriptorsList = (bufr_descriptors_map_list*)grib_context_malloc_clear(c, sizeof(bufr_descriptors_map_list)); diff --git a/src/grib_filepool.cc b/src/grib_filepool.cc index 28606e8c9..21f0a5b22 100644 --- a/src/grib_filepool.cc +++ b/src/grib_filepool.cc @@ -15,7 +15,7 @@ static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -27,7 +27,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex1; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_filepool_c) { @@ -175,7 +175,7 @@ grib_file* grib_file_open(const char* filename, const char* mode, int* err) grib_file *file = 0, *prev = 0; int same_mode = 0; int is_new = 0; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); if (!file_pool.context) file_pool.context = grib_context_get_default(); @@ -257,7 +257,7 @@ grib_file* grib_file_open(const char* filename, const char* mode, int* err) void grib_file_pool_delete_file(grib_file* file) { grib_file* prev = NULL; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex1); if (file == file_pool.first) { @@ -299,7 +299,7 @@ void grib_file_close(const char* filename, int force, int* err) if (do_close) { /*printf("+++++++++++++ closing file %s (n=%d)\n",filename, file_pool.number_of_opened_files);*/ - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex1); file = grib_get_file(filename, err); if (file->handle) { @@ -323,7 +323,7 @@ void grib_file_close_all(int* err) if (!file_pool.first) return; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex1); file = file_pool.first; @@ -390,7 +390,7 @@ static grib_file* grib_file_new(grib_context* c, const char* name, int* err) *err = GRIB_OUT_OF_MEMORY; return NULL; } - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); file->name = strdup(name); file->id = next_id; @@ -412,7 +412,7 @@ void grib_file_delete(grib_file* file) { if (!file) return; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex1); /* GRIB-803: cannot call fclose yet! Causes crash */ /* TODO: Set handle to NULL in filepool too */ diff --git a/src/grib_hash_keys.cc b/src/grib_hash_keys.cc index ba26dbe03..b6e389dc2 100644 --- a/src/grib_hash_keys.cc +++ b/src/grib_hash_keys.cc @@ -9743,7 +9743,7 @@ static const int mapping[] = { static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -9755,7 +9755,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_itrie_keys_c) { @@ -9787,7 +9787,7 @@ grib_itrie* grib_hash_keys_new(grib_context* c, int* count) void grib_hash_keys_delete(grib_itrie* t) { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); if (t) { @@ -9808,7 +9808,7 @@ static int grib_hash_keys_insert(grib_itrie* t, const char* key) grib_itrie* last = t; int* count; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); Assert(t); @@ -9862,7 +9862,7 @@ int grib_hash_keys_get_id(grib_itrie* t, const char* key) const char* k = key; grib_itrie* last = t; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); while (*k && t) diff --git a/src/grib_io.cc b/src/grib_io.cc index 64477d39e..43e559b3f 100644 --- a/src/grib_io.cc +++ b/src/grib_io.cc @@ -14,7 +14,7 @@ static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER; static pthread_mutex_t mutex2 = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -27,7 +27,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex1; static omp_nest_lock_t mutex2; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_io_c) { @@ -931,7 +931,7 @@ static int read_any(reader* r, int no_alloc, int grib_ok, int bufr_ok, int hdf5_ * so each thread gets its own message. Otherwise if threads are passed * different files, then the lock is not needed */ - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex1); #endif diff --git a/src/grib_itrie.cc b/src/grib_itrie.cc index 0421e4b84..6689e1bf8 100644 --- a/src/grib_itrie.cc +++ b/src/grib_itrie.cc @@ -276,7 +276,7 @@ static const int mapping[] = { static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -288,7 +288,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_itrie_c) { @@ -319,7 +319,7 @@ grib_itrie* grib_itrie_new(grib_context* c, int* count) void grib_itrie_delete(grib_itrie* t) { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); if (t) { @@ -343,7 +343,7 @@ int grib_itrie_get_id(grib_itrie* t, const char* key) return -1; } - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); while (*k && t) @@ -371,7 +371,7 @@ int grib_itrie_insert(grib_itrie* t, const char* key) return -1; } - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); count = t->count; diff --git a/src/grib_itrie_keys.cc b/src/grib_itrie_keys.cc index a0a154427..2ee7291c6 100644 --- a/src/grib_itrie_keys.cc +++ b/src/grib_itrie_keys.cc @@ -273,7 +273,7 @@ static const int mapping[] = { static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -285,7 +285,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_itrie_keys_c) { @@ -317,7 +317,7 @@ grib_itrie* grib_hash_keys_new(grib_context* c, int* count) void grib_hash_keys_delete(grib_itrie* t) { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); if (t) { @@ -338,7 +338,7 @@ static int grib_hash_keys_insert(grib_itrie* t, const char* key) grib_itrie* last = t; int* count; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); Assert(t); @@ -392,7 +392,7 @@ int grib_hash_keys_get_id(grib_itrie* t, const char* key) const char* k = key; grib_itrie* last = t; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); while (*k && t) diff --git a/src/grib_memory.cc b/src/grib_memory.cc index 5eebf7965..b44e12c19 100644 --- a/src/grib_memory.cc +++ b/src/grib_memory.cc @@ -18,7 +18,7 @@ static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; @@ -31,7 +31,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_memory_c) { @@ -108,7 +108,7 @@ static void* fast_new(size_t s, mempool* pool) char* p; memblk* m; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); m = (memblk*)pool->priv; @@ -167,7 +167,7 @@ static void fast_delete(void* p, mempool* pool) memblk* m; memblk* n = NULL; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); m = (memblk*)pool->priv; @@ -271,7 +271,7 @@ void* grib_buffer_malloc(const grib_context* c, size_t s) { memblk* r; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); s = ((s + WORD - 1) / WORD) * WORD; @@ -307,7 +307,7 @@ void grib_buffer_free(const grib_context* c, void* p) memblk* r; memblk* s; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); r = (memblk*)(((char*)p) - HEADER_SIZE); diff --git a/src/grib_parse_utils.cc b/src/grib_parse_utils.cc index 8eb9a2938..98a01cd7b 100644 --- a/src/grib_parse_utils.cc +++ b/src/grib_parse_utils.cc @@ -35,7 +35,7 @@ static pthread_mutex_t mutex_hash_array = PTHREAD_MUTEX_INITIALIZER; static pthread_mutex_t mutex_stream = PTHREAD_MUTEX_INITIALIZER; static pthread_mutex_t mutex_parse = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -57,7 +57,7 @@ static omp_nest_lock_t mutex_hash_array; static omp_nest_lock_t mutex_stream; static omp_nest_lock_t mutex_parse; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_parse_utils_c) { @@ -717,7 +717,7 @@ extern int grib_yyparse(void); static int parse(grib_context* gc, const char* filename) { int err = 0; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_parse); #ifdef YYDEBUG @@ -752,7 +752,7 @@ static int parse(grib_context* gc, const char* filename) static grib_action* grib_parse_stream(grib_context* gc, const char* filename) { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_stream); grib_parser_all_actions = 0; @@ -776,7 +776,7 @@ static grib_action* grib_parse_stream(grib_context* gc, const char* filename) grib_concept_value* grib_parse_concept_file(grib_context* gc, const char* filename) { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_file); gc = gc ? gc : grib_context_get_default(); @@ -794,7 +794,7 @@ grib_concept_value* grib_parse_concept_file(grib_context* gc, const char* filena grib_hash_array_value* grib_parse_hash_array_file(grib_context* gc, const char* filename) { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_file); gc = gc ? gc : grib_context_get_default(); @@ -813,7 +813,7 @@ grib_hash_array_value* grib_parse_hash_array_file(grib_context* gc, const char* // grib_rule* grib_parse_rules_file(grib_context* gc, const char* filename) // { // if (!gc) gc = grib_context_get_default(); -// GRIB_MUTEX_INIT_ONCE(&once, &init); +// GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); // GRIB_MUTEX_LOCK(&mutex_rules); // gc = gc ? gc : grib_context_get_default(); // grib_parser_context = gc; @@ -831,7 +831,7 @@ grib_action* grib_parse_file(grib_context* gc, const char* filename) { grib_action_file* af; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex_file); af = 0; diff --git a/src/grib_trie.cc b/src/grib_trie.cc index 7c122e062..c4e1d29e5 100644 --- a/src/grib_trie.cc +++ b/src/grib_trie.cc @@ -292,7 +292,7 @@ static const size_t NUM_MAPPINGS = sizeof(mapping) / sizeof(mapping[0]); static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -304,7 +304,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_trie_c) { @@ -340,7 +340,7 @@ grib_trie* grib_trie_new(grib_context* c) void grib_trie_delete_container(grib_trie* t) { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); if (t) { int i; @@ -359,7 +359,7 @@ void grib_trie_delete_container(grib_trie* t) void grib_trie_delete(grib_trie* t) { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); if (t) { int i; @@ -399,7 +399,7 @@ void* grib_trie_insert(grib_trie* t, const char* key, void* data) return NULL; } - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); while (*k && t) { @@ -474,7 +474,7 @@ void* grib_trie_insert_no_replace(grib_trie* t, const char* key, void* data) void* grib_trie_get(grib_trie* t, const char* key) { const char* k = key; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); while (*k && t) { diff --git a/src/grib_trie_with_rank.cc b/src/grib_trie_with_rank.cc index 8b74b6ca6..0e3f76971 100644 --- a/src/grib_trie_with_rank.cc +++ b/src/grib_trie_with_rank.cc @@ -292,7 +292,7 @@ static const size_t NUM_MAPPINGS = sizeof(mapping) / sizeof(mapping[0]); static pthread_once_t once = PTHREAD_ONCE_INIT; static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; -static void init() +static void init_mutex() { pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); @@ -304,7 +304,7 @@ static void init() static int once = 0; static omp_nest_lock_t mutex; -static void init() +static void init_mutex() { GRIB_OMP_CRITICAL(lock_grib_trie_with_rank_c) { @@ -376,7 +376,7 @@ static void _grib_trie_with_rank_delete_container(grib_trie_with_rank* t) } void grib_trie_with_rank_delete_container(grib_trie_with_rank* t) { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); _grib_trie_with_rank_delete_container(t); GRIB_MUTEX_UNLOCK(&mutex); @@ -397,7 +397,7 @@ static void grib_trie_with_rank_delete_list(grib_context* c,grib_trie_with_rank_ void grib_trie_with_rank_delete(grib_trie_with_rank* t) { - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); if (t) { int i; @@ -456,7 +456,7 @@ int grib_trie_with_rank_insert(grib_trie_with_rank* t, const char* key, void* da DEBUG_ASSERT(t); if (!t) return -1; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); GRIB_MUTEX_LOCK(&mutex); while (*k && t) { @@ -506,7 +506,7 @@ void* grib_trie_with_rank_get(grib_trie_with_rank* t, const char* key, int rank) { const char* k = key; void* data; - GRIB_MUTEX_INIT_ONCE(&once, &init); + GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); if (rank < 0) return NULL; From c9a8a876d93f40aa6fa8cdb31adbe80867754514 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 22 Jul 2024 16:47:44 +0100 Subject: [PATCH 076/277] Refactoring: Move convert_to_minutes to utils --- src/codes_util.cc | 35 +++++++++++++++++++++++++++++++++++ src/eccodes_prototypes.h | 1 + src/shared_functions.cc | 38 -------------------------------------- src/shared_functions.h | 1 - 4 files changed, 36 insertions(+), 39 deletions(-) diff --git a/src/codes_util.cc b/src/codes_util.cc index 57613109a..80d337849 100644 --- a/src/codes_util.cc +++ b/src/codes_util.cc @@ -244,6 +244,41 @@ int is_time_valid(long number) return 1; } +/* Table of multipliers to convert step units to minutes */ +static const double u2m[] = { + 1, /* index 0: minutes */ + 60, /* index 1: hour */ + 24 * 60, /* index 2: day */ + 24 * 60 * 30, /* index 3: month */ + -1, /* index 4: year */ + -1, /* index 5: decade */ + -1, /* index 6: 30 years */ + -1, /* index 7: century */ + -1, /* index 8: RESERVED */ + -1, /* index 9: RESERVED */ + 3 * 60, /* index 10: 3 hours */ + 6 * 60, /* index 11: 6 hours */ + 12 * 60, /* index 12: 12 hours */ + 1 / 60.0, /* index 13: seconds */ + 15, /* index 14: 15 mins */ + 30 /* index 15: 30 mins */ +}; + +long convert_to_minutes(long step, long stepUnits) +{ + double result = 0; + if (stepUnits == 0) + return step; /* unit=minutes so no change */ + if (stepUnits == 1) + return step * 60; /* unit=hours */ + if (stepUnits == 13) + return step / 60; /* unit=seconds */ + /* Assert( stepUnits < sizeof(u2m)/sizeof(u2m[0]) ); */ + + result = step * u2m[stepUnits]; + return (long)result; +} + static float float_epsilon(void) { float floatEps = 1.0; diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 61b02b61d..576c1724e 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -853,6 +853,7 @@ int codes_check_grib_ieee_packing_value(int value); int codes_flush_sync_close_file(FILE* f); int is_date_valid(long year, long month, long day, long hour, long minute, double second); int is_time_valid(long number); // number is HHMM +long convert_to_minutes(long step, long stepUnits); int compute_scaled_value_and_scale_factor(double input, int64_t scaled_value_max, int64_t scale_factor_max, int64_t* ret_value, int64_t* ret_factor); /* grib_util.cc */ diff --git a/src/shared_functions.cc b/src/shared_functions.cc index fc6f090fb..cc37feb0c 100644 --- a/src/shared_functions.cc +++ b/src/shared_functions.cc @@ -1,27 +1,5 @@ #include "shared_functions.h" - -/* Table of multipliers to convert step units to minutes */ -static const double u2m[] = { - 1, /* index 0: minutes */ - 60, /* index 1: hour */ - 24 * 60, /* index 2: day */ - 24 * 60 * 30, /* index 3: month */ - -1, /* index 4: year */ - -1, /* index 5: decade */ - -1, /* index 6: 30 years */ - -1, /* index 7: century */ - -1, /* index 8: RESERVED */ - -1, /* index 9: RESERVED */ - 3 * 60, /* index 10: 3 hours */ - 6 * 60, /* index 11: 6 hours */ - 12 * 60, /* index 12: 12 hours */ - 1 / 60.0, /* index 13: seconds */ - 15, /* index 14: 15 mins */ - 30 /* index 15: 30 mins */ -}; - - void grib_set_bit_on(unsigned char* p, long* bitp){ unsigned char o = 1; p += (*bitp >> 3); @@ -29,19 +7,3 @@ void grib_set_bit_on(unsigned char* p, long* bitp){ *p |= o; (*bitp) += 1; } - -long convert_to_minutes(long step, long stepUnits) -{ - double result = 0; - if (stepUnits == 0) - return step; /* unit=minutes so no change */ - if (stepUnits == 1) - return step * 60; /* unit=hours */ - if (stepUnits == 13) - return step / 60; /* unit=seconds */ - /* Assert( stepUnits < sizeof(u2m)/sizeof(u2m[0]) ); */ - - result = step * u2m[stepUnits]; - return (long)result; -} - diff --git a/src/shared_functions.h b/src/shared_functions.h index 04ae2f90f..4645a1c8c 100644 --- a/src/shared_functions.h +++ b/src/shared_functions.h @@ -4,6 +4,5 @@ #include "grib_api_internal.h" void grib_set_bit_on(unsigned char*, long*); -long convert_to_minutes(long step, long stepUnits); #endif // eccodes_shared_functions_h From 2aa60b84e2900d034cabd6f75689a78c48ef56c1 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 22 Jul 2024 17:17:23 +0100 Subject: [PATCH 077/277] Refactoring: Remove shared_functions files. Use grib_bits.cc instead --- src/CMakeLists.txt | 1 - src/accessor/grib_accessor_class_g1bitmap.cc | 1 - src/accessor/grib_accessor_class_g2bitmap.cc | 1 - src/accessor/grib_accessor_class_validity_date.cc | 1 - src/accessor/grib_accessor_class_validity_time.cc | 1 - src/eccodes_prototypes.h | 1 + src/grib_bits.cc | 2 +- src/shared_functions.cc | 9 --------- src/shared_functions.h | 8 -------- 9 files changed, 2 insertions(+), 23 deletions(-) delete mode 100644 src/shared_functions.cc delete mode 100644 src/shared_functions.h diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index fce6d88d8..7c491d6b1 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -12,7 +12,6 @@ list( APPEND eccodes_src_files accessor/grib_accessor.cc accessor/grib_accessors_list.cc grib_accessor_class.cc - shared_functions.cc step_unit.cc step.cc step_utilities.cc diff --git a/src/accessor/grib_accessor_class_g1bitmap.cc b/src/accessor/grib_accessor_class_g1bitmap.cc index e8c0645ad..162d62b68 100644 --- a/src/accessor/grib_accessor_class_g1bitmap.cc +++ b/src/accessor/grib_accessor_class_g1bitmap.cc @@ -10,7 +10,6 @@ */ #include "grib_accessor_class_g1bitmap.h" -#include "shared_functions.h" grib_accessor_class_g1bitmap_t _grib_accessor_class_g1bitmap{"g1bitmap"}; grib_accessor_class* grib_accessor_class_g1bitmap = &_grib_accessor_class_g1bitmap; diff --git a/src/accessor/grib_accessor_class_g2bitmap.cc b/src/accessor/grib_accessor_class_g2bitmap.cc index 551715e4a..9e3854491 100644 --- a/src/accessor/grib_accessor_class_g2bitmap.cc +++ b/src/accessor/grib_accessor_class_g2bitmap.cc @@ -10,7 +10,6 @@ */ #include "grib_accessor_class_g2bitmap.h" -#include "shared_functions.h" grib_accessor_class_g2bitmap_t _grib_accessor_class_g2bitmap{ "g2bitmap" }; grib_accessor_class* grib_accessor_class_g2bitmap = &_grib_accessor_class_g2bitmap; diff --git a/src/accessor/grib_accessor_class_validity_date.cc b/src/accessor/grib_accessor_class_validity_date.cc index 331c4ec82..1f28f2c3f 100644 --- a/src/accessor/grib_accessor_class_validity_date.cc +++ b/src/accessor/grib_accessor_class_validity_date.cc @@ -10,7 +10,6 @@ */ #include "grib_accessor_class_validity_date.h" -#include "shared_functions.h" grib_accessor_class_validity_date_t _grib_accessor_class_validity_date{ "validity_date" }; grib_accessor_class* grib_accessor_class_validity_date = &_grib_accessor_class_validity_date; diff --git a/src/accessor/grib_accessor_class_validity_time.cc b/src/accessor/grib_accessor_class_validity_time.cc index 350a19e92..cdb0fdf93 100644 --- a/src/accessor/grib_accessor_class_validity_time.cc +++ b/src/accessor/grib_accessor_class_validity_time.cc @@ -10,7 +10,6 @@ */ #include "grib_accessor_class_validity_time.h" -#include "shared_functions.h" grib_accessor_class_validity_time_t _grib_accessor_class_validity_time{ "validity_time" }; grib_accessor_class* grib_accessor_class_validity_time = &_grib_accessor_class_validity_time; diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 576c1724e..95f9a1573 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -308,6 +308,7 @@ int grib_init_accessor_from_handle(grib_loader* loader, grib_accessor* ga, grib_ unsigned long grib_decode_unsigned_byte_long(const unsigned char* p, long o, int l); long grib_decode_signed_long(const unsigned char* p, long o, int l); int grib_encode_signed_long(unsigned char* p, long val, long o, int l); +void grib_set_bit_on(unsigned char*, long*); void grib_set_bits_on(unsigned char* p, long* bitp, long nbits); int grib_get_bit(const unsigned char* p, long bitp); void grib_set_bit(unsigned char* p, long bitp, int val); diff --git a/src/grib_bits.cc b/src/grib_bits.cc index 92482612b..7988a6f82 100644 --- a/src/grib_bits.cc +++ b/src/grib_bits.cc @@ -117,7 +117,7 @@ int grib_encode_signed_long(unsigned char* p, long val, long o, int l) return GRIB_SUCCESS; } -static void grib_set_bit_on(unsigned char* p, long* bitp) +void grib_set_bit_on(unsigned char* p, long* bitp) { p += *bitp / 8; *p |= (1u << (7 - ((*bitp) % 8))); diff --git a/src/shared_functions.cc b/src/shared_functions.cc deleted file mode 100644 index cc37feb0c..000000000 --- a/src/shared_functions.cc +++ /dev/null @@ -1,9 +0,0 @@ -#include "shared_functions.h" - -void grib_set_bit_on(unsigned char* p, long* bitp){ - unsigned char o = 1; - p += (*bitp >> 3); - o <<= 7 - ((*bitp) % 8); - *p |= o; - (*bitp) += 1; -} diff --git a/src/shared_functions.h b/src/shared_functions.h deleted file mode 100644 index 4645a1c8c..000000000 --- a/src/shared_functions.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef eccodes_shared_functions_h -#define eccodes_shared_functions_h - -#include "grib_api_internal.h" - -void grib_set_bit_on(unsigned char*, long*); - -#endif // eccodes_shared_functions_h From 47258f4920c13503f1ced52f60cf8a5c094fce37 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 23 Jul 2024 11:38:32 +0100 Subject: [PATCH 078/277] Performance: Local static function --- src/accessor/grib_accessor_class_g2bitmap.cc | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/accessor/grib_accessor_class_g2bitmap.cc b/src/accessor/grib_accessor_class_g2bitmap.cc index 9e3854491..e50741d55 100644 --- a/src/accessor/grib_accessor_class_g2bitmap.cc +++ b/src/accessor/grib_accessor_class_g2bitmap.cc @@ -23,6 +23,14 @@ void grib_accessor_class_g2bitmap_t::init(grib_accessor* a, const long len, grib self->numberOfValues = grib_arguments_get_name(grib_handle_of_accessor(a), arg, 4); } +// For speed use a local static function +static void set_bit_on(unsigned char* p, long* bitp) +{ + p += *bitp / 8; + *p |= (1u << (7 - ((*bitp) % 8))); + (*bitp)++; +} + int grib_accessor_class_g2bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len) { grib_accessor_g2bitmap_t* self = (grib_accessor_g2bitmap_t*)a; @@ -47,7 +55,7 @@ int grib_accessor_class_g2bitmap_t::pack_double(grib_accessor* a, const double* pos++; else { // bmaplen++; - grib_set_bit_on(buf, &pos); + set_bit_on(buf, &pos); } } From b3de64188be0bedd7bd7bcc9cfe70a13b4f478c0 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 23 Jul 2024 13:16:17 +0100 Subject: [PATCH 079/277] Enable the 'inline' directive based on ECCODES_HAVE_C_INLINE --- CMakeLists.txt | 6 +++--- eccodes_config.h.in | 2 ++ src/accessor/grib_accessor_class_g2bitmap.cc | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0a4c05cd7..062da488a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -50,9 +50,9 @@ check_symbol_exists( fdatasync "unistd.h" ECCODES_HAVE_FDATASYNC) check_c_source_compiles( " typedef int foo_t; - static inline foo_t static_foo(){return 0;} - foo_t foo(){return 0;} - int main(int argc, char *argv[]){return 0;} + static inline foo_t static_foo(void){return 0;} + foo_t foo(void){return 0;} + int main(int argc, char *argv[]){ return static_foo(); } " ECCODES_HAVE_C_INLINE ) diff --git a/eccodes_config.h.in b/eccodes_config.h.in index 2278151b0..4432f9a10 100644 --- a/eccodes_config.h.in +++ b/eccodes_config.h.in @@ -23,6 +23,8 @@ #define ECCODES_DEFINITION_PATH "@ECCODES_DEFINITION_PATH@" +#cmakedefine ECCODES_HAVE_C_INLINE + #ifdef ECCODES_HAVE_C_INLINE #define GRIB_INLINE inline #endif diff --git a/src/accessor/grib_accessor_class_g2bitmap.cc b/src/accessor/grib_accessor_class_g2bitmap.cc index e50741d55..7b1783d9a 100644 --- a/src/accessor/grib_accessor_class_g2bitmap.cc +++ b/src/accessor/grib_accessor_class_g2bitmap.cc @@ -24,7 +24,7 @@ void grib_accessor_class_g2bitmap_t::init(grib_accessor* a, const long len, grib } // For speed use a local static function -static void set_bit_on(unsigned char* p, long* bitp) +static GRIB_INLINE void set_bit_on(unsigned char* p, long* bitp) { p += *bitp / 8; *p |= (1u << (7 - ((*bitp) % 8))); From 66bf0974b13360569e9a743ea56c58862bd8c487 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 23 Jul 2024 15:09:17 +0100 Subject: [PATCH 080/277] GitHub actions: Test OpenMP mutexes --- .github/ci-hpc-config.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/ci-hpc-config.yml b/.github/ci-hpc-config.yml index 3ae75ea37..3c586db2e 100644 --- a/.github/ci-hpc-config.yml +++ b/.github/ci-hpc-config.yml @@ -7,3 +7,4 @@ build: parallel: 64 cmake_options: - -DENABLE_EXTRA_TESTS=1 + - -DENABLE_ECCODES_OMP_THREADS=1 From aa48f21a71fc0541b10d40fc52e7e2cfe3dc95b5 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 24 Jul 2024 11:59:09 +0100 Subject: [PATCH 081/277] Performance: Local static functions --- src/accessor/grib_accessor_class_bufr_data_array.cc | 9 ++++----- src/accessor/grib_accessor_class_bufr_elements_table.cc | 4 ++-- src/accessor/grib_accessor_class_g1forecastmonth.cc | 3 +-- .../grib_accessor_class_number_of_points_gaussian.cc | 8 ++++---- 4 files changed, 11 insertions(+), 13 deletions(-) diff --git a/src/accessor/grib_accessor_class_bufr_data_array.cc b/src/accessor/grib_accessor_class_bufr_data_array.cc index e0c998950..0bd2c2c0f 100644 --- a/src/accessor/grib_accessor_class_bufr_data_array.cc +++ b/src/accessor/grib_accessor_class_bufr_data_array.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -56,7 +55,7 @@ static int is_bitmap_start_defined(grib_accessor_bufr_data_array_t* self) return self->bitmapStart == -1 ? 0 : 1; } -size_t get_length(grib_accessor* a) +static size_t get_length(grib_accessor* a) { grib_accessor_bufr_data_array_t* self = (grib_accessor_bufr_data_array_t*)a; size_t len = 0; @@ -101,7 +100,7 @@ static int tableB_override_get_ref_val(grib_accessor_bufr_data_array_t* self, in } /* Operator 203YYY: Clear and free linked list */ -void tableB_override_clear(grib_context* c, grib_accessor_bufr_data_array_t* self) +static void tableB_override_clear(grib_context* c, grib_accessor_bufr_data_array_t* self) { bufr_tableb_override* tb = self->tableb_override; while (tb) { @@ -113,7 +112,7 @@ void tableB_override_clear(grib_context* c, grib_accessor_bufr_data_array_t* sel } /* Operator 203YYY: Copy contents of linked list to the transient array key */ -int tableB_override_set_key(grib_handle* h, grib_accessor_bufr_data_array_t* self) +static int tableB_override_set_key(grib_handle* h, grib_accessor_bufr_data_array_t* self) { int err = GRIB_SUCCESS; size_t size = 0; @@ -2202,7 +2201,7 @@ static grib_accessor* accessor_or_attribute_with_same_name(grib_accessor* a, con // return *r; // } -int grib_data_accessors_trie_push(grib_trie_with_rank* accessorsTrie, grib_accessor* a) +static int grib_data_accessors_trie_push(grib_trie_with_rank* accessorsTrie, grib_accessor* a) { return grib_trie_with_rank_insert(accessorsTrie, a->name, a); } diff --git a/src/accessor/grib_accessor_class_bufr_elements_table.cc b/src/accessor/grib_accessor_class_bufr_elements_table.cc index b9a0d0c58..04a61d02b 100644 --- a/src/accessor/grib_accessor_class_bufr_elements_table.cc +++ b/src/accessor/grib_accessor_class_bufr_elements_table.cc @@ -212,14 +212,14 @@ static int convert_type(const char* stype) return ret; } -long atol_fast(const char* input) +static long atol_fast(const char* input) { if (strcmp(input, "0") == 0) return 0; return atol(input); } -int bufr_get_from_table(grib_accessor* a, bufr_descriptor* v) +static int bufr_get_from_table(grib_accessor* a, bufr_descriptor* v) { int ret = 0; char** list = 0; diff --git a/src/accessor/grib_accessor_class_g1forecastmonth.cc b/src/accessor/grib_accessor_class_g1forecastmonth.cc index 7ec448cf6..c7745cfa7 100644 --- a/src/accessor/grib_accessor_class_g1forecastmonth.cc +++ b/src/accessor/grib_accessor_class_g1forecastmonth.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -106,7 +105,7 @@ static int unpack_long_edition2(grib_accessor* a, long* val, size_t* len) return GRIB_SUCCESS; } -int unpack_long_edition1(grib_accessor* a, long* val, size_t* len) +static int unpack_long_edition1(grib_accessor* a, long* val, size_t* len) { int err = 0; grib_accessor_g1forecastmonth_t* self = (grib_accessor_g1forecastmonth_t*)a; diff --git a/src/accessor/grib_accessor_class_number_of_points_gaussian.cc b/src/accessor/grib_accessor_class_number_of_points_gaussian.cc index 39324fbd3..7959a6360 100644 --- a/src/accessor/grib_accessor_class_number_of_points_gaussian.cc +++ b/src/accessor/grib_accessor_class_number_of_points_gaussian.cc @@ -112,8 +112,8 @@ static int get_number_of_data_values(grib_handle* h, size_t* numDataValues) return err; } -int unpack_long_with_legacy_support(grib_accessor* a, long* val, size_t* len); -int unpack_long_new(grib_accessor* a, long* val, size_t* len); +static int unpack_long_with_legacy_support(grib_accessor* a, long* val, size_t* len); +static int unpack_long_new(grib_accessor* a, long* val, size_t* len); int grib_accessor_class_number_of_points_gaussian_t::unpack_long(grib_accessor* a, long* val, size_t* len) { @@ -132,7 +132,7 @@ int grib_accessor_class_number_of_points_gaussian_t::unpack_long(grib_accessor* } /* New algorithm */ -int unpack_long_new(grib_accessor* a, long* val, size_t* len) +static int unpack_long_new(grib_accessor* a, long* val, size_t* len) { int err = GRIB_SUCCESS; int is_global = 0; @@ -241,7 +241,7 @@ int unpack_long_new(grib_accessor* a, long* val, size_t* len) } /* With Legacy support */ -int unpack_long_with_legacy_support(grib_accessor* a, long* val, size_t* len) +static int unpack_long_with_legacy_support(grib_accessor* a, long* val, size_t* len) { int err = GRIB_SUCCESS; int is_global = 0; From 90d462870a5776ac8faf9da78cc84bbcf2efac86 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 24 Jul 2024 10:47:14 +0100 Subject: [PATCH 082/277] ECC-1881: Performance: Computation of distinctLatitudes/distinctLongitudes --- src/accessor/grib_accessor_class_latitudes.cc | 16 +++++++---- .../grib_accessor_class_longitudes.cc | 28 +++++++++---------- src/codes_util.cc | 20 +++++++++++++ src/eccodes_prototypes.h | 2 ++ 4 files changed, 47 insertions(+), 19 deletions(-) diff --git a/src/accessor/grib_accessor_class_latitudes.cc b/src/accessor/grib_accessor_class_latitudes.cc index 1c69d39e9..71859a564 100644 --- a/src/accessor/grib_accessor_class_latitudes.cc +++ b/src/accessor/grib_accessor_class_latitudes.cc @@ -15,7 +15,7 @@ grib_accessor_class_latitudes_t _grib_accessor_class_latitudes{ "latitudes" }; grib_accessor_class* grib_accessor_class_latitudes = &_grib_accessor_class_latitudes; static int get_distinct(grib_accessor* a, double** val, long* len); -int compare_doubles(const void* a, const void* b, int ascending) +static int compare_doubles(const void* a, const void* b, int ascending) { // ascending is a boolean: 0 or 1 double* arg1 = (double*)a; @@ -33,11 +33,13 @@ int compare_doubles(const void* a, const void* b, int ascending) else return 1; } -int compare_doubles_ascending(const void* a, const void* b) + +static int compare_doubles_ascending(const void* a, const void* b) { return compare_doubles(a, b, 1); } -int compare_doubles_descending(const void* a, const void* b) + +static int compare_doubles_descending(const void* a, const void* b) { return compare_doubles(a, b, 0); } @@ -184,10 +186,14 @@ static int get_distinct(grib_accessor* a, double** val, long* len) if ((ret = grib_get_long_internal(grib_handle_of_accessor(a), "jScansPositively", &jScansPositively))) return ret; if (jScansPositively) { - qsort(v, *len, sizeof(double), &compare_doubles_ascending); //South to North + if (!is_sorted_ascending(v, size)) { + qsort(v, *len, sizeof(double), &compare_doubles_ascending); //South to North + } } else { - qsort(v, *len, sizeof(double), &compare_doubles_descending); //North to South + if (!is_sorted_descending(v, size)) { + qsort(v, *len, sizeof(double), &compare_doubles_descending); //North to South + } } v1 = (double*)grib_context_malloc_clear(c, size * sizeof(double)); diff --git a/src/accessor/grib_accessor_class_longitudes.cc b/src/accessor/grib_accessor_class_longitudes.cc index 80e4e2e7b..61e15de03 100644 --- a/src/accessor/grib_accessor_class_longitudes.cc +++ b/src/accessor/grib_accessor_class_longitudes.cc @@ -16,7 +16,7 @@ grib_accessor_class* grib_accessor_class_longitudes = &_grib_accessor_class_long static int get_distinct(grib_accessor* a, double** val, long* len); -int compare_doubles(const void* a, const void* b); + void grib_accessor_class_longitudes_t::init(grib_accessor* a, const long l, grib_arguments* c) { grib_accessor_class_double_t::init(a, l, c); @@ -125,6 +125,18 @@ int grib_accessor_class_longitudes_t::value_count(grib_accessor* a, long* len) return ret; } +static int compare_doubles_ascending(const void* a, const void* b) +{ + double* arg1 = (double*)a; + double* arg2 = (double*)b; + if (*arg1 < *arg2) + return -1; + else if (*arg1 == *arg2) + return 0; + else + return 1; +} + static int get_distinct(grib_accessor* a, double** val, long* len) { long count = 0; @@ -155,7 +167,7 @@ static int get_distinct(grib_accessor* a, double** val, long* len) grib_iterator_delete(iter); v = *val; - qsort(v, *len, sizeof(double), &compare_doubles); + qsort(v, *len, sizeof(double), &compare_doubles_ascending); v1 = (double*)grib_context_malloc_clear(c, size * sizeof(double)); if (!v1) { @@ -181,15 +193,3 @@ static int get_distinct(grib_accessor* a, double** val, long* len) *len = count; return GRIB_SUCCESS; } - -int compare_doubles(const void* a, const void* b) -{ - double* arg1 = (double*)a; - double* arg2 = (double*)b; - if (*arg1 < *arg2) - return -1; - else if (*arg1 == *arg2) - return 0; - else - return 1; -} diff --git a/src/codes_util.cc b/src/codes_util.cc index 80d337849..9e7507c23 100644 --- a/src/codes_util.cc +++ b/src/codes_util.cc @@ -279,6 +279,26 @@ long convert_to_minutes(long step, long stepUnits) return (long)result; } +bool is_sorted_ascending(double arr[], size_t n) +{ + for (size_t i = 0; i < n-1; i++) { + if (arr[i] > arr[i+1]) { + return false; + } + } + return true; +} + +bool is_sorted_descending(double arr[], size_t n) +{ + for (size_t i = 0; i < n-1; i++) { + if (arr[i] < arr[i+1]) { + return false; + } + } + return true; +} + static float float_epsilon(void) { float floatEps = 1.0; diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 95f9a1573..e0a7d3e08 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -855,6 +855,8 @@ int codes_flush_sync_close_file(FILE* f); int is_date_valid(long year, long month, long day, long hour, long minute, double second); int is_time_valid(long number); // number is HHMM long convert_to_minutes(long step, long stepUnits); +bool is_sorted_ascending(double arr[], size_t n); +bool is_sorted_descending(double arr[], size_t n); int compute_scaled_value_and_scale_factor(double input, int64_t scaled_value_max, int64_t scale_factor_max, int64_t* ret_value, int64_t* ret_factor); /* grib_util.cc */ From 99ff9f49a93f87b220f086999da2773279501af9 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 24 Jul 2024 13:54:27 +0100 Subject: [PATCH 083/277] Const correctness and cppcheck warnings --- src/accessor/grib_accessor_class_latitudes.cc | 10 ++++---- .../grib_accessor_class_latlonvalues.cc | 23 +++++++++++-------- .../grib_accessor_class_longitudes.cc | 10 ++++---- 3 files changed, 21 insertions(+), 22 deletions(-) diff --git a/src/accessor/grib_accessor_class_latitudes.cc b/src/accessor/grib_accessor_class_latitudes.cc index 71859a564..d67d9f257 100644 --- a/src/accessor/grib_accessor_class_latitudes.cc +++ b/src/accessor/grib_accessor_class_latitudes.cc @@ -18,8 +18,8 @@ static int get_distinct(grib_accessor* a, double** val, long* len); static int compare_doubles(const void* a, const void* b, int ascending) { // ascending is a boolean: 0 or 1 - double* arg1 = (double*)a; - double* arg2 = (double*)b; + const double* arg1 = (double*)a; + const double* arg2 = (double*)b; if (ascending) { if (*arg1 < *arg2) return -1; // Smaller values come before larger ones @@ -97,8 +97,7 @@ int grib_accessor_class_latitudes_t::unpack_double(grib_accessor* a, double* val // ECC-1525 Performance: We do not need the values to be decoded iter = grib_iterator_new(grib_handle_of_accessor(a), GRIB_GEOITERATOR_NO_VALUES, &ret); if (ret != GRIB_SUCCESS) { - if (iter) - grib_iterator_delete(iter); + grib_iterator_delete(iter); grib_context_log(c, GRIB_LOG_ERROR, "latitudes: Unable to create iterator"); return ret; } @@ -166,8 +165,7 @@ static int get_distinct(grib_accessor* a, double** val, long* len) // Performance: We do not need the values to be decoded grib_iterator* iter = grib_iterator_new(grib_handle_of_accessor(a), GRIB_GEOITERATOR_NO_VALUES, &ret); if (ret != GRIB_SUCCESS) { - if (iter) - grib_iterator_delete(iter); + grib_iterator_delete(iter); grib_context_log(c, GRIB_LOG_ERROR, "latitudes: Unable to create iterator"); return ret; } diff --git a/src/accessor/grib_accessor_class_latlonvalues.cc b/src/accessor/grib_accessor_class_latlonvalues.cc index 5d43d6be9..4b80ca32a 100644 --- a/src/accessor/grib_accessor_class_latlonvalues.cc +++ b/src/accessor/grib_accessor_class_latlonvalues.cc @@ -11,21 +11,23 @@ #include "grib_accessor_class_latlonvalues.h" -grib_accessor_class_latlonvalues_t _grib_accessor_class_latlonvalues{"latlonvalues"}; +grib_accessor_class_latlonvalues_t _grib_accessor_class_latlonvalues{ "latlonvalues" }; grib_accessor_class* grib_accessor_class_latlonvalues = &_grib_accessor_class_latlonvalues; -void grib_accessor_class_latlonvalues_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_latlonvalues_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); grib_accessor_latlonvalues_t* self = (grib_accessor_latlonvalues_t*)a; - int n = 0; + int n = 0; self->values = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_latlonvalues_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_latlonvalues_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_context* c = a->context; int err = 0; double* v = val; @@ -34,17 +36,17 @@ int grib_accessor_class_latlonvalues_t::unpack_double(grib_accessor* a, double* long count = 0; grib_iterator* iter = grib_iterator_new(grib_handle_of_accessor(a), 0, &err); if (err) { - if (iter) grib_iterator_delete(iter); + grib_iterator_delete(iter); grib_context_log(c, GRIB_LOG_ERROR, "latlonvalues: Unable to create iterator"); return err; } - err = value_count(a, &count); + err = value_count(a, &count); if (err) return err; size = count; if (*len < size) { - if (iter) grib_iterator_delete(iter); + grib_iterator_delete(iter); return GRIB_ARRAY_TOO_SMALL; } @@ -61,10 +63,11 @@ int grib_accessor_class_latlonvalues_t::unpack_double(grib_accessor* a, double* return GRIB_SUCCESS; } -int grib_accessor_class_latlonvalues_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_latlonvalues_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_latlonvalues_t* self = (grib_accessor_latlonvalues_t*)a; - grib_handle* h = grib_handle_of_accessor(a); - int ret = GRIB_SUCCESS; + grib_handle* h = grib_handle_of_accessor(a); + int ret = GRIB_SUCCESS; size_t size; if ((ret = grib_get_size(h, self->values, &size)) != GRIB_SUCCESS) { grib_context_log(h->context, GRIB_LOG_ERROR, "latlonvalues: Unable to get size of %s", self->values); diff --git a/src/accessor/grib_accessor_class_longitudes.cc b/src/accessor/grib_accessor_class_longitudes.cc index 61e15de03..1b40cbcc7 100644 --- a/src/accessor/grib_accessor_class_longitudes.cc +++ b/src/accessor/grib_accessor_class_longitudes.cc @@ -73,8 +73,7 @@ int grib_accessor_class_longitudes_t::unpack_double(grib_accessor* a, double* va // ECC-1525 Performance: We do not need the values to be decoded iter = grib_iterator_new(grib_handle_of_accessor(a), GRIB_GEOITERATOR_NO_VALUES, &ret); if (ret != GRIB_SUCCESS) { - if (iter) - grib_iterator_delete(iter); + grib_iterator_delete(iter); grib_context_log(c, GRIB_LOG_ERROR, "longitudes: Unable to create iterator"); return ret; } @@ -127,8 +126,8 @@ int grib_accessor_class_longitudes_t::value_count(grib_accessor* a, long* len) static int compare_doubles_ascending(const void* a, const void* b) { - double* arg1 = (double*)a; - double* arg2 = (double*)b; + const double* arg1 = (double*)a; + const double* arg2 = (double*)b; if (*arg1 < *arg2) return -1; else if (*arg1 == *arg2) @@ -151,8 +150,7 @@ static int get_distinct(grib_accessor* a, double** val, long* len) // Performance: We do not need the values to be decoded grib_iterator* iter = grib_iterator_new(grib_handle_of_accessor(a), GRIB_GEOITERATOR_NO_VALUES, &ret); if (ret != GRIB_SUCCESS) { - if (iter) - grib_iterator_delete(iter); + grib_iterator_delete(iter); grib_context_log(c, GRIB_LOG_ERROR, "longitudes: Unable to create iterator"); return ret; } From dd0a0d3685b51543f303f612d4498f124fa89252 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 24 Jul 2024 14:43:34 +0100 Subject: [PATCH 084/277] Formatting --- .../grib_accessor_class_library_version.cc | 16 +++-- .../grib_accessor_class_long_vector.cc | 43 +++++++------ ...grib_accessor_class_sexagesimal2decimal.cc | 28 ++++---- .../grib_accessor_class_signed_bits.cc | 40 +++++++----- src/accessor/grib_accessor_class_spd.cc | 64 +++++++++++-------- src/accessor/grib_accessor_class_uint16.cc | 9 +-- src/accessor/grib_accessor_class_uint32.cc | 9 +-- ...rib_accessor_class_uint32_little_endian.cc | 9 +-- src/accessor/grib_accessor_class_uint64.cc | 9 +-- ...rib_accessor_class_uint64_little_endian.cc | 9 +-- src/accessor/grib_accessor_class_uint8.cc | 13 ++-- 11 files changed, 141 insertions(+), 108 deletions(-) diff --git a/src/accessor/grib_accessor_class_library_version.cc b/src/accessor/grib_accessor_class_library_version.cc index 527b4809a..e0f1ee1da 100644 --- a/src/accessor/grib_accessor_class_library_version.cc +++ b/src/accessor/grib_accessor_class_library_version.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,19 +10,20 @@ #include "grib_accessor_class_library_version.h" -grib_accessor_class_library_version_t _grib_accessor_class_library_version{"library_version"}; +grib_accessor_class_library_version_t _grib_accessor_class_library_version{ "library_version" }; grib_accessor_class* grib_accessor_class_library_version = &_grib_accessor_class_library_version; -int grib_accessor_class_library_version_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_library_version_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ char result[30] = {0,}; - size_t size; + size_t size = 0; int major = ECCODES_MAJOR_VERSION; int minor = ECCODES_MINOR_VERSION; int revision = ECCODES_REVISION_VERSION; - snprintf(result, sizeof(result), "%d.%d.%d", major, minor, revision); + snprintf(result, sizeof(result), "%d.%d.%d", major, minor, revision); size = sizeof(result); if (*len < size) @@ -35,11 +35,13 @@ int grib_accessor_class_library_version_t::unpack_string(grib_accessor* a, char* return GRIB_SUCCESS; } -int grib_accessor_class_library_version_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_library_version_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -size_t grib_accessor_class_library_version_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_library_version_t::string_length(grib_accessor* a) +{ return 255; } diff --git a/src/accessor/grib_accessor_class_long_vector.cc b/src/accessor/grib_accessor_class_long_vector.cc index 0aee8c8c9..6759ea799 100644 --- a/src/accessor/grib_accessor_class_long_vector.cc +++ b/src/accessor/grib_accessor_class_long_vector.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -12,16 +11,17 @@ #include "grib_accessor_class_long_vector.h" #include "grib_accessor_class_abstract_long_vector.h" -grib_accessor_class_long_vector_t _grib_accessor_class_long_vector{"long_vector"}; +grib_accessor_class_long_vector_t _grib_accessor_class_long_vector{ "long_vector" }; grib_accessor_class* grib_accessor_class_long_vector = &_grib_accessor_class_long_vector; -void grib_accessor_class_long_vector_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_long_vector_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_abstract_long_vector_t::init(a, l, c); grib_accessor_long_vector_t* self = (grib_accessor_long_vector_t*)a; - grib_accessor* va = NULL; + grib_accessor* va = NULL; grib_accessor_abstract_long_vector_t* v = NULL; - int n = 0; + int n = 0; self->vector = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); va = (grib_accessor*)grib_find_accessor(grib_handle_of_accessor(a), self->vector); @@ -35,12 +35,13 @@ void grib_accessor_class_long_vector_t::init(grib_accessor* a, const long l, gri a->length = 0; } -int grib_accessor_class_long_vector_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_long_vector_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ size_t size = 0; - int err = 0; + int err = 0; long* vector; grib_accessor_long_vector_t* self = (grib_accessor_long_vector_t*)a; - grib_accessor* va = NULL; + grib_accessor* va = NULL; grib_accessor_abstract_long_vector_t* v = NULL; va = (grib_accessor*)grib_find_accessor(grib_handle_of_accessor(a), self->vector); @@ -51,7 +52,8 @@ int grib_accessor_class_long_vector_t::unpack_long(grib_accessor* a, long* val, if (err) return err; DEBUG_ASSERT(size > 0); vector = (long*)grib_context_malloc(a->context, sizeof(long) * size); - err = va->unpack_long(vector, &size); grib_context_free(a->context, vector); + err = va->unpack_long(vector, &size); + grib_context_free(a->context, vector); if (err) return err; *val = v->v[self->index]; @@ -59,14 +61,15 @@ int grib_accessor_class_long_vector_t::unpack_long(grib_accessor* a, long* val, return GRIB_SUCCESS; } -int grib_accessor_class_long_vector_t::unpack_double(grib_accessor* a, double* val, size_t* len){ - long lval = 0; - int err = 0; +int grib_accessor_class_long_vector_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ + long lval = 0; + int err = 0; grib_accessor_long_vector_t* self = (grib_accessor_long_vector_t*)a; - grib_accessor* va = NULL; + grib_accessor* va = NULL; grib_accessor_abstract_long_vector_t* v = NULL; - va = (grib_accessor*)grib_find_accessor(grib_handle_of_accessor(a), self->vector); - v = (grib_accessor_abstract_long_vector_t*)va; + va = (grib_accessor*)grib_find_accessor(grib_handle_of_accessor(a), self->vector); + v = (grib_accessor_abstract_long_vector_t*)va; err = unpack_long(a, &lval, len); @@ -75,10 +78,11 @@ int grib_accessor_class_long_vector_t::unpack_double(grib_accessor* a, double* v return err; } -int grib_accessor_class_long_vector_t::pack_long(grib_accessor* a, const long* val, size_t* len){ - int err = 0; +int grib_accessor_class_long_vector_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ + int err = 0; grib_accessor_long_vector_t* self = (grib_accessor_long_vector_t*)a; - grib_accessor* va = NULL; + grib_accessor* va = NULL; grib_accessor_abstract_long_vector_t* v = NULL; va = (grib_accessor*)grib_find_accessor(grib_handle_of_accessor(a), self->vector); @@ -90,6 +94,7 @@ int grib_accessor_class_long_vector_t::pack_long(grib_accessor* a, const long* v return err; } -int grib_accessor_class_long_vector_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_long_vector_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_sexagesimal2decimal.cc b/src/accessor/grib_accessor_class_sexagesimal2decimal.cc index e1920c1b9..c43c7269c 100644 --- a/src/accessor/grib_accessor_class_sexagesimal2decimal.cc +++ b/src/accessor/grib_accessor_class_sexagesimal2decimal.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,31 +10,36 @@ #include "grib_accessor_class_sexagesimal2decimal.h" -grib_accessor_class_sexagesimal2decimal_t _grib_accessor_class_sexagesimal2decimal{"sexagesimal2decimal"}; +grib_accessor_class_sexagesimal2decimal_t _grib_accessor_class_sexagesimal2decimal{ "sexagesimal2decimal" }; grib_accessor_class* grib_accessor_class_sexagesimal2decimal = &_grib_accessor_class_sexagesimal2decimal; -void grib_accessor_class_sexagesimal2decimal_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_sexagesimal2decimal_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_to_double_t::init(a, len, arg); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -void grib_accessor_class_sexagesimal2decimal_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_sexagesimal2decimal_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_double(dumper, a, NULL); } -int grib_accessor_class_sexagesimal2decimal_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_sexagesimal2decimal_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_DOUBLE; } -int grib_accessor_class_sexagesimal2decimal_t::unpack_string(grib_accessor* a, char* val, size_t* len){ - int err = 0; +int grib_accessor_class_sexagesimal2decimal_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_sexagesimal2decimal_t* self = (grib_accessor_sexagesimal2decimal_t*)a; - char buff[512] = {0,}; + + int err = 0; + char buff[512] = {0,}; size_t length = 0; - size_t size = 512; - char* p; - char* q; + size_t size = sizeof(buff); + char* p = 0; + char* q = 0; double dd, mm = 0, ss = 0; int dd_sign = 1; @@ -134,7 +138,7 @@ int grib_accessor_class_sexagesimal2decimal_t::unpack_string(grib_accessor* a, c if (len[0] < length + 1) { grib_context_log(a->context, GRIB_LOG_ERROR, "unpack_string: Wrong size (%lu) for %s, it contains %ld values", - len[0], a->name, a->length + 1); + len[0], a->name, a->length + 1); len[0] = 0; return GRIB_ARRAY_TOO_SMALL; } diff --git a/src/accessor/grib_accessor_class_signed_bits.cc b/src/accessor/grib_accessor_class_signed_bits.cc index 3da4d03c2..b205cc9f7 100644 --- a/src/accessor/grib_accessor_class_signed_bits.cc +++ b/src/accessor/grib_accessor_class_signed_bits.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,17 @@ #include "grib_accessor_class_signed_bits.h" -grib_accessor_class_signed_bits_t _grib_accessor_class_signed_bits{"signed_bits"}; +grib_accessor_class_signed_bits_t _grib_accessor_class_signed_bits{ "signed_bits" }; grib_accessor_class* grib_accessor_class_signed_bits = &_grib_accessor_class_signed_bits; -long grib_accessor_class_signed_bits_t::byte_count(grib_accessor* a){ +long grib_accessor_class_signed_bits_t::byte_count(grib_accessor* a) +{ return a->length; } -static long compute_byte_count(grib_accessor* a){ +static long compute_byte_count(grib_accessor* a) +{ grib_accessor_signed_bits_t* self = (grib_accessor_signed_bits_t*)a; long numberOfBits; long numberOfElements; @@ -42,16 +43,18 @@ static long compute_byte_count(grib_accessor* a){ return (numberOfBits * numberOfElements + 7) / 8; } -void grib_accessor_class_signed_bits_t::init(grib_accessor* a, const long len, grib_arguments* args){ +void grib_accessor_class_signed_bits_t::init(grib_accessor* a, const long len, grib_arguments* args) +{ grib_accessor_class_long_t::init(a, len, args); grib_accessor_signed_bits_t* self = (grib_accessor_signed_bits_t*)a; - int n = 0; - self->numberOfBits = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); - self->numberOfElements = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); - a->length = compute_byte_count(a); + int n = 0; + self->numberOfBits = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); + self->numberOfElements = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); + a->length = compute_byte_count(a); } -int grib_accessor_class_signed_bits_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_signed_bits_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; #if 0 grib_accessor_signed_bits_t* self = (grib_accessor_signed_bits_t*)a; @@ -91,7 +94,8 @@ int grib_accessor_class_signed_bits_t::unpack_long(grib_accessor* a, long* val, #endif } -int grib_accessor_class_signed_bits_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_signed_bits_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; #if 0 grib_accessor_signed_bits_t* self = (grib_accessor_signed_bits_t*)a; @@ -132,21 +136,25 @@ int grib_accessor_class_signed_bits_t::pack_long(grib_accessor* a, const long* v #endif } -int grib_accessor_class_signed_bits_t::value_count(grib_accessor* a, long* numberOfElements){ +int grib_accessor_class_signed_bits_t::value_count(grib_accessor* a, long* numberOfElements) +{ grib_accessor_signed_bits_t* self = (grib_accessor_signed_bits_t*)a; - *numberOfElements = 0; + *numberOfElements = 0; return grib_get_long(grib_handle_of_accessor(a), self->numberOfElements, numberOfElements); } -long grib_accessor_class_signed_bits_t::byte_offset(grib_accessor* a){ +long grib_accessor_class_signed_bits_t::byte_offset(grib_accessor* a) +{ return a->offset; } -void grib_accessor_class_signed_bits_t::update_size(grib_accessor* a, size_t s){ +void grib_accessor_class_signed_bits_t::update_size(grib_accessor* a, size_t s) +{ a->length = s; } -long grib_accessor_class_signed_bits_t::next_offset(grib_accessor* a){ +long grib_accessor_class_signed_bits_t::next_offset(grib_accessor* a) +{ return a->byte_offset() + a->byte_count(); } diff --git a/src/accessor/grib_accessor_class_spd.cc b/src/accessor/grib_accessor_class_spd.cc index dd717ba3c..212b4a36e 100644 --- a/src/accessor/grib_accessor_class_spd.cc +++ b/src/accessor/grib_accessor_class_spd.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,18 +10,20 @@ #include "grib_accessor_class_spd.h" -grib_accessor_class_spd_t _grib_accessor_class_spd{"spd"}; +grib_accessor_class_spd_t _grib_accessor_class_spd{ "spd" }; grib_accessor_class* grib_accessor_class_spd = &_grib_accessor_class_spd; -long grib_accessor_class_spd_t::byte_count(grib_accessor* a){ +long grib_accessor_class_spd_t::byte_count(grib_accessor* a) +{ return a->length; } -static long compute_byte_count(grib_accessor* a){ +static long compute_byte_count(grib_accessor* a) +{ grib_accessor_spd_t* self = (grib_accessor_spd_t*)a; - long numberOfBits = 0; - long numberOfElements = 0; + long numberOfBits = 0; + long numberOfElements = 0; int ret = grib_get_long(grib_handle_of_accessor(a), self->numberOfBits, &numberOfBits); if (ret) { @@ -42,20 +43,22 @@ static long compute_byte_count(grib_accessor* a){ return (numberOfBits * numberOfElements + 7) / 8; } -void grib_accessor_class_spd_t::init(grib_accessor* a, const long len, grib_arguments* args){ +void grib_accessor_class_spd_t::init(grib_accessor* a, const long len, grib_arguments* args) +{ grib_accessor_class_long_t::init(a, len, args); grib_accessor_spd_t* self = (grib_accessor_spd_t*)a; - int n = 0; - self->numberOfBits = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); - self->numberOfElements = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); - a->length = compute_byte_count(a); + int n = 0; + self->numberOfBits = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); + self->numberOfElements = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); + a->length = compute_byte_count(a); } -int grib_accessor_class_spd_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_spd_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_spd_t* self = (grib_accessor_spd_t*)a; - long pos = a->offset * 8; - long rlen = 0; - long numberOfBits = 0; + long pos = a->offset * 8; + long rlen = 0; + long numberOfBits = 0; int ret = value_count(a, &rlen); if (ret) @@ -72,7 +75,7 @@ int grib_accessor_class_spd_t::unpack_long(grib_accessor* a, long* val, size_t* if (ret) return ret; if (numberOfBits > 64) { - grib_context_log(a->context, GRIB_LOG_ERROR,"Invalid number of bits: %ld",numberOfBits); + grib_context_log(a->context, GRIB_LOG_ERROR, "Invalid number of bits: %ld", numberOfBits); return GRIB_DECODING_ERROR; } @@ -86,15 +89,16 @@ int grib_accessor_class_spd_t::unpack_long(grib_accessor* a, long* val, size_t* return GRIB_SUCCESS; } -int grib_accessor_class_spd_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_spd_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_spd_t* self = (grib_accessor_spd_t*)a; - int ret = 0; - long off = 0; - long numberOfBits = 0; - size_t buflen = 0; - unsigned char* buf = NULL; - unsigned long i = 0; - long rlen = 0; + int ret = 0; + long off = 0; + long numberOfBits = 0; + size_t buflen = 0; + unsigned char* buf = NULL; + unsigned long i = 0; + long rlen = 0; ret = value_count(a, &rlen); if (ret) @@ -126,7 +130,8 @@ int grib_accessor_class_spd_t::pack_long(grib_accessor* a, const long* val, size return ret; } -int grib_accessor_class_spd_t::value_count(grib_accessor* a, long* numberOfElements){ +int grib_accessor_class_spd_t::value_count(grib_accessor* a, long* numberOfElements) +{ grib_accessor_spd_t* self = (grib_accessor_spd_t*)a; int ret; *numberOfElements = 0; @@ -142,14 +147,17 @@ int grib_accessor_class_spd_t::value_count(grib_accessor* a, long* numberOfEleme return ret; } -long grib_accessor_class_spd_t::byte_offset(grib_accessor* a){ +long grib_accessor_class_spd_t::byte_offset(grib_accessor* a) +{ return a->offset; } -void grib_accessor_class_spd_t::update_size(grib_accessor* a, size_t s){ +void grib_accessor_class_spd_t::update_size(grib_accessor* a, size_t s) +{ a->length = s; } -long grib_accessor_class_spd_t::next_offset(grib_accessor* a){ +long grib_accessor_class_spd_t::next_offset(grib_accessor* a) +{ return a->byte_offset() + a->length; } diff --git a/src/accessor/grib_accessor_class_uint16.cc b/src/accessor/grib_accessor_class_uint16.cc index 1d9158ac0..b17aa37cf 100644 --- a/src/accessor/grib_accessor_class_uint16.cc +++ b/src/accessor/grib_accessor_class_uint16.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,11 +10,12 @@ #include "grib_accessor_class_uint16.h" -grib_accessor_class_uint16_t _grib_accessor_class_uint16{"uint16"}; +grib_accessor_class_uint16_t _grib_accessor_class_uint16{ "uint16" }; grib_accessor_class* grib_accessor_class_uint16 = &_grib_accessor_class_uint16; -int grib_accessor_class_uint16_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_uint16_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ long value = 0; /*long pos = a->offset;*/ /*unsigned char* data = grib_handle_of_accessor(a)->buffer->data;*/ @@ -29,6 +29,7 @@ int grib_accessor_class_uint16_t::unpack_long(grib_accessor* a, long* val, size_ return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_uint16_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_uint16_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_uint32.cc b/src/accessor/grib_accessor_class_uint32.cc index 7518cb68c..015646cbb 100644 --- a/src/accessor/grib_accessor_class_uint32.cc +++ b/src/accessor/grib_accessor_class_uint32.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,11 +10,12 @@ #include "grib_accessor_class_uint32.h" -grib_accessor_class_uint32_t _grib_accessor_class_uint32{"uint32"}; +grib_accessor_class_uint32_t _grib_accessor_class_uint32{ "uint32" }; grib_accessor_class* grib_accessor_class_uint32 = &_grib_accessor_class_uint32; -int grib_accessor_class_uint32_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_uint32_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ long value = 0; /* long pos = a->offset; */ /* unsigned char* data = grib_handle_of_accessor(a)->buffer->data; */ @@ -29,6 +29,7 @@ int grib_accessor_class_uint32_t::unpack_long(grib_accessor* a, long* val, size_ return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_uint32_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_uint32_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_uint32_little_endian.cc b/src/accessor/grib_accessor_class_uint32_little_endian.cc index b8733bd0a..fa8aeb03a 100644 --- a/src/accessor/grib_accessor_class_uint32_little_endian.cc +++ b/src/accessor/grib_accessor_class_uint32_little_endian.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,11 +10,12 @@ #include "grib_accessor_class_uint32_little_endian.h" -grib_accessor_class_uint32_little_endian_t _grib_accessor_class_uint32_little_endian{"uint32_little_endian"}; +grib_accessor_class_uint32_little_endian_t _grib_accessor_class_uint32_little_endian{ "uint32_little_endian" }; grib_accessor_class* grib_accessor_class_uint32_little_endian = &_grib_accessor_class_uint32_little_endian; -int grib_accessor_class_uint32_little_endian_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_uint32_little_endian_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ long value = 0; /* long pos = a->offset; */ /* unsigned char* data = grib_handle_of_accessor(a)->buffer->data; */ @@ -29,6 +29,7 @@ int grib_accessor_class_uint32_little_endian_t::unpack_long(grib_accessor* a, lo return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_uint32_little_endian_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_uint32_little_endian_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_uint64.cc b/src/accessor/grib_accessor_class_uint64.cc index 4c79f7bb4..a800a4630 100644 --- a/src/accessor/grib_accessor_class_uint64.cc +++ b/src/accessor/grib_accessor_class_uint64.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,11 +10,12 @@ #include "grib_accessor_class_uint64.h" -grib_accessor_class_uint64_t _grib_accessor_class_uint64{"uint64"}; +grib_accessor_class_uint64_t _grib_accessor_class_uint64{ "uint64" }; grib_accessor_class* grib_accessor_class_uint64 = &_grib_accessor_class_uint64; -int grib_accessor_class_uint64_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_uint64_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ long value = 0; long pos = a->offset; unsigned char* data = grib_handle_of_accessor(a)->buffer->data; @@ -45,6 +45,7 @@ int grib_accessor_class_uint64_t::unpack_long(grib_accessor* a, long* val, size_ return GRIB_SUCCESS; } -int grib_accessor_class_uint64_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_uint64_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_uint64_little_endian.cc b/src/accessor/grib_accessor_class_uint64_little_endian.cc index 81d0fed37..25e537dbe 100644 --- a/src/accessor/grib_accessor_class_uint64_little_endian.cc +++ b/src/accessor/grib_accessor_class_uint64_little_endian.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,11 +10,12 @@ #include "grib_accessor_class_uint64_little_endian.h" -grib_accessor_class_uint64_little_endian_t _grib_accessor_class_uint64_little_endian{"uint64_little_endian"}; +grib_accessor_class_uint64_little_endian_t _grib_accessor_class_uint64_little_endian{ "uint64_little_endian" }; grib_accessor_class* grib_accessor_class_uint64_little_endian = &_grib_accessor_class_uint64_little_endian; -int grib_accessor_class_uint64_little_endian_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_uint64_little_endian_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ long value = 0; long pos = a->offset; unsigned char* data = grib_handle_of_accessor(a)->buffer->data; @@ -45,6 +45,7 @@ int grib_accessor_class_uint64_little_endian_t::unpack_long(grib_accessor* a, lo return GRIB_SUCCESS; } -int grib_accessor_class_uint64_little_endian_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_uint64_little_endian_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_uint8.cc b/src/accessor/grib_accessor_class_uint8.cc index ce5d88f98..90236aa50 100644 --- a/src/accessor/grib_accessor_class_uint8.cc +++ b/src/accessor/grib_accessor_class_uint8.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,13 +10,14 @@ #include "grib_accessor_class_uint8.h" -grib_accessor_class_uint8_t _grib_accessor_class_uint8{"uint8"}; +grib_accessor_class_uint8_t _grib_accessor_class_uint8{ "uint8" }; grib_accessor_class* grib_accessor_class_uint8 = &_grib_accessor_class_uint8; -int grib_accessor_class_uint8_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - long value = 0; - long pos = a->offset; +int grib_accessor_class_uint8_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ + long value = 0; + long pos = a->offset; unsigned char* data = grib_handle_of_accessor(a)->buffer->data; if (*len < 1) { @@ -31,6 +31,7 @@ int grib_accessor_class_uint8_t::unpack_long(grib_accessor* a, long* val, size_t return GRIB_SUCCESS; } -int grib_accessor_class_uint8_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_uint8_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } From 9f31ef8a394b66a6d631bbc76f85d99dea624eb7 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Thu, 25 Jul 2024 10:55:06 +0000 Subject: [PATCH 085/277] ECC-1883: Better error message when accessor not found --- src/grib_value.cc | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/grib_value.cc b/src/grib_value.cc index 32c637964..51a839da4 100644 --- a/src/grib_value.cc +++ b/src/grib_value.cc @@ -62,6 +62,18 @@ static void print_debug_info__set_array(grib_handle* h, const char* func, const fprintf(stderr, "min=%.10g, max=%.10g\n",minVal,maxVal); } +static void print_error_no_accessor(const grib_context* c, const char* name) +{ + grib_context_log(c, GRIB_LOG_ERROR, "Unable to find accessor %s", name); + const char* dpath = getenv("ECCODES_DEFINITION_PATH"); + if (dpath != NULL) { + grib_context_log(c, GRIB_LOG_ERROR, + "Hint: This could be a symptom of an issue with your definitions.\n\t" + "The environment variable ECCODES_DEFINITION_PATH is defined and set to '%s'.\n\t" + "Please use the latest definitions.", dpath); + } +} + int grib_set_expression(grib_handle* h, const char* name, grib_expression* e) { grib_accessor* a = grib_find_accessor(h, name); @@ -103,7 +115,8 @@ int grib_set_long_internal(grib_handle* h, const char* name, long val) return ret; } - grib_context_log(c, GRIB_LOG_ERROR, "Unable to find accessor %s", name); + print_error_no_accessor(c, name); + //grib_context_log(c, GRIB_LOG_ERROR, "Unable to find accessor %s", name); return GRIB_NOT_FOUND; } @@ -162,7 +175,8 @@ int grib_set_double_internal(grib_handle* h, const char* name, double val) return ret; } - grib_context_log(h->context, GRIB_LOG_ERROR, "Unable to find accessor %s", name); + print_error_no_accessor(h->context, name); + //grib_context_log(h->context, GRIB_LOG_ERROR, "Unable to find accessor %s", name); return GRIB_NOT_FOUND; } @@ -389,7 +403,8 @@ int grib_set_string_internal(grib_handle* h, const char* name, return ret; } - grib_context_log(h->context, GRIB_LOG_ERROR, "Unable to find accessor %s", name); + print_error_no_accessor(h->context, name); + //grib_context_log(h->context, GRIB_LOG_ERROR, "Unable to find accessor %s", name); return GRIB_NOT_FOUND; } From 339d918734b85060bbc167aa0ba7e33651aa9c1b Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Wed, 24 Jul 2024 10:50:39 +0200 Subject: [PATCH 086/277] Use GitHub token to access regression tests --- .github/ci-nightly-test.sh | 17 ++++++++++++----- .github/workflows/reusable-ci-hpc.yml | 6 +++++- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index f83f9ad06..4bf7c14ce 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -14,12 +14,19 @@ module load python3 version=$(cat $TMPDIR/eccodes/VERSION) -# regression_suite_dir=$TMPDIR/eccodes-regression-tests -# mkdir -p $regression_suite_dir -# git clone git@github.com:ecmwf/eccodes-regression-tests.git $regression_suite_dir -# cd $regression_suite_dir +env_check_param="$1" +echo env_check: $env_check_param +echo ENV_CHECK: $ENV_CHECK -cd ~masn/REGRESSION_TESTING/ecCodes +regression_suite_dir=$TMPDIR/eccodes-regression-tests +mkdir -p $regression_suite_dir +git clone https://oauth2:${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir +#git clone https://${GH_TOKEN}:@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir +#git clone https://${GH_TOKEN}:x-oauth-basic@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir +#git clone https://${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir +cd $regression_suite_dir + +#cd ~masn/REGRESSION_TESTING/ecCodes ./par-suite.sh -w $TMPDIR/install/eccodes/$version # For debugging specific test(s) diff --git a/.github/workflows/reusable-ci-hpc.yml b/.github/workflows/reusable-ci-hpc.yml index 1176afc9d..118738153 100644 --- a/.github/workflows/reusable-ci-hpc.yml +++ b/.github/workflows/reusable-ci-hpc.yml @@ -11,6 +11,10 @@ on: type: boolean default: false +env: + GH_TOKEN: ${{ secrets.GH_REPO_READ_TOKEN }} + ENV_CHECK: 'SUCCESS' + jobs: ci-hpc: name: ci-hpc @@ -28,6 +32,6 @@ jobs: --cmake-options: | -DENABLE_EXTRA_TESTS=1 ${{ inputs.nightly_test && '-DENABLE_PNG=1,-DENABLE_NETCDF=1' || '' }} - ${{ inputs.nightly_test && '--post-script: .github/ci-nightly-test.sh' || '' }} + ${{ inputs.nightly_test && '--post-script: .github/ci-nightly-test.sh ${ENV_CHECK}' || '' }} ${{ inputs.nightly_test && '--force-build: true' || '' }} secrets: inherit From 8bcbdf819730ac57f24a711a765765a775cb1ef9 Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Thu, 25 Jul 2024 11:25:05 +0200 Subject: [PATCH 087/277] Pass environment variables to the remote machine --- .github/ci-nightly-test.sh | 9 +-------- .github/workflows/reusable-ci-hpc.yml | 7 ++----- 2 files changed, 3 insertions(+), 13 deletions(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index 4bf7c14ce..1a3dd3f24 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -14,16 +14,9 @@ module load python3 version=$(cat $TMPDIR/eccodes/VERSION) -env_check_param="$1" -echo env_check: $env_check_param -echo ENV_CHECK: $ENV_CHECK - regression_suite_dir=$TMPDIR/eccodes-regression-tests mkdir -p $regression_suite_dir -git clone https://oauth2:${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir -#git clone https://${GH_TOKEN}:@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir -#git clone https://${GH_TOKEN}:x-oauth-basic@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir -#git clone https://${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir +git clone https://${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir cd $regression_suite_dir #cd ~masn/REGRESSION_TESTING/ecCodes diff --git a/.github/workflows/reusable-ci-hpc.yml b/.github/workflows/reusable-ci-hpc.yml index 118738153..b69c04b24 100644 --- a/.github/workflows/reusable-ci-hpc.yml +++ b/.github/workflows/reusable-ci-hpc.yml @@ -11,10 +11,6 @@ on: type: boolean default: false -env: - GH_TOKEN: ${{ secrets.GH_REPO_READ_TOKEN }} - ENV_CHECK: 'SUCCESS' - jobs: ci-hpc: name: ci-hpc @@ -22,6 +18,7 @@ jobs: with: name-prefix: eccodes- build-inputs: | + --env: 'GH_TOKEN=${{ secrets.GH_REPO_READ_TOKEN }}' --package: ${{ inputs.eccodes || 'ecmwf/eccodes@develop' }} --modules: | ecbuild @@ -32,6 +29,6 @@ jobs: --cmake-options: | -DENABLE_EXTRA_TESTS=1 ${{ inputs.nightly_test && '-DENABLE_PNG=1,-DENABLE_NETCDF=1' || '' }} - ${{ inputs.nightly_test && '--post-script: .github/ci-nightly-test.sh ${ENV_CHECK}' || '' }} + ${{ inputs.nightly_test && '--post-script: .github/ci-nightly-test.sh' || '' }} ${{ inputs.nightly_test && '--force-build: true' || '' }} secrets: inherit From 83bd0eba05f2a0a4094c70f26f1e63328c2ffd57 Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Thu, 25 Jul 2024 11:27:51 +0200 Subject: [PATCH 088/277] Change string syntax --- .github/workflows/reusable-ci-hpc.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/reusable-ci-hpc.yml b/.github/workflows/reusable-ci-hpc.yml index b69c04b24..7d1c08ecc 100644 --- a/.github/workflows/reusable-ci-hpc.yml +++ b/.github/workflows/reusable-ci-hpc.yml @@ -18,7 +18,7 @@ jobs: with: name-prefix: eccodes- build-inputs: | - --env: 'GH_TOKEN=${{ secrets.GH_REPO_READ_TOKEN }}' + --env: 'GH_TOKEN='${{ secrets.GH_REPO_READ_TOKEN }} --package: ${{ inputs.eccodes || 'ecmwf/eccodes@develop' }} --modules: | ecbuild From cd68113dc741e3cae641b501b20e8eac25201e90 Mon Sep 17 00:00:00 2001 From: Dusan Figala Date: Thu, 25 Jul 2024 11:57:29 +0200 Subject: [PATCH 089/277] Pass token to to HPC using env var expansion --- .github/workflows/reusable-ci-hpc.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/reusable-ci-hpc.yml b/.github/workflows/reusable-ci-hpc.yml index 7d1c08ecc..5196704c9 100644 --- a/.github/workflows/reusable-ci-hpc.yml +++ b/.github/workflows/reusable-ci-hpc.yml @@ -11,6 +11,9 @@ on: type: boolean default: false +env: + GH_TOKEN: ${{ secrets.GH_REPO_READ_TOKEN }} + jobs: ci-hpc: name: ci-hpc @@ -18,7 +21,7 @@ jobs: with: name-prefix: eccodes- build-inputs: | - --env: 'GH_TOKEN='${{ secrets.GH_REPO_READ_TOKEN }} + --env: GH_TOKEN=${GH_TOKEN} --package: ${{ inputs.eccodes || 'ecmwf/eccodes@develop' }} --modules: | ecbuild From e1259aa68bd681c6a4ddbb2cbf94e1c30cbbaa47 Mon Sep 17 00:00:00 2001 From: Dusan Figala Date: Thu, 25 Jul 2024 12:17:05 +0200 Subject: [PATCH 090/277] Remove deprecated reusable-ci workflows --- .github/workflows/reusable-ci-hpc.yml | 37 --------------------------- .github/workflows/reusable-ci.yml | 30 ---------------------- 2 files changed, 67 deletions(-) delete mode 100644 .github/workflows/reusable-ci-hpc.yml delete mode 100644 .github/workflows/reusable-ci.yml diff --git a/.github/workflows/reusable-ci-hpc.yml b/.github/workflows/reusable-ci-hpc.yml deleted file mode 100644 index 5196704c9..000000000 --- a/.github/workflows/reusable-ci-hpc.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: reusable-ci-hpc - -on: - workflow_call: - inputs: - eccodes: - required: false - type: string - nightly_test: - required: false - type: boolean - default: false - -env: - GH_TOKEN: ${{ secrets.GH_REPO_READ_TOKEN }} - -jobs: - ci-hpc: - name: ci-hpc - uses: ecmwf-actions/reusable-workflows/.github/workflows/ci-hpc.yml@v2 - with: - name-prefix: eccodes- - build-inputs: | - --env: GH_TOKEN=${GH_TOKEN} - --package: ${{ inputs.eccodes || 'ecmwf/eccodes@develop' }} - --modules: | - ecbuild - ninja - aec - netcdf4 - --parallel: 64 - --cmake-options: | - -DENABLE_EXTRA_TESTS=1 - ${{ inputs.nightly_test && '-DENABLE_PNG=1,-DENABLE_NETCDF=1' || '' }} - ${{ inputs.nightly_test && '--post-script: .github/ci-nightly-test.sh' || '' }} - ${{ inputs.nightly_test && '--force-build: true' || '' }} - secrets: inherit diff --git a/.github/workflows/reusable-ci.yml b/.github/workflows/reusable-ci.yml deleted file mode 100644 index 25cc1765e..000000000 --- a/.github/workflows/reusable-ci.yml +++ /dev/null @@ -1,30 +0,0 @@ -name: reusable-ci - -on: - workflow_call: - inputs: - eccodes: - required: false - type: string - codecov: - required: false - type: boolean - default: false - -jobs: - ci: - name: eccodes-ci - uses: ecmwf-actions/reusable-workflows/.github/workflows/ci.yml@v2 - with: - repository: ${{ inputs.eccodes || 'ecmwf/eccodes@develop' }} - name_prefix: eccodes- - codecov_upload: ${{ inputs.codecov }} - build_package_inputs: | - repository: ${{ inputs.eccodes || 'ecmwf/eccodes@develop' }} - self_coverage: true - dependencies: | - ecmwf/ecbuild - MathisRosenhauer/libaec@master - dependency_branch: develop - parallelism_factor: 8 - secrets: inherit From e38656f6969418e23e76b5c78e2298005250a71f Mon Sep 17 00:00:00 2001 From: Dusan Figala Date: Thu, 25 Jul 2024 12:17:49 +0200 Subject: [PATCH 091/277] Switch nightly hpc ci to composite action --- .github/nightly-ci-hpc-config.yml | 15 +++++++++++++++ .github/workflows/nightly.yml | 18 ++++++++++++------ 2 files changed, 27 insertions(+), 6 deletions(-) create mode 100644 .github/nightly-ci-hpc-config.yml diff --git a/.github/nightly-ci-hpc-config.yml b/.github/nightly-ci-hpc-config.yml new file mode 100644 index 000000000..be82c366a --- /dev/null +++ b/.github/nightly-ci-hpc-config.yml @@ -0,0 +1,15 @@ +build: + modules: + - ecbuild + - ninja + - aec + - netcdf4 + parallel: 64 + cmake_options: + - -DENABLE_EXTRA_TESTS=1 + - -DENABLE_PNG=1 + - -DENABLE_NETCDF=1 + force_build: true + post_script: .github/ci-nightly-test.sh + env: + - GH_TOKEN=${GH_TOKEN} diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index e7bd39400..d114942b6 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -5,15 +5,21 @@ on: # Run at 20:00 UTC every day (on default branch) schedule: - - cron: '0 20 * * *' + - cron: "0 20 * * *" jobs: test-hpc: - uses: ./.github/workflows/reusable-ci-hpc.yml - with: - eccodes: ecmwf/eccodes@${{ github.event.pull_request.head.sha || github.sha }} - nightly_test: true - secrets: inherit + runs-on: [self-hosted, linux, hpc] + env: + GH_TOKEN: ${{ secrets.GH_REPO_READ_TOKEN }} + steps: + - uses: ecmwf-actions/reusable-workflows/ci-hpc@v2 + with: + github_user: ${{ secrets.BUILD_PACKAGE_HPC_GITHUB_USER }} + github_token: ${{ secrets.GH_REPO_READ_TOKEN }} + troika_user: ${{ secrets.HPC_CI_SSH_USER }} + repository: ecmwf/eccodes@${{ github.event.pull_request.head.sha || github.sha }} + build_config: .github/nightly-ci-hpc-config.yml test-macos: strategy: From 07212f071fcb2c790956b5e37c4e0bae2250cddc Mon Sep 17 00:00:00 2001 From: Dusan Figala Date: Thu, 25 Jul 2024 12:23:30 +0200 Subject: [PATCH 092/277] Set compiler bins for nightly ci --- .github/nightly-ci-hpc-config.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/nightly-ci-hpc-config.yml b/.github/nightly-ci-hpc-config.yml index be82c366a..b31c16a44 100644 --- a/.github/nightly-ci-hpc-config.yml +++ b/.github/nightly-ci-hpc-config.yml @@ -13,3 +13,6 @@ build: post_script: .github/ci-nightly-test.sh env: - GH_TOKEN=${GH_TOKEN} + compiler_cc: gcc + compiler_cxx: g++ + compiler_fc: gfortran From ad000e37137603bb09733a2b3b5d1670375d2fb1 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 25 Jul 2024 15:42:46 +0100 Subject: [PATCH 093/277] GitHub nightly: Add set -u for unbound variables --- .github/ci-nightly-test.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index 1a3dd3f24..cf7567c5b 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -1,6 +1,6 @@ #!/bin/bash -set -e +set -eu # We do not want to come across the ecCodes tools in the toolbox module unload ecmwf-toolbox @@ -14,12 +14,16 @@ module load python3 version=$(cat $TMPDIR/eccodes/VERSION) +# Note: +# The environment variable "GH_TOKEN" needs to be there for the clone to succeed +# + regression_suite_dir=$TMPDIR/eccodes-regression-tests mkdir -p $regression_suite_dir git clone https://${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir cd $regression_suite_dir -#cd ~masn/REGRESSION_TESTING/ecCodes +# Launch the regression tests in parallel (This script uses GNU parallel) ./par-suite.sh -w $TMPDIR/install/eccodes/$version # For debugging specific test(s) From 5cc5a6ad1cb184ce795d85fa4fcaea6f1c460a64 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 25 Jul 2024 15:43:37 +0100 Subject: [PATCH 094/277] New function grib2_choose_PDTN --- src/eccodes_prototypes.h | 1 + src/grib_util.cc | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index e0a7d3e08..e0582076d 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -872,6 +872,7 @@ int grib2_is_PDTN_ChemicalSourceSink(long productDefinitionTemplateNumber); int grib2_is_PDTN_ChemicalDistFunc(long productDefinitionTemplateNumber); int grib2_is_PDTN_Aerosol(long productDefinitionTemplateNumber); int grib2_is_PDTN_AerosolOptical(long productDefinitionTemplateNumber); +int grib2_choose_PDTN(int current_PDTN, bool is_det, bool is_instant); int grib2_select_PDTN(int is_eps, int is_instant, int is_chemical, int is_chemical_srcsink, int is_chemical_distfn, int is_aerosol, int is_aerosol_optical); size_t sum_of_pl_array(const long* pl, size_t plsize); int grib_is_earth_oblate(const grib_handle* h); diff --git a/src/grib_util.cc b/src/grib_util.cc index 9820b3028..fd586abd6 100644 --- a/src/grib_util.cc +++ b/src/grib_util.cc @@ -1949,6 +1949,45 @@ int grib2_is_PDTN_AerosolOptical(long pdtn) pdtn == 49); } +// Arguments: +// is_det: true for deterministic, false for ensemble +// is_instant: true for instantaneous (point-in-time), false for interval-based (statistically processed) +int grib2_choose_PDTN(int current_PDTN, bool is_det, bool is_instant) +{ + const bool is_ens = !is_det; + const bool is_interval = !is_instant; + + if (grib2_is_PDTN_Plain(current_PDTN)) { + if (is_instant && is_ens) return 1; + if (is_instant && is_det) return 0; + if (is_interval && is_ens) return 11; + if (is_interval && is_det) return 8; + } + + if (grib2_is_PDTN_Chemical(current_PDTN)) { + if (is_instant && is_ens) return 41; + if (is_instant && is_det) return 40; + if (is_interval && is_ens) return 43; + if (is_interval && is_det) return 42; + } + + if (grib2_is_PDTN_ChemicalSourceSink(current_PDTN)) { + if (is_instant && is_ens) return 77; + if (is_instant && is_det) return 76; + if (is_interval && is_ens) return 79; + if (is_interval && is_det) return 78; + } + + if (grib2_is_PDTN_ChemicalDistFunc(current_PDTN)) { + if (is_instant && is_ens) return 58; + if (is_instant && is_det) return 57; + if (is_interval && is_ens) return 68; + if (is_interval && is_det) return 67; + } + + return current_PDTN; // no change +} + // Given some information about the type of grib2 parameter, return the productDefinitionTemplateNumber to use. // All arguments are booleans (0 or 1) // is_eps: ensemble or deterministic From 84a2997883160e65a02bb958e56e9fa982430cad Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 25 Jul 2024 15:44:19 +0100 Subject: [PATCH 095/277] Remove unnecessary grib2 product template setting --- .../grib_accessor_class_local_definition.cc | 180 +++++++++--------- 1 file changed, 91 insertions(+), 89 deletions(-) diff --git a/src/accessor/grib_accessor_class_local_definition.cc b/src/accessor/grib_accessor_class_local_definition.cc index 5fab28691..0646382ca 100644 --- a/src/accessor/grib_accessor_class_local_definition.cc +++ b/src/accessor/grib_accessor_class_local_definition.cc @@ -224,98 +224,100 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo productDefinitionTemplateNumberNew = -1; // disable PDT selection } - // Adjust for atmospheric chemical constituents - if (chemical == 1) { - if (eps == 1) { - if (isInstant) { - productDefinitionTemplateNumberNew = 41; - } - else { - productDefinitionTemplateNumberNew = 43; - } - } - else { - if (isInstant) { - productDefinitionTemplateNumberNew = 40; - } - else { - productDefinitionTemplateNumberNew = 42; - } - } - } - // Adjust for atmospheric chemical constituents based on a distribution function - if (chemical_distfn == 1) { - if (eps == 1) { - if (isInstant) { - productDefinitionTemplateNumberNew = 58; - } - else { - productDefinitionTemplateNumberNew = 68; - } - } - else { - if (isInstant) { - productDefinitionTemplateNumberNew = 57; - } - else { - productDefinitionTemplateNumberNew = 67; - } - } - } + // // Adjust for atmospheric chemical constituents + // if (chemical == 1) { + // if (eps == 1) { + // if (isInstant) { + // Assert(productDefinitionTemplateNumber == 41); + // } + // else { + // Assert(productDefinitionTemplateNumber == 43); + // } + // } + // else { + // if (isInstant) { + // Assert(productDefinitionTemplateNumber == 40); + // } + // else { + // Assert(productDefinitionTemplateNumber == 42); + // } + // } + // } - // Adjust for atmospheric chemical constituents with source or sink - if (chemical_srcsink == 1) { - if (eps == 1) { - if (isInstant) { - productDefinitionTemplateNumberNew = 77; - } - else { - productDefinitionTemplateNumberNew = 79; - } - } - else { - if (isInstant) { - productDefinitionTemplateNumberNew = 76; - } - else { - productDefinitionTemplateNumberNew = 78; - } - } - } + // // Adjust for atmospheric chemical constituents based on a distribution function + // if (chemical_distfn == 1) { + // if (eps == 1) { + // if (isInstant) { + // Assert(productDefinitionTemplateNumber == 58); + // } + // else { + // Assert(productDefinitionTemplateNumber == 68); + // } + // } + // else { + // if (isInstant) { + // Assert(productDefinitionTemplateNumber == 57); + // } + // else { + // Assert(productDefinitionTemplateNumber == 67); + // } + // } + // } + + // // Adjust for atmospheric chemical constituents with source or sink + // if (chemical_srcsink == 1) { + // if (eps == 1) { + // if (isInstant) { + // Assert(productDefinitionTemplateNumber == 77); + // } + // else { + // Assert(productDefinitionTemplateNumber == 79); + // } + // } + // else { + // if (isInstant) { + // Assert(productDefinitionTemplateNumber == 76); + // } + // else { + // Assert(productDefinitionTemplateNumber == 78); + // } + // } + // } // Adjust for aerosols - if (aerosol == 1) { - if (eps == 1) { - if (isInstant) { - productDefinitionTemplateNumberNew = 45; - } - else { - // productDefinitionTemplateNumberNew = 47; This PDT is deprecated - productDefinitionTemplateNumberNew = 85; - } - } - else { - if (isInstant) { - productDefinitionTemplateNumberNew = 48; // 44 is deprecated*/ - } - else { - productDefinitionTemplateNumberNew = 46; - } - } - } - // Adjust for optical properties of aerosol - if (aerosol_optical == 1) { - if (eps == 1) { - if (isInstant) { - productDefinitionTemplateNumberNew = 49; - } - } - else { - if (isInstant) { - productDefinitionTemplateNumberNew = 48; - } - } - } + // if (aerosol == 1) { + // if (eps == 1) { + // if (isInstant) { + // productDefinitionTemplateNumberNew = 45; + // } + // else { + // // productDefinitionTemplateNumberNew = 47; This PDT is deprecated + // productDefinitionTemplateNumberNew = 85; + // } + // } + // else { + // if (isInstant) { + // productDefinitionTemplateNumberNew = 48; // 44 is deprecated*/ + // } + // else { + // productDefinitionTemplateNumberNew = 46; + // } + // } + // } + + // // Adjust for optical properties of aerosol + // if (aerosol_optical == 1) { + // if (eps == 1) { + // if (isInstant) { + // productDefinitionTemplateNumberNew = 49; + // } + // } + // else { + // if (isInstant) { + // productDefinitionTemplateNumberNew = 48; + // } + // } + // } if (productDefinitionTemplateNumberNew >=0 && productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) { if (a->context->debug) { From 8265cf745d419748c32ef2b8350bb833b028338c Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 25 Jul 2024 16:12:19 +0100 Subject: [PATCH 096/277] Testing: Rename --- tests/CMakeLists.txt | 2 +- tests/{grib_local.sh => grib_local_ECMWF.sh} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename tests/{grib_local.sh => grib_local_ECMWF.sh} (100%) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index cedaf00d3..755a84654 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -332,7 +332,7 @@ if( HAVE_BUILD_TOOLS ) grib_bitsPerValue grib_get_fail grib_missing - grib_local + grib_local_ECMWF grib_step grib_set grib_set_fail diff --git a/tests/grib_local.sh b/tests/grib_local_ECMWF.sh similarity index 100% rename from tests/grib_local.sh rename to tests/grib_local_ECMWF.sh From dc88a0a8f90699e087df588000019462d40bca83 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 25 Jul 2024 17:00:36 +0100 Subject: [PATCH 097/277] Testing: grib2_choose_PDTN --- tests/unit_tests.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tests/unit_tests.cc b/tests/unit_tests.cc index d5e228124..22a394548 100644 --- a/tests/unit_tests.cc +++ b/tests/unit_tests.cc @@ -670,6 +670,18 @@ void test_codes_get_type_name() Assert( STR_EQUAL("section", grib_get_type_name(GRIB_TYPE_SECTION)) ); } +void test_grib2_choose_PDTN() +{ + printf("Running %s ...\n", __func__); + int det = true; + int instant = true; + + Assert( 0 == grib2_choose_PDTN(0, det, instant) ); + Assert( 8 == grib2_choose_PDTN(0, det, !instant) ); + Assert( 1 == grib2_choose_PDTN(0, !det, instant) ); + Assert( 11 == grib2_choose_PDTN(0, !det, !instant) ); +} + void test_grib2_select_PDTN() { printf("Running %s ...\n", __func__); @@ -788,6 +800,7 @@ int main(int argc, char** argv) test_string_remove_char(); test_grib2_select_PDTN(); + test_grib2_choose_PDTN(); return 0; } From e319ebe4424111851f80a80cfbd8fb14b3858e60 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 25 Jul 2024 17:46:55 +0100 Subject: [PATCH 098/277] GRIB2 template selection --- src/accessor/grib_accessor_class_g2_eps.cc | 97 +++++++++++----------- src/grib_util.cc | 7 ++ 2 files changed, 57 insertions(+), 47 deletions(-) diff --git a/src/accessor/grib_accessor_class_g2_eps.cc b/src/accessor/grib_accessor_class_g2_eps.cc index dfe88ad28..6eff9619b 100644 --- a/src/accessor/grib_accessor_class_g2_eps.cc +++ b/src/accessor/grib_accessor_class_g2_eps.cc @@ -93,7 +93,8 @@ int grib_accessor_class_g2_eps_t::pack_long(grib_accessor* a, const long* val, s derivedForecast = 4; } else { - productDefinitionTemplateNumberNew = 1; + //productDefinitionTemplateNumberNew = 1; + productDefinitionTemplateNumberNew = grib2_choose_PDTN(productDefinitionTemplateNumber, false, isInstant); } } else { @@ -107,61 +108,63 @@ int grib_accessor_class_g2_eps_t::pack_long(grib_accessor* a, const long* val, s derivedForecast = 4; } else { - productDefinitionTemplateNumberNew = 11; + // productDefinitionTemplateNumberNew = 11; + productDefinitionTemplateNumberNew = grib2_choose_PDTN(productDefinitionTemplateNumber, false, false); } } } else { - if (isInstant) { - productDefinitionTemplateNumberNew = 0; - } - else { - productDefinitionTemplateNumberNew = 8; - } + productDefinitionTemplateNumberNew = grib2_choose_PDTN(productDefinitionTemplateNumber, true, isInstant); + // if (isInstant) { + // productDefinitionTemplateNumberNew = 0; + // } + // else { + // productDefinitionTemplateNumberNew = 8; + // } } // Adjust for chemical species - if (chemical == 1) { - if (eps == 1) { - if (isInstant) { - productDefinitionTemplateNumberNew = 41; - } - else { - productDefinitionTemplateNumberNew = 43; - } - } - else { - if (isInstant) { - productDefinitionTemplateNumberNew = 40; - } - else { - productDefinitionTemplateNumberNew = 42; - } - } - } + // if (chemical == 1) { + // if (eps == 1) { + // if (isInstant) { + // productDefinitionTemplateNumberNew = 41; + // } + // else { + // productDefinitionTemplateNumberNew = 43; + // } + // } + // else { + // if (isInstant) { + // productDefinitionTemplateNumberNew = 40; + // } + // else { + // productDefinitionTemplateNumberNew = 42; + // } + // } + // } // Adjust for aerosols - if (aerosol == 1) { - if (eps == 1) { - if (isInstant) { - productDefinitionTemplateNumberNew = 45; - } - else { - // productDefinitionTemplateNumberNew = 47; This PDT is deprecated - productDefinitionTemplateNumberNew = 85; - } - } - else { - if (isInstant) { - productDefinitionTemplateNumberNew = 48; // 44 is deprecated*/ - } - else { - productDefinitionTemplateNumberNew = 46; - } - } - } - - if (productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) { + // if (aerosol == 1) { + // if (eps == 1) { + // if (isInstant) { + // productDefinitionTemplateNumberNew = 45; + // } + // else { + // // productDefinitionTemplateNumberNew = 47; This PDT is deprecated + // productDefinitionTemplateNumberNew = 85; + // } + // } + // else { + // if (isInstant) { + // productDefinitionTemplateNumberNew = 48; // 44 is deprecated*/ + // } + // else { + // productDefinitionTemplateNumberNew = 46; + // } + // } + // } + + if (productDefinitionTemplateNumberNew >=0 && productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) { grib_set_long(hand, self->productDefinitionTemplateNumber, productDefinitionTemplateNumberNew); if (derivedForecast >= 0) grib_set_long(hand, self->derivedForecast, derivedForecast); diff --git a/src/grib_util.cc b/src/grib_util.cc index fd586abd6..8e08b3a2d 100644 --- a/src/grib_util.cc +++ b/src/grib_util.cc @@ -1985,6 +1985,13 @@ int grib2_choose_PDTN(int current_PDTN, bool is_det, bool is_instant) if (is_interval && is_det) return 67; } + if (current_PDTN == 45 || current_PDTN == 48) { + if (is_instant && is_ens) return 45; + if (is_instant && is_det) return 48; + if (is_interval && is_ens) return 85; + if (is_interval && is_det) return 46; + } + return current_PDTN; // no change } From 5dd85aeb665466ea0b1fe83badbeae119903032c Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 26 Jul 2024 11:35:23 +0100 Subject: [PATCH 099/277] Fortran: Initialise status --- fortran/eccodes_f90_tail.f90 | 68 ++++++++++++++++-------------------- 1 file changed, 31 insertions(+), 37 deletions(-) diff --git a/fortran/eccodes_f90_tail.f90 b/fortran/eccodes_f90_tail.f90 index 24551f8de..fcc0c860b 100644 --- a/fortran/eccodes_f90_tail.f90 +++ b/fortran/eccodes_f90_tail.f90 @@ -960,10 +960,10 @@ end subroutine codes_new_from_file !> @param nmessages number of messages found !> @param status CODES_SUCCESS if OK, CODES_END_OF_FILE at the end of file, or error code subroutine codes_any_scan_file(ifile, nmessages, status) - integer(kind=kindOfInt), intent(in) :: ifile - integer(kind=kindOfInt), intent(out) :: nmessages - integer(kind=kindOfInt) :: iret - integer(kind=kindOfInt), optional, intent(out) :: status + integer(kind=kindOfInt), intent(in) :: ifile + integer(kind=kindOfInt), intent(out) :: nmessages + integer(kind=kindOfInt) :: iret + integer(kind=kindOfInt), optional, intent(out) :: status iret = any_f_scan_file(ifile, nmessages) if (present(status)) then @@ -989,8 +989,8 @@ subroutine codes_any_new_from_scanned_file(ifile, nmsg, msgid, status) integer(kind=kindOfInt), intent(in) :: ifile integer(kind=kindOfInt), intent(in) :: nmsg integer(kind=kindOfInt), intent(out) :: msgid - integer(kind=kindOfInt) :: iret - integer(kind=kindOfInt), optional, intent(out) :: status + integer(kind=kindOfInt) :: iret + integer(kind=kindOfInt), optional, intent(out) :: status iret = any_f_new_from_scanned_file(ifile, nmsg, msgid) if (present(status)) then @@ -1007,10 +1007,10 @@ end subroutine codes_any_new_from_scanned_file !> @param nmessages number of messages loaded !> @param status CODES_SUCCESS if OK, CODES_END_OF_FILE at the end of file, or error code subroutine codes_any_load_all_from_file(ifile, nmessages, status) - integer(kind=kindOfInt), intent(in) :: ifile - integer(kind=kindOfInt), intent(out) :: nmessages - integer(kind=kindOfInt) :: iret - integer(kind=kindOfInt), optional, intent(out) :: status + integer(kind=kindOfInt), intent(in) :: ifile + integer(kind=kindOfInt), intent(out) :: nmessages + integer(kind=kindOfInt) :: iret + integer(kind=kindOfInt), optional, intent(out) :: status iret = any_f_load_all_from_file(ifile, nmessages) if (present(status)) then @@ -2789,43 +2789,37 @@ end subroutine codes_set_definitions_path !> @param path samples path !> @param status CODES_SUCCESS if OK, integer value on error subroutine codes_set_samples_path(path, status) - character(len=*), intent(in) :: path + character(len=*), intent(in) :: path integer(kind=kindOfInt), optional, intent(out) :: status call grib_set_samples_path(path, status) end subroutine codes_set_samples_path subroutine codes_julian_to_datetime(jd, year, month, day, hour, minute, second, status) - real(kind=kindOfDouble), intent(in) :: jd - integer(kind=kindOfLong), intent(out) :: year, month, day, hour, minute, second - integer(kind=kindOfInt), optional, intent(out) :: status + real(kind=kindOfDouble), intent(in) :: jd + integer(kind=kindOfLong), intent(out) :: year, month, day, hour, minute, second + integer(kind=kindOfInt), optional, intent(out) :: status integer(kind=kindOfInt) :: iret iret = grib_f_julian_to_datetime(jd, year, month, day, hour, minute, second) - if (iret /= 0) then - if (present(status)) then - status = iret - else - call grib_check(iret, 'codes_julian_to_datetime', ' ') - end if - return + if (present(status)) then + status = iret + else + call grib_check(iret, 'codes_julian_to_datetime', ' ') end if end subroutine codes_julian_to_datetime subroutine codes_datetime_to_julian(year, month, day, hour, minute, second, jd, status) - integer(kind=kindOfLong), intent(in) :: year, month, day, hour, minute, second - real(kind=kindOfDouble), intent(out) :: jd + integer(kind=kindOfLong), intent(in) :: year, month, day, hour, minute, second + real(kind=kindOfDouble), intent(out) :: jd integer(kind=kindOfInt), optional, intent(out) :: status - integer(kind=kindOfInt) :: iret + integer(kind=kindOfInt) :: iret iret = grib_f_datetime_to_julian(year, month, day, hour, minute, second, jd) - if (iret /= 0) then - if (present(status)) then - status = iret - else - call grib_check(iret, 'codes_datetime_to_julian', ' ') - end if - return + if (present(status)) then + status = iret + else + call grib_check(iret, 'codes_datetime_to_julian', ' ') end if end subroutine codes_datetime_to_julian @@ -2840,11 +2834,11 @@ end subroutine codes_datetime_to_julian !> @param key key whose value is to be copied !> @param status GRIB_SUCCESS if OK, integer value on error subroutine codes_copy_key(msgid_src, key, msgid_dest, status) - integer(kind=kindOfInt), intent(in) :: msgid_src - integer(kind=kindOfInt), intent(in) :: msgid_dest - character(LEN=*), intent(in) :: key + integer(kind=kindOfInt), intent(in) :: msgid_src + integer(kind=kindOfInt), intent(in) :: msgid_dest + character(LEN=*), intent(in) :: key integer(kind=kindOfInt), optional, intent(out) :: status - integer(kind=kindOfInt) :: iret + integer(kind=kindOfInt) :: iret iret = grib_f_copy_key(msgid_src, key, msgid_dest) if (present(status)) then @@ -2856,7 +2850,7 @@ end subroutine codes_copy_key subroutine codes_bufr_multi_element_constant_arrays_on(status) integer(kind=kindOfInt), optional, intent(out) :: status - integer(kind=kindOfInt) :: iret + integer(kind=kindOfInt) :: iret iret = codes_f_bufr_multi_element_constant_arrays_on() if (present(status)) then @@ -2868,7 +2862,7 @@ end subroutine codes_bufr_multi_element_constant_arrays_on subroutine codes_bufr_multi_element_constant_arrays_off(status) integer(kind=kindOfInt), optional, intent(out) :: status - integer(kind=kindOfInt) :: iret + integer(kind=kindOfInt) :: iret iret = codes_f_bufr_multi_element_constant_arrays_off() if (present(status)) then From 49d0a0cd706ef0884bb9547dba24677250395510 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 26 Jul 2024 12:28:10 +0100 Subject: [PATCH 100/277] ECC-1884: GRIB1 regular grids: The geography namespace should include Ni and Nj --- definitions/grib1/grid_definition_latlon.def | 2 ++ 1 file changed, 2 insertions(+) diff --git a/definitions/grib1/grid_definition_latlon.def b/definitions/grib1/grid_definition_latlon.def index c96c93506..3325f4c6b 100644 --- a/definitions/grib1/grid_definition_latlon.def +++ b/definitions/grib1/grid_definition_latlon.def @@ -2,11 +2,13 @@ unsigned[2] Ni : can_be_missing,dump; alias numberOfPointsAlongAParallel=Ni; alias numberOfPointsAlongXAxis=Ni; alias Nx = Ni; +alias geography.Ni=Ni; unsigned[2] Nj : can_be_missing,dump; alias numberOfPointsAlongAMeridian=Nj; alias numberOfPointsAlongYAxis= Nj; alias Ny = Nj; +alias geography.Nj=Nj; # Latitudes and Longitudes of the first and the last points # Resolution and component flags From 2d28023abaf059e15f0534a32db33f864db22fb7 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 26 Jul 2024 12:41:32 +0100 Subject: [PATCH 101/277] Cleanup --- src/accessor/grib_accessor_class_g2_eps.cc | 41 ------- .../grib_accessor_class_local_definition.cc | 102 +----------------- 2 files changed, 1 insertion(+), 142 deletions(-) diff --git a/src/accessor/grib_accessor_class_g2_eps.cc b/src/accessor/grib_accessor_class_g2_eps.cc index 6eff9619b..9a8199053 100644 --- a/src/accessor/grib_accessor_class_g2_eps.cc +++ b/src/accessor/grib_accessor_class_g2_eps.cc @@ -123,47 +123,6 @@ int grib_accessor_class_g2_eps_t::pack_long(grib_accessor* a, const long* val, s // } } - // Adjust for chemical species - // if (chemical == 1) { - // if (eps == 1) { - // if (isInstant) { - // productDefinitionTemplateNumberNew = 41; - // } - // else { - // productDefinitionTemplateNumberNew = 43; - // } - // } - // else { - // if (isInstant) { - // productDefinitionTemplateNumberNew = 40; - // } - // else { - // productDefinitionTemplateNumberNew = 42; - // } - // } - // } - - // Adjust for aerosols - // if (aerosol == 1) { - // if (eps == 1) { - // if (isInstant) { - // productDefinitionTemplateNumberNew = 45; - // } - // else { - // // productDefinitionTemplateNumberNew = 47; This PDT is deprecated - // productDefinitionTemplateNumberNew = 85; - // } - // } - // else { - // if (isInstant) { - // productDefinitionTemplateNumberNew = 48; // 44 is deprecated*/ - // } - // else { - // productDefinitionTemplateNumberNew = 46; - // } - // } - // } - if (productDefinitionTemplateNumberNew >=0 && productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) { grib_set_long(hand, self->productDefinitionTemplateNumber, productDefinitionTemplateNumberNew); if (derivedForecast >= 0) diff --git a/src/accessor/grib_accessor_class_local_definition.cc b/src/accessor/grib_accessor_class_local_definition.cc index 0646382ca..833bc8f08 100644 --- a/src/accessor/grib_accessor_class_local_definition.cc +++ b/src/accessor/grib_accessor_class_local_definition.cc @@ -54,9 +54,6 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo long eps = -1; long chemical = -1; long aerosol = -1; - long chemical_distfn = -1; - long chemical_srcsink = -1; - long aerosol_optical = -1; char stepType[15] = {0,}; size_t slen = 15; int localDefinitionNumber = *val; @@ -81,10 +78,8 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo isInstant = 1; grib_get_long(hand, self->grib2LocalSectionNumber, &grib2LocalSectionNumber); grib_get_long(hand, "is_chemical", &chemical); - grib_get_long(hand, "is_chemical_distfn", &chemical_distfn); - grib_get_long(hand, "is_chemical_srcsink", &chemical_srcsink); grib_get_long(hand, "is_aerosol", &aerosol); - grib_get_long(hand, "is_aerosol_optical", &aerosol_optical); + if (chemical == 1 && aerosol == 1) { grib_context_log(a->context, GRIB_LOG_ERROR, "Parameter cannot be both chemical and aerosol!"); return GRIB_ENCODING_ERROR; @@ -224,101 +219,6 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo productDefinitionTemplateNumberNew = -1; // disable PDT selection } - // // Adjust for atmospheric chemical constituents - // if (chemical == 1) { - // if (eps == 1) { - // if (isInstant) { - // Assert(productDefinitionTemplateNumber == 41); - // } - // else { - // Assert(productDefinitionTemplateNumber == 43); - // } - // } - // else { - // if (isInstant) { - // Assert(productDefinitionTemplateNumber == 40); - // } - // else { - // Assert(productDefinitionTemplateNumber == 42); - // } - // } - // } - - // // Adjust for atmospheric chemical constituents based on a distribution function - // if (chemical_distfn == 1) { - // if (eps == 1) { - // if (isInstant) { - // Assert(productDefinitionTemplateNumber == 58); - // } - // else { - // Assert(productDefinitionTemplateNumber == 68); - // } - // } - // else { - // if (isInstant) { - // Assert(productDefinitionTemplateNumber == 57); - // } - // else { - // Assert(productDefinitionTemplateNumber == 67); - // } - // } - // } - - // // Adjust for atmospheric chemical constituents with source or sink - // if (chemical_srcsink == 1) { - // if (eps == 1) { - // if (isInstant) { - // Assert(productDefinitionTemplateNumber == 77); - // } - // else { - // Assert(productDefinitionTemplateNumber == 79); - // } - // } - // else { - // if (isInstant) { - // Assert(productDefinitionTemplateNumber == 76); - // } - // else { - // Assert(productDefinitionTemplateNumber == 78); - // } - // } - // } - - // Adjust for aerosols - // if (aerosol == 1) { - // if (eps == 1) { - // if (isInstant) { - // productDefinitionTemplateNumberNew = 45; - // } - // else { - // // productDefinitionTemplateNumberNew = 47; This PDT is deprecated - // productDefinitionTemplateNumberNew = 85; - // } - // } - // else { - // if (isInstant) { - // productDefinitionTemplateNumberNew = 48; // 44 is deprecated*/ - // } - // else { - // productDefinitionTemplateNumberNew = 46; - // } - // } - // } - - // // Adjust for optical properties of aerosol - // if (aerosol_optical == 1) { - // if (eps == 1) { - // if (isInstant) { - // productDefinitionTemplateNumberNew = 49; - // } - // } - // else { - // if (isInstant) { - // productDefinitionTemplateNumberNew = 48; - // } - // } - // } - if (productDefinitionTemplateNumberNew >=0 && productDefinitionTemplateNumber != productDefinitionTemplateNumberNew) { if (a->context->debug) { fprintf(stderr, "ECCODES DEBUG %s %s: ldNumber=%d, newPDTN=%ld\n", a->cclass->name, __func__, From a85d671acef21d9ec120b462d6e39a700b51ae9a Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 26 Jul 2024 12:41:42 +0100 Subject: [PATCH 102/277] ECC-1884: GRIB1 regular grids: The geography namespace should include Ni and Nj --- definitions/grib1/grid_definition_gaussian.def | 2 ++ 1 file changed, 2 insertions(+) diff --git a/definitions/grib1/grid_definition_gaussian.def b/definitions/grib1/grid_definition_gaussian.def index 26c855900..005b6d36f 100644 --- a/definitions/grib1/grid_definition_gaussian.def +++ b/definitions/grib1/grid_definition_gaussian.def @@ -1,10 +1,12 @@ unsigned[2] Ni : can_be_missing,dump; alias numberOfPointsAlongAParallel= Ni ; alias Nx =Ni; +alias geography.Ni=Ni; signed[2] Nj : dump; alias numberOfPointsAlongAMeridian=Nj; alias Ny=Nj; +alias geography.Nj=Nj; # Latitudes and Longitudes of the first and the last points # Resolution and component flags From 52ba802da4e855e3154a56156eb5f6bebf337041 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 26 Jul 2024 14:19:39 +0100 Subject: [PATCH 103/277] ECC-1885: GRIB: The 'dirty_statistics' key is always 1 --- data/statistics.out.good | 3 ++ src/accessor/grib_accessor_class_dirty.cc | 16 +++++----- .../grib_accessor_class_statistics.cc | 4 ++- src/accessor/grib_accessor_class_vector.cc | 4 +++ tests/grib_statistics.sh | 30 +++++++++++++------ 5 files changed, 40 insertions(+), 17 deletions(-) diff --git a/data/statistics.out.good b/data/statistics.out.good index a564714b9..f7939dba8 100644 --- a/data/statistics.out.good +++ b/data/statistics.out.good @@ -1,4 +1,7 @@ +Will set values... values=2 2 2 2 max=2 min=2 average=2 +max=2 min=2 average=2 +Will set values... values=2 5 2 2 max=5 min=2 average=2.75 diff --git a/src/accessor/grib_accessor_class_dirty.cc b/src/accessor/grib_accessor_class_dirty.cc index 73f11c9d7..80c51835e 100644 --- a/src/accessor/grib_accessor_class_dirty.cc +++ b/src/accessor/grib_accessor_class_dirty.cc @@ -30,9 +30,10 @@ int grib_accessor_class_dirty_t::pack_long(grib_accessor* a, const long* val, si grib_accessor_dirty_t* self = (grib_accessor_dirty_t*)a; grib_accessor* x = grib_find_accessor(grib_handle_of_accessor(a), self->accessor); - if (x) + if (x) { + //printf("\ngrib_accessor_class_dirty_t::pack_long: Setting dirty to %ld on %s\n", *val, x->name); x->dirty = *val; - + } return GRIB_SUCCESS; } @@ -41,10 +42,11 @@ int grib_accessor_class_dirty_t::unpack_long(grib_accessor* a, long* val, size_t grib_accessor_dirty_t* self = (grib_accessor_dirty_t*)a; grib_accessor* x = grib_find_accessor(grib_handle_of_accessor(a), self->accessor); - if (x) - x->dirty = 1; - - *val = 1; - + if (x) { + //printf("\ngrib_accessor_class_dirty_t::unpack_long: Getting dirty for %s\n", x->name); + *val = x->dirty; + } else { + *val = 1; + } return GRIB_SUCCESS; } diff --git a/src/accessor/grib_accessor_class_statistics.cc b/src/accessor/grib_accessor_class_statistics.cc index 1e56f8a12..7e4a4eca8 100644 --- a/src/accessor/grib_accessor_class_statistics.cc +++ b/src/accessor/grib_accessor_class_statistics.cc @@ -114,7 +114,7 @@ int grib_accessor_class_statistics_t::unpack_double(grib_accessor* a, double* va avg += value; } } - /*printf("stats.......... number_of_missing=%ld\n", number_of_missing);*/ + /* Don't divide by zero if all values are missing! */ if (size != number_of_missing) { avg /= (size - number_of_missing); @@ -148,6 +148,8 @@ int grib_accessor_class_statistics_t::unpack_double(grib_accessor* a, double* va skew = m3 / (sd * sd * sd); kurt = m4 / (m2 * m2) - 3.0; } + + //printf("\ngrib_accessor_class_statistics_t::unpack_double Computed. So setting dirty to 0....... \n"); a->dirty = 0; grib_context_free(c, values); diff --git a/src/accessor/grib_accessor_class_vector.cc b/src/accessor/grib_accessor_class_vector.cc index f08809f6f..a5def256f 100644 --- a/src/accessor/grib_accessor_class_vector.cc +++ b/src/accessor/grib_accessor_class_vector.cc @@ -46,6 +46,7 @@ int grib_accessor_class_vector_t::unpack_double(grib_accessor* a, double* val, s } if (va->dirty) { + //printf("\ngrib_accessor_class_vector_t::unpack_double accessor=%s is DIRTY\n",a->name); grib_get_size(grib_handle_of_accessor(a), self->vector, &size); stat = (double*)grib_context_malloc_clear(a->context, sizeof(double) * size); err = va->unpack_double(stat, &size); @@ -53,6 +54,9 @@ int grib_accessor_class_vector_t::unpack_double(grib_accessor* a, double* val, s if (err) return err; } + else { + //printf("\ngrib_accessor_class_vector_t::unpack_double accessor=%s is CLEAN\n",a->name); + } *val = v->v[self->index]; diff --git a/tests/grib_statistics.sh b/tests/grib_statistics.sh index 6863d591a..9cf7719e3 100755 --- a/tests/grib_statistics.sh +++ b/tests/grib_statistics.sh @@ -18,16 +18,28 @@ files="regular_latlon_surface.grib2 regular_latlon_surface.grib1" for file in $files; do +# Note: When we get min,max etc for the 1st time, dirty_statistics is 1 +# so the statistics accessor will decode the data values (because dirty_statistics==1) +# Once it is finished, it sets dirty_statistics to 0. +# If you get min,max again, no computation is done (because dirty_statistics==0) +# But once the data values are changed, then dirty_statistics is once again 1 cat >statistics.filter< statistics.out From 7f025213e2b28f2bcea6593212d2100ca1c4ede1 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Sat, 27 Jul 2024 12:18:36 +0000 Subject: [PATCH 104/277] Fix the hard coded length for keys of type 'byte' --- tools/grib_compare.cc | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/tools/grib_compare.cc b/tools/grib_compare.cc index ba86c1a1f..330f218e0 100644 --- a/tools/grib_compare.cc +++ b/tools/grib_compare.cc @@ -1095,10 +1095,8 @@ static int compare_values(grib_runtime_options* options, grib_handle* h1, grib_h case GRIB_TYPE_BYTES: if (verbose) printf(" as bytes\n"); - if (len1 < 2) - len1 = 512; - if (len2 < 2) - len2 = 512; + grib_get_string_length(h1, name, &len1); + grib_get_string_length(h2, name, &len2); uval1 = (unsigned char*)grib_context_malloc(h1->context, len1 * sizeof(unsigned char)); uval2 = (unsigned char*)grib_context_malloc(h2->context, len2 * sizeof(unsigned char)); From d098b362bec7534b2a3e77351fb2c3d4143ff79a Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 27 Jul 2024 14:20:23 +0100 Subject: [PATCH 105/277] Formatting and cleanups --- src/accessor/grib_accessor_class_lookup.cc | 49 +++++++------ ...class_number_of_values_data_raw_packing.cc | 25 ++++--- .../grib_accessor_class_octet_number.cc | 18 ++--- src/accessor/grib_accessor_class_padding.cc | 30 ++++---- src/accessor/grib_accessor_class_padto.cc | 18 ++--- src/accessor/grib_accessor_class_padtoeven.cc | 15 ++-- .../grib_accessor_class_padtomultiple.cc | 15 ++-- src/accessor/grib_accessor_class_section.cc | 36 ++++++---- .../grib_accessor_class_section_length.cc | 12 ++-- .../grib_accessor_class_section_pointer.cc | 72 ++++++++++--------- src/grib_value.cc | 5 +- 11 files changed, 161 insertions(+), 134 deletions(-) diff --git a/src/accessor/grib_accessor_class_lookup.cc b/src/accessor/grib_accessor_class_lookup.cc index 17ccd4d61..e58162ccb 100644 --- a/src/accessor/grib_accessor_class_lookup.cc +++ b/src/accessor/grib_accessor_class_lookup.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,39 +10,42 @@ #include "grib_accessor_class_lookup.h" -grib_accessor_class_lookup_t _grib_accessor_class_lookup{"lookup"}; +grib_accessor_class_lookup_t _grib_accessor_class_lookup{ "lookup" }; grib_accessor_class* grib_accessor_class_lookup = &_grib_accessor_class_lookup; -void grib_accessor_class_lookup_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_lookup_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_long_t::init(a, len, arg); grib_accessor_lookup_t* self = (grib_accessor_lookup_t*)a; - a->length = 0; - self->llength = len; - self->loffset = grib_arguments_get_long(grib_handle_of_accessor(a), arg, 0); + + a->length = 0; + self->llength = len; + self->loffset = grib_arguments_get_long(grib_handle_of_accessor(a), arg, 0); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; self->real_name = grib_arguments_get_expression(grib_handle_of_accessor(a), arg, 1); } -void grib_accessor_class_lookup_t::post_init(grib_accessor* a){ +void grib_accessor_class_lookup_t::post_init(grib_accessor* a) +{ grib_accessor_lookup_t* self = (grib_accessor_lookup_t*)a; if (self->real_name) { grib_dependency_observe_expression(a, self->real_name); } } -void grib_accessor_class_lookup_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_lookup_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_accessor_lookup_t* self = (grib_accessor_lookup_t*)a; - unsigned char bytes[1024] = {0,}; + unsigned char bytes[1024] = {0,}; char msg[1024] = {0,}; char buf[2048]; - int i; unsigned long v = 0; size_t llen = self->llength; a->unpack_bytes(bytes, &llen); bytes[llen] = 0; - for (i = 0; i < llen; i++) { + for (size_t i = 0; i < llen; i++) { msg[i] = isprint(bytes[i]) ? bytes[i] : '?'; v <<= 8; v |= bytes[i]; @@ -56,16 +58,16 @@ void grib_accessor_class_lookup_t::dump(grib_accessor* a, grib_dumper* dumper){ grib_dump_long(dumper, a, buf); } -int grib_accessor_class_lookup_t::unpack_string(grib_accessor* a, char* v, size_t* len){ +int grib_accessor_class_lookup_t::unpack_string(grib_accessor* a, char* v, size_t* len) +{ grib_accessor_lookup_t* self = (grib_accessor_lookup_t*)a; - unsigned char bytes[1024] = {0,}; - int i; + unsigned char bytes[1024] = {0,}; size_t llen = self->llength; a->unpack_bytes(bytes, &llen); bytes[llen] = 0; - for (i = 0; i < llen; i++) { + for (size_t i = 0; i < llen; i++) { v[i] = isprint(bytes[i]) ? bytes[i] : '?'; } @@ -87,9 +89,10 @@ int grib_accessor_class_lookup_t::unpack_string(grib_accessor* a, char* v, size_ return GRIB_SUCCESS; } -int grib_accessor_class_lookup_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_lookup_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_lookup_t* self = (grib_accessor_lookup_t*)a; - grib_handle* h = grib_handle_of_accessor(a); + grib_handle* h = grib_handle_of_accessor(a); long pos = (a->offset + self->loffset) * 8; @@ -113,21 +116,25 @@ int grib_accessor_class_lookup_t::unpack_long(grib_accessor* a, long* val, size_ return GRIB_SUCCESS; } -int grib_accessor_class_lookup_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_lookup_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } -long grib_accessor_class_lookup_t::byte_count(grib_accessor* a){ +long grib_accessor_class_lookup_t::byte_count(grib_accessor* a) +{ grib_accessor_lookup_t* self = (grib_accessor_lookup_t*)a; return self->llength; } -long grib_accessor_class_lookup_t::byte_offset(grib_accessor* a){ +long grib_accessor_class_lookup_t::byte_offset(grib_accessor* a) +{ grib_accessor_lookup_t* self = (grib_accessor_lookup_t*)a; return self->loffset; } -int grib_accessor_class_lookup_t::notify_change(grib_accessor* self, grib_accessor* changed){ +int grib_accessor_class_lookup_t::notify_change(grib_accessor* self, grib_accessor* changed) +{ /* Forward changes */ return grib_dependency_notify_change(self); } diff --git a/src/accessor/grib_accessor_class_number_of_values_data_raw_packing.cc b/src/accessor/grib_accessor_class_number_of_values_data_raw_packing.cc index b8f1d667b..c443e7c24 100644 --- a/src/accessor/grib_accessor_class_number_of_values_data_raw_packing.cc +++ b/src/accessor/grib_accessor_class_number_of_values_data_raw_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,28 +10,31 @@ #include "grib_accessor_class_number_of_values_data_raw_packing.h" -grib_accessor_class_number_of_values_data_raw_packing_t _grib_accessor_class_number_of_values_data_raw_packing{"number_of_values_data_raw_packing"}; +grib_accessor_class_number_of_values_data_raw_packing_t _grib_accessor_class_number_of_values_data_raw_packing{ "number_of_values_data_raw_packing" }; grib_accessor_class* grib_accessor_class_number_of_values_data_raw_packing = &_grib_accessor_class_number_of_values_data_raw_packing; -void grib_accessor_class_number_of_values_data_raw_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_number_of_values_data_raw_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, v, args); - int n = 0; grib_accessor_number_of_values_data_raw_packing_t* self = (grib_accessor_number_of_values_data_raw_packing_t*)a; + int n = 0; self->values = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); self->precision = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; a->length = 0; } -int grib_accessor_class_number_of_values_data_raw_packing_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - int err = 0; +int grib_accessor_class_number_of_values_data_raw_packing_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_number_of_values_data_raw_packing_t* self = (grib_accessor_number_of_values_data_raw_packing_t*)a; - grib_accessor* adata = NULL; - long precision = 0; - int bytes = 0; - long byte_count = 0; + + int err = 0; + grib_accessor* adata = NULL; + long precision = 0; + int bytes = 0; + long byte_count = 0; adata = grib_find_accessor(grib_handle_of_accessor(a), self->values); Assert(adata != NULL); @@ -58,6 +60,7 @@ int grib_accessor_class_number_of_values_data_raw_packing_t::unpack_long(grib_ac return err; } -int grib_accessor_class_number_of_values_data_raw_packing_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_number_of_values_data_raw_packing_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_octet_number.cc b/src/accessor/grib_accessor_class_octet_number.cc index 4b270f257..354a39820 100644 --- a/src/accessor/grib_accessor_class_octet_number.cc +++ b/src/accessor/grib_accessor_class_octet_number.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,27 +10,27 @@ #include "grib_accessor_class_octet_number.h" -grib_accessor_class_octet_number_t _grib_accessor_class_octet_number{"octet_number"}; +grib_accessor_class_octet_number_t _grib_accessor_class_octet_number{ "octet_number" }; grib_accessor_class* grib_accessor_class_octet_number = &_grib_accessor_class_octet_number; -void grib_accessor_class_octet_number_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_octet_number_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); grib_accessor_octet_number_t* self = (grib_accessor_octet_number_t*)a; - int n = 0; + int n = 0; self->left = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->right = grib_arguments_get_long(grib_handle_of_accessor(a), c, n++); a->length = 0; } -int grib_accessor_class_octet_number_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_octet_number_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_octet_number_t* self = (grib_accessor_octet_number_t*)a; int ret = GRIB_SUCCESS; - long offset; - - offset = a->offset + self->right; + long offset = a->offset + self->right; if ((ret = grib_set_long_internal(grib_handle_of_accessor(a), self->left, offset)) != GRIB_SUCCESS) return ret; @@ -42,6 +41,7 @@ int grib_accessor_class_octet_number_t::unpack_long(grib_accessor* a, long* val, return ret; } -int grib_accessor_class_octet_number_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_octet_number_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ return GRIB_SUCCESS; } diff --git a/src/accessor/grib_accessor_class_padding.cc b/src/accessor/grib_accessor_class_padding.cc index 499c77f2b..226e4b75b 100644 --- a/src/accessor/grib_accessor_class_padding.cc +++ b/src/accessor/grib_accessor_class_padding.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,48 +10,55 @@ #include "grib_accessor_class_padding.h" -grib_accessor_class_padding_t _grib_accessor_class_padding{"padding"}; +grib_accessor_class_padding_t _grib_accessor_class_padding{ "padding" }; grib_accessor_class* grib_accessor_class_padding = &_grib_accessor_class_padding; -void grib_accessor_class_padding_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_padding_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_bytes_t::init(a, len, arg); a->flags |= GRIB_ACCESSOR_FLAG_EDITION_SPECIFIC; a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_padding_t::compare(grib_accessor* a, grib_accessor* b){ +int grib_accessor_class_padding_t::compare(grib_accessor* a, grib_accessor* b) +{ if (a->length != b->length) return GRIB_COUNT_MISMATCH; return GRIB_SUCCESS; } -void grib_accessor_class_padding_t::update_size(grib_accessor* a, size_t new_size){ +void grib_accessor_class_padding_t::update_size(grib_accessor* a, size_t new_size) +{ a->length = new_size; } -void grib_accessor_class_padding_t::resize(grib_accessor* a, size_t new_size){ +void grib_accessor_class_padding_t::resize(grib_accessor* a, size_t new_size) +{ void* zero = grib_context_malloc_clear(a->context, new_size); grib_buffer_replace(a, (const unsigned char*)zero, new_size, /*update_lengths=*/1, /*update_paddings=*/0); grib_context_free(a->context, zero); - grib_context_log(a->context, GRIB_LOG_DEBUG, - "grib_accessor_class_padding::resize new_size=%zu a->length=%ld %s %s", - new_size, a->length, a->cclass->name, a->name); + grib_context_log(a->context, GRIB_LOG_DEBUG, + "grib_accessor_class_padding::resize new_size=%zu a->length=%ld %s %s", + new_size, a->length, a->cclass->name, a->name); Assert(new_size == a->length); } -int grib_accessor_class_padding_t::value_count(grib_accessor* a, long* c){ +int grib_accessor_class_padding_t::value_count(grib_accessor* a, long* c) +{ *c = a->length; return 0; } -long grib_accessor_class_padding_t::byte_count(grib_accessor* a){ +long grib_accessor_class_padding_t::byte_count(grib_accessor* a) +{ return a->length; } -size_t grib_accessor_class_padding_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_padding_t::string_length(grib_accessor* a) +{ return (size_t)a->length; } diff --git a/src/accessor/grib_accessor_class_padto.cc b/src/accessor/grib_accessor_class_padto.cc index 110d8d858..4fa523acd 100644 --- a/src/accessor/grib_accessor_class_padto.cc +++ b/src/accessor/grib_accessor_class_padto.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,12 +10,12 @@ #include "grib_accessor_class_padto.h" -grib_accessor_class_padto_t _grib_accessor_class_padto{"padto"}; +grib_accessor_class_padto_t _grib_accessor_class_padto{ "padto" }; grib_accessor_class* grib_accessor_class_padto = &_grib_accessor_class_padto; - -size_t grib_accessor_class_padto_t::preferred_size(grib_accessor* a, int from_handle){ +size_t grib_accessor_class_padto_t::preferred_size(grib_accessor* a, int from_handle) +{ grib_accessor_padto_t* self = (grib_accessor_padto_t*)a; long length = 0; @@ -26,13 +25,13 @@ size_t grib_accessor_class_padto_t::preferred_size(grib_accessor* a, int from_ha length = theEnd - a->offset; - /* printf("preferred_size: prefered: %ld current:%ld %s %s %ld\n", (long)length,(long)a->length,a->cclass->name,a->name,(long)a->offset); */ + //printf("preferred_size: prefered: %ld current:%ld %s %s %ld\n", (long)length,(long)a->length,a->cclass->name,a->name,(long)a->offset); return length > 0 ? length : 0; } - -void grib_accessor_class_padto_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_padto_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_padding_t::init(a, len, arg); grib_accessor_padto_t* self = (grib_accessor_padto_t*)a; @@ -40,6 +39,7 @@ void grib_accessor_class_padto_t::init(grib_accessor* a, const long len, grib_ar a->length = preferred_size(a, 1); } -void grib_accessor_class_padto_t::dump(grib_accessor* a, grib_dumper* dumper){ - /*grib_dump_string(dumper,a,NULL);*/ +void grib_accessor_class_padto_t::dump(grib_accessor* a, grib_dumper* dumper) +{ + //grib_dump_string(dumper,a,NULL); } diff --git a/src/accessor/grib_accessor_class_padtoeven.cc b/src/accessor/grib_accessor_class_padtoeven.cc index adf8b0d84..b91a9fb51 100644 --- a/src/accessor/grib_accessor_class_padtoeven.cc +++ b/src/accessor/grib_accessor_class_padtoeven.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,14 +10,15 @@ #include "grib_accessor_class_padtoeven.h" -grib_accessor_class_padtoeven_t _grib_accessor_class_padtoeven{"padtoeven"}; +grib_accessor_class_padtoeven_t _grib_accessor_class_padtoeven{ "padtoeven" }; grib_accessor_class* grib_accessor_class_padtoeven = &_grib_accessor_class_padtoeven; -size_t grib_accessor_class_padtoeven_t::preferred_size(grib_accessor* a, int from_handle){ +size_t grib_accessor_class_padtoeven_t::preferred_size(grib_accessor* a, int from_handle) +{ grib_accessor_padtoeven_t* self = (grib_accessor_padtoeven_t*)a; - long offset = 0; - long length = 0; + long offset = 0; + long length = 0; long seclen; grib_get_long_internal(grib_handle_of_accessor(a), self->section_offset, &offset); @@ -31,13 +31,14 @@ size_t grib_accessor_class_padtoeven_t::preferred_size(grib_accessor* a, int fro return 0; } - /* printf("EVEN %ld %ld\n",(long) a->offset,(long) offset);*/ + // printf("EVEN %ld %ld\n",(long) a->offset,(long) offset); seclen = a->offset - offset; return (seclen % 2) ? 1 : 0; } -void grib_accessor_class_padtoeven_t::init(grib_accessor* a, const long len, grib_arguments* args){ +void grib_accessor_class_padtoeven_t::init(grib_accessor* a, const long len, grib_arguments* args) +{ grib_accessor_class_padding_t::init(a, len, args); grib_accessor_padtoeven_t* self = (grib_accessor_padtoeven_t*)a; diff --git a/src/accessor/grib_accessor_class_padtomultiple.cc b/src/accessor/grib_accessor_class_padtomultiple.cc index d4e463578..b76c1d78a 100644 --- a/src/accessor/grib_accessor_class_padtomultiple.cc +++ b/src/accessor/grib_accessor_class_padtomultiple.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,16 @@ #include "grib_accessor_class_padtomultiple.h" -grib_accessor_class_padtomultiple_t _grib_accessor_class_padtomultiple{"padtomultiple"}; +grib_accessor_class_padtomultiple_t _grib_accessor_class_padtomultiple{ "padtomultiple" }; grib_accessor_class* grib_accessor_class_padtomultiple = &_grib_accessor_class_padtomultiple; -size_t grib_accessor_class_padtomultiple_t::preferred_size(grib_accessor* a, int from_handle){ +size_t grib_accessor_class_padtomultiple_t::preferred_size(grib_accessor* a, int from_handle) +{ grib_accessor_padtomultiple_t* self = (grib_accessor_padtomultiple_t*)a; - long padding = 0; - long begin = 0; - long multiple = 0; + long padding = 0; + long begin = 0; + long multiple = 0; grib_expression_evaluate_long(grib_handle_of_accessor(a), self->begin, &begin); grib_expression_evaluate_long(grib_handle_of_accessor(a), self->multiple, &multiple); @@ -30,7 +30,8 @@ size_t grib_accessor_class_padtomultiple_t::preferred_size(grib_accessor* a, int return padding == 0 ? multiple : padding; } -void grib_accessor_class_padtomultiple_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_padtomultiple_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_padding_t::init(a, len, arg); grib_accessor_padtomultiple_t* self = (grib_accessor_padtomultiple_t*)a; diff --git a/src/accessor/grib_accessor_class_section.cc b/src/accessor/grib_accessor_class_section.cc index ec6e14c2b..8abb7aa01 100644 --- a/src/accessor/grib_accessor_class_section.cc +++ b/src/accessor/grib_accessor_class_section.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,45 +10,51 @@ #include "grib_accessor_class_section.h" -grib_accessor_class_section_t _grib_accessor_class_section{"section"}; +grib_accessor_class_section_t _grib_accessor_class_section{ "section" }; grib_accessor_class* grib_accessor_class_section = &_grib_accessor_class_section; -void grib_accessor_class_section_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_section_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); a->sub_section = grib_section_create(grib_handle_of_accessor(a), a); a->length = 0; a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -void grib_accessor_class_section_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_section_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_section(dumper, a, a->sub_section->block); } -long grib_accessor_class_section_t::byte_count(grib_accessor* a){ +long grib_accessor_class_section_t::byte_count(grib_accessor* a) +{ if (!a->length || grib_handle_of_accessor(a)->loader) { if (a->name[1] == '_') return 0; - /* printf("adjusting sizes SECTION %s is %ld %ld\n",a->name,(long)a->offset,(long)a->length); */ + //printf("adjusting sizes SECTION %s is %ld %ld\n",a->name,(long)a->offset,(long)a->length); grib_section_adjust_sizes(a->sub_section, grib_handle_of_accessor(a)->loader != NULL, 0); - /* printf(" SECTION %s is %ld %ld\n",a->name,(long)a->offset,(long)a->length); */ + //printf(" SECTION %s is %ld %ld\n",a->name,(long)a->offset,(long)a->length); } - /* printf("SECTION %s is %ld %d\n",a->name,a->length,a->sub_section->aclength != NULL); */ + // printf("SECTION %s is %ld %d\n",a->name,a->length,a->sub_section->aclength != NULL); return a->length; } -long grib_accessor_class_section_t::next_offset(grib_accessor* a){ +long grib_accessor_class_section_t::next_offset(grib_accessor* a) +{ return a->offset + a->byte_count(); } -void grib_accessor_class_section_t::destroy(grib_context* ct, grib_accessor* a){ +void grib_accessor_class_section_t::destroy(grib_context* ct, grib_accessor* a) +{ grib_section_delete(ct, a->sub_section); grib_accessor_class_gen_t::destroy(ct, a); } -int grib_accessor_class_section_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_section_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_SECTION; } @@ -58,22 +63,23 @@ grib_section* grib_accessor_class_section_t::sub_section(grib_accessor* a) return a->sub_section; } -void grib_accessor_class_section_t::update_size(grib_accessor* a, size_t length){ +void grib_accessor_class_section_t::update_size(grib_accessor* a, size_t length) +{ size_t size = 1; long len = length; Assert(length <= 0x7fffffff); if (a->sub_section->aclength) { - int e = a->sub_section->aclength->pack_long(&len, &size); Assert(e == GRIB_SUCCESS); + int e = a->sub_section->aclength->pack_long(&len, &size); + Assert(e == GRIB_SUCCESS); // printf("update_length %s %ld %ld\n", a->sub_section->aclength->name, // (long)a->sub_section->aclength->offset, // (long)a->sub_section->aclength->length); } a->sub_section->length = a->length = length; - a->sub_section->padding = 0; + a->sub_section->padding = 0; // printf("update_size %s %ld\n", a->name, a->length); - Assert(a->length >= 0); } diff --git a/src/accessor/grib_accessor_class_section_length.cc b/src/accessor/grib_accessor_class_section_length.cc index bcc75cc2b..8be4cad56 100644 --- a/src/accessor/grib_accessor_class_section_length.cc +++ b/src/accessor/grib_accessor_class_section_length.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,11 +10,12 @@ #include "grib_accessor_class_section_length.h" -grib_accessor_class_section_length_t _grib_accessor_class_section_length{"section_length"}; +grib_accessor_class_section_length_t _grib_accessor_class_section_length{ "section_length" }; grib_accessor_class* grib_accessor_class_section_length = &_grib_accessor_class_section_length; -void grib_accessor_class_section_length_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_section_length_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_unsigned_t::init(a, len, arg); a->parent->aclength = a; a->length = len; @@ -24,11 +24,13 @@ void grib_accessor_class_section_length_t::init(grib_accessor* a, const long len Assert(a->length >= 0); } -void grib_accessor_class_section_length_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_section_length_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_long(dumper, a, NULL); } -int grib_accessor_class_section_length_t::value_count(grib_accessor* a, long* c){ +int grib_accessor_class_section_length_t::value_count(grib_accessor* a, long* c) +{ *c = 1; return 0; } diff --git a/src/accessor/grib_accessor_class_section_pointer.cc b/src/accessor/grib_accessor_class_section_pointer.cc index 72eb78d6d..c7735d504 100644 --- a/src/accessor/grib_accessor_class_section_pointer.cc +++ b/src/accessor/grib_accessor_class_section_pointer.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,16 @@ #include "grib_accessor_class_section_pointer.h" -grib_accessor_class_section_pointer_t _grib_accessor_class_section_pointer{"section_pointer"}; +grib_accessor_class_section_pointer_t _grib_accessor_class_section_pointer{ "section_pointer" }; grib_accessor_class* grib_accessor_class_section_pointer = &_grib_accessor_class_section_pointer; -void grib_accessor_class_section_pointer_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_section_pointer_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); - int n = 0; grib_accessor_section_pointer_t* self = (grib_accessor_section_pointer_t*)a; + int n = 0; self->sectionOffset = grib_arguments_get_name(grib_handle_of_accessor(a), arg, n++); self->sectionLength = grib_arguments_get_name(grib_handle_of_accessor(a), arg, n++); self->sectionNumber = grib_arguments_get_long(grib_handle_of_accessor(a), arg, n++); @@ -29,8 +29,8 @@ void grib_accessor_class_section_pointer_t::init(grib_accessor* a, const long le grib_handle_of_accessor(a)->section_offset[self->sectionNumber] = (char*)self->sectionOffset; grib_handle_of_accessor(a)->section_length[self->sectionNumber] = (char*)self->sectionLength; - /* printf("++++++++++++++ GRIB_API: creating section_pointer%d %s %s\n", */ - /* self->sectionNumber,self->sectionLength,self->sectionLength); */ + // printf("++++++++++++++ creating section_pointer%d %s %s\n", + // self->sectionNumber,self->sectionLength,self->sectionLength); if (grib_handle_of_accessor(a)->sections_count < self->sectionNumber) grib_handle_of_accessor(a)->sections_count = self->sectionNumber; @@ -42,54 +42,56 @@ void grib_accessor_class_section_pointer_t::init(grib_accessor* a, const long le a->length = 0; } -int grib_accessor_class_section_pointer_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_section_pointer_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_BYTES; } -int grib_accessor_class_section_pointer_t::unpack_string(grib_accessor* a, char* v, size_t* len){ - /* - unsigned char* p=NULL; - char* s=v; - int i; - long length=a->byte_count(); - if (*len < length) return GRIB_ARRAY_TOO_SMALL; - - p = grib_handle_of_accessor(a)->buffer->data + a->byte_offset(); - for (i = 0; i < length; i++) { - snprintf (s,64,"%02x", *(p++)); - s+=2; - } - *len=length; - */ - snprintf(v, 64, "%ld_%ld", a->byte_offset(), a->byte_count()); return GRIB_SUCCESS; +int grib_accessor_class_section_pointer_t::unpack_string(grib_accessor* a, char* v, size_t* len) +{ + // unsigned char* p=NULL; + // char* s=v; + // int i; + // long length=a->byte_count(); + // if (*len < length) return GRIB_ARRAY_TOO_SMALL; + + // p = grib_handle_of_accessor(a)->buffer->data + a->byte_offset(); + // for (i = 0; i < length; i++) { + // snprintf (s,64,"%02x", *(p++)); + // s+=2; + // } + // *len=length; + + snprintf(v, 64, "%ld_%ld", a->byte_offset(), a->byte_count()); + return GRIB_SUCCESS; } -long grib_accessor_class_section_pointer_t::byte_count(grib_accessor* a){ +long grib_accessor_class_section_pointer_t::byte_count(grib_accessor* a) +{ grib_accessor_section_pointer_t* self = (grib_accessor_section_pointer_t*)a; long sectionLength = 0; - int ret = 0; - ret = grib_get_long(grib_handle_of_accessor(a), self->sectionLength, §ionLength); - if (ret) { + int err = grib_get_long(grib_handle_of_accessor(a), self->sectionLength, §ionLength); + if (err) { grib_context_log(a->context, GRIB_LOG_ERROR, - "Unable to get %s %s", - self->sectionLength, grib_get_error_message(ret)); + "grib_accessor_class_section_pointer_t::byte_count: Unable to get %s %s", + self->sectionLength, grib_get_error_message(err)); return -1; } return sectionLength; } -long grib_accessor_class_section_pointer_t::byte_offset(grib_accessor* a){ +long grib_accessor_class_section_pointer_t::byte_offset(grib_accessor* a) +{ grib_accessor_section_pointer_t* self = (grib_accessor_section_pointer_t*)a; long sectionOffset = 0; - int ret = 0; - ret = grib_get_long(grib_handle_of_accessor(a), self->sectionOffset, §ionOffset); - if (ret) { + int err = grib_get_long(grib_handle_of_accessor(a), self->sectionOffset, §ionOffset); + if (err) { grib_context_log(a->context, GRIB_LOG_ERROR, - "Unable to get %s %s", - self->sectionOffset, grib_get_error_message(ret)); + "grib_accessor_class_section_pointer_t::byte_offset: Unable to get %s (%s)", + self->sectionOffset, grib_get_error_message(err)); return -1; } diff --git a/src/grib_value.cc b/src/grib_value.cc index 51a839da4..f89cb9725 100644 --- a/src/grib_value.cc +++ b/src/grib_value.cc @@ -272,7 +272,7 @@ int grib_copy_namespace(grib_handle* dest, const char* name, grib_handle* src) switch (type) { case GRIB_TYPE_STRING: - len = 512; + len = 1024; sval = (char*)grib_context_malloc(src->context, len * sizeof(char)); if ((*err = grib_get_string(src, key, sval, &len)) != GRIB_SUCCESS) @@ -309,8 +309,7 @@ int grib_copy_namespace(grib_handle* dest, const char* name, grib_handle* src) break; case GRIB_TYPE_BYTES: - if (len == 0) - len = 512; + len = 1024; uval = (unsigned char*)grib_context_malloc(src->context, len * sizeof(unsigned char)); if ((*err = grib_get_bytes(src, key, uval, &len)) != GRIB_SUCCESS) From 177b1d8c077288c41865a27db8ba447901e846d0 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 27 Jul 2024 19:25:31 +0100 Subject: [PATCH 106/277] Formatting --- src/accessor/grib_accessor_class_bytes.cc | 48 +++++++++++-------- ...r_class_change_alternative_row_scanning.cc | 28 ++++++----- ...b_accessor_class_number_of_coded_values.cc | 27 ++++++----- .../grib_accessor_class_section_padding.cc | 25 +++++----- src/accessor/grib_accessor_class_transient.cc | 6 +-- src/grib_parse_utils.cc | 4 +- tests/grib_filter.sh | 3 ++ 7 files changed, 79 insertions(+), 62 deletions(-) diff --git a/src/accessor/grib_accessor_class_bytes.cc b/src/accessor/grib_accessor_class_bytes.cc index 47c8713ae..b95b2338a 100644 --- a/src/accessor/grib_accessor_class_bytes.cc +++ b/src/accessor/grib_accessor_class_bytes.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,36 +10,42 @@ #include "grib_accessor_class_bytes.h" -grib_accessor_class_bytes_t _grib_accessor_class_bytes{"bytes"}; +grib_accessor_class_bytes_t _grib_accessor_class_bytes{ "bytes" }; grib_accessor_class* grib_accessor_class_bytes = &_grib_accessor_class_bytes; -void grib_accessor_class_bytes_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_bytes_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); /*grib_accessor_signed* self = (grib_accessor_signed*)a; */ a->length = len; Assert(a->length >= 0); } -int grib_accessor_class_bytes_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_bytes_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_BYTES; } -int grib_accessor_class_bytes_t::compare(grib_accessor* a, grib_accessor* b){ +int grib_accessor_class_bytes_t::compare(grib_accessor* a, grib_accessor* b) +{ int retval = GRIB_SUCCESS; - size_t alen = (size_t)a->byte_count(); size_t blen = (size_t)b->byte_count(); + size_t alen = (size_t)a->byte_count(); + size_t blen = (size_t)b->byte_count(); if (alen != blen) return GRIB_COUNT_MISMATCH; return retval; } -int grib_accessor_class_bytes_t::unpack_string(grib_accessor* a, char* v, size_t* len){ - unsigned char* p = NULL; - char* s = v; - long i = 0; - const long length = a->byte_count(); const long slength = 2 * length; +int grib_accessor_class_bytes_t::unpack_string(grib_accessor* a, char* v, size_t* len) +{ + unsigned char* p = NULL; + char* s = v; + long i = 0; + const long length = a->byte_count(); + const long slength = 2 * length; if (*len < (size_t)slength) { *len = slength; @@ -58,33 +63,34 @@ int grib_accessor_class_bytes_t::unpack_string(grib_accessor* a, char* v, size_t return GRIB_SUCCESS; } -int grib_accessor_class_bytes_t::pack_string(grib_accessor* a, const char* val, size_t* len){ +int grib_accessor_class_bytes_t::pack_string(grib_accessor* a, const char* val, size_t* len) +{ /* The string representation (val) of the byte array will have two chars * per byte e.g. 4C5B means the 2 bytes 0114 and 0133 in octal * so has to be twice the length of the byte array */ - int err = 0; - grib_context* c = a->context; - size_t nbytes = a->length; + int err = 0; + grib_context* c = a->context; + size_t nbytes = a->length; const size_t expected_blen = nbytes; const size_t expected_slen = 2 * expected_blen; - unsigned char* bytearray = NULL; + unsigned char* bytearray = NULL; size_t i = 0, slen = strlen(val); if (slen != expected_slen || *len != expected_slen) { grib_context_log(c, GRIB_LOG_ERROR, - "%s: Key %s is %lu bytes. Expected a string with %lu characters (actual length=%zu)", - __func__, a->name, expected_blen, expected_slen, *len); + "%s: Key %s is %lu bytes. Expected a string with %lu characters (actual length=%zu)", + __func__, a->name, expected_blen, expected_slen, *len); return GRIB_WRONG_ARRAY_SIZE; } bytearray = (unsigned char*)grib_context_malloc(c, nbytes * (sizeof(unsigned char))); if (!bytearray) return GRIB_OUT_OF_MEMORY; - for (i = 0; i < (slen/2); i++) { + for (i = 0; i < (slen / 2); i++) { unsigned int byteVal = 0; - if (sscanf(val + 2*i, "%02x", &byteVal) != 1) { - grib_context_log(c, GRIB_LOG_ERROR,"%s: Invalid hex byte specfication '%.2s'", __func__, val + 2*i); + if (sscanf(val + 2 * i, "%02x", &byteVal) != 1) { + grib_context_log(c, GRIB_LOG_ERROR, "%s: Invalid hex byte specfication '%.2s'", __func__, val + 2 * i); grib_context_free(c, bytearray); return GRIB_INVALID_KEY_VALUE; } diff --git a/src/accessor/grib_accessor_class_change_alternative_row_scanning.cc b/src/accessor/grib_accessor_class_change_alternative_row_scanning.cc index 50475b6a6..afd372549 100644 --- a/src/accessor/grib_accessor_class_change_alternative_row_scanning.cc +++ b/src/accessor/grib_accessor_class_change_alternative_row_scanning.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,16 @@ #include "grib_accessor_class_change_alternative_row_scanning.h" -grib_accessor_class_change_alternative_row_scanning_t _grib_accessor_class_change_alternative_row_scanning{"change_alternative_row_scanning"}; +grib_accessor_class_change_alternative_row_scanning_t _grib_accessor_class_change_alternative_row_scanning{ "change_alternative_row_scanning" }; grib_accessor_class* grib_accessor_class_change_alternative_row_scanning = &_grib_accessor_class_change_alternative_row_scanning; -void grib_accessor_class_change_alternative_row_scanning_t::init(grib_accessor* a, const long len, grib_arguments* args){ +void grib_accessor_class_change_alternative_row_scanning_t::init(grib_accessor* a, const long len, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, len, args); - int n = 0; grib_accessor_change_alternative_row_scanning_t* self = (grib_accessor_change_alternative_row_scanning_t*)a; + int n = 0; self->values = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); self->Ni = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); self->Nj = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); @@ -29,15 +29,17 @@ void grib_accessor_class_change_alternative_row_scanning_t::init(grib_accessor* a->length = 0; } -int grib_accessor_class_change_alternative_row_scanning_t::pack_long(grib_accessor* a, const long* val, size_t* len){ - int err = 0; +int grib_accessor_class_change_alternative_row_scanning_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_change_alternative_row_scanning_t* self = (grib_accessor_change_alternative_row_scanning_t*)a; + + int err = 0; const grib_context* c = a->context; - grib_handle* h = grib_handle_of_accessor(a); + grib_handle* h = grib_handle_of_accessor(a); long i, j, jr, theEnd, Ni, Nj, k, kp, alternativeRowScanning; - size_t size = 0; + size_t size = 0; double* values = NULL; - double tmp = 0.0; + double tmp = 0.0; if (*val == 0) return 0; @@ -62,7 +64,7 @@ int grib_accessor_class_change_alternative_row_scanning_t::pack_long(grib_access if ((err = grib_get_size(h, self->values, &size)) != GRIB_SUCCESS) return err; - if ( size > (size_t)(Ni * Nj) ) { + if (size > (size_t)(Ni * Nj)) { grib_context_log(c, GRIB_LOG_ERROR, "change_alternative_row_scanning: wrong values size!=Ni*Nj (%zu!=%ld*%ld)", size, Ni, Nj); return GRIB_WRONG_ARRAY_SIZE; } @@ -106,11 +108,13 @@ int grib_accessor_class_change_alternative_row_scanning_t::pack_long(grib_access return GRIB_SUCCESS; } -int grib_accessor_class_change_alternative_row_scanning_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_change_alternative_row_scanning_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } -int grib_accessor_class_change_alternative_row_scanning_t::unpack_long(grib_accessor* a, long* v, size_t* len){ +int grib_accessor_class_change_alternative_row_scanning_t::unpack_long(grib_accessor* a, long* v, size_t* len) +{ /* Decoding this accessor doesn't make sense so we return a dummy value */ *v = -1; return GRIB_SUCCESS; diff --git a/src/accessor/grib_accessor_class_number_of_coded_values.cc b/src/accessor/grib_accessor_class_number_of_coded_values.cc index f1023dd2e..a4410d75d 100644 --- a/src/accessor/grib_accessor_class_number_of_coded_values.cc +++ b/src/accessor/grib_accessor_class_number_of_coded_values.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,25 +10,28 @@ #include "grib_accessor_class_number_of_coded_values.h" -grib_accessor_class_number_of_coded_values_t _grib_accessor_class_number_of_coded_values{"number_of_coded_values"}; +grib_accessor_class_number_of_coded_values_t _grib_accessor_class_number_of_coded_values{ "number_of_coded_values" }; grib_accessor_class* grib_accessor_class_number_of_coded_values = &_grib_accessor_class_number_of_coded_values; -void grib_accessor_class_number_of_coded_values_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_number_of_coded_values_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); - int n = 0; grib_accessor_number_of_coded_values_t* self = (grib_accessor_number_of_coded_values_t*)a; - self->bitsPerValue = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->offsetBeforeData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->offsetAfterData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->unusedBits = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->numberOfValues = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + + int n = 0; + self->bitsPerValue = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->offsetBeforeData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->offsetAfterData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->unusedBits = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->numberOfValues = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; a->flags |= GRIB_ACCESSOR_FLAG_FUNCTION; a->length = 0; } -int grib_accessor_class_number_of_coded_values_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_number_of_coded_values_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ int ret = GRIB_SUCCESS; long bpv = 0; long offsetBeforeData = 0, offsetAfterData = 0, unusedBits = 0, numberOfValues; @@ -50,8 +52,9 @@ int grib_accessor_class_number_of_coded_values_t::unpack_long(grib_accessor* a, return ret; if (bpv != 0) { - grib_context_log(a->context, GRIB_LOG_DEBUG, "grib_accessor_number_of_coded_values_t: offsetAfterData=%ld offsetBeforeData=%ld unusedBits=%ld bpv=%ld\n", - offsetAfterData, offsetBeforeData, unusedBits, bpv); + grib_context_log(a->context, GRIB_LOG_DEBUG, + "grib_accessor_number_of_coded_values_t: offsetAfterData=%ld offsetBeforeData=%ld unusedBits=%ld bpv=%ld\n", + offsetAfterData, offsetBeforeData, unusedBits, bpv); DEBUG_ASSERT(offsetAfterData > offsetBeforeData); *val = ((offsetAfterData - offsetBeforeData) * 8 - unusedBits) / bpv; } diff --git a/src/accessor/grib_accessor_class_section_padding.cc b/src/accessor/grib_accessor_class_section_padding.cc index c3457898f..f811313d6 100644 --- a/src/accessor/grib_accessor_class_section_padding.cc +++ b/src/accessor/grib_accessor_class_section_padding.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,18 +10,19 @@ #include "grib_accessor_class_section_padding.h" -grib_accessor_class_section_padding_t _grib_accessor_class_section_padding{"section_padding"}; +grib_accessor_class_section_padding_t _grib_accessor_class_section_padding{ "section_padding" }; grib_accessor_class* grib_accessor_class_section_padding = &_grib_accessor_class_section_padding; -size_t grib_accessor_class_section_padding_t::preferred_size(grib_accessor* a, int from_handle){ +size_t grib_accessor_class_section_padding_t::preferred_size(grib_accessor* a, int from_handle) +{ grib_accessor_section_padding_t* self = (grib_accessor_section_padding_t*)a; - grib_accessor* b = a; - grib_accessor* section_length = 0; - long length = 0; - size_t size = 1; - long alength = 0; + grib_accessor* b = a; + grib_accessor* section_length = 0; + long length = 0; + size_t size = 1; + long alength = 0; if (!from_handle) { if (self->preserve) @@ -34,7 +34,7 @@ size_t grib_accessor_class_section_padding_t::preferred_size(grib_accessor* a, i /* The section length should be a parameter */ while (section_length == NULL && b != NULL) { section_length = b->parent->aclength; - b = b->parent->owner; + b = b->parent->owner; } if (!section_length) { @@ -62,9 +62,10 @@ size_t grib_accessor_class_section_padding_t::preferred_size(grib_accessor* a, i return alength; } -void grib_accessor_class_section_padding_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_section_padding_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_padding_t::init(a, len, arg); grib_accessor_section_padding_t* self = (grib_accessor_section_padding_t*)a; - self->preserve = 1; /* This should be a parameter */ - a->length = preferred_size(a, 1); + self->preserve = 1; /* This should be a parameter */ + a->length = preferred_size(a, 1); } diff --git a/src/accessor/grib_accessor_class_transient.cc b/src/accessor/grib_accessor_class_transient.cc index 0cda763d0..d40fdc9cc 100644 --- a/src/accessor/grib_accessor_class_transient.cc +++ b/src/accessor/grib_accessor_class_transient.cc @@ -10,11 +10,11 @@ #include "grib_accessor_class_transient.h" -grib_accessor_class_transient_t _grib_accessor_class_transient{"transient"}; +grib_accessor_class_transient_t _grib_accessor_class_transient{ "transient" }; grib_accessor_class* grib_accessor_class_transient = &_grib_accessor_class_transient; -void grib_accessor_class_transient_t::init(grib_accessor* a, const long l, grib_arguments* args) { +void grib_accessor_class_transient_t::init(grib_accessor* a, const long l, grib_arguments* args) +{ grib_accessor_class_variable_t::init(a, l, args); } - diff --git a/src/grib_parse_utils.cc b/src/grib_parse_utils.cc index 98a01cd7b..ed65572d5 100644 --- a/src/grib_parse_utils.cc +++ b/src/grib_parse_utils.cc @@ -92,7 +92,7 @@ int grib_recompose_name(grib_handle* h, grib_accessor* observer, const char* una fname[0] = 0; ptrEnd_fname = fname; - /* uname is a string like "grib[GRIBEditionNumber:l]/boot.def". The result fname will be grib2/boot.def */ + /* uname is a string like "grib[GRIBEditionNumber:i]/boot.def". The result fname will be grib2/boot.def */ while (uname[i] != '\0') { if (mode > -1) { if (uname[i] == ':') { @@ -109,7 +109,7 @@ int grib_recompose_name(grib_handle* h, grib_accessor* observer, const char* una } else { grib_context_log(h->context, GRIB_LOG_WARNING, - "Recompose name: Problem recomposing filename with : %s ( %s no accessor found)", uname, loc); + "%s: Problem recomposing filename with: %s (%s no accessor found)", __func__, uname, loc); return GRIB_NOT_FOUND; } } diff --git a/tests/grib_filter.sh b/tests/grib_filter.sh index e85eb2c6c..4f4ab00be 100755 --- a/tests/grib_filter.sh +++ b/tests/grib_filter.sh @@ -424,6 +424,9 @@ set -e [ $status -ne 0 ] ${tools_dir}/grib_compare $input $tempGrib # compare should succeed +# Write statement with key of type double +input=$data_dir/sample.grib2 +echo 'write "delete_me_[referenceValue:d]";' | ${tools_dir}/grib_filter - $input # GTS header # --------------- From 36223c395f7d70848d458700fdfd44141658a1a2 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 29 Jul 2024 11:51:54 +0100 Subject: [PATCH 107/277] Formatting and cleanups --- ...grib_accessor_class_bufr_elements_table.cc | 6 +- ...sor_class_bufr_extract_datetime_subsets.cc | 17 +--- ...ccessor_class_change_scanning_direction.cc | 35 ++++--- ...b_accessor_class_check_internal_version.cc | 12 ++- .../grib_accessor_class_closest_date.cc | 53 +++++----- .../grib_accessor_class_decimal_precision.cc | 31 +++--- src/accessor/grib_accessor_class_g1bitmap.cc | 30 +++--- src/accessor/grib_accessor_class_g1date.cc | 34 ++++--- ...ass_g1number_of_coded_values_sh_complex.cc | 28 +++--- ...lass_g1number_of_coded_values_sh_simple.cc | 26 ++--- .../grib_accessor_class_g1step_range.cc | 97 +++++++++++-------- src/accessor/grib_accessor_class_group.cc | 41 +++++--- .../grib_accessor_class_gts_header.cc | 29 +++--- .../grib_accessor_class_hash_array.cc | 72 ++++++++------ .../grib_accessor_class_headers_only.cc | 12 ++- src/accessor/grib_accessor_class_ifs_param.cc | 27 +++--- .../grib_accessor_class_ksec1expver.cc | 35 ++++--- src/accessor/grib_accessor_class_label.cc | 15 +-- src/accessor/grib_accessor_class_long.cc | 3 +- .../grib_accessor_class_mars_param.cc | 27 +++--- src/accessor/grib_accessor_class_message.cc | 28 +++--- .../grib_accessor_class_message_copy.cc | 21 ++-- .../grib_accessor_class_multdouble.cc | 13 +-- src/accessor/grib_accessor_class_non_alpha.cc | 36 ++++--- .../grib_accessor_class_pack_bufr_values.cc | 50 ++++++---- src/accessor/grib_accessor_class_pad.cc | 24 +++-- 26 files changed, 447 insertions(+), 355 deletions(-) diff --git a/src/accessor/grib_accessor_class_bufr_elements_table.cc b/src/accessor/grib_accessor_class_bufr_elements_table.cc index 04a61d02b..a4db0249b 100644 --- a/src/accessor/grib_accessor_class_bufr_elements_table.cc +++ b/src/accessor/grib_accessor_class_bufr_elements_table.cc @@ -67,10 +67,8 @@ static grib_trie* load_bufr_elements_table(grib_accessor* a, int* err) char masterDir[1024] = {0,}; char localDir[1024] = {0,}; char dictName[1024] = {0,}; - char masterRecomposed[1024] = {0,}; /*e.g. bufr/tables/0/wmo/36/element.table */ - char localRecomposed[1024] = { - 0, - }; /*e.g. bufr/tables/0/local/0/98/0/element.table */ + char masterRecomposed[1024] = {0,}; //e.g. bufr/tables/0/wmo/36/element.table + char localRecomposed[1024] = {0,}; //e.g. bufr/tables/0/local/0/98/0/element.table char* localFilename = 0; char** list = 0; char** cached_list = 0; diff --git a/src/accessor/grib_accessor_class_bufr_extract_datetime_subsets.cc b/src/accessor/grib_accessor_class_bufr_extract_datetime_subsets.cc index d47652984..fc49cdcae 100644 --- a/src/accessor/grib_accessor_class_bufr_extract_datetime_subsets.cc +++ b/src/accessor/grib_accessor_class_bufr_extract_datetime_subsets.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -88,9 +87,7 @@ static int build_long_array(grib_context* c, grib_handle* h, int compressed, } else { /* uncompressed */ - char keystr[32] = { - 0, - }; + char keystr[32] = {0,}; size_t values_len = 0; for (i = 0; i < numberOfSubsets; ++i) { long lVal = 0; @@ -118,15 +115,9 @@ static int select_datetime(grib_accessor* a) grib_context* c = h->context; size_t n; double julianStart = 0, julianEnd = 0, julianDT = 0; - char start_str[80] = { - 0, - }, - end_str[80] = { - 0, - }, - datetime_str[80] = { - 0, - }; + char start_str[80] = {0,}, + end_str[80] = {0,}, + datetime_str[80] = {0,}; long yearRank, monthRank, dayRank, hourRank, minuteRank, secondRank; long yearStart, monthStart, dayStart, hourStart, minuteStart, secondStart; long yearEnd, monthEnd, dayEnd, hourEnd, minuteEnd, secondEnd; diff --git a/src/accessor/grib_accessor_class_change_scanning_direction.cc b/src/accessor/grib_accessor_class_change_scanning_direction.cc index e3b6144c9..e98df6f93 100644 --- a/src/accessor/grib_accessor_class_change_scanning_direction.cc +++ b/src/accessor/grib_accessor_class_change_scanning_direction.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,16 +10,17 @@ #include "grib_accessor_class_change_scanning_direction.h" -grib_accessor_class_change_scanning_direction_t _grib_accessor_class_change_scanning_direction{"change_scanning_direction"}; +grib_accessor_class_change_scanning_direction_t _grib_accessor_class_change_scanning_direction{ "change_scanning_direction" }; grib_accessor_class* grib_accessor_class_change_scanning_direction = &_grib_accessor_class_change_scanning_direction; -void grib_accessor_class_change_scanning_direction_t::init(grib_accessor* a, const long len, grib_arguments* args){ +void grib_accessor_class_change_scanning_direction_t::init(grib_accessor* a, const long len, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, len, args); grib_accessor_change_scanning_direction_t* self = (grib_accessor_change_scanning_direction_t*)a; grib_handle* h = grib_handle_of_accessor(a); - int n = 0; + int n = 0; self->values = grib_arguments_get_name(h, args, n++); self->Ni = grib_arguments_get_name(h, args, n++); self->Nj = grib_arguments_get_name(h, args, n++); @@ -34,20 +34,21 @@ void grib_accessor_class_change_scanning_direction_t::init(grib_accessor* a, con a->length = 0; } -int grib_accessor_class_change_scanning_direction_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_change_scanning_direction_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ int err = 0; long i, j, jr, theEnd, Ni, Nj, k, kp; double tmp; - long iScansNegatively = 0; - long jScansPositively = 0; - double first = 0; - double last = 0; - size_t size = 0; - double* values = NULL; + long iScansNegatively = 0; + long jScansPositively = 0; + double first = 0; + double last = 0; + size_t size = 0; + double* values = NULL; grib_accessor_change_scanning_direction_t* self = (grib_accessor_change_scanning_direction_t*)a; - const grib_context* c = a->context; - grib_handle* h = grib_handle_of_accessor(a); - const char* cclass_name = a->cclass->name; + const grib_context* c = a->context; + grib_handle* h = grib_handle_of_accessor(a); + const char* cclass_name = a->cclass->name; if (*val == 0) return GRIB_SUCCESS; @@ -147,11 +148,13 @@ int grib_accessor_class_change_scanning_direction_t::pack_long(grib_accessor* a, return GRIB_SUCCESS; } -int grib_accessor_class_change_scanning_direction_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_change_scanning_direction_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } -int grib_accessor_class_change_scanning_direction_t::unpack_long(grib_accessor* a, long* v, size_t* len){ +int grib_accessor_class_change_scanning_direction_t::unpack_long(grib_accessor* a, long* v, size_t* len) +{ /* ECC-976: decoding this accessor doesn't make sense so we return a dummy value */ *v = -1; return GRIB_SUCCESS; diff --git a/src/accessor/grib_accessor_class_check_internal_version.cc b/src/accessor/grib_accessor_class_check_internal_version.cc index f8ceb1896..3dc480820 100644 --- a/src/accessor/grib_accessor_class_check_internal_version.cc +++ b/src/accessor/grib_accessor_class_check_internal_version.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,7 +10,7 @@ #include "grib_accessor_class_check_internal_version.h" -grib_accessor_class_check_internal_version_t _grib_accessor_class_check_internal_version{"check_internal_version"}; +grib_accessor_class_check_internal_version_t _grib_accessor_class_check_internal_version{ "check_internal_version" }; grib_accessor_class* grib_accessor_class_check_internal_version = &_grib_accessor_class_check_internal_version; @@ -20,7 +19,8 @@ grib_accessor_class* grib_accessor_class_check_internal_version = &_grib_accesso /* See the key "internalVersion" */ #define LATEST_ENGINE_VERSION 30 -void grib_accessor_class_check_internal_version_t::init(grib_accessor* a, const long l, grib_arguments* args){ +void grib_accessor_class_check_internal_version_t::init(grib_accessor* a, const long l, grib_arguments* args) +{ grib_accessor_class_ascii_t::init(a, l, args); /* Check version of definition files is compatible with the engine */ int err = 0; @@ -41,11 +41,13 @@ void grib_accessor_class_check_internal_version_t::init(grib_accessor* a, const } } -int grib_accessor_class_check_internal_version_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_check_internal_version_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -size_t grib_accessor_class_check_internal_version_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_check_internal_version_t::string_length(grib_accessor* a) +{ return 255; } diff --git a/src/accessor/grib_accessor_class_closest_date.cc b/src/accessor/grib_accessor_class_closest_date.cc index b0b3bb512..5113de7ae 100644 --- a/src/accessor/grib_accessor_class_closest_date.cc +++ b/src/accessor/grib_accessor_class_closest_date.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -12,34 +11,37 @@ #include "grib_accessor_class_closest_date.h" #include -grib_accessor_class_closest_date_t _grib_accessor_class_closest_date{"closest_date"}; +grib_accessor_class_closest_date_t _grib_accessor_class_closest_date{ "closest_date" }; grib_accessor_class* grib_accessor_class_closest_date = &_grib_accessor_class_closest_date; -void grib_accessor_class_closest_date_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_closest_date_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); grib_accessor_closest_date_t* self = (grib_accessor_closest_date_t*)a; - grib_handle* h = grib_handle_of_accessor(a); - int n = 0; + grib_handle* h = grib_handle_of_accessor(a); + int n = 0; - self->dateLocal = grib_arguments_get_name(h, c, n++); - self->timeLocal = grib_arguments_get_name(h, c, n++); + self->dateLocal = grib_arguments_get_name(h, c, n++); + self->timeLocal = grib_arguments_get_name(h, c, n++); self->numForecasts = grib_arguments_get_name(h, c, n++); - self->year = grib_arguments_get_name(h, c, n++); - self->month = grib_arguments_get_name(h, c, n++); - self->day = grib_arguments_get_name(h, c, n++); - self->hour = grib_arguments_get_name(h, c, n++); - self->minute = grib_arguments_get_name(h, c, n++); - self->second = grib_arguments_get_name(h, c, n++); + self->year = grib_arguments_get_name(h, c, n++); + self->month = grib_arguments_get_name(h, c, n++); + self->day = grib_arguments_get_name(h, c, n++); + self->hour = grib_arguments_get_name(h, c, n++); + self->minute = grib_arguments_get_name(h, c, n++); + self->second = grib_arguments_get_name(h, c, n++); a->length = 0; } -void grib_accessor_class_closest_date_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_closest_date_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -int grib_accessor_class_closest_date_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_closest_date_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ int ret = 0; double v = 0; @@ -50,24 +52,25 @@ int grib_accessor_class_closest_date_t::unpack_long(grib_accessor* a, long* val, } /* Sets val to the 'index' of the closes date */ -int grib_accessor_class_closest_date_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_closest_date_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ const grib_accessor_closest_date_t* self = (grib_accessor_closest_date_t*)a; - int err = 0; + int err = 0; long num_forecasts = 0; /* numberOfForecastsUsedInLocalTime */ /* These relate to the date and time in Section 1 */ long ymdLocal, hmsLocal, yearLocal, monthLocal, dayLocal, hourLocal, minuteLocal, secondLocal; - double jLocal = 0; + double jLocal = 0; double minDiff = DBL_MAX; - size_t i = 0; - size_t size = 0; /* number of elements in the array keys - should be = numberOfForecastsUsedInLocalTime */ + size_t i = 0; + size_t size = 0; /* number of elements in the array keys - should be = numberOfForecastsUsedInLocalTime */ /* These relate to the forecast dates and times in Section 4 */ long *yearArray, *monthArray, *dayArray, *hourArray, *minuteArray, *secondArray; - grib_handle* h = grib_handle_of_accessor(a); + grib_handle* h = grib_handle_of_accessor(a); const grib_context* c = a->context; - *val = -1; /* initialise to an invalid index */ + *val = -1; /* initialise to an invalid index */ if ((err = grib_get_long_internal(h, self->numForecasts, &num_forecasts)) != GRIB_SUCCESS) return err; Assert(num_forecasts > 1); @@ -79,7 +82,7 @@ int grib_accessor_class_closest_date_t::unpack_double(grib_accessor* a, double* ymdLocal %= 100; dayLocal = ymdLocal; - if ((err= grib_get_long(h, self->timeLocal, &hmsLocal)) != GRIB_SUCCESS) return err; + if ((err = grib_get_long(h, self->timeLocal, &hmsLocal)) != GRIB_SUCCESS) return err; hourLocal = hmsLocal / 100; hmsLocal %= 100; minuteLocal = hmsLocal / 100; @@ -117,14 +120,14 @@ int grib_accessor_class_closest_date_t::unpack_double(grib_accessor* a, double* if ((err = grib_get_long_array_internal(h, self->second, secondArray, &size)) != GRIB_SUCCESS) return err; grib_datetime_to_julian(yearLocal, monthLocal, dayLocal, hourLocal, minuteLocal, secondLocal, &jLocal); - for(i=0; i< size; ++i) { + for (i = 0; i < size; ++i) { double jval = 0, diff = 0; grib_datetime_to_julian(yearArray[i], monthArray[i], dayArray[i], hourArray[i], minuteArray[i], secondArray[i], &jval); diff = jLocal - jval; if (diff >= 0 && diff < minDiff) { minDiff = diff; - *val = i; + *val = i; } } if (*val == -1) { diff --git a/src/accessor/grib_accessor_class_decimal_precision.cc b/src/accessor/grib_accessor_class_decimal_precision.cc index 6149de763..05d156ad1 100644 --- a/src/accessor/grib_accessor_class_decimal_precision.cc +++ b/src/accessor/grib_accessor_class_decimal_precision.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,16 @@ #include "grib_accessor_class_decimal_precision.h" -grib_accessor_class_decimal_precision_t _grib_accessor_class_decimal_precision{"decimal_precision"}; +grib_accessor_class_decimal_precision_t _grib_accessor_class_decimal_precision{ "decimal_precision" }; grib_accessor_class* grib_accessor_class_decimal_precision = &_grib_accessor_class_decimal_precision; -void grib_accessor_class_decimal_precision_t::init(grib_accessor* a, const long l, grib_arguments* args){ +void grib_accessor_class_decimal_precision_t::init(grib_accessor* a, const long l, grib_arguments* args) +{ grib_accessor_class_long_t::init(a, l, args); - int n = 0; grib_accessor_decimal_precision_t* self = (grib_accessor_decimal_precision_t*)a; + int n = 0; self->bits_per_value = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); self->decimal_scale_factor = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); self->changing_precision = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); @@ -29,11 +29,12 @@ void grib_accessor_class_decimal_precision_t::init(grib_accessor* a, const long a->length = 0; } -int grib_accessor_class_decimal_precision_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - int ret = 0; +int grib_accessor_class_decimal_precision_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_decimal_precision_t* self = (grib_accessor_decimal_precision_t*)a; - grib_handle* h = grib_handle_of_accessor(a); + grib_handle* h = grib_handle_of_accessor(a); + int ret = GRIB_SUCCESS; if ((ret = grib_get_long_internal(h, self->decimal_scale_factor, val)) != GRIB_SUCCESS) return ret; @@ -41,14 +42,16 @@ int grib_accessor_class_decimal_precision_t::unpack_long(grib_accessor* a, long* return ret; } -int grib_accessor_class_decimal_precision_t::pack_long(grib_accessor* a, const long* val, size_t* len){ - long bitsPerValue = 0; - double* values = NULL; - size_t size = 0; - int ret = 0; +int grib_accessor_class_decimal_precision_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_decimal_precision_t* self = (grib_accessor_decimal_precision_t*)a; - grib_context* c = a->context; - grib_handle* h = grib_handle_of_accessor(a); + + long bitsPerValue = 0; + double* values = NULL; + size_t size = 0; + int ret = 0; + grib_context* c = a->context; + grib_handle* h = grib_handle_of_accessor(a); if (!self->values) { if ((ret = grib_set_long_internal(h, self->bits_per_value, 0)) != GRIB_SUCCESS) diff --git a/src/accessor/grib_accessor_class_g1bitmap.cc b/src/accessor/grib_accessor_class_g1bitmap.cc index 162d62b68..331b800c5 100644 --- a/src/accessor/grib_accessor_class_g1bitmap.cc +++ b/src/accessor/grib_accessor_class_g1bitmap.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,25 +10,27 @@ #include "grib_accessor_class_g1bitmap.h" -grib_accessor_class_g1bitmap_t _grib_accessor_class_g1bitmap{"g1bitmap"}; +grib_accessor_class_g1bitmap_t _grib_accessor_class_g1bitmap{ "g1bitmap" }; grib_accessor_class* grib_accessor_class_g1bitmap = &_grib_accessor_class_g1bitmap; -void grib_accessor_class_g1bitmap_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_g1bitmap_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_bitmap_t::init(a, len, arg); grib_accessor_g1bitmap_t* self = (grib_accessor_g1bitmap_t*)a; - self->unusedBits = grib_arguments_get_name(grib_handle_of_accessor(a), arg, 4); + self->unusedBits = grib_arguments_get_name(grib_handle_of_accessor(a), arg, 4); } -int grib_accessor_class_g1bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_g1bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_g1bitmap_t* self = (grib_accessor_g1bitmap_t*)a; size_t tlen; unsigned char* buf = NULL; size_t i; - int err = 0; - long pos = 0; - //long bmaplen = 0; + int err = 0; + long pos = 0; + // long bmaplen = 0; const int bit_padding = 16; double miss_values = 0; tlen = ((*len + bit_padding - 1) / bit_padding * bit_padding) / 8; @@ -45,7 +46,7 @@ int grib_accessor_class_g1bitmap_t::pack_double(grib_accessor* a, const double* if (val[i] == miss_values) pos++; else { - //bmaplen++; + // bmaplen++; grib_set_bit_on(buf, &pos); } } @@ -61,7 +62,8 @@ int grib_accessor_class_g1bitmap_t::pack_double(grib_accessor* a, const double* return GRIB_SUCCESS; } -int grib_accessor_class_g1bitmap_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_g1bitmap_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_g1bitmap_t* self = (grib_accessor_g1bitmap_t*)a; long tlen; int err; @@ -73,12 +75,14 @@ int grib_accessor_class_g1bitmap_t::value_count(grib_accessor* a, long* count){ return err; } -int grib_accessor_class_g1bitmap_t::unpack_bytes(grib_accessor* a, unsigned char* val, size_t* len){ - unsigned char* buf = grib_handle_of_accessor(a)->buffer->data; +int grib_accessor_class_g1bitmap_t::unpack_bytes(grib_accessor* a, unsigned char* val, size_t* len) +{ + unsigned char* buf = grib_handle_of_accessor(a)->buffer->data; grib_accessor_g1bitmap_t* self = (grib_accessor_g1bitmap_t*)a; long tlen; int err; - long length = a->byte_count(); long offset = a->byte_offset(); + long length = a->byte_count(); + long offset = a->byte_offset(); if (*len < (size_t)length) { grib_context_log(a->context, GRIB_LOG_ERROR, "Wrong size for %s it is %ld bytes long\n", a->name, length); *len = length; diff --git a/src/accessor/grib_accessor_class_g1date.cc b/src/accessor/grib_accessor_class_g1date.cc index 64631a1ea..c9a3055dd 100644 --- a/src/accessor/grib_accessor_class_g1date.cc +++ b/src/accessor/grib_accessor_class_g1date.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,16 @@ #include "grib_accessor_class_g1date.h" -grib_accessor_class_g1date_t _grib_accessor_class_g1date{"g1date"}; +grib_accessor_class_g1date_t _grib_accessor_class_g1date{ "g1date" }; grib_accessor_class* grib_accessor_class_g1date = &_grib_accessor_class_g1date; -void grib_accessor_class_g1date_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g1date_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); grib_accessor_g1date_t* self = (grib_accessor_g1date_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - int n = 0; + grib_handle* hand = grib_handle_of_accessor(a); + int n = 0; self->century = grib_arguments_get_name(hand, c, n++); self->year = grib_arguments_get_name(hand, c, n++); @@ -27,11 +27,12 @@ void grib_accessor_class_g1date_t::init(grib_accessor* a, const long l, grib_arg self->day = grib_arguments_get_name(hand, c, n++); } -int grib_accessor_class_g1date_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_g1date_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_g1date_t* self = (grib_accessor_g1date_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); - int ret = 0; + int ret = 0; long year = 0, century = 0, month = 0, day = 0; if ((ret = grib_get_long_internal(hand, self->century, ¢ury)) != GRIB_SUCCESS) @@ -59,12 +60,13 @@ int grib_accessor_class_g1date_t::unpack_long(grib_accessor* a, long* val, size_ return GRIB_SUCCESS; } -int grib_accessor_class_g1date_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_g1date_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_g1date_t* self = (grib_accessor_g1date_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); - int ret = 0; - long v = val[0]; + int ret = 0; + long v = val[0]; long year = 0, century = 0, month = 0, day = 0; if (*len != 1) @@ -116,9 +118,10 @@ static const char* months[] = { "dec", }; -int grib_accessor_class_g1date_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_g1date_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_g1date_t* self = (grib_accessor_g1date_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); int ret = 0; char tmp[1024]; @@ -159,7 +162,8 @@ int grib_accessor_class_g1date_t::unpack_string(grib_accessor* a, char* val, siz return GRIB_SUCCESS; } -int grib_accessor_class_g1date_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_g1date_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } diff --git a/src/accessor/grib_accessor_class_g1number_of_coded_values_sh_complex.cc b/src/accessor/grib_accessor_class_g1number_of_coded_values_sh_complex.cc index 9976ad812..012b3e6a4 100644 --- a/src/accessor/grib_accessor_class_g1number_of_coded_values_sh_complex.cc +++ b/src/accessor/grib_accessor_class_g1number_of_coded_values_sh_complex.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,28 +10,31 @@ #include "grib_accessor_class_g1number_of_coded_values_sh_complex.h" -grib_accessor_class_g1number_of_coded_values_sh_complex_t _grib_accessor_class_g1number_of_coded_values_sh_complex{"g1number_of_coded_values_sh_complex"}; +grib_accessor_class_g1number_of_coded_values_sh_complex_t _grib_accessor_class_g1number_of_coded_values_sh_complex{ "g1number_of_coded_values_sh_complex" }; grib_accessor_class* grib_accessor_class_g1number_of_coded_values_sh_complex = &_grib_accessor_class_g1number_of_coded_values_sh_complex; -void grib_accessor_class_g1number_of_coded_values_sh_complex_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g1number_of_coded_values_sh_complex_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); - int n = 0; grib_accessor_g1number_of_coded_values_sh_complex_t* self = (grib_accessor_g1number_of_coded_values_sh_complex_t*)a; - self->bitsPerValue = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->offsetBeforeData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->offsetAfterData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->unusedBits = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->numberOfValues = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->JS = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->KS = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->MS = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + + int n = 0; + self->bitsPerValue = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->offsetBeforeData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->offsetAfterData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->unusedBits = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->numberOfValues = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->JS = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->KS = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->MS = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; a->flags |= GRIB_ACCESSOR_FLAG_FUNCTION; a->length = 0; } -int grib_accessor_class_g1number_of_coded_values_sh_complex_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_g1number_of_coded_values_sh_complex_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ int ret = GRIB_SUCCESS; long bpv = 0; long offsetBeforeData = 0, offsetAfterData = 0, unusedBits = 0, numberOfValues; diff --git a/src/accessor/grib_accessor_class_g1number_of_coded_values_sh_simple.cc b/src/accessor/grib_accessor_class_g1number_of_coded_values_sh_simple.cc index 802e6ceb7..4e6f4fe7b 100644 --- a/src/accessor/grib_accessor_class_g1number_of_coded_values_sh_simple.cc +++ b/src/accessor/grib_accessor_class_g1number_of_coded_values_sh_simple.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,27 +10,30 @@ #include "grib_accessor_class_g1number_of_coded_values_sh_simple.h" -grib_accessor_class_g1number_of_coded_values_sh_simple_t _grib_accessor_class_g1number_of_coded_values_sh_simple{"g1number_of_coded_values_sh_simple"}; +grib_accessor_class_g1number_of_coded_values_sh_simple_t _grib_accessor_class_g1number_of_coded_values_sh_simple{ "g1number_of_coded_values_sh_simple" }; grib_accessor_class* grib_accessor_class_g1number_of_coded_values_sh_simple = &_grib_accessor_class_g1number_of_coded_values_sh_simple; -void grib_accessor_class_g1number_of_coded_values_sh_simple_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g1number_of_coded_values_sh_simple_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); - int n = 0; grib_accessor_g1number_of_coded_values_sh_simple_t* self = (grib_accessor_g1number_of_coded_values_sh_simple_t*)a; - self->bitsPerValue = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->offsetBeforeData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->offsetAfterData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->unusedBits = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->numberOfValues = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + + int n = 0; + self->bitsPerValue = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->offsetBeforeData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->offsetAfterData = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->unusedBits = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->numberOfValues = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; a->flags |= GRIB_ACCESSOR_FLAG_FUNCTION; a->length = 0; } -int grib_accessor_class_g1number_of_coded_values_sh_simple_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - int ret = GRIB_SUCCESS; - long bpv = 0; +int grib_accessor_class_g1number_of_coded_values_sh_simple_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ + int ret = GRIB_SUCCESS; + long bpv = 0; long offsetBeforeData = 0, offsetAfterData = 0, unusedBits = 0, numberOfValues; grib_accessor_g1number_of_coded_values_sh_simple_t* self = (grib_accessor_g1number_of_coded_values_sh_simple_t*)a; diff --git a/src/accessor/grib_accessor_class_g1step_range.cc b/src/accessor/grib_accessor_class_g1step_range.cc index a2920a1cf..0c8c886dc 100644 --- a/src/accessor/grib_accessor_class_g1step_range.cc +++ b/src/accessor/grib_accessor_class_g1step_range.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,34 +10,37 @@ #include "grib_accessor_class_g1step_range.h" -grib_accessor_class_g1step_range_t _grib_accessor_class_g1step_range{"g1step_range"}; +grib_accessor_class_g1step_range_t _grib_accessor_class_g1step_range{ "g1step_range" }; grib_accessor_class* grib_accessor_class_g1step_range = &_grib_accessor_class_g1step_range; -void grib_accessor_class_g1step_range_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g1step_range_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_abstract_long_vector_t::init(a, l, c); grib_accessor_g1step_range_t* self = (grib_accessor_g1step_range_t*)a; - grib_handle* h = grib_handle_of_accessor(a); - int n = 0; - self->p1 = grib_arguments_get_name(h, c, n++); - self->p2 = grib_arguments_get_name(h, c, n++); - self->timeRangeIndicator = grib_arguments_get_name(h, c, n++); - self->unit = grib_arguments_get_name(h, c, n++); - self->step_unit = grib_arguments_get_name(h, c, n++); - self->stepType = grib_arguments_get_name(h, c, n++); - self->patch_fp_precip = grib_arguments_get_name(h, c, n++); - self->error_on_units = 1; + grib_handle* h = grib_handle_of_accessor(a); + + int n = 0; + self->p1 = grib_arguments_get_name(h, c, n++); + self->p2 = grib_arguments_get_name(h, c, n++); + self->timeRangeIndicator = grib_arguments_get_name(h, c, n++); + self->unit = grib_arguments_get_name(h, c, n++); + self->step_unit = grib_arguments_get_name(h, c, n++); + self->stepType = grib_arguments_get_name(h, c, n++); + self->patch_fp_precip = grib_arguments_get_name(h, c, n++); + self->error_on_units = 1; self->number_of_elements = 2; self->v = (long*)grib_context_malloc_clear(h->context, - sizeof(long) * self->number_of_elements); - self->pack_index = -1; - a->dirty = 1; + sizeof(long) * self->number_of_elements); + self->pack_index = -1; + a->dirty = 1; a->length = 0; } -void grib_accessor_class_g1step_range_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_g1step_range_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } @@ -88,7 +90,7 @@ static const int u2s[] = { int grib_g1_step_get_steps(grib_accessor* a, long* start, long* theEnd) { grib_accessor_g1step_range_t* self = (grib_accessor_g1step_range_t*)a; - int err = 0; + int err = 0; long p1 = 0, p2 = 0, unit = 0, timeRangeIndicator = 0, timeRangeIndicatorFromStepRange = 0; long step_unit = 1; char stepType[20] = {0,}; @@ -182,15 +184,16 @@ int grib_g1_step_get_steps(grib_accessor* a, long* start, long* theEnd) return 0; } -int grib_accessor_class_g1step_range_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_g1step_range_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_g1step_range_t* self = (grib_accessor_g1step_range_t*)a; char buf[100]; size_t size = 0; long start = 0, theEnd = 0; long timeRangeIndicator = 0; long unit; - int err = 0; - char stepType[20] = {0,}; + int err = 0; + char stepType[20] = {0,}; size_t stepTypeLen = 20; grib_handle* hand = grib_handle_of_accessor(a); @@ -279,9 +282,9 @@ int grib_accessor_class_g1step_range_t::unpack_string(grib_accessor* a, char* va } static int grib_g1_step_apply_units( - const long* start, const long* theEnd, const long* step_unit, - long* P1, long* P2, long* unit, - const int max, const int instant) + const long* start, const long* theEnd, const long* step_unit, + long* P1, long* P2, long* unit, + const int max, const int instant) { int j = 0; long start_sec, end_sec; @@ -333,9 +336,10 @@ static int grib_g1_step_apply_units( return GRIB_WRONG_STEP; } -int grib_accessor_class_g1step_range_t::pack_string(grib_accessor* a, const char* val, size_t* len){ +int grib_accessor_class_g1step_range_t::pack_string(grib_accessor* a, const char* val, size_t* len) +{ grib_accessor_g1step_range_t* self = (grib_accessor_g1step_range_t*)a; - grib_handle* h = grib_handle_of_accessor(a); + grib_handle* h = grib_handle_of_accessor(a); long timeRangeIndicator = 0, P1 = 0, P2 = 0; long start = 0, theEnd = -1, unit = 0, ounit = 0, step_unit = 1; int ret = 0; @@ -399,8 +403,8 @@ int grib_accessor_class_g1step_range_t::pack_string(grib_accessor* a, const char if (timeRangeIndicator == 10) { /* - * timeRangeIndicator = 10 means 'P1 occupies octets 19 and 20' i.e. 16 bits - */ + * timeRangeIndicator = 10 means 'P1 occupies octets 19 and 20' i.e. 16 bits + */ long off = 0; grib_accessor* p1_accessor = NULL; if (theEnd != start && !h->context->gribex_mode_on) { @@ -431,7 +435,7 @@ int grib_accessor_class_g1step_range_t::pack_string(grib_accessor* a, const char return ret; if (h->context->debug) { - long dp1,dp2; + long dp1, dp2; grib_get_long(h, self->p1, &dp1); grib_get_long(h, self->p2, &dp2); fprintf(stderr, "ECCODES DEBUG pack_string: P1=%ld P2=%ld (as two octets => %ld)\n", dp1, dp2, P1); @@ -480,7 +484,7 @@ int grib_accessor_class_g1step_range_t::pack_string(grib_accessor* a, const char return ret; if (h->context->debug) { - long dp1,dp2; + long dp1, dp2; grib_get_long(h, self->p1, &dp1); grib_get_long(h, self->p2, &dp2); fprintf(stderr, "ECCODES DEBUG pack_string: P1=%ld P2=%ld (as two octets => %ld)\n", dp1, dp2, P1); @@ -492,7 +496,7 @@ int grib_accessor_class_g1step_range_t::pack_string(grib_accessor* a, const char if (ret == GRIB_WRONG_STEP) { grib_context_log(h->context, GRIB_LOG_ERROR, - "Failed to set %s=%s: Keys P1 and P2 are one octet each (Range 0 to 255)", a->name, val); + "Failed to set %s=%s: Keys P1 and P2 are one octet each (Range 0 to 255)", a->name, val); } return ret; } @@ -513,23 +517,27 @@ int grib_accessor_class_g1step_range_t::pack_string(grib_accessor* a, const char return 0; } -int grib_accessor_class_g1step_range_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_g1step_range_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -size_t grib_accessor_class_g1step_range_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_g1step_range_t::string_length(grib_accessor* a) +{ return 255; } -int grib_accessor_class_g1step_range_t::pack_long(grib_accessor* a, const long* val, size_t* len){ - char buff[256]; - size_t bufflen = 100; - char sval[100] = { 0 }; - char* p = sval; - size_t svallen = 100; +int grib_accessor_class_g1step_range_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_g1step_range_t* self = (grib_accessor_g1step_range_t*)a; - char stepType[20] = {0,}; + + char buff[256] = {0,}; + size_t bufflen = 100; + char sval[100] = { 0 }; + char* p = sval; + size_t svallen = 100; + char stepType[20] = {0,}; size_t stepTypeLen = 20; long step_unit = 0; int err = 0; @@ -597,7 +605,8 @@ int grib_accessor_class_g1step_range_t::pack_long(grib_accessor* a, const long* return GRIB_INTERNAL_ERROR; } -int grib_accessor_class_g1step_range_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_g1step_range_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_g1step_range_t* self = (grib_accessor_g1step_range_t*)a; char buff[100]; size_t bufflen = 100; @@ -627,11 +636,13 @@ int grib_accessor_class_g1step_range_t::unpack_long(grib_accessor* a, long* val, return 0; } -int grib_accessor_class_g1step_range_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_g1step_range_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_STRING; } -void grib_accessor_class_g1step_range_t::destroy(grib_context* c, grib_accessor* a){ +void grib_accessor_class_g1step_range_t::destroy(grib_context* c, grib_accessor* a) +{ grib_accessor_g1step_range_t* self = (grib_accessor_g1step_range_t*)a; grib_context_free(c, self->v); grib_accessor_class_abstract_long_vector_t::destroy(c, a); diff --git a/src/accessor/grib_accessor_class_group.cc b/src/accessor/grib_accessor_class_group.cc index aef185022..74051d17d 100644 --- a/src/accessor/grib_accessor_class_group.cc +++ b/src/accessor/grib_accessor_class_group.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,13 +10,14 @@ #include "grib_accessor_class_group.h" -grib_accessor_class_group_t _grib_accessor_class_group{"group"}; +grib_accessor_class_group_t _grib_accessor_class_group{ "group" }; grib_accessor_class* grib_accessor_class_group = &_grib_accessor_class_group; -void grib_accessor_class_group_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_group_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); - grib_buffer* buffer = grib_handle_of_accessor(a)->buffer; + grib_buffer* buffer = grib_handle_of_accessor(a)->buffer; grib_accessor_group_t* self = (grib_accessor_group_t*)a; size_t i = 0; @@ -52,26 +52,31 @@ void grib_accessor_class_group_t::init(grib_accessor* a, const long len, grib_ar a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_group_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_group_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -size_t grib_accessor_class_group_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_group_t::string_length(grib_accessor* a) +{ return a->length; } -void grib_accessor_class_group_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_group_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -int grib_accessor_class_group_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_group_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_STRING; } -int grib_accessor_class_group_t::unpack_string(grib_accessor* a, char* val, size_t* len){ - long i = 0; - size_t l = a->length + 1; +int grib_accessor_class_group_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ + long i = 0; + size_t l = a->length + 1; grib_handle* h = grib_handle_of_accessor(a); if (*len < l) { @@ -85,11 +90,12 @@ int grib_accessor_class_group_t::unpack_string(grib_accessor* a, char* val, size for (i = 0; i < a->length; i++) val[i] = h->buffer->data[a->offset + i]; val[i] = 0; - *len = i; + *len = i; return GRIB_SUCCESS; } -int grib_accessor_class_group_t::unpack_long(grib_accessor* a, long* v, size_t* len){ +int grib_accessor_class_group_t::unpack_long(grib_accessor* a, long* v, size_t* len) +{ char val[1024] = {0,}; size_t l = sizeof(val); size_t i = 0; @@ -115,7 +121,8 @@ int grib_accessor_class_group_t::unpack_long(grib_accessor* a, long* v, size_t* return GRIB_SUCCESS; } -int grib_accessor_class_group_t::unpack_double(grib_accessor* a, double* v, size_t* len){ +int grib_accessor_class_group_t::unpack_double(grib_accessor* a, double* v, size_t* len) +{ char val[1024]; size_t l = sizeof(val); char* last = NULL; @@ -130,7 +137,8 @@ int grib_accessor_class_group_t::unpack_double(grib_accessor* a, double* v, size return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_group_t::compare(grib_accessor* a, grib_accessor* b){ +int grib_accessor_class_group_t::compare(grib_accessor* a, grib_accessor* b) +{ grib_context_log(a->context, GRIB_LOG_ERROR, "%s:%s not implemented", __func__, a->name); return GRIB_NOT_IMPLEMENTED; @@ -155,6 +163,7 @@ int grib_accessor_class_group_t::compare(grib_accessor* a, grib_accessor* b){ // return retval; } -long grib_accessor_class_group_t::next_offset(grib_accessor* a){ +long grib_accessor_class_group_t::next_offset(grib_accessor* a) +{ return a->offset + a->length; } diff --git a/src/accessor/grib_accessor_class_gts_header.cc b/src/accessor/grib_accessor_class_gts_header.cc index 62a63bb8f..5b158c6d1 100644 --- a/src/accessor/grib_accessor_class_gts_header.cc +++ b/src/accessor/grib_accessor_class_gts_header.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,25 +10,27 @@ #include "grib_accessor_class_gts_header.h" -grib_accessor_class_gts_header_t _grib_accessor_class_gts_header{"gts_header"}; +grib_accessor_class_gts_header_t _grib_accessor_class_gts_header{ "gts_header" }; grib_accessor_class* grib_accessor_class_gts_header = &_grib_accessor_class_gts_header; -void grib_accessor_class_gts_header_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_gts_header_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_ascii_t::init(a, l, c); grib_accessor_gts_header_t* self = (grib_accessor_gts_header_t*)a; - self->gts_offset = -1; - self->gts_length = -1; - self->gts_offset = grib_arguments_get_long(grib_handle_of_accessor(a), c, 0); - self->gts_length = grib_arguments_get_long(grib_handle_of_accessor(a), c, 1); + self->gts_offset = -1; + self->gts_length = -1; + self->gts_offset = grib_arguments_get_long(grib_handle_of_accessor(a), c, 0); + self->gts_length = grib_arguments_get_long(grib_handle_of_accessor(a), c, 1); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_gts_header_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_gts_header_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_gts_header_t* self = (grib_accessor_gts_header_t*)a; - grib_handle* h = grib_handle_of_accessor(a); - int offset = 0; - size_t length = 0; + grib_handle* h = grib_handle_of_accessor(a); + int offset = 0; + size_t length = 0; if (h->gts_header == NULL || h->gts_header_len < 8) { if (*len < 8) @@ -50,12 +51,14 @@ int grib_accessor_class_gts_header_t::unpack_string(grib_accessor* a, char* val, return GRIB_SUCCESS; } -int grib_accessor_class_gts_header_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_gts_header_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -size_t grib_accessor_class_gts_header_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_gts_header_t::string_length(grib_accessor* a) +{ grib_handle* h = grib_handle_of_accessor(a); return h->gts_header_len; } diff --git a/src/accessor/grib_accessor_class_hash_array.cc b/src/accessor/grib_accessor_class_hash_array.cc index 1955dc07f..7f29ce9bc 100644 --- a/src/accessor/grib_accessor_class_hash_array.cc +++ b/src/accessor/grib_accessor_class_hash_array.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,36 +10,42 @@ #include "grib_accessor_class_hash_array.h" -grib_accessor_class_hash_array_t _grib_accessor_class_hash_array{"hash_array"}; +grib_accessor_class_hash_array_t _grib_accessor_class_hash_array{ "hash_array" }; grib_accessor_class* grib_accessor_class_hash_array = &_grib_accessor_class_hash_array; #define MAX_HASH_ARRAY_STRING_LENGTH 255 -void grib_accessor_class_hash_array_t::init(grib_accessor* a, const long len, grib_arguments* args){ +void grib_accessor_class_hash_array_t::init(grib_accessor* a, const long len, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, len, args); grib_accessor_hash_array_t* self = (grib_accessor_hash_array_t*)a; - a->length = 0; - self->key = 0; - self->ha = NULL; + a->length = 0; + self->key = 0; + self->ha = NULL; } -void grib_accessor_class_hash_array_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_hash_array_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -int grib_accessor_class_hash_array_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_hash_array_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_hash_array_t* self = (grib_accessor_hash_array_t*)a; - char s[200] = {0,}; + + char s[200] = {0,}; snprintf(s, sizeof(s), "%g", *val); self->key = grib_context_strdup(a->context, s); self->ha = 0; return GRIB_SUCCESS; } -int grib_accessor_class_hash_array_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_hash_array_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_hash_array_t* self = (grib_accessor_hash_array_t*)a; - char s[200] = {0,}; + + char s[200] = {0,}; snprintf(s, sizeof(s), "%ld", *val); if (self->key) grib_context_free(a->context, self->key); @@ -49,22 +54,24 @@ int grib_accessor_class_hash_array_t::pack_long(grib_accessor* a, const long* va return GRIB_SUCCESS; } -int grib_accessor_class_hash_array_t::pack_string(grib_accessor* a, const char* v, size_t* len){ +int grib_accessor_class_hash_array_t::pack_string(grib_accessor* a, const char* v, size_t* len) +{ grib_accessor_hash_array_t* self = (grib_accessor_hash_array_t*)a; - self->key = grib_context_strdup(a->context, v); - self->ha = 0; + self->key = grib_context_strdup(a->context, v); + self->ha = 0; return GRIB_SUCCESS; } -int grib_accessor_class_hash_array_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_hash_array_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } static grib_hash_array_value* find_hash_value(grib_accessor* a, int* err) { grib_accessor_hash_array_t* self = (grib_accessor_hash_array_t*)a; - grib_hash_array_value* ha_ret = 0; - grib_hash_array_value* ha = NULL; + grib_hash_array_value* ha_ret = 0; + grib_hash_array_value* ha = NULL; ha = get_hash_array(grib_handle_of_accessor(a), a->creator); if (!ha) { @@ -103,11 +110,12 @@ static grib_hash_array_value* find_hash_value(grib_accessor* a, int* err) return ha_ret; } -int grib_accessor_class_hash_array_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - grib_hash_array_value* ha = 0; +int grib_accessor_class_hash_array_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ + grib_hash_array_value* ha = 0; grib_accessor_hash_array_t* self = (grib_accessor_hash_array_t*)a; - int err = 0; - size_t i = 0; + int err = 0; + size_t i = 0; if (!self->ha) { ha = find_hash_value(a, &err); @@ -133,7 +141,8 @@ int grib_accessor_class_hash_array_t::unpack_long(grib_accessor* a, long* val, s return GRIB_SUCCESS; } -int grib_accessor_class_hash_array_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_hash_array_t::get_native_type(grib_accessor* a) +{ int type = GRIB_TYPE_STRING; if (a->flags & GRIB_ACCESSOR_FLAG_LONG_TYPE) type = GRIB_TYPE_LONG; @@ -141,25 +150,29 @@ int grib_accessor_class_hash_array_t::get_native_type(grib_accessor* a){ return type; } -void grib_accessor_class_hash_array_t::destroy(grib_context* c, grib_accessor* a){ +void grib_accessor_class_hash_array_t::destroy(grib_context* c, grib_accessor* a) +{ grib_accessor_hash_array_t* self = (grib_accessor_hash_array_t*)a; if (self->key) grib_context_free(c, self->key); grib_accessor_class_gen_t::destroy(c, a); } -int grib_accessor_class_hash_array_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_hash_array_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } -size_t grib_accessor_class_hash_array_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_hash_array_t::string_length(grib_accessor* a) +{ return MAX_HASH_ARRAY_STRING_LENGTH; } -int grib_accessor_class_hash_array_t::value_count(grib_accessor* a, long* count){ - int err = 0; +int grib_accessor_class_hash_array_t::value_count(grib_accessor* a, long* count) +{ + int err = 0; grib_accessor_hash_array_t* self = (grib_accessor_hash_array_t*)a; - grib_hash_array_value* ha = 0; + grib_hash_array_value* ha = 0; if (!self->ha) { ha = find_hash_value(a, &err); @@ -172,6 +185,7 @@ int grib_accessor_class_hash_array_t::value_count(grib_accessor* a, long* count) return err; } -int grib_accessor_class_hash_array_t::compare(grib_accessor* a, grib_accessor* b){ +int grib_accessor_class_hash_array_t::compare(grib_accessor* a, grib_accessor* b) +{ return GRIB_NOT_IMPLEMENTED; } diff --git a/src/accessor/grib_accessor_class_headers_only.cc b/src/accessor/grib_accessor_class_headers_only.cc index 9b053112d..4b70ecd2f 100644 --- a/src/accessor/grib_accessor_class_headers_only.cc +++ b/src/accessor/grib_accessor_class_headers_only.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,23 +10,26 @@ #include "grib_accessor_class_headers_only.h" -grib_accessor_class_headers_only_t _grib_accessor_class_headers_only{"headers_only"}; +grib_accessor_class_headers_only_t _grib_accessor_class_headers_only{ "headers_only" }; grib_accessor_class* grib_accessor_class_headers_only = &_grib_accessor_class_headers_only; -void grib_accessor_class_headers_only_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_headers_only_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_gen_t::init(a, l, c); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; a->flags |= GRIB_ACCESSOR_FLAG_HIDDEN; a->length = 0; } -int grib_accessor_class_headers_only_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_headers_only_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ *val = grib_handle_of_accessor(a)->partial; *len = 1; return 0; } -int grib_accessor_class_headers_only_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_headers_only_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_ifs_param.cc b/src/accessor/grib_accessor_class_ifs_param.cc index 32a972c7c..02d6342ef 100644 --- a/src/accessor/grib_accessor_class_ifs_param.cc +++ b/src/accessor/grib_accessor_class_ifs_param.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,23 +10,25 @@ #include "grib_accessor_class_ifs_param.h" -grib_accessor_class_ifs_param_t _grib_accessor_class_ifs_param{"ifs_param"}; +grib_accessor_class_ifs_param_t _grib_accessor_class_ifs_param{ "ifs_param" }; grib_accessor_class* grib_accessor_class_ifs_param = &_grib_accessor_class_ifs_param; -void grib_accessor_class_ifs_param_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_ifs_param_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_gen_t::init(a, l, c); grib_accessor_ifs_param_t* self = (grib_accessor_ifs_param_t*)a; - int n = 0; + int n = 0; self->paramId = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->type = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); } -int grib_accessor_class_ifs_param_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_ifs_param_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_ifs_param_t* self = (grib_accessor_ifs_param_t*)a; - int ret = 0; - long paramId = 0; + int ret = 0; + long paramId = 0; if ((ret = grib_get_long_internal(grib_handle_of_accessor(a), self->paramId, ¶mId)) != GRIB_SUCCESS) return ret; @@ -44,11 +45,12 @@ int grib_accessor_class_ifs_param_t::unpack_long(grib_accessor* a, long* val, si return ret; } -int grib_accessor_class_ifs_param_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_ifs_param_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_ifs_param_t* self = (grib_accessor_ifs_param_t*)a; - long type = 0; - long table = 128; - long paramId = *val; + long type = 0; + long table = 128; + long paramId = *val; long param; grib_get_long(grib_handle_of_accessor(a), self->type, &type); @@ -88,6 +90,7 @@ int grib_accessor_class_ifs_param_t::pack_long(grib_accessor* a, const long* val return grib_set_long_internal(grib_handle_of_accessor(a), self->paramId, paramId); } -int grib_accessor_class_ifs_param_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_ifs_param_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } diff --git a/src/accessor/grib_accessor_class_ksec1expver.cc b/src/accessor/grib_accessor_class_ksec1expver.cc index 0eb0af2c1..98cf2a400 100644 --- a/src/accessor/grib_accessor_class_ksec1expver.cc +++ b/src/accessor/grib_accessor_class_ksec1expver.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,20 +10,22 @@ #include "grib_accessor_class_ksec1expver.h" -grib_accessor_class_ksec1expver_t _grib_accessor_class_ksec1expver{"ksec1expver"}; +grib_accessor_class_ksec1expver_t _grib_accessor_class_ksec1expver{ "ksec1expver" }; grib_accessor_class* grib_accessor_class_ksec1expver = &_grib_accessor_class_ksec1expver; -void grib_accessor_class_ksec1expver_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_ksec1expver_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_ascii_t::init(a, len, arg); a->length = len; Assert(a->length >= 0); } -int grib_accessor_class_ksec1expver_t::unpack_long(grib_accessor* a, long* val, size_t* len){ - long value = 0; - long pos = a->offset * 8; - char* intc = NULL; +int grib_accessor_class_ksec1expver_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ + long value = 0; + long pos = a->offset * 8; + char* intc = NULL; char* pTemp = NULL; char expver[5]; char refexpver[5]; @@ -40,7 +41,7 @@ int grib_accessor_class_ksec1expver_t::unpack_long(grib_accessor* a, long* val, a->unpack_string(refexpver, &llen); /* test for endian */ - intc = (char*)&value; + intc = (char*)&value; pTemp = intc; expver[0] = *pTemp++; @@ -49,11 +50,11 @@ int grib_accessor_class_ksec1expver_t::unpack_long(grib_accessor* a, long* val, expver[3] = *pTemp++; expver[4] = 0; -// expver[0] = intc[0]; -// expver[1] = intc[1]; -// expver[2] = intc[2]; -// expver[3] = intc[3]; -// expver[4] = 0; + // expver[0] = intc[0]; + // expver[1] = intc[1]; + // expver[2] = intc[2]; + // expver[3] = intc[3]; + // expver[4] = 0; /* if there is a difference, have to reverse*/ if (strcmp(refexpver, expver)) { @@ -68,7 +69,8 @@ int grib_accessor_class_ksec1expver_t::unpack_long(grib_accessor* a, long* val, return GRIB_SUCCESS; } -int grib_accessor_class_ksec1expver_t::pack_string(grib_accessor* a, const char* val, size_t* len){ +int grib_accessor_class_ksec1expver_t::pack_string(grib_accessor* a, const char* val, size_t* len) +{ int i = 0; if (len[0] != 4) { grib_context_log(a->context, GRIB_LOG_ERROR, "Wrong length for %s. It has to be 4", a->name); @@ -76,7 +78,7 @@ int grib_accessor_class_ksec1expver_t::pack_string(grib_accessor* a, const char* } if (len[0] > (a->length) + 1) { grib_context_log(a->context, GRIB_LOG_ERROR, "pack_string: Wrong size (%lu) for %s, it contains %ld values", - len[0], a->name, a->length + 1); + len[0], a->name, a->length + 1); len[0] = 0; return GRIB_BUFFER_TOO_SMALL; } @@ -87,7 +89,8 @@ int grib_accessor_class_ksec1expver_t::pack_string(grib_accessor* a, const char* return GRIB_SUCCESS; } -int grib_accessor_class_ksec1expver_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_ksec1expver_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ char sval[5] = {0,}; size_t slen = 4; snprintf(sval, sizeof(sval), "%04d", (int)(*val)); diff --git a/src/accessor/grib_accessor_class_label.cc b/src/accessor/grib_accessor_class_label.cc index 5b9448399..58749ea43 100644 --- a/src/accessor/grib_accessor_class_label.cc +++ b/src/accessor/grib_accessor_class_label.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,26 +10,30 @@ #include "grib_accessor_class_label.h" -grib_accessor_class_label_t _grib_accessor_class_label{"label"}; +grib_accessor_class_label_t _grib_accessor_class_label{ "label" }; grib_accessor_class* grib_accessor_class_label = &_grib_accessor_class_label; -void grib_accessor_class_label_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_label_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; a->flags |= GRIB_ACCESSOR_FLAG_EDITION_SPECIFIC; a->length = 0; } -void grib_accessor_class_label_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_label_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_label(dumper, a, NULL); } -int grib_accessor_class_label_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_label_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LABEL; } -int grib_accessor_class_label_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_label_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ size_t vlen = strlen(a->name); if (vlen > *len) return GRIB_BUFFER_TOO_SMALL; diff --git a/src/accessor/grib_accessor_class_long.cc b/src/accessor/grib_accessor_class_long.cc index 588083c49..04f6908be 100644 --- a/src/accessor/grib_accessor_class_long.cc +++ b/src/accessor/grib_accessor_class_long.cc @@ -13,7 +13,8 @@ grib_accessor_class_long_t _grib_accessor_class_long{"long"}; grib_accessor_class* grib_accessor_class_long = &_grib_accessor_class_long; -void grib_accessor_class_long_t::init(grib_accessor* a, const long len, grib_arguments* arg) { +void grib_accessor_class_long_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); } diff --git a/src/accessor/grib_accessor_class_mars_param.cc b/src/accessor/grib_accessor_class_mars_param.cc index feb5fc905..77c59a0bc 100644 --- a/src/accessor/grib_accessor_class_mars_param.cc +++ b/src/accessor/grib_accessor_class_mars_param.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,17 +10,19 @@ #include "grib_accessor_class_mars_param.h" -grib_accessor_class_mars_param_t _grib_accessor_class_mars_param{"mars_param"}; +grib_accessor_class_mars_param_t _grib_accessor_class_mars_param{ "mars_param" }; grib_accessor_class* grib_accessor_class_mars_param = &_grib_accessor_class_mars_param; -void grib_accessor_class_mars_param_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_mars_param_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_ascii_t::init(a, l, c); - int n = 0; grib_accessor_mars_param_t* self = (grib_accessor_mars_param_t*)a; - self->paramId = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->table = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); - self->param = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + + int n = 0; + self->paramId = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->table = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->param = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); } // For an implementation of pack_string, see @@ -30,11 +31,12 @@ void grib_accessor_class_mars_param_t::init(grib_accessor* a, const long l, grib // For an alternative implementation of unpack_string, see // src/deprecated/grib_accessor_class_mars_param.cc // -int grib_accessor_class_mars_param_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_mars_param_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_accessor_mars_param_t* self = (grib_accessor_mars_param_t*)a; - long param = 0; - long table = 0; - int ret = 0; + long param = 0; + long table = 0; + int ret = 0; if (self->table != NULL && (ret = grib_get_long_internal(grib_handle_of_accessor(a), self->table, &table)) != GRIB_SUCCESS) return ret; @@ -48,6 +50,7 @@ int grib_accessor_class_mars_param_t::unpack_string(grib_accessor* a, char* val, return GRIB_SUCCESS; } -size_t grib_accessor_class_mars_param_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_mars_param_t::string_length(grib_accessor* a) +{ return 7; } diff --git a/src/accessor/grib_accessor_class_message.cc b/src/accessor/grib_accessor_class_message.cc index be704b1a1..c49c5b20a 100644 --- a/src/accessor/grib_accessor_class_message.cc +++ b/src/accessor/grib_accessor_class_message.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,12 +10,12 @@ #include "grib_accessor_class_message.h" -grib_accessor_class_message_t _grib_accessor_class_message{"message"}; +grib_accessor_class_message_t _grib_accessor_class_message{ "message" }; grib_accessor_class* grib_accessor_class_message = &_grib_accessor_class_message; - -void grib_accessor_class_message_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_message_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_bytes_t::init(a, len, arg); a->flags |= GRIB_ACCESSOR_FLAG_EDITION_SPECIFIC; a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; @@ -30,11 +29,13 @@ void grib_accessor_class_message_t::init(grib_accessor* a, const long len, grib_ // return GRIB_SUCCESS; // } -void grib_accessor_class_message_t::update_size(grib_accessor* a, size_t new_size){ +void grib_accessor_class_message_t::update_size(grib_accessor* a, size_t new_size) +{ a->length = new_size; } -void grib_accessor_class_message_t::resize(grib_accessor* a, size_t new_size){ +void grib_accessor_class_message_t::resize(grib_accessor* a, size_t new_size) +{ grib_context_log(a->context, GRIB_LOG_FATAL, "%s %s: Not supported", a->cclass->name, __func__); // void* zero = grib_context_malloc_clear(a->context, new_size); @@ -45,14 +46,16 @@ void grib_accessor_class_message_t::resize(grib_accessor* a, size_t new_size){ // Assert(new_size == a->length); } -int grib_accessor_class_message_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_message_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -int grib_accessor_class_message_t::unpack_string(grib_accessor* a, char* val, size_t* len){ - long i = 0; - size_t l = string_length(a) + 1; +int grib_accessor_class_message_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ + long i = 0; + size_t l = string_length(a) + 1; grib_handle* h = grib_handle_of_accessor(a); if (*len < l) { @@ -66,10 +69,11 @@ int grib_accessor_class_message_t::unpack_string(grib_accessor* a, char* val, si for (i = 0; i < a->length; i++) val[i] = h->buffer->data[a->offset + i]; val[i] = 0; - *len = i; + *len = i; return GRIB_SUCCESS; } -size_t grib_accessor_class_message_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_message_t::string_length(grib_accessor* a) +{ return a->length; } diff --git a/src/accessor/grib_accessor_class_message_copy.cc b/src/accessor/grib_accessor_class_message_copy.cc index 7927b6c60..43b7fb42d 100644 --- a/src/accessor/grib_accessor_class_message_copy.cc +++ b/src/accessor/grib_accessor_class_message_copy.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,25 +10,29 @@ #include "grib_accessor_class_message_copy.h" -grib_accessor_class_message_copy_t _grib_accessor_class_message_copy{"message_copy"}; +grib_accessor_class_message_copy_t _grib_accessor_class_message_copy{ "message_copy" }; grib_accessor_class* grib_accessor_class_message_copy = &_grib_accessor_class_message_copy; -void grib_accessor_class_message_copy_t::init(grib_accessor* a, const long length, grib_arguments* args){ +void grib_accessor_class_message_copy_t::init(grib_accessor* a, const long length, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, length, args); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; a->length = 0; } -void grib_accessor_class_message_copy_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_message_copy_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -int grib_accessor_class_message_copy_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_message_copy_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_STRING; } -int grib_accessor_class_message_copy_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_message_copy_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ size_t slen = grib_handle_of_accessor(a)->buffer->ulength; size_t i; unsigned char* v = 0; @@ -50,10 +53,12 @@ int grib_accessor_class_message_copy_t::unpack_string(grib_accessor* a, char* va return GRIB_SUCCESS; } -size_t grib_accessor_class_message_copy_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_message_copy_t::string_length(grib_accessor* a) +{ return grib_handle_of_accessor(a)->buffer->ulength; } -long grib_accessor_class_message_copy_t::byte_count(grib_accessor* a){ +long grib_accessor_class_message_copy_t::byte_count(grib_accessor* a) +{ return a->length; } diff --git a/src/accessor/grib_accessor_class_multdouble.cc b/src/accessor/grib_accessor_class_multdouble.cc index cbe5b42da..c86539190 100644 --- a/src/accessor/grib_accessor_class_multdouble.cc +++ b/src/accessor/grib_accessor_class_multdouble.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,22 +10,24 @@ #include "grib_accessor_class_multdouble.h" -grib_accessor_class_multdouble_t _grib_accessor_class_multdouble{"multdouble"}; +grib_accessor_class_multdouble_t _grib_accessor_class_multdouble{ "multdouble" }; grib_accessor_class* grib_accessor_class_multdouble = &_grib_accessor_class_multdouble; -void grib_accessor_class_multdouble_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_multdouble_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_double_t::init(a, l, c); grib_accessor_multdouble_t* self = (grib_accessor_multdouble_t*)a; int n = 0; - self->val = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->val = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->multiplier = grib_arguments_get_double(grib_handle_of_accessor(a), c, n++); } -int grib_accessor_class_multdouble_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_multdouble_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ const grib_accessor_multdouble_t* self = (grib_accessor_multdouble_t*)a; - int ret = GRIB_SUCCESS; + int ret = GRIB_SUCCESS; double value = 0; ret = grib_get_double_internal(grib_handle_of_accessor(a), self->val, &value); diff --git a/src/accessor/grib_accessor_class_non_alpha.cc b/src/accessor/grib_accessor_class_non_alpha.cc index 68aaffdd7..7e434dfb6 100644 --- a/src/accessor/grib_accessor_class_non_alpha.cc +++ b/src/accessor/grib_accessor_class_non_alpha.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,11 +10,12 @@ #include "grib_accessor_class_non_alpha.h" -grib_accessor_class_non_alpha_t _grib_accessor_class_non_alpha{"non_alpha"}; +grib_accessor_class_non_alpha_t _grib_accessor_class_non_alpha{ "non_alpha" }; grib_accessor_class* grib_accessor_class_non_alpha = &_grib_accessor_class_non_alpha; -void grib_accessor_class_non_alpha_t::init(grib_accessor* a, const long len, grib_arguments* arg){ +void grib_accessor_class_non_alpha_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ grib_accessor_class_gen_t::init(a, len, arg); grib_buffer* buffer = grib_handle_of_accessor(a)->buffer; size_t i = 0; @@ -32,30 +32,35 @@ void grib_accessor_class_non_alpha_t::init(grib_accessor* a, const long len, gri a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_non_alpha_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_non_alpha_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -size_t grib_accessor_class_non_alpha_t::string_length(grib_accessor* a){ +size_t grib_accessor_class_non_alpha_t::string_length(grib_accessor* a) +{ return a->length; } -void grib_accessor_class_non_alpha_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_non_alpha_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -int grib_accessor_class_non_alpha_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_non_alpha_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_STRING; } -int grib_accessor_class_non_alpha_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_non_alpha_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ grib_handle* hand = grib_handle_of_accessor(a); - long i = 0; + long i = 0; if (*len < (a->length + 1)) { grib_context_log(a->context, GRIB_LOG_ERROR, "unpack_string: Wrong size (%lu) for %s, it contains %ld values", - *len, a->name, a->length + 1); + *len, a->name, a->length + 1); *len = a->length + 1; return GRIB_BUFFER_TOO_SMALL; } @@ -64,11 +69,12 @@ int grib_accessor_class_non_alpha_t::unpack_string(grib_accessor* a, char* val, val[i] = hand->buffer->data[a->offset + i]; } val[i] = 0; - *len = i; + *len = i; return GRIB_SUCCESS; } -int grib_accessor_class_non_alpha_t::unpack_long(grib_accessor* a, long* v, size_t* len){ +int grib_accessor_class_non_alpha_t::unpack_long(grib_accessor* a, long* v, size_t* len) +{ char val[1024] = {0,}; size_t l = sizeof(val); size_t i = 0; @@ -93,7 +99,8 @@ int grib_accessor_class_non_alpha_t::unpack_long(grib_accessor* a, long* v, size return GRIB_SUCCESS; } -int grib_accessor_class_non_alpha_t::unpack_double(grib_accessor* a, double* v, size_t* len){ +int grib_accessor_class_non_alpha_t::unpack_double(grib_accessor* a, double* v, size_t* len) +{ char val[1024]; size_t l = sizeof(val); char* last = NULL; @@ -107,6 +114,7 @@ int grib_accessor_class_non_alpha_t::unpack_double(grib_accessor* a, double* v, return GRIB_NOT_IMPLEMENTED; } -long grib_accessor_class_non_alpha_t::next_offset(grib_accessor* a){ +long grib_accessor_class_non_alpha_t::next_offset(grib_accessor* a) +{ return a->offset + a->length; } diff --git a/src/accessor/grib_accessor_class_pack_bufr_values.cc b/src/accessor/grib_accessor_class_pack_bufr_values.cc index 08b80d607..810287614 100644 --- a/src/accessor/grib_accessor_class_pack_bufr_values.cc +++ b/src/accessor/grib_accessor_class_pack_bufr_values.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,60 +10,73 @@ #include "grib_accessor_class_pack_bufr_values.h" -grib_accessor_class_pack_bufr_values_t _grib_accessor_class_pack_bufr_values{"pack_bufr_values"}; +grib_accessor_class_pack_bufr_values_t _grib_accessor_class_pack_bufr_values{ "pack_bufr_values" }; grib_accessor_class* grib_accessor_class_pack_bufr_values = &_grib_accessor_class_pack_bufr_values; -void grib_accessor_class_pack_bufr_values_t::init(grib_accessor* a, const long len, grib_arguments* params){ +void grib_accessor_class_pack_bufr_values_t::init(grib_accessor* a, const long len, grib_arguments* params) +{ grib_accessor_class_gen_t::init(a, len, params); char* key; grib_accessor_pack_bufr_values_t* self = (grib_accessor_pack_bufr_values_t*)a; - key = (char*)grib_arguments_get_name(grib_handle_of_accessor(a), params, 0); - self->data_accessor = grib_find_accessor(grib_handle_of_accessor(a), key); + key = (char*)grib_arguments_get_name(grib_handle_of_accessor(a), params, 0); + self->data_accessor = grib_find_accessor(grib_handle_of_accessor(a), key); a->length = 0; } -void grib_accessor_class_pack_bufr_values_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_pack_bufr_values_t::dump(grib_accessor* a, grib_dumper* dumper) +{ } -int grib_accessor_class_pack_bufr_values_t::unpack_string_array(grib_accessor* a, char** buffer, size_t* len){ +int grib_accessor_class_pack_bufr_values_t::unpack_string_array(grib_accessor* a, char** buffer, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_pack_bufr_values_t::unpack_string(grib_accessor* a, char* buffer, size_t* len){ +int grib_accessor_class_pack_bufr_values_t::unpack_string(grib_accessor* a, char* buffer, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_pack_bufr_values_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_pack_bufr_values_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_pack_bufr_values_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_pack_bufr_values_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_pack_bufr_values_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_pack_bufr_values_t::value_count(grib_accessor* a, long* count) +{ *count = 1; return 0; } -void grib_accessor_class_pack_bufr_values_t::destroy(grib_context* context, grib_accessor* a){ +void grib_accessor_class_pack_bufr_values_t::destroy(grib_context* context, grib_accessor* a) +{ grib_accessor_class_gen_t::destroy(context, a); } -int grib_accessor_class_pack_bufr_values_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_pack_bufr_values_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_LONG; } -int grib_accessor_class_pack_bufr_values_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_pack_bufr_values_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_pack_bufr_values_t* self = (grib_accessor_pack_bufr_values_t*)a; - grib_accessor* data = (grib_accessor*)self->data_accessor; + grib_accessor* data = (grib_accessor*)self->data_accessor; - return data->pack_double(0, 0);} + return data->pack_double(0, 0); +} -int grib_accessor_class_pack_bufr_values_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_pack_bufr_values_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_pack_bufr_values_t* self = (grib_accessor_pack_bufr_values_t*)a; - grib_accessor* data = (grib_accessor*)self->data_accessor; + grib_accessor* data = (grib_accessor*)self->data_accessor; - return data->pack_double(0, 0);} + return data->pack_double(0, 0); +} diff --git a/src/accessor/grib_accessor_class_pad.cc b/src/accessor/grib_accessor_class_pad.cc index 345b510fb..df83c4d5e 100644 --- a/src/accessor/grib_accessor_class_pad.cc +++ b/src/accessor/grib_accessor_class_pad.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,26 +10,25 @@ #include "grib_accessor_class_pad.h" -grib_accessor_class_pad_t _grib_accessor_class_pad{"pad"}; +grib_accessor_class_pad_t _grib_accessor_class_pad{ "pad" }; grib_accessor_class* grib_accessor_class_pad = &_grib_accessor_class_pad; - -size_t grib_accessor_class_pad_t::preferred_size(grib_accessor* a, int from_handle){ +void grib_accessor_class_pad_t::init(grib_accessor* a, const long len, grib_arguments* arg) +{ + grib_accessor_class_padding_t::init(a, len, arg); grib_accessor_pad_t* self = (grib_accessor_pad_t*)a; + self->expression = grib_arguments_get_expression(grib_handle_of_accessor(a), arg, 0); + a->length = preferred_size(a, 1); +} + +size_t grib_accessor_class_pad_t::preferred_size(grib_accessor* a, int from_handle) +{ + grib_accessor_pad_t* self = (grib_accessor_pad_t*)a; long length = 0; grib_expression_evaluate_long(grib_handle_of_accessor(a), self->expression, &length); return length > 0 ? length : 0; } - - -void grib_accessor_class_pad_t::init(grib_accessor* a, const long len, grib_arguments* arg){ - grib_accessor_class_padding_t::init(a, len, arg); - grib_accessor_pad_t* self = (grib_accessor_pad_t*)a; - - self->expression = grib_arguments_get_expression(grib_handle_of_accessor(a), arg, 0); - a->length = preferred_size(a, 1); -} From b1dbd4f2cfd5433c65426e13ad06739894df79d6 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 29 Jul 2024 11:55:30 +0100 Subject: [PATCH 108/277] Formatting and cleanups --- .../grib_accessor_class_g1monthlydate.cc | 12 +++---- .../grib_accessor_class_g1verificationdate.cc | 32 ++++++++++--------- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/src/accessor/grib_accessor_class_g1monthlydate.cc b/src/accessor/grib_accessor_class_g1monthlydate.cc index 420f96ef3..04ee6c5f3 100644 --- a/src/accessor/grib_accessor_class_g1monthlydate.cc +++ b/src/accessor/grib_accessor_class_g1monthlydate.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,20 +10,21 @@ #include "grib_accessor_class_g1monthlydate.h" -grib_accessor_class_g1monthlydate_t _grib_accessor_class_g1monthlydate{"g1monthlydate"}; +grib_accessor_class_g1monthlydate_t _grib_accessor_class_g1monthlydate{ "g1monthlydate" }; grib_accessor_class* grib_accessor_class_g1monthlydate = &_grib_accessor_class_g1monthlydate; -void grib_accessor_class_g1monthlydate_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g1monthlydate_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); grib_accessor_g1monthlydate_t* self = (grib_accessor_g1monthlydate_t*)a; - int n = 0; - self->date = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); + self->date = grib_arguments_get_name(grib_handle_of_accessor(a), c, 0); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_g1monthlydate_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_g1monthlydate_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_g1monthlydate_t* self = (grib_accessor_g1monthlydate_t*)a; long date = 0; diff --git a/src/accessor/grib_accessor_class_g1verificationdate.cc b/src/accessor/grib_accessor_class_g1verificationdate.cc index 63a1f1356..3d45de3ed 100644 --- a/src/accessor/grib_accessor_class_g1verificationdate.cc +++ b/src/accessor/grib_accessor_class_g1verificationdate.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,14 +10,15 @@ #include "grib_accessor_class_g1verificationdate.h" -grib_accessor_class_g1verificationdate_t _grib_accessor_class_g1verificationdate{"g1verificationdate"}; +grib_accessor_class_g1verificationdate_t _grib_accessor_class_g1verificationdate{ "g1verificationdate" }; grib_accessor_class* grib_accessor_class_g1verificationdate = &_grib_accessor_class_g1verificationdate; -void grib_accessor_class_g1verificationdate_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g1verificationdate_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_long_t::init(a, l, c); grib_accessor_g1verificationdate_t* self = (grib_accessor_g1verificationdate_t*)a; - int n = 0; + int n = 0; self->date = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); self->time = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); @@ -27,16 +27,18 @@ void grib_accessor_class_g1verificationdate_t::init(grib_accessor* a, const long a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -int grib_accessor_class_g1verificationdate_t::unpack_long(grib_accessor* a, long* val, size_t* len){ +int grib_accessor_class_g1verificationdate_t::unpack_long(grib_accessor* a, long* val, size_t* len) +{ grib_accessor_g1verificationdate_t* self = (grib_accessor_g1verificationdate_t*)a; - int ret = 0; - long date = 0; - long time = 0; - long cdate = 0; - long step = 0; - long vtime = 0; - long vdate = 0; - long vd = 0; + + int ret = 0; + long date = 0; + long time = 0; + long cdate = 0; + long step = 0; + long vtime = 0; + long vdate = 0; + long vd = 0; if ((ret = grib_get_long_internal(grib_handle_of_accessor(a), self->date, &date)) != GRIB_SUCCESS) return ret; @@ -52,13 +54,13 @@ int grib_accessor_class_g1verificationdate_t::unpack_long(grib_accessor* a, long vd = vtime / 24; vdate = grib_julian_to_date(vd); - /* printf("\n********\n date %d, time %d, step %d, vdate: %d, cdate %d, vd %d\n********\n", date, time, step, vdate, cdate, vd); */ + //printf("\n********\n date %d, time %d, step %d, vdate: %d, cdate %d, vd %d\n********\n", date, time, step, vdate, cdate, vd); if (*len < 1) return GRIB_ARRAY_TOO_SMALL; *val = vdate; - /* fprintf(stdout,"\n********\n %d cdate %d vd %d\n********\n", vdate, cdate, step); */ + // fprintf(stdout,"\n********\n %d cdate %d vd %d\n********\n", vdate, cdate, step); return GRIB_SUCCESS; } From eea658f3cb3a9443e3e42ec8f3d92b3fbb323b26 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 29 Jul 2024 16:08:23 +0100 Subject: [PATCH 109/277] ECC-1886: Definitions: cfVarName key should be based on the shortName (part 1) --- src/CMakeLists.txt | 1 + .../grib_accessor_class_cf_var_name.cc | 61 ++ .../grib_accessor_class_cf_var_name.h | 30 + src/accessor/grib_accessor_class_trim.cc | 1 - src/grib_accessor_class.h | 1 + src/grib_accessor_classes_hash.cc | 567 +++++++++--------- src/grib_accessor_factory.h | 1 + src/grib_accessor_factory_hash_list | 1 + 8 files changed, 382 insertions(+), 281 deletions(-) create mode 100644 src/accessor/grib_accessor_class_cf_var_name.cc create mode 100644 src/accessor/grib_accessor_class_cf_var_name.h diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7c491d6b1..3a4146b3b 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -88,6 +88,7 @@ list( APPEND eccodes_src_files accessor/grib_accessor_class_validity_date.cc accessor/grib_accessor_class_validity_time.cc accessor/grib_accessor_class_bytes.cc + accessor/grib_accessor_class_cf_var_name.cc accessor/grib_accessor_class_change_alternative_row_scanning.cc accessor/grib_accessor_class_change_scanning_direction.cc accessor/grib_accessor_class_check_internal_version.cc diff --git a/src/accessor/grib_accessor_class_cf_var_name.cc b/src/accessor/grib_accessor_class_cf_var_name.cc new file mode 100644 index 000000000..7018ab376 --- /dev/null +++ b/src/accessor/grib_accessor_class_cf_var_name.cc @@ -0,0 +1,61 @@ +/* + * (C) Copyright 2005- ECMWF. + * + * This software is licensed under the terms of the Apache Licence Version 2.0 + * which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. + * + * In applying this licence, ECMWF does not waive the privileges and immunities granted to it by + * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. + */ + +#include "grib_accessor_class_cf_var_name.h" + +grib_accessor_class_cf_var_name_t _grib_accessor_class_cf_var_name{ "cf_var_name" }; +grib_accessor_class* grib_accessor_class_cf_var_name = &_grib_accessor_class_cf_var_name; + + +void grib_accessor_class_cf_var_name_t::init(grib_accessor* a, const long l, grib_arguments* arg) +{ + grib_accessor_class_ascii_t::init(a, l, arg); + + grib_accessor_cf_var_name_t* self = (grib_accessor_cf_var_name_t*)a; + grib_handle* h = grib_handle_of_accessor(a); + + self->defaultKey = grib_arguments_get_name(h, arg, 0); +} + +int grib_accessor_class_cf_var_name_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ + grib_accessor_cf_var_name_t* self = (grib_accessor_cf_var_name_t*)a; + + grib_handle* h = grib_handle_of_accessor(a); + char defaultKey[256] = {0,}; + size_t size = sizeof(defaultKey) / sizeof(*defaultKey); + char* pDefaultKey = defaultKey; + + int err = grib_get_string(h, self->defaultKey, defaultKey, &size); + if (err) return err; + + if (size == 0) { + // Should not ever happen + snprintf(val, 1024, "%s", "unknown"); + } + else if ( STR_EQUAL(defaultKey, "~") || isdigit(defaultKey[0]) ) { + // NetCDF variables cannot start with a digit + long paramId = 0; + err = grib_get_long(h, "paramId", ¶mId); + if (err) snprintf(val, 1024, "%s", "unknown"); + else snprintf(val, 1024, "p%ld", paramId); + } + else { + snprintf(val, 1024, "%s", pDefaultKey); + } + size = strlen(val); + *len = size + 1; + return GRIB_SUCCESS; +} + +size_t grib_accessor_class_cf_var_name_t::string_length(grib_accessor* a) +{ + return 1024; +} diff --git a/src/accessor/grib_accessor_class_cf_var_name.h b/src/accessor/grib_accessor_class_cf_var_name.h new file mode 100644 index 000000000..aa0007a54 --- /dev/null +++ b/src/accessor/grib_accessor_class_cf_var_name.h @@ -0,0 +1,30 @@ +/* + * (C) Copyright 2005- ECMWF. + * + * This software is licensed under the terms of the Apache Licence Version 2.0 + * which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. + * + * In applying this licence, ECMWF does not waive the privileges and immunities granted to it by + * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. + */ + +#pragma once + +#include "grib_accessor_class_ascii.h" + +class grib_accessor_cf_var_name_t : public grib_accessor_ascii_t +{ +public: + /* Members defined in cf_var_name */ + const char* defaultKey; +}; + +class grib_accessor_class_cf_var_name_t : public grib_accessor_class_ascii_t +{ +public: + grib_accessor_class_cf_var_name_t(const char* name) : grib_accessor_class_ascii_t(name) {} + grib_accessor* create_empty_accessor() override { return new grib_accessor_cf_var_name_t{}; } + int unpack_string(grib_accessor*, char*, size_t* len) override; + size_t string_length(grib_accessor*) override; + void init(grib_accessor*, const long, grib_arguments*) override; +}; diff --git a/src/accessor/grib_accessor_class_trim.cc b/src/accessor/grib_accessor_class_trim.cc index 7f18a36b9..4d4fb733d 100644 --- a/src/accessor/grib_accessor_class_trim.cc +++ b/src/accessor/grib_accessor_class_trim.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/grib_accessor_class.h b/src/grib_accessor_class.h index cfec4d21d..a3ddf6b21 100644 --- a/src/grib_accessor_class.h +++ b/src/grib_accessor_class.h @@ -20,6 +20,7 @@ extern grib_accessor_class* grib_accessor_class_bufr_simple_thinning; extern grib_accessor_class* grib_accessor_class_bufr_string_values; extern grib_accessor_class* grib_accessor_class_bufrdc_expanded_descriptors; extern grib_accessor_class* grib_accessor_class_bytes; +extern grib_accessor_class* grib_accessor_class_cf_var_name; extern grib_accessor_class* grib_accessor_class_change_alternative_row_scanning; extern grib_accessor_class* grib_accessor_class_change_scanning_direction; extern grib_accessor_class* grib_accessor_class_check_internal_version; diff --git a/src/grib_accessor_classes_hash.cc b/src/grib_accessor_classes_hash.cc index 5617c9456..d9e78851b 100644 --- a/src/grib_accessor_classes_hash.cc +++ b/src/grib_accessor_classes_hash.cc @@ -37,12 +37,12 @@ #line 6 "accessor_class_list.gperf" struct accessor_class_hash { const char *name; grib_accessor_class **cclass;}; -#define TOTAL_KEYWORDS 205 +#define TOTAL_KEYWORDS 206 #define MIN_WORD_LENGTH 1 #define MAX_WORD_LENGTH 44 #define MIN_HASH_VALUE 1 -#define MAX_HASH_VALUE 506 -/* maximum key range = 506, duplicates = 0 */ +#define MAX_HASH_VALUE 545 +/* maximum key range = 545, duplicates = 0 */ #ifdef __GNUC__ @@ -55,32 +55,32 @@ static unsigned int grib_accessor_classes_get_id (const char *str, size_t len) { static const unsigned short asso_values[] = { - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 0, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 1, 145, - 23, 6, 2, 507, 4, 507, 1, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 0, 507, 0, 69, 84, - 0, 0, 161, 24, 187, 1, 8, 9, 87, 102, - 13, 51, 6, 507, 118, 1, 40, 59, 171, 0, - 4, 6, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, - 507, 507, 507, 507, 507, 507 + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 0, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 1, 145, + 23, 6, 2, 546, 4, 546, 1, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 0, 546, 0, 69, 84, + 0, 0, 200, 24, 219, 1, 8, 6, 87, 102, + 13, 51, 6, 546, 118, 1, 40, 59, 171, 0, + 28, 11, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 546, 546, 546, 546, 546 }; unsigned int hval = len; @@ -117,507 +117,514 @@ static const struct accessor_class_hash classes[] = #line 9 "accessor_class_list.gperf" {" "}, {""}, {""}, {""}, {""}, -#line 179 "accessor_class_list.gperf" +#line 180 "accessor_class_list.gperf" {"size", &grib_accessor_class_size}, #line 12 "accessor_class_list.gperf" {"ascii", &grib_accessor_class_ascii}, -#line 176 "accessor_class_list.gperf" +#line 177 "accessor_class_list.gperf" {"signed", &grib_accessor_class_signed}, -#line 156 "accessor_class_list.gperf" +#line 157 "accessor_class_list.gperf" {"pad", &grib_accessor_class_pad}, -#line 182 "accessor_class_list.gperf" +#line 183 "accessor_class_list.gperf" {"spd", &grib_accessor_class_spd}, - {""}, -#line 75 "accessor_class_list.gperf" - {"dirty", &grib_accessor_class_dirty}, - {""}, -#line 177 "accessor_class_list.gperf" + {""}, {""}, {""}, +#line 178 "accessor_class_list.gperf" {"signed_bits", &grib_accessor_class_signed_bits}, {""}, -#line 66 "accessor_class_list.gperf" +#line 67 "accessor_class_list.gperf" {"data_raw_packing", &grib_accessor_class_data_raw_packing}, - {""}, {""}, {""}, -#line 72 "accessor_class_list.gperf" +#line 76 "accessor_class_list.gperf" + {"dirty", &grib_accessor_class_dirty}, + {""}, {""}, +#line 73 "accessor_class_list.gperf" {"data_simple_packing", &grib_accessor_class_data_simple_packing}, -#line 68 "accessor_class_list.gperf" +#line 69 "accessor_class_list.gperf" {"data_secondary_bitmap", &grib_accessor_class_data_secondary_bitmap}, -#line 170 "accessor_class_list.gperf" +#line 171 "accessor_class_list.gperf" {"section", &grib_accessor_class_section}, -#line 43 "accessor_class_list.gperf" +#line 44 "accessor_class_list.gperf" {"data_apply_bitmap", &grib_accessor_class_data_apply_bitmap}, {""}, -#line 74 "accessor_class_list.gperf" +#line 75 "accessor_class_list.gperf" {"dictionary", &grib_accessor_class_dictionary}, {""}, -#line 112 "accessor_class_list.gperf" +#line 113 "accessor_class_list.gperf" {"gen", &grib_accessor_class_gen}, -#line 64 "accessor_class_list.gperf" - {"data_jpeg2000_packing", &grib_accessor_class_data_jpeg2000_packing}, #line 65 "accessor_class_list.gperf" + {"data_jpeg2000_packing", &grib_accessor_class_data_jpeg2000_packing}, +#line 66 "accessor_class_list.gperf" {"data_png_packing", &grib_accessor_class_data_png_packing}, -#line 172 "accessor_class_list.gperf" - {"section_padding", &grib_accessor_class_section_padding}, #line 173 "accessor_class_list.gperf" + {"section_padding", &grib_accessor_class_section_padding}, +#line 174 "accessor_class_list.gperf" {"section_pointer", &grib_accessor_class_section_pointer}, -#line 44 "accessor_class_list.gperf" +#line 45 "accessor_class_list.gperf" {"data_apply_boustrophedonic", &grib_accessor_class_data_apply_boustrophedonic}, - {""}, {""}, {""}, {""}, -#line 80 "accessor_class_list.gperf" - {"expanded_descriptors", &grib_accessor_class_expanded_descriptors}, -#line 157 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, {""}, +#line 158 "accessor_class_list.gperf" {"padding", &grib_accessor_class_padding}, -#line 45 "accessor_class_list.gperf" +#line 46 "accessor_class_list.gperf" {"data_apply_boustrophedonic_bitmap", &grib_accessor_class_data_apply_boustrophedonic_bitmap}, -#line 110 "accessor_class_list.gperf" +#line 111 "accessor_class_list.gperf" {"gds_is_present", &grib_accessor_class_gds_is_present}, -#line 169 "accessor_class_list.gperf" +#line 170 "accessor_class_list.gperf" {"second_order_bits_per_value", &grib_accessor_class_second_order_bits_per_value}, -#line 171 "accessor_class_list.gperf" +#line 172 "accessor_class_list.gperf" {"section_length", &grib_accessor_class_section_length}, -#line 113 "accessor_class_list.gperf" +#line 114 "accessor_class_list.gperf" {"getenv", &grib_accessor_class_getenv}, -#line 57 "accessor_class_list.gperf" +#line 58 "accessor_class_list.gperf" {"data_g22order_packing", &grib_accessor_class_data_g22order_packing}, -#line 191 "accessor_class_list.gperf" +#line 192 "accessor_class_list.gperf" {"time", &grib_accessor_class_time}, {""}, -#line 61 "accessor_class_list.gperf" +#line 62 "accessor_class_list.gperf" {"data_g2shsimple_packing", &grib_accessor_class_data_g2shsimple_packing}, {""}, -#line 155 "accessor_class_list.gperf" +#line 156 "accessor_class_list.gperf" {"packing_type", &grib_accessor_class_packing_type}, -#line 62 "accessor_class_list.gperf" +#line 63 "accessor_class_list.gperf" {"data_g2simple_packing", &grib_accessor_class_data_g2simple_packing}, -#line 59 "accessor_class_list.gperf" +#line 60 "accessor_class_list.gperf" {"data_g2complex_packing", &grib_accessor_class_data_g2complex_packing}, {""}, {""}, -#line 104 "accessor_class_list.gperf" +#line 105 "accessor_class_list.gperf" {"g2grid", &grib_accessor_class_g2grid}, {""}, {""}, {""}, -#line 103 "accessor_class_list.gperf" +#line 104 "accessor_class_list.gperf" {"g2end_step", &grib_accessor_class_g2end_step}, -#line 98 "accessor_class_list.gperf" +#line 99 "accessor_class_list.gperf" {"g2_eps", &grib_accessor_class_g2_eps}, -#line 142 "accessor_class_list.gperf" +#line 143 "accessor_class_list.gperf" {"nearest", &grib_accessor_class_nearest}, - {""}, -#line 158 "accessor_class_list.gperf" +#line 81 "accessor_class_list.gperf" + {"expanded_descriptors", &grib_accessor_class_expanded_descriptors}, +#line 159 "accessor_class_list.gperf" {"padto", &grib_accessor_class_padto}, -#line 189 "accessor_class_list.gperf" +#line 190 "accessor_class_list.gperf" {"sum", &grib_accessor_class_sum}, {""}, -#line 107 "accessor_class_list.gperf" +#line 108 "accessor_class_list.gperf" {"g2lon", &grib_accessor_class_g2lon}, -#line 203 "accessor_class_list.gperf" +#line 204 "accessor_class_list.gperf" {"uint8", &grib_accessor_class_uint8}, {""}, -#line 188 "accessor_class_list.gperf" +#line 189 "accessor_class_list.gperf" {"step_in_units", &grib_accessor_class_step_in_units}, -#line 63 "accessor_class_list.gperf" +#line 64 "accessor_class_list.gperf" {"data_g2simple_packing_with_preprocessing", &grib_accessor_class_data_g2simple_packing_with_preprocessing}, -#line 201 "accessor_class_list.gperf" +#line 202 "accessor_class_list.gperf" {"uint64", &grib_accessor_class_uint64}, -#line 47 "accessor_class_list.gperf" +#line 48 "accessor_class_list.gperf" {"data_complex_packing", &grib_accessor_class_data_complex_packing}, -#line 199 "accessor_class_list.gperf" +#line 200 "accessor_class_list.gperf" {"uint32", &grib_accessor_class_uint32}, #line 13 "accessor_class_list.gperf" {"bit", &grib_accessor_class_bit}, #line 15 "accessor_class_list.gperf" {"bits", &grib_accessor_class_bits}, -#line 48 "accessor_class_list.gperf" +#line 49 "accessor_class_list.gperf" {"data_dummy_field", &grib_accessor_class_data_dummy_field}, #line 14 "accessor_class_list.gperf" {"bitmap", &grib_accessor_class_bitmap}, -#line 124 "accessor_class_list.gperf" +#line 125 "accessor_class_list.gperf" {"julian_day", &grib_accessor_class_julian_day}, -#line 123 "accessor_class_list.gperf" +#line 124 "accessor_class_list.gperf" {"julian_date", &grib_accessor_class_julian_date}, -#line 143 "accessor_class_list.gperf" +#line 144 "accessor_class_list.gperf" {"non_alpha", &grib_accessor_class_non_alpha}, - {""}, -#line 29 "accessor_class_list.gperf" - {"bytes", &grib_accessor_class_bytes}, -#line 67 "accessor_class_list.gperf" + {""}, {""}, +#line 68 "accessor_class_list.gperf" {"data_run_length_packing", &grib_accessor_class_data_run_length_packing}, -#line 108 "accessor_class_list.gperf" +#line 109 "accessor_class_list.gperf" {"g2step_range", &grib_accessor_class_g2step_range}, #line 16 "accessor_class_list.gperf" {"bits_per_value", &grib_accessor_class_bits_per_value}, - {""}, {""}, {""}, {""}, {""}, -#line 167 "accessor_class_list.gperf" + {""}, +#line 29 "accessor_class_list.gperf" + {"bytes", &grib_accessor_class_bytes}, + {""}, {""}, {""}, +#line 168 "accessor_class_list.gperf" {"scale", &grib_accessor_class_scale}, {""}, -#line 185 "accessor_class_list.gperf" +#line 186 "accessor_class_list.gperf" {"statistics", &grib_accessor_class_statistics}, -#line 102 "accessor_class_list.gperf" +#line 103 "accessor_class_list.gperf" {"g2date", &grib_accessor_class_g2date}, -#line 145 "accessor_class_list.gperf" +#line 146 "accessor_class_list.gperf" {"number_of_points", &grib_accessor_class_number_of_points}, -#line 100 "accessor_class_list.gperf" +#line 101 "accessor_class_list.gperf" {"g2bitmap", &grib_accessor_class_g2bitmap}, {""}, -#line 60 "accessor_class_list.gperf" +#line 61 "accessor_class_list.gperf" {"data_g2secondary_bitmap", &grib_accessor_class_data_g2secondary_bitmap}, -#line 58 "accessor_class_list.gperf" +#line 59 "accessor_class_list.gperf" {"data_g2bifourier_packing", &grib_accessor_class_data_g2bifourier_packing}, -#line 111 "accessor_class_list.gperf" +#line 112 "accessor_class_list.gperf" {"gds_not_present_bitmap", &grib_accessor_class_gds_not_present_bitmap}, -#line 122 "accessor_class_list.gperf" +#line 123 "accessor_class_list.gperf" {"iterator", &grib_accessor_class_iterator}, -#line 186 "accessor_class_list.gperf" +#line 187 "accessor_class_list.gperf" {"statistics_spectral", &grib_accessor_class_statistics_spectral}, -#line 46 "accessor_class_list.gperf" +#line 47 "accessor_class_list.gperf" {"data_ccsds_packing", &grib_accessor_class_data_ccsds_packing}, -#line 146 "accessor_class_list.gperf" +#line 147 "accessor_class_list.gperf" {"number_of_points_gaussian", &grib_accessor_class_number_of_points_gaussian}, -#line 206 "accessor_class_list.gperf" +#line 207 "accessor_class_list.gperf" {"unsigned", &grib_accessor_class_unsigned}, -#line 138 "accessor_class_list.gperf" +#line 139 "accessor_class_list.gperf" {"md5", &grib_accessor_class_md5}, {""}, {""}, -#line 96 "accessor_class_list.gperf" +#line 97 "accessor_class_list.gperf" {"g2_aerosol", &grib_accessor_class_g2_aerosol}, -#line 139 "accessor_class_list.gperf" +#line 140 "accessor_class_list.gperf" {"message", &grib_accessor_class_message}, -#line 207 "accessor_class_list.gperf" +#line 208 "accessor_class_list.gperf" {"unsigned_bits", &grib_accessor_class_unsigned_bits}, -#line 174 "accessor_class_list.gperf" +#line 175 "accessor_class_list.gperf" {"select_step_template", &grib_accessor_class_select_step_template}, -#line 136 "accessor_class_list.gperf" +#line 137 "accessor_class_list.gperf" {"mars_param", &grib_accessor_class_mars_param}, -#line 204 "accessor_class_list.gperf" +#line 205 "accessor_class_list.gperf" {"unexpanded_descriptors", &grib_accessor_class_unexpanded_descriptors}, -#line 193 "accessor_class_list.gperf" +#line 194 "accessor_class_list.gperf" {"to_integer", &grib_accessor_class_to_integer}, - {""}, {""}, {""}, -#line 178 "accessor_class_list.gperf" +#line 179 "accessor_class_list.gperf" {"simple_packing_error", &grib_accessor_class_simple_packing_error}, -#line 187 "accessor_class_list.gperf" + {""}, {""}, {""}, +#line 188 "accessor_class_list.gperf" {"step_human_readable", &grib_accessor_class_step_human_readable}, -#line 140 "accessor_class_list.gperf" +#line 141 "accessor_class_list.gperf" {"message_copy", &grib_accessor_class_message_copy}, -#line 163 "accessor_class_list.gperf" +#line 164 "accessor_class_list.gperf" {"raw", &grib_accessor_class_raw}, {""}, {""}, -#line 202 "accessor_class_list.gperf" +#line 203 "accessor_class_list.gperf" {"uint64_little_endian", &grib_accessor_class_uint64_little_endian}, {""}, -#line 200 "accessor_class_list.gperf" +#line 201 "accessor_class_list.gperf" {"uint32_little_endian", &grib_accessor_class_uint32_little_endian}, -#line 114 "accessor_class_list.gperf" +#line 115 "accessor_class_list.gperf" {"global_gaussian", &grib_accessor_class_global_gaussian}, {""}, {""}, -#line 76 "accessor_class_list.gperf" +#line 77 "accessor_class_list.gperf" {"divdouble", &grib_accessor_class_divdouble}, {""}, -#line 175 "accessor_class_list.gperf" +#line 176 "accessor_class_list.gperf" {"sexagesimal2decimal", &grib_accessor_class_sexagesimal2decimal}, -#line 99 "accessor_class_list.gperf" +#line 100 "accessor_class_list.gperf" {"g2_mars_labeling", &grib_accessor_class_g2_mars_labeling}, -#line 78 "accessor_class_list.gperf" +#line 79 "accessor_class_list.gperf" {"element", &grib_accessor_class_element}, -#line 160 "accessor_class_list.gperf" +#line 161 "accessor_class_list.gperf" {"padtomultiple", &grib_accessor_class_padtomultiple}, -#line 127 "accessor_class_list.gperf" +#line 128 "accessor_class_list.gperf" {"latitudes", &grib_accessor_class_latitudes}, -#line 164 "accessor_class_list.gperf" +#line 165 "accessor_class_list.gperf" {"rdbtime_guess_date", &grib_accessor_class_rdbtime_guess_date}, {""}, {""}, {""}, -#line 194 "accessor_class_list.gperf" +#line 195 "accessor_class_list.gperf" {"to_string", &grib_accessor_class_to_string}, -#line 132 "accessor_class_list.gperf" +#line 133 "accessor_class_list.gperf" {"long", &grib_accessor_class_long}, #line 19 "accessor_class_list.gperf" {"bufr_data_array", &grib_accessor_class_bufr_data_array}, -#line 77 "accessor_class_list.gperf" +#line 78 "accessor_class_list.gperf" {"double", &grib_accessor_class_double}, #line 20 "accessor_class_list.gperf" {"bufr_data_element", &grib_accessor_class_bufr_data_element}, -#line 105 "accessor_class_list.gperf" +#line 106 "accessor_class_list.gperf" {"g2latlon", &grib_accessor_class_g2latlon}, {""}, {""}, #line 26 "accessor_class_list.gperf" {"bufr_simple_thinning", &grib_accessor_class_bufr_simple_thinning}, {""}, -#line 137 "accessor_class_list.gperf" +#line 138 "accessor_class_list.gperf" {"mars_step", &grib_accessor_class_mars_step}, {""}, -#line 115 "accessor_class_list.gperf" +#line 116 "accessor_class_list.gperf" {"group", &grib_accessor_class_group}, {""}, #line 28 "accessor_class_list.gperf" {"bufrdc_expanded_descriptors", &grib_accessor_class_bufrdc_expanded_descriptors}, -#line 161 "accessor_class_list.gperf" +#line 162 "accessor_class_list.gperf" {"position", &grib_accessor_class_position}, {""}, {""}, {""}, #line 17 "accessor_class_list.gperf" {"blob", &grib_accessor_class_blob}, -#line 109 "accessor_class_list.gperf" +#line 110 "accessor_class_list.gperf" {"gaussian_grid_name", &grib_accessor_class_gaussian_grid_name}, -#line 197 "accessor_class_list.gperf" +#line 198 "accessor_class_list.gperf" {"trim", &grib_accessor_class_trim}, {""}, {""}, -#line 119 "accessor_class_list.gperf" +#line 120 "accessor_class_list.gperf" {"ibmfloat", &grib_accessor_class_ibmfloat}, {""}, {""}, -#line 195 "accessor_class_list.gperf" +#line 196 "accessor_class_list.gperf" {"transient", &grib_accessor_class_transient}, -#line 55 "accessor_class_list.gperf" +#line 56 "accessor_class_list.gperf" {"data_g1shsimple_packing", &grib_accessor_class_data_g1shsimple_packing}, {""}, {""}, -#line 56 "accessor_class_list.gperf" +#line 57 "accessor_class_list.gperf" {"data_g1simple_packing", &grib_accessor_class_data_g1simple_packing}, -#line 49 "accessor_class_list.gperf" +#line 50 "accessor_class_list.gperf" {"data_g1complex_packing", &grib_accessor_class_data_g1complex_packing}, -#line 166 "accessor_class_list.gperf" +#line 167 "accessor_class_list.gperf" {"round", &grib_accessor_class_round}, -#line 196 "accessor_class_list.gperf" +#line 197 "accessor_class_list.gperf" {"transient_darray", &grib_accessor_class_transient_darray}, #line 18 "accessor_class_list.gperf" {"budgdate", &grib_accessor_class_budgdate}, -#line 210 "accessor_class_list.gperf" +#line 211 "accessor_class_list.gperf" {"values", &grib_accessor_class_values}, -#line 144 "accessor_class_list.gperf" +#line 145 "accessor_class_list.gperf" {"number_of_coded_values", &grib_accessor_class_number_of_coded_values}, -#line 126 "accessor_class_list.gperf" +#line 127 "accessor_class_list.gperf" {"label", &grib_accessor_class_label}, {""}, {""}, -#line 38 "accessor_class_list.gperf" +#line 39 "accessor_class_list.gperf" {"concept", &grib_accessor_class_concept}, {""}, -#line 183 "accessor_class_list.gperf" +#line 184 "accessor_class_list.gperf" {"spectral_truncation", &grib_accessor_class_spectral_truncation}, {""}, {""}, -#line 83 "accessor_class_list.gperf" +#line 84 "accessor_class_list.gperf" {"g1_message_length", &grib_accessor_class_g1_message_length}, -#line 184 "accessor_class_list.gperf" - {"sprintf", &grib_accessor_class_sprintf}, -#line 190 "accessor_class_list.gperf" - {"suppressed", &grib_accessor_class_suppressed}, {""}, -#line 213 "accessor_class_list.gperf" - {"when", &grib_accessor_class_when}, - {""}, {""}, -#line 180 "accessor_class_list.gperf" +#line 191 "accessor_class_list.gperf" + {"suppressed", &grib_accessor_class_suppressed}, + {""}, {""}, {""}, {""}, +#line 181 "accessor_class_list.gperf" {"smart_table", &grib_accessor_class_smart_table}, {""}, -#line 39 "accessor_class_list.gperf" +#line 40 "accessor_class_list.gperf" {"constant", &grib_accessor_class_constant}, {""}, {""}, -#line 162 "accessor_class_list.gperf" +#line 163 "accessor_class_list.gperf" {"proj_string", &grib_accessor_class_proj_string}, -#line 150 "accessor_class_list.gperf" +#line 151 "accessor_class_list.gperf" {"octet_number", &grib_accessor_class_octet_number}, -#line 181 "accessor_class_list.gperf" +#line 182 "accessor_class_list.gperf" {"smart_table_column", &grib_accessor_class_smart_table_column}, {""}, -#line 135 "accessor_class_list.gperf" +#line 136 "accessor_class_list.gperf" {"lookup", &grib_accessor_class_lookup}, {""}, -#line 94 "accessor_class_list.gperf" +#line 95 "accessor_class_list.gperf" {"g1step_range", &grib_accessor_class_g1step_range}, -#line 73 "accessor_class_list.gperf" +#line 74 "accessor_class_list.gperf" {"decimal_precision", &grib_accessor_class_decimal_precision}, {""}, -#line 134 "accessor_class_list.gperf" +#line 135 "accessor_class_list.gperf" {"longitudes", &grib_accessor_class_longitudes}, -#line 70 "accessor_class_list.gperf" - {"data_sh_unpacked", &grib_accessor_class_data_sh_unpacked}, + {""}, #line 27 "accessor_class_list.gperf" {"bufr_string_values", &grib_accessor_class_bufr_string_values}, -#line 198 "accessor_class_list.gperf" +#line 199 "accessor_class_list.gperf" {"uint16", &grib_accessor_class_uint16}, - {""}, {""}, -#line 71 "accessor_class_list.gperf" - {"data_shsimple_packing", &grib_accessor_class_data_shsimple_packing}, -#line 86 "accessor_class_list.gperf" + {""}, {""}, {""}, +#line 87 "accessor_class_list.gperf" {"g1date", &grib_accessor_class_g1date}, {""}, -#line 85 "accessor_class_list.gperf" +#line 86 "accessor_class_list.gperf" {"g1bitmap", &grib_accessor_class_g1bitmap}, {""}, -#line 54 "accessor_class_list.gperf" +#line 55 "accessor_class_list.gperf" {"data_g1secondary_bitmap", &grib_accessor_class_data_g1secondary_bitmap}, -#line 192 "accessor_class_list.gperf" +#line 193 "accessor_class_list.gperf" {"to_double", &grib_accessor_class_to_double}, -#line 101 "accessor_class_list.gperf" +#line 102 "accessor_class_list.gperf" {"g2bitmap_present", &grib_accessor_class_g2bitmap_present}, -#line 120 "accessor_class_list.gperf" - {"ieeefloat", &grib_accessor_class_ieeefloat}, -#line 151 "accessor_class_list.gperf" - {"offset_file", &grib_accessor_class_offset_file}, -#line 208 "accessor_class_list.gperf" - {"validity_date", &grib_accessor_class_validity_date}, + {""}, +#line 214 "accessor_class_list.gperf" + {"when", &grib_accessor_class_when}, #line 209 "accessor_class_list.gperf" + {"validity_date", &grib_accessor_class_validity_date}, +#line 210 "accessor_class_list.gperf" {"validity_time", &grib_accessor_class_validity_time}, {""}, -#line 130 "accessor_class_list.gperf" - {"library_version", &grib_accessor_class_library_version}, -#line 212 "accessor_class_list.gperf" +#line 185 "accessor_class_list.gperf" + {"sprintf", &grib_accessor_class_sprintf}, +#line 213 "accessor_class_list.gperf" {"vector", &grib_accessor_class_vector}, -#line 84 "accessor_class_list.gperf" +#line 85 "accessor_class_list.gperf" {"g1_section4_length", &grib_accessor_class_g1_section4_length}, -#line 141 "accessor_class_list.gperf" +#line 142 "accessor_class_list.gperf" {"multdouble", &grib_accessor_class_multdouble}, -#line 52 "accessor_class_list.gperf" - {"data_g1second_order_general_packing", &grib_accessor_class_data_g1second_order_general_packing}, - {""}, {""}, #line 53 "accessor_class_list.gperf" - {"data_g1second_order_row_by_row_packing", &grib_accessor_class_data_g1second_order_row_by_row_packing}, + {"data_g1second_order_general_packing", &grib_accessor_class_data_g1second_order_general_packing}, +#line 131 "accessor_class_list.gperf" + {"library_version", &grib_accessor_class_library_version}, {""}, -#line 24 "accessor_class_list.gperf" - {"bufr_extract_subsets", &grib_accessor_class_bufr_extract_subsets}, -#line 159 "accessor_class_list.gperf" +#line 54 "accessor_class_list.gperf" + {"data_g1second_order_row_by_row_packing", &grib_accessor_class_data_g1second_order_row_by_row_packing}, + {""}, {""}, +#line 160 "accessor_class_list.gperf" {"padtoeven", &grib_accessor_class_padtoeven}, -#line 50 "accessor_class_list.gperf" +#line 51 "accessor_class_list.gperf" {"data_g1second_order_constant_width_packing", &grib_accessor_class_data_g1second_order_constant_width_packing}, {""}, -#line 51 "accessor_class_list.gperf" +#line 52 "accessor_class_list.gperf" {"data_g1second_order_general_extended_packing", &grib_accessor_class_data_g1second_order_general_extended_packing}, -#line 22 "accessor_class_list.gperf" - {"bufr_extract_area_subsets", &grib_accessor_class_bufr_extract_area_subsets}, - {""}, {""}, {""}, -#line 23 "accessor_class_list.gperf" - {"bufr_extract_datetime_subsets", &grib_accessor_class_bufr_extract_datetime_subsets}, - {""}, +#line 71 "accessor_class_list.gperf" + {"data_sh_unpacked", &grib_accessor_class_data_sh_unpacked}, + {""}, {""}, {""}, {""}, +#line 72 "accessor_class_list.gperf" + {"data_shsimple_packing", &grib_accessor_class_data_shsimple_packing}, #line 21 "accessor_class_list.gperf" {"bufr_elements_table", &grib_accessor_class_bufr_elements_table}, {""}, {""}, {""}, {""}, -#line 154 "accessor_class_list.gperf" +#line 155 "accessor_class_list.gperf" {"pack_bufr_values", &grib_accessor_class_pack_bufr_values}, -#line 35 "accessor_class_list.gperf" +#line 36 "accessor_class_list.gperf" {"codetable", &grib_accessor_class_codetable}, -#line 131 "accessor_class_list.gperf" +#line 132 "accessor_class_list.gperf" {"local_definition", &grib_accessor_class_local_definition}, {""}, #line 25 "accessor_class_list.gperf" {"bufr_group", &grib_accessor_class_bufr_group}, {""}, -#line 88 "accessor_class_list.gperf" +#line 89 "accessor_class_list.gperf" {"g1end_of_interval_monthly", &grib_accessor_class_g1end_of_interval_monthly}, -#line 147 "accessor_class_list.gperf" +#line 148 "accessor_class_list.gperf" {"number_of_values", &grib_accessor_class_number_of_values}, - {""}, -#line 116 "accessor_class_list.gperf" - {"gts_header", &grib_accessor_class_gts_header}, - {""}, -#line 33 "accessor_class_list.gperf" +#line 24 "accessor_class_list.gperf" + {"bufr_extract_subsets", &grib_accessor_class_bufr_extract_subsets}, +#line 121 "accessor_class_list.gperf" + {"ieeefloat", &grib_accessor_class_ieeefloat}, +#line 152 "accessor_class_list.gperf" + {"offset_file", &grib_accessor_class_offset_file}, +#line 34 "accessor_class_list.gperf" {"closest_date", &grib_accessor_class_closest_date}, -#line 153 "accessor_class_list.gperf" +#line 154 "accessor_class_list.gperf" {"optimal_step_units", &grib_accessor_class_optimal_step_units}, - {""}, -#line 211 "accessor_class_list.gperf" +#line 22 "accessor_class_list.gperf" + {"bufr_extract_area_subsets", &grib_accessor_class_bufr_extract_area_subsets}, +#line 212 "accessor_class_list.gperf" {"variable", &grib_accessor_class_variable}, -#line 133 "accessor_class_list.gperf" +#line 134 "accessor_class_list.gperf" {"long_vector", &grib_accessor_class_long_vector}, -#line 168 "accessor_class_list.gperf" +#line 169 "accessor_class_list.gperf" {"scale_values", &grib_accessor_class_scale_values}, - {""}, {""}, {""}, -#line 128 "accessor_class_list.gperf" +#line 23 "accessor_class_list.gperf" + {"bufr_extract_datetime_subsets", &grib_accessor_class_bufr_extract_datetime_subsets}, + {""}, {""}, +#line 129 "accessor_class_list.gperf" {"latlon_increment", &grib_accessor_class_latlon_increment}, {""}, {""}, {""}, -#line 148 "accessor_class_list.gperf" +#line 149 "accessor_class_list.gperf" {"number_of_values_data_raw_packing", &grib_accessor_class_number_of_values_data_raw_packing}, {""}, -#line 79 "accessor_class_list.gperf" +#line 80 "accessor_class_list.gperf" {"evaluate", &grib_accessor_class_evaluate}, - {""}, {""}, {""}, {""}, {""}, -#line 152 "accessor_class_list.gperf" - {"offset_values", &grib_accessor_class_offset_values}, -#line 69 "accessor_class_list.gperf" - {"data_sh_packed", &grib_accessor_class_data_sh_packed}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, #line 11 "accessor_class_list.gperf" {"abstract_vector", &grib_accessor_class_abstract_vector}, -#line 118 "accessor_class_list.gperf" - {"headers_only", &grib_accessor_class_headers_only}, -#line 125 "accessor_class_list.gperf" - {"ksec1expver", &grib_accessor_class_ksec1expver}, - {""}, {""}, -#line 41 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, +#line 42 "accessor_class_list.gperf" {"count_missing", &grib_accessor_class_count_missing}, -#line 205 "accessor_class_list.gperf" +#line 206 "accessor_class_list.gperf" {"unpack_bufr_values", &grib_accessor_class_unpack_bufr_values}, - {""}, {""}, -#line 121 "accessor_class_list.gperf" - {"ifs_param", &grib_accessor_class_ifs_param}, +#line 117 "accessor_class_list.gperf" + {"gts_header", &grib_accessor_class_gts_header}, + {""}, +#line 30 "accessor_class_list.gperf" + {"cf_var_name", &grib_accessor_class_cf_var_name}, {""}, {""}, {""}, -#line 36 "accessor_class_list.gperf" +#line 37 "accessor_class_list.gperf" {"codetable_title", &grib_accessor_class_codetable_title}, {""}, {""}, {""}, -#line 89 "accessor_class_list.gperf" +#line 90 "accessor_class_list.gperf" {"g1fcperiod", &grib_accessor_class_g1fcperiod}, -#line 34 "accessor_class_list.gperf" - {"codeflag", &grib_accessor_class_codeflag}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 106 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, {""}, +#line 126 "accessor_class_list.gperf" + {"ksec1expver", &grib_accessor_class_ksec1expver}, + {""}, {""}, +#line 107 "accessor_class_list.gperf" {"g2level", &grib_accessor_class_g2level}, -#line 42 "accessor_class_list.gperf" +#line 43 "accessor_class_list.gperf" {"count_total", &grib_accessor_class_count_total}, - {""}, -#line 117 "accessor_class_list.gperf" - {"hash_array", &grib_accessor_class_hash_array}, - {""}, {""}, -#line 37 "accessor_class_list.gperf" + {""}, {""}, {""}, +#line 70 "accessor_class_list.gperf" + {"data_sh_packed", &grib_accessor_class_data_sh_packed}, +#line 38 "accessor_class_list.gperf" {"codetable_units", &grib_accessor_class_codetable_units}, - {""}, {""}, -#line 129 "accessor_class_list.gperf" +#line 119 "accessor_class_list.gperf" + {"headers_only", &grib_accessor_class_headers_only}, + {""}, +#line 130 "accessor_class_list.gperf" {"latlonvalues", &grib_accessor_class_latlonvalues}, - {""}, {""}, {""}, {""}, -#line 30 "accessor_class_list.gperf" + {""}, +#line 153 "accessor_class_list.gperf" + {"offset_values", &grib_accessor_class_offset_values}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, +#line 122 "accessor_class_list.gperf" + {"ifs_param", &grib_accessor_class_ifs_param}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 10 "accessor_class_list.gperf" + {"abstract_long_vector", &grib_accessor_class_abstract_long_vector}, +#line 35 "accessor_class_list.gperf" + {"codeflag", &grib_accessor_class_codeflag}, + {""}, {""}, {""}, +#line 118 "accessor_class_list.gperf" + {"hash_array", &grib_accessor_class_hash_array}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, +#line 31 "accessor_class_list.gperf" {"change_alternative_row_scanning", &grib_accessor_class_change_alternative_row_scanning}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 31 "accessor_class_list.gperf" +#line 32 "accessor_class_list.gperf" {"change_scanning_direction", &grib_accessor_class_change_scanning_direction}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 149 "accessor_class_list.gperf" +#line 150 "accessor_class_list.gperf" {"octahedral_gaussian", &grib_accessor_class_octahedral_gaussian}, -#line 10 "accessor_class_list.gperf" - {"abstract_long_vector", &grib_accessor_class_abstract_long_vector}, - {""}, {""}, {""}, -#line 40 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, +#line 41 "accessor_class_list.gperf" {"count_file", &grib_accessor_class_count_file}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 91 "accessor_class_list.gperf" + {""}, +#line 92 "accessor_class_list.gperf" {"g1monthlydate", &grib_accessor_class_g1monthlydate}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 82 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, +#line 83 "accessor_class_list.gperf" {"g1_half_byte_codeflag", &grib_accessor_class_g1_half_byte_codeflag}, {""}, -#line 81 "accessor_class_list.gperf" +#line 82 "accessor_class_list.gperf" {"from_scale_factor_scaled_value", &grib_accessor_class_from_scale_factor_scaled_value}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 32 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 166 "accessor_class_list.gperf" + {"reference_value_error", &grib_accessor_class_reference_value_error}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 33 "accessor_class_list.gperf" {"check_internal_version", &grib_accessor_class_check_internal_version}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, -#line 97 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, {""}, {""}, +#line 98 "accessor_class_list.gperf" {"g2_chemical", &grib_accessor_class_g2_chemical}, -#line 87 "accessor_class_list.gperf" - {"g1day_of_the_year_date", &grib_accessor_class_g1day_of_the_year_date}, {""}, {""}, {""}, {""}, {""}, -#line 165 "accessor_class_list.gperf" - {"reference_value_error", &grib_accessor_class_reference_value_error}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 88 "accessor_class_list.gperf" + {"g1day_of_the_year_date", &grib_accessor_class_g1day_of_the_year_date}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 93 "accessor_class_list.gperf" +#line 91 "accessor_class_list.gperf" + {"g1forecastmonth", &grib_accessor_class_g1forecastmonth}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 94 "accessor_class_list.gperf" {"g1number_of_coded_values_sh_simple", &grib_accessor_class_g1number_of_coded_values_sh_simple}, -#line 92 "accessor_class_list.gperf" +#line 93 "accessor_class_list.gperf" {"g1number_of_coded_values_sh_complex", &grib_accessor_class_g1number_of_coded_values_sh_complex}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, -#line 90 "accessor_class_list.gperf" - {"g1forecastmonth", &grib_accessor_class_g1forecastmonth}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 95 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, +#line 96 "accessor_class_list.gperf" {"g1verificationdate", &grib_accessor_class_g1verificationdate} }; diff --git a/src/grib_accessor_factory.h b/src/grib_accessor_factory.h index 2f889a0c6..13716e28f 100644 --- a/src/grib_accessor_factory.h +++ b/src/grib_accessor_factory.h @@ -19,6 +19,7 @@ { "bufr_string_values", &grib_accessor_class_bufr_string_values, }, { "bufrdc_expanded_descriptors", &grib_accessor_class_bufrdc_expanded_descriptors, }, { "bytes", &grib_accessor_class_bytes, }, +{ "cf_var_name", &grib_accessor_class_cf_var_name, }, { "change_alternative_row_scanning", &grib_accessor_class_change_alternative_row_scanning, }, { "change_scanning_direction", &grib_accessor_class_change_scanning_direction, }, { "check_internal_version", &grib_accessor_class_check_internal_version, }, diff --git a/src/grib_accessor_factory_hash_list b/src/grib_accessor_factory_hash_list index 1f7687f38..ebb16f62f 100644 --- a/src/grib_accessor_factory_hash_list +++ b/src/grib_accessor_factory_hash_list @@ -20,6 +20,7 @@ bufr_simple_thinning, &grib_accessor_class_bufr_simple_thinning bufr_string_values, &grib_accessor_class_bufr_string_values bufrdc_expanded_descriptors, &grib_accessor_class_bufrdc_expanded_descriptors bytes, &grib_accessor_class_bytes +cf_var_name, &grib_accessor_class_cf_var_name change_alternative_row_scanning, &grib_accessor_class_change_alternative_row_scanning change_scanning_direction, &grib_accessor_class_change_scanning_direction check_internal_version, &grib_accessor_class_check_internal_version From da159759db47e9e6af49fe3a8d76e5e03ee45470 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 29 Jul 2024 16:14:59 +0100 Subject: [PATCH 110/277] ECC-1886: Definitions: cfVarName key should be based on the shortName (part 2) --- definitions/grib2/parameters.def | 3 +++ src/accessor_class_hierarchy.txt | 1 + 2 files changed, 4 insertions(+) diff --git a/definitions/grib2/parameters.def b/definitions/grib2/parameters.def index 0ddf9f901..cceae6507 100644 --- a/definitions/grib2/parameters.def +++ b/definitions/grib2/parameters.def @@ -26,6 +26,9 @@ concept cfName(cfNameECMF,"cfName.def",conceptsDir2,conceptsDir1) : no_copy,dump concept cfVarNameLegacyECMF(defaultShortName,"cfVarName.legacy.def",conceptsMasterDir,conceptsLocalDirECMF): no_copy,hidden; concept cfVarNameECMF (cfVarNameLegacyECMF,"cfVarName.def",conceptsMasterDir,conceptsLocalDirECMF): no_copy; concept cfVarName (cfVarNameECMF,"cfVarName.def",conceptsDir2,conceptsDir1): no_copy,dump; +# See ECC-1886 +#meta defaultCfVarName cf_var_name(shortName) : hidden, read_only; +#concept cfVarName (defaultCfVarName, "cfVarName.def", conceptsDir2, conceptsDir1): no_copy,dump; template_nofail names "grib2/products_[productionStatusOfProcessedData].def"; diff --git a/src/accessor_class_hierarchy.txt b/src/accessor_class_hierarchy.txt index 2fa53b858..78f67c6fa 100644 --- a/src/accessor_class_hierarchy.txt +++ b/src/accessor_class_hierarchy.txt @@ -9,6 +9,7 @@ Generated by src/make_accessor_class_hierarchy_dirs.sh |-----grib_accessor_class_long_vector |---grib_accessor_class_ascii |-----grib_accessor_class_bufr_string_values + |-----grib_accessor_class_cf_var_name |-----grib_accessor_class_check_internal_version |-----grib_accessor_class_getenv |-----grib_accessor_class_gts_header From b497b283b921b25c77387d7f1c9fc90b88d459b5 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 29 Jul 2024 22:25:30 +0100 Subject: [PATCH 111/277] Regression test suite: Switch back to the old way until we solve the download problems --- .github/ci-nightly-test.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index cf7567c5b..822f5564c 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -24,6 +24,7 @@ git clone https://${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $reg cd $regression_suite_dir # Launch the regression tests in parallel (This script uses GNU parallel) +cd ~masn/REGRESSION_TESTING/ecCodes ./par-suite.sh -w $TMPDIR/install/eccodes/$version # For debugging specific test(s) From 7226e55c74b4e5f7de2d0abadb50ec80805f9c9a Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Tue, 30 Jul 2024 08:22:39 +0000 Subject: [PATCH 112/277] ECC-1887: GRIB2: The mars keys 'date' and 'time' for OSTIA data (using local def 11) are wrong --- definitions/grib1/local.98.11.def | 4 ++-- definitions/grib2/local.98.11.def | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/definitions/grib1/local.98.11.def b/definitions/grib1/local.98.11.def index 475ab900f..6fa5a484d 100644 --- a/definitions/grib1/local.98.11.def +++ b/definitions/grib1/local.98.11.def @@ -32,5 +32,5 @@ constant secondsOfAnalysis = 0; meta dateOfAnalysis g1date(centuryOfAnalysis,yearOfAnalysis,monthOfAnalysis,dayOfAnalysis) : dump; meta timeOfAnalysis time(hourOfAnalysis,minuteOfAnalysis,secondsOfAnalysis) : dump; -alias date = dateOfAnalysis; -alias time = timeOfAnalysis; +alias mars.date = dateOfAnalysis; +alias mars.time = timeOfAnalysis; diff --git a/definitions/grib2/local.98.11.def b/definitions/grib2/local.98.11.def index 3676a5463..58ff884b7 100644 --- a/definitions/grib2/local.98.11.def +++ b/definitions/grib2/local.98.11.def @@ -15,5 +15,5 @@ constant secondsOfAnalysis = 0; meta dateOfAnalysis g2date(yearOfAnalysis,monthOfAnalysis,dayOfAnalysis) : dump; meta timeOfAnalysis time(hourOfAnalysis,minuteOfAnalysis,secondsOfAnalysis) : dump; -alias date = dateOfAnalysis; -alias time = timeOfAnalysis; +alias mars.date = dateOfAnalysis; +alias mars.time = timeOfAnalysis; From 797613d5ae69361db9efec016e23f3c2dd1ecabf Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Tue, 30 Jul 2024 08:23:41 +0000 Subject: [PATCH 113/277] Regression test suite: Revisit --- .github/ci-nightly-test.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index 822f5564c..c2d17b709 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -18,10 +18,10 @@ version=$(cat $TMPDIR/eccodes/VERSION) # The environment variable "GH_TOKEN" needs to be there for the clone to succeed # -regression_suite_dir=$TMPDIR/eccodes-regression-tests -mkdir -p $regression_suite_dir -git clone https://${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir -cd $regression_suite_dir +#regression_suite_dir=$TMPDIR/eccodes-regression-tests +#mkdir -p $regression_suite_dir +#git clone https://${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir +#cd $regression_suite_dir # Launch the regression tests in parallel (This script uses GNU parallel) cd ~masn/REGRESSION_TESTING/ecCodes From 7053d3b72e86f2cfb000ac7ce8cb8026d4cc28e4 Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Tue, 30 Jul 2024 12:13:27 +0000 Subject: [PATCH 114/277] ECC-1858: Data encodings parameters are always re-computed --- data/grib_data_files.txt | 2 +- ...ib_accessor_class_data_g22order_packing.cc | 6 +- tests/grib_bitmap.sh | 89 ++++++++++++++++++- 3 files changed, 91 insertions(+), 6 deletions(-) diff --git a/data/grib_data_files.txt b/data/grib_data_files.txt index f6d3a9124..8996acf97 100644 --- a/data/grib_data_files.txt +++ b/data/grib_data_files.txt @@ -91,4 +91,4 @@ mercator.grib2 run_length_packing.grib2 boustrophedonic.grib1 reduced_gaussian_sub_area.legacy.grib1 - +grid_complex_spatial_differencing.grib2 diff --git a/src/accessor/grib_accessor_class_data_g22order_packing.cc b/src/accessor/grib_accessor_class_data_g22order_packing.cc index bbc698100..0fefbc6de 100644 --- a/src/accessor/grib_accessor_class_data_g22order_packing.cc +++ b/src/accessor/grib_accessor_class_data_g22order_packing.cc @@ -787,7 +787,7 @@ int grib_accessor_class_data_g22order_packing_t::pack_double(grib_accessor* a, c // long nvals_per_group = 0; // long nbits_per_group_val = 0; - long binary_scale_factor, decimal_scale_factor, optimize_scale_factor, typeOfOriginalFieldValues; + long binary_scale_factor, decimal_scale_factor, typeOfOriginalFieldValues; // long groupSplittingMethodUsed, numberOfGroupsOfDataValues, referenceForGroupWidths; long missingValueManagementUsed, primaryMissingValueSubstitute, secondaryMissingValueSubstitute; long numberOfBitsUsedForTheGroupWidths, numberOfBitsUsedForTheScaledGroupLengths, orderOfSpatialDifferencing; @@ -816,7 +816,7 @@ int grib_accessor_class_data_g22order_packing_t::pack_double(grib_accessor* a, c if ((err = grib_get_long_internal(gh, self->decimal_scale_factor, &decimal_scale_factor)) != GRIB_SUCCESS) return err; - optimize_scale_factor = 1; // TODO(masn): To be reviewed + int use_scale = 1; if ((err = grib_get_long_internal(gh, self->binary_scale_factor, &binary_scale_factor)) != GRIB_SUCCESS) return err; @@ -939,7 +939,7 @@ int grib_accessor_class_data_g22order_packing_t::pack_double(grib_accessor* a, c binary_scale = bin_scale; - if (optimize_scale_factor == 0) { // ECMWF style + if (use_scale) { // ECMWF style ref = min_val; frange = max_val - ref; dec_scale = 0; diff --git a/tests/grib_bitmap.sh b/tests/grib_bitmap.sh index 456f3255e..9ef78550d 100755 --- a/tests/grib_bitmap.sh +++ b/tests/grib_bitmap.sh @@ -1,4 +1,4 @@ -#!/bin/sh +n#!/bin/sh # (C) Copyright 2005- ECMWF. # # This software is licensed under the terms of the Apache Licence Version 2.0 @@ -122,7 +122,9 @@ stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $tempSimple` # Repack ${tools_dir}/grib_copy -r $infile $temp2 -${tools_dir}/grib_compare -c data:n $infile $temp2 +# The values do not have to be be bit-identical. The high effort to make them bit-identical is not justified. +# Therefore, we compare the values with a relative tolerance. +${tools_dir}/grib_compare -R all=0.3 -c data:n $infile $temp2 grib_check_key_equals $temp2 bitsPerValue 9 # Note: The input file has bpv=9 @@ -165,5 +167,88 @@ ${tools_dir}/grib_filter $tempRules $data_dir/boustrophedonic.grib1 > $REDIRECT ${tools_dir}/grib_filter $tempRules $data_dir/missing_field.grib1 > $REDIRECT ${tools_dir}/grib_filter $tempRules $data_dir/reduced_latlon_surface.grib2 > $REDIRECT +# ECC-1858: grid_complex_spatial_differencing +# Optimize binary_scale_factor, decimal_scale_factor by default +# ---------------------------------------------------------- +# Repack + +in=${data_dir}/grid_complex_spatial_differencing.grib2 +in_with_bitmap=${data_dir}/temp_grid_complex_spatial_differencing_bitmap.grib2 +in_no_bitmap=${data_dir}/temp_grid_complex_spatial_differencing_no_bitmap.grib2 + +${tools_dir}/grib_set -s bitmapPresent=1 $in $in_with_bitmap +${tools_dir}/grib_set -s bitmapPresent=0 $in $in_no_bitmap + +# No bitmap +# Repack +${tools_dir}/grib_copy -r $in_no_bitmap $temp2 +stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` +[ "$stats" = '549.61 11.61 203.28' ] + +# Rescale +${tools_dir}/grib_set -s scaleValuesBy=0.001 $in_no_bitmap $temp2 +stats=`${tools_dir}/grib_get -F%.4f -p max,min,avg $temp2` +[ "$stats" = '0.5496 0.0116 0.2033' ] + +# BitsPerValue=16 +# If required bits and wanted bits are not the same, use an extra bit (see code) +${tools_dir}/grib_set -s setBitsPerValue=15 $in_no_bitmap $temp2 +stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` +[ "$stats" = '549.61 11.61 203.28' ] +grib_check_key_equals $temp2 bitsPerValue 16 + +# BitsPerValue=24 (see comment above) +${tools_dir}/grib_set -s setBitsPerValue=23 $in_no_bitmap $temp2 +stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` +[ "$stats" = '549.61 11.61 203.28' ] +grib_check_key_equals $temp2 bitsPerValue 24 + +# Change packing type +${tools_dir}/grib_set -s packingType=grid_simple $in_no_bitmap $temp2 +stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` +[ "$stats" = '549.61 11.61 203.28' ] + +${tools_dir}/grib_set -s packingType=grid_complex_spatial_differencing $temp2 $tempSimple +stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` +[ "$stats" = '549.61 11.61 203.28' ] + +# With bitmap +# Repack +${tools_dir}/grib_copy -r $in_with_bitmap $temp2 +stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` +[ "$stats" = '549.61 11.61 203.28' ] + +# Rescale +${tools_dir}/grib_set -s scaleValuesBy=0.001 $in_with_bitmap $temp2 +stats=`${tools_dir}/grib_get -F%.4f -p max,min,avg $temp2` +[ "$stats" = '0.5496 0.0116 0.2033' ] + +# BitsPerValue=16 (see comment above) +${tools_dir}/grib_set -s setBitsPerValue=15 $in_with_bitmap $temp2 +stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` +[ "$stats" = '549.61 11.61 203.28' ] +grib_check_key_equals $temp2 bitsPerValue 16 + +# BitsPerValue=24 (see comment above) +${tools_dir}/grib_set -s setBitsPerValue=23 $in_with_bitmap $temp2 +stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` +[ "$stats" = '549.61 11.61 203.28' ] +grib_check_key_equals $temp2 bitsPerValue 24 + +# Change packing type +${tools_dir}/grib_set -s packingType=grid_simple $in_with_bitmap $temp2 +stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` +[ "$stats" = '549.61 11.61 203.28' ] + +${tools_dir}/grib_set -s packingType=grid_complex_spatial_differencing $temp2 $tempSimple +stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` +[ "$stats" = '549.61 11.61 203.28' ] + +# Clean up for ECC-1858 +rm -f $in_with_bitmap $in_no_bitmap +rm -f $tempSimple + +# ---------------------------------------------------------- + # Clean up rm -f $tempData1 $tempData2 $temp1 $temp2 $tempRules $tempOut From 053bbe4db54267a32d83f9782843ca8c842f6e7c Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 30 Jul 2024 14:01:36 +0100 Subject: [PATCH 115/277] Testing: Fix --- tests/grib_bitmap.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/grib_bitmap.sh b/tests/grib_bitmap.sh index 9ef78550d..c8d94850f 100755 --- a/tests/grib_bitmap.sh +++ b/tests/grib_bitmap.sh @@ -1,4 +1,4 @@ -n#!/bin/sh +#!/bin/sh # (C) Copyright 2005- ECMWF. # # This software is licensed under the terms of the Apache Licence Version 2.0 From 077ad9fc24c322d97ed86f87c404b7a554788818 Mon Sep 17 00:00:00 2001 From: Eugen Betke Date: Tue, 30 Jul 2024 17:15:54 +0200 Subject: [PATCH 116/277] ECC-1858: Repack data, when changing packing type --- tests/grib_bitmap.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/grib_bitmap.sh b/tests/grib_bitmap.sh index c8d94850f..36ba2cf4d 100755 --- a/tests/grib_bitmap.sh +++ b/tests/grib_bitmap.sh @@ -204,11 +204,11 @@ stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` grib_check_key_equals $temp2 bitsPerValue 24 # Change packing type -${tools_dir}/grib_set -s packingType=grid_simple $in_no_bitmap $temp2 +${tools_dir}/grib_set -r -s packingType=grid_simple $in_no_bitmap $temp2 stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` [ "$stats" = '549.61 11.61 203.28' ] -${tools_dir}/grib_set -s packingType=grid_complex_spatial_differencing $temp2 $tempSimple +${tools_dir}/grib_set -r -s packingType=grid_complex_spatial_differencing $temp2 $tempSimple stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` [ "$stats" = '549.61 11.61 203.28' ] @@ -236,11 +236,11 @@ stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` grib_check_key_equals $temp2 bitsPerValue 24 # Change packing type -${tools_dir}/grib_set -s packingType=grid_simple $in_with_bitmap $temp2 +${tools_dir}/grib_set -r -s packingType=grid_simple $in_with_bitmap $temp2 stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` [ "$stats" = '549.61 11.61 203.28' ] -${tools_dir}/grib_set -s packingType=grid_complex_spatial_differencing $temp2 $tempSimple +${tools_dir}/grib_set -r -s packingType=grid_complex_spatial_differencing $temp2 $tempSimple stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $temp2` [ "$stats" = '549.61 11.61 203.28' ] From e5e33220ccdd0895080b18bfd1fef3c8457a4557 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 31 Jul 2024 10:37:03 +0100 Subject: [PATCH 117/277] ECC-1889: GRIB: Add new MARS type MPP --- definitions/mars/type.table | 1 + tests/grib_sub_hourly.sh | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/definitions/mars/type.table b/definitions/mars/type.table index 1985ee678..edbfb16c3 100644 --- a/definitions/mars/type.table +++ b/definitions/mars/type.table @@ -74,3 +74,4 @@ 93 ppm Point value metrics 94 gwt Weather types 95 est Ensemble statistics +96 mpp Model physics perturbations diff --git a/tests/grib_sub_hourly.sh b/tests/grib_sub_hourly.sh index 0f543cb79..a7a47f69f 100755 --- a/tests/grib_sub_hourly.sh +++ b/tests/grib_sub_hourly.sh @@ -62,7 +62,7 @@ fi instantaneous_field=$data_dir/reduced_gaussian_surface.grib2 accumulated_field=$data_dir/reduced_gaussian_sub_area.grib2 -# ECC-18XX: Bad step initialisatino +# ECC-1855: Bad step initialisation ${tools_dir}/grib_set -s productDefinitionTemplateNumber=11,forecastTime=2184,indicatorOfUnitForForecastTime=1,lengthOfTimeRange=720,indicatorOfUnitForTimeRange=1,typeOfTimeIncrement=2,numberOfTimeRange=2 $accumulated_field $temp ${tools_dir}/grib_ls $temp grib_check_key_equals $temp "-p stepRange" "2184-2904" From 47142da3af4ee7e2a64641fc3f56eb8292cc47e6 Mon Sep 17 00:00:00 2001 From: Sebastien Villaume Date: Wed, 31 Jul 2024 09:29:09 +0100 Subject: [PATCH 118/277] adding mars namespace configurations for elda/mpp and enda/mpp --- definitions/mars/grib.elda.mpp.def | 2 ++ definitions/mars/grib.enda.mpp.def | 1 + 2 files changed, 3 insertions(+) create mode 100644 definitions/mars/grib.elda.mpp.def create mode 100644 definitions/mars/grib.enda.mpp.def diff --git a/definitions/mars/grib.elda.mpp.def b/definitions/mars/grib.elda.mpp.def new file mode 100644 index 000000000..ce5e03eaf --- /dev/null +++ b/definitions/mars/grib.elda.mpp.def @@ -0,0 +1,2 @@ +alias mars.anoffset=offsetToEndOf4DvarWindow; +alias mars.number=perturbationNumber; diff --git a/definitions/mars/grib.enda.mpp.def b/definitions/mars/grib.enda.mpp.def new file mode 100644 index 000000000..4af93e55d --- /dev/null +++ b/definitions/mars/grib.enda.mpp.def @@ -0,0 +1 @@ +alias mars.number=perturbationNumber; From f7fe36b2cf60a6ef249b56dcd767187332199a6f Mon Sep 17 00:00:00 2001 From: Sebastien Villaume Date: Wed, 31 Jul 2024 10:10:58 +0100 Subject: [PATCH 119/277] unalias levtype and levelist for enda/mpp and elda/mpp --- definitions/mars/grib.elda.mpp.def | 3 +++ definitions/mars/grib.enda.mpp.def | 3 +++ 2 files changed, 6 insertions(+) diff --git a/definitions/mars/grib.elda.mpp.def b/definitions/mars/grib.elda.mpp.def index ce5e03eaf..ae2eef11e 100644 --- a/definitions/mars/grib.elda.mpp.def +++ b/definitions/mars/grib.elda.mpp.def @@ -1,2 +1,5 @@ alias mars.anoffset=offsetToEndOf4DvarWindow; alias mars.number=perturbationNumber; + +unalias mars.levtype; +unalias mars.levelist; diff --git a/definitions/mars/grib.enda.mpp.def b/definitions/mars/grib.enda.mpp.def index 4af93e55d..53a837ed2 100644 --- a/definitions/mars/grib.enda.mpp.def +++ b/definitions/mars/grib.enda.mpp.def @@ -1 +1,4 @@ alias mars.number=perturbationNumber; + +unalias mars.levtype; +unalias mars.levelist; From 2554d17256041636535917278b48e43661ece696 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 31 Jul 2024 13:12:01 +0100 Subject: [PATCH 120/277] Formatting and cleanups --- ...class_data_apply_boustrophedonic_bitmap.cc | 87 ++++++----- .../grib_accessor_class_data_dummy_field.cc | 35 +++-- ...b_accessor_class_data_g1complex_packing.cc | 83 ++++++----- ...a_g1second_order_constant_width_packing.cc | 44 +++--- ..._accessor_class_data_g1secondary_bitmap.cc | 31 ++-- ...ib_accessor_class_data_g1simple_packing.cc | 16 +- ...accessor_class_data_g2bifourier_packing.cc | 55 +++---- ...b_accessor_class_data_g2complex_packing.cc | 20 +-- ..._accessor_class_data_g2secondary_bitmap.cc | 20 +-- ..._accessor_class_data_g2shsimple_packing.cc | 21 +-- ...ib_accessor_class_data_g2simple_packing.cc | 54 +++---- ...ib_accessor_class_data_jpeg2000_packing.cc | 100 +++++++------ .../grib_accessor_class_data_png_packing.cc | 106 +++++++------ .../grib_accessor_class_data_raw_packing.cc | 54 ++++--- ..._accessor_class_data_run_length_packing.cc | 139 ++++++++++-------- ...ib_accessor_class_data_secondary_bitmap.cc | 28 ++-- .../grib_accessor_class_data_sh_packed.cc | 49 +++--- .../grib_accessor_class_data_sh_unpacked.cc | 19 ++- ...ib_accessor_class_data_shsimple_packing.cc | 17 ++- ...b_accessor_class_g1day_of_the_year_date.cc | 27 ++-- ...ccessor_class_g1end_of_interval_monthly.cc | 45 +++--- ...b_accessor_class_gds_not_present_bitmap.cc | 30 ++-- 22 files changed, 596 insertions(+), 484 deletions(-) diff --git a/src/accessor/grib_accessor_class_data_apply_boustrophedonic_bitmap.cc b/src/accessor/grib_accessor_class_data_apply_boustrophedonic_bitmap.cc index f796cfb02..4ff1322d3 100644 --- a/src/accessor/grib_accessor_class_data_apply_boustrophedonic_bitmap.cc +++ b/src/accessor/grib_accessor_class_data_apply_boustrophedonic_bitmap.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,16 +10,17 @@ #include "grib_accessor_class_data_apply_boustrophedonic_bitmap.h" -grib_accessor_class_data_apply_boustrophedonic_bitmap_t _grib_accessor_class_data_apply_boustrophedonic_bitmap{"data_apply_boustrophedonic_bitmap"}; +grib_accessor_class_data_apply_boustrophedonic_bitmap_t _grib_accessor_class_data_apply_boustrophedonic_bitmap{ "data_apply_boustrophedonic_bitmap" }; grib_accessor_class* grib_accessor_class_data_apply_boustrophedonic_bitmap = &_grib_accessor_class_data_apply_boustrophedonic_bitmap; -void grib_accessor_class_data_apply_boustrophedonic_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_apply_boustrophedonic_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, v, args); - int n = 0; grib_accessor_data_apply_boustrophedonic_bitmap_t* self = (grib_accessor_data_apply_boustrophedonic_bitmap_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); + grib_handle* gh = grib_handle_of_accessor(a); + int n = 0; self->coded_values = grib_arguments_get_name(gh, args, n++); self->bitmap = grib_arguments_get_name(gh, args, n++); self->missing_value = grib_arguments_get_name(gh, args, n++); @@ -33,15 +33,18 @@ void grib_accessor_class_data_apply_boustrophedonic_bitmap_t::init(grib_accessor a->length = 0; } -void grib_accessor_class_data_apply_boustrophedonic_bitmap_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_data_apply_boustrophedonic_bitmap_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_values(dumper, a); } -int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_data_apply_boustrophedonic_bitmap_t* self = (grib_accessor_data_apply_boustrophedonic_bitmap_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); - size_t len = 0; - int ret = 0; + + grib_handle* gh = grib_handle_of_accessor(a); + size_t len = 0; + int ret = 0; /* This accessor is for data with a bitmap after all */ Assert(grib_find_accessor(gh, self->bitmap)); @@ -51,9 +54,10 @@ int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::value_count(grib_ac return ret; } -int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_apply_boustrophedonic_bitmap_t* self = (grib_accessor_data_apply_boustrophedonic_bitmap_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); + grib_handle* gh = grib_handle_of_accessor(a); size_t i = 0, j = 0, n_vals = 0, irow = 0; long nn = 0; @@ -63,7 +67,8 @@ int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double(grib_ double missing_value = 0; long numberOfPoints, numberOfRows, numberOfColumns; - err = a->value_count(&nn); n_vals = nn; + err = a->value_count(&nn); + n_vals = nn; if (err) return err; @@ -159,9 +164,10 @@ int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double(grib_ return err; } -int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double_element(grib_accessor* a, size_t idx, double* val){ +int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double_element(grib_accessor* a, size_t idx, double* val) +{ grib_accessor_data_apply_boustrophedonic_bitmap_t* self = (grib_accessor_data_apply_boustrophedonic_bitmap_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); + grib_handle* gh = grib_handle_of_accessor(a); int err = 0, i = 0; size_t cidx = 0; double missing_value = 0; @@ -169,7 +175,8 @@ int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double_eleme size_t n_vals = 0; long nn = 0; - err = a->value_count(&nn); n_vals = nn; + err = a->value_count(&nn); + n_vals = nn; if (err) return err; @@ -204,19 +211,21 @@ int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double_eleme return grib_get_double_element_internal(gh, self->coded_values, cidx, val); } -int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array){ +int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array) +{ grib_accessor_data_apply_boustrophedonic_bitmap_t* self = (grib_accessor_data_apply_boustrophedonic_bitmap_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); + grib_handle* gh = grib_handle_of_accessor(a); int err = 0, all_missing = 1; - size_t cidx = 0; /* index into the coded_values array */ - size_t* cidx_array = NULL; /* array of indexes into the coded_values */ - double* cval_array = NULL; /* array of values of the coded_values */ + size_t cidx = 0; /* index into the coded_values array */ + size_t* cidx_array = NULL; /* array of indexes into the coded_values */ + double* cval_array = NULL; /* array of values of the coded_values */ double missing_value = 0; double* bvals = NULL; size_t n_vals = 0, i = 0, j = 0, idx = 0, count_1s = 0, ci = 0; long nn = 0; - err = a->value_count(&nn); n_vals = nn; + err = a->value_count(&nn); + n_vals = nn; if (err) return err; if (!grib_find_accessor(gh, self->bitmap)) @@ -230,7 +239,8 @@ int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double_eleme for (i = 0; i < len; i++) { if (val_array[i] == 0) { val_array[i] = missing_value; - } else { + } + else { all_missing = 0; count_1s++; } @@ -255,7 +265,7 @@ int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double_eleme ci = 0; for (i = 0; i < len; i++) { if (val_array[i] == 1) { - idx = index_array[i]; + idx = index_array[i]; cidx = 0; for (j = 0; j < idx; j++) { cidx += bvals[j]; @@ -282,17 +292,19 @@ int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::unpack_double_eleme return GRIB_SUCCESS; } -int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_apply_boustrophedonic_bitmap_t* self = (grib_accessor_data_apply_boustrophedonic_bitmap_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); - int err = 0; - size_t bmaplen = *len; - size_t irow = 0; - long coded_n_vals = 0; - double* coded_vals = NULL; - double* values = 0; - long i = 0; - long j = 0; + + grib_handle* gh = grib_handle_of_accessor(a); + int err = 0; + size_t bmaplen = *len; + size_t irow = 0; + long coded_n_vals = 0; + double* coded_vals = NULL; + double* values = 0; + long i = 0; + long j = 0; long numberOfPoints, numberOfRows, numberOfColumns; double missing_value = 0; @@ -381,9 +393,10 @@ int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::pack_double(grib_ac return err; } -int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::get_native_type(grib_accessor* a){ - //grib_accessor_data_apply_boustrophedonic_bitmap_t* self = (grib_accessor_data_apply_boustrophedonic_bitmap_t*)a; - //return grib_accessor_get_native_type(grib_find_accessor(grib_handle_of_accessor(a),self->coded_values)); +int grib_accessor_class_data_apply_boustrophedonic_bitmap_t::get_native_type(grib_accessor* a) +{ + // grib_accessor_data_apply_boustrophedonic_bitmap_t* self = (grib_accessor_data_apply_boustrophedonic_bitmap_t*)a; + // return grib_accessor_get_native_type(grib_find_accessor(grib_handle_of_accessor(a),self->coded_values)); return GRIB_TYPE_DOUBLE; } diff --git a/src/accessor/grib_accessor_class_data_dummy_field.cc b/src/accessor/grib_accessor_class_data_dummy_field.cc index eddadcc08..735ee6766 100644 --- a/src/accessor/grib_accessor_class_data_dummy_field.cc +++ b/src/accessor/grib_accessor_class_data_dummy_field.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,24 +10,26 @@ #include "grib_accessor_class_data_dummy_field.h" -grib_accessor_class_data_dummy_field_t _grib_accessor_class_data_dummy_field{"data_dummy_field"}; +grib_accessor_class_data_dummy_field_t _grib_accessor_class_data_dummy_field{ "data_dummy_field" }; grib_accessor_class* grib_accessor_class_data_dummy_field = &_grib_accessor_class_data_dummy_field; -void grib_accessor_class_data_dummy_field_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_dummy_field_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_g1simple_packing_t::init(a, v, args); grib_accessor_data_dummy_field_t* self = (grib_accessor_data_dummy_field_t*)a; - self->missing_value = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); - self->numberOfPoints = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); - self->bitmap = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); + self->missing_value = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); + self->numberOfPoints = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); + self->bitmap = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); } -int grib_accessor_class_data_dummy_field_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_dummy_field_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_dummy_field_t* self = (grib_accessor_data_dummy_field_t*)a; size_t i = 0, n_vals = 0; long numberOfPoints; double missing_value = 0; - int err = 0; + int err = 0; if ((err = grib_get_long_internal(grib_handle_of_accessor(a), self->numberOfPoints, &numberOfPoints)) != GRIB_SUCCESS) return err; @@ -54,15 +55,16 @@ int grib_accessor_class_data_dummy_field_t::unpack_double(grib_accessor* a, doub return err; } -int grib_accessor_class_data_dummy_field_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_dummy_field_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_dummy_field_t* self = (grib_accessor_data_dummy_field_t*)a; - size_t n_vals = *len; - int err = 0; + size_t n_vals = *len; + int err = 0; long bits_per_value = 0; - long half_byte = 0; - size_t buflen = 0; - unsigned char* buf = NULL; + long half_byte = 0; + size_t buflen = 0; + unsigned char* buf = NULL; if (*len == 0) return GRIB_NO_VALUES; @@ -89,9 +91,10 @@ int grib_accessor_class_data_dummy_field_t::pack_double(grib_accessor* a, const return GRIB_SUCCESS; } -int grib_accessor_class_data_dummy_field_t::value_count(grib_accessor* a, long* numberOfPoints){ +int grib_accessor_class_data_dummy_field_t::value_count(grib_accessor* a, long* numberOfPoints) +{ grib_accessor_data_dummy_field_t* self = (grib_accessor_data_dummy_field_t*)a; - int err = 0; + int err = 0; *numberOfPoints = 0; if ((err = grib_get_long_internal(grib_handle_of_accessor(a), self->numberOfPoints, numberOfPoints)) != GRIB_SUCCESS) { diff --git a/src/accessor/grib_accessor_class_data_g1complex_packing.cc b/src/accessor/grib_accessor_class_data_g1complex_packing.cc index 5ac11346e..e943d5a6e 100644 --- a/src/accessor/grib_accessor_class_data_g1complex_packing.cc +++ b/src/accessor/grib_accessor_class_data_g1complex_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,58 +10,62 @@ #include "grib_accessor_class_data_g1complex_packing.h" -grib_accessor_class_data_g1complex_packing_t _grib_accessor_class_data_g1complex_packing{"data_g1complex_packing"}; +grib_accessor_class_data_g1complex_packing_t _grib_accessor_class_data_g1complex_packing{ "data_g1complex_packing" }; grib_accessor_class* grib_accessor_class_data_g1complex_packing = &_grib_accessor_class_data_g1complex_packing; -void grib_accessor_class_data_g1complex_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_g1complex_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_complex_packing_t::init(a, v, args); grib_accessor_data_g1complex_packing_t* self = (grib_accessor_data_g1complex_packing_t*)a; - self->half_byte = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); - self->N = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); - self->packingType = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); - self->ieee_packing = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); - self->precision = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); - self->edition = 1; + + self->half_byte = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); + self->N = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); + self->packingType = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); + self->ieee_packing = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); + self->precision = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); + self->edition = 1; a->flags |= GRIB_ACCESSOR_FLAG_DATA; } -int grib_accessor_class_data_g1complex_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_g1complex_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_g1complex_packing_t* self = (grib_accessor_data_g1complex_packing_t*)a; - int ret = GRIB_SUCCESS; - long seclen = 0; - long sub_j = 0; - long sub_k = 0; - long sub_m = 0; - long n = 0; - long half_byte = 0; - long bits_per_value = 0; - size_t buflen = 0; + + int ret = GRIB_SUCCESS; + long seclen = 0; + long sub_j = 0; + long sub_k = 0; + long sub_m = 0; + long n = 0; + long half_byte = 0; + long bits_per_value = 0; + size_t buflen = 0; if (*len == 0) return GRIB_NO_VALUES; -// /* TODO: spectral_ieee does not work */ -// if (c->ieee_packing && self->ieee_packing) { -// grib_handle* h = grib_handle_of_accessor(a); -// grib_context* c = a->context; -// char* packingType_s = NULL; -// char* ieee_packing_s = NULL; -// long precision = c->ieee_packing == 32 ? 1 : 2; -// size_t lenstr = strlen(self->ieee_packing); - -// packingType_s = grib_context_strdup(c, self->packingType); -// ieee_packing_s = grib_context_strdup(c, self->ieee_packing); -// precision_s = grib_context_strdup(c, self->precision); - -// grib_set_string(h, packingType_s, ieee_packing_s, &lenstr); -// grib_set_long(h, precision_s, precision); - -// grib_context_free(c, packingType_s); -// grib_context_free(c, ieee_packing_s); -// grib_context_free(c, precision_s); -// return grib_set_double_array(h, "values", val, *len); -// } + // /* TODO: spectral_ieee does not work */ + // if (c->ieee_packing && self->ieee_packing) { + // grib_handle* h = grib_handle_of_accessor(a); + // grib_context* c = a->context; + // char* packingType_s = NULL; + // char* ieee_packing_s = NULL; + // long precision = c->ieee_packing == 32 ? 1 : 2; + // size_t lenstr = strlen(self->ieee_packing); + + // packingType_s = grib_context_strdup(c, self->packingType); + // ieee_packing_s = grib_context_strdup(c, self->ieee_packing); + // precision_s = grib_context_strdup(c, self->precision); + + // grib_set_string(h, packingType_s, ieee_packing_s, &lenstr); + // grib_set_long(h, precision_s, precision); + + // grib_context_free(c, packingType_s); + // grib_context_free(c, ieee_packing_s); + // grib_context_free(c, precision_s); + // return grib_set_double_array(h, "values", val, *len); + // } if ((ret = grib_get_long_internal(grib_handle_of_accessor(a), self->sub_j, &sub_j)) != GRIB_SUCCESS) return ret; diff --git a/src/accessor/grib_accessor_class_data_g1second_order_constant_width_packing.cc b/src/accessor/grib_accessor_class_data_g1second_order_constant_width_packing.cc index 579fbd8cb..7aac0e031 100644 --- a/src/accessor/grib_accessor_class_data_g1second_order_constant_width_packing.cc +++ b/src/accessor/grib_accessor_class_data_g1second_order_constant_width_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -12,14 +11,15 @@ #include "grib_accessor_class_data_g1second_order_constant_width_packing.h" #include "grib_scaling.h" -grib_accessor_class_data_g1second_order_constant_width_packing_t _grib_accessor_class_data_g1second_order_constant_width_packing{"data_g1second_order_constant_width_packing"}; +grib_accessor_class_data_g1second_order_constant_width_packing_t _grib_accessor_class_data_g1second_order_constant_width_packing{ "data_g1second_order_constant_width_packing" }; grib_accessor_class* grib_accessor_class_data_g1second_order_constant_width_packing = &_grib_accessor_class_data_g1second_order_constant_width_packing; -void grib_accessor_class_data_g1second_order_constant_width_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_g1second_order_constant_width_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_simple_packing_t::init(a, v, args); grib_accessor_data_g1second_order_constant_width_packing_t* self = (grib_accessor_data_g1second_order_constant_width_packing_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); self->half_byte = grib_arguments_get_name(hand, args, self->carg++); self->packingType = grib_arguments_get_name(hand, args, self->carg++); @@ -41,23 +41,26 @@ void grib_accessor_class_data_g1second_order_constant_width_packing_t::init(grib a->flags |= GRIB_ACCESSOR_FLAG_DATA; } -int grib_accessor_class_data_g1second_order_constant_width_packing_t::value_count(grib_accessor* a, long* numberOfSecondOrderPackedValues){ - int err = 0; +int grib_accessor_class_data_g1second_order_constant_width_packing_t::value_count(grib_accessor* a, long* numberOfSecondOrderPackedValues) +{ + int err = 0; grib_accessor_data_g1second_order_constant_width_packing_t* self = (grib_accessor_data_g1second_order_constant_width_packing_t*)a; - *numberOfSecondOrderPackedValues = 0; + *numberOfSecondOrderPackedValues = 0; err = grib_get_long_internal(grib_handle_of_accessor(a), self->numberOfSecondOrderPackedValues, numberOfSecondOrderPackedValues); return err; } -int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_float(grib_accessor*, float* val, size_t* len){ +int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_float(grib_accessor*, float* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_double(grib_accessor* a, double* values, size_t* len){ +int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_double(grib_accessor* a, double* values, size_t* len) +{ grib_accessor_data_g1second_order_constant_width_packing_t* self = (grib_accessor_data_g1second_order_constant_width_packing_t*)a; - int ret = 0; + int ret = 0; long numberOfGroups, numberOfSecondOrderPackedValues; long groupWidth = 0; long* firstOrderValues = 0; @@ -139,7 +142,7 @@ int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_dou i += secondaryBitmap[n]; long fovi = 0; // ECC-1703 - if ( i >=0 && i < numberOfGroups ) + if (i >= 0 && i < numberOfGroups) fovi = firstOrderValues[i]; X[n] = fovi + X[n]; n++; @@ -151,7 +154,7 @@ int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_dou while (n < numberOfSecondOrderPackedValues) { i += secondaryBitmap[n]; long fovi = 0; - if ( i >=0 && i < numberOfGroups ) + if (i >= 0 && i < numberOfGroups) fovi = firstOrderValues[i]; X[n] = fovi; n++; @@ -177,17 +180,19 @@ int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_dou return ret; } -int grib_accessor_class_data_g1second_order_constant_width_packing_t::pack_double(grib_accessor* a, const double* cval, size_t* len){ +int grib_accessor_class_data_g1second_order_constant_width_packing_t::pack_double(grib_accessor* a, const double* cval, size_t* len) +{ const char* cclass_name = a->cclass->name; grib_context_log(a->context, GRIB_LOG_ERROR, "%s: %s: Not implemented", cclass_name, __func__); return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_double_element(grib_accessor* a, size_t idx, double* val){ +int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_double_element(grib_accessor* a, size_t idx, double* val) +{ grib_handle* hand = grib_handle_of_accessor(a); - size_t size = 0; - double* values = NULL; - int err = 0; + size_t size = 0; + double* values = NULL; + int err = 0; /* TODO: This should be 'codedValues' not 'values' but GRIB1 version of this packing does not have that key!! */ @@ -208,11 +213,12 @@ int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_dou return GRIB_SUCCESS; } -int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array){ +int grib_accessor_class_data_g1second_order_constant_width_packing_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array) +{ grib_handle* hand = grib_handle_of_accessor(a); size_t size = 0, i = 0; double* values = NULL; - int err = 0; + int err = 0; /* TODO: This should be 'codedValues' not 'values' but GRIB1 version of this packing does not have that key!! */ diff --git a/src/accessor/grib_accessor_class_data_g1secondary_bitmap.cc b/src/accessor/grib_accessor_class_data_g1secondary_bitmap.cc index 3697f6f75..7b80a1891 100644 --- a/src/accessor/grib_accessor_class_data_g1secondary_bitmap.cc +++ b/src/accessor/grib_accessor_class_data_g1secondary_bitmap.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,20 +10,22 @@ #include "grib_accessor_class_data_g1secondary_bitmap.h" -grib_accessor_class_data_g1secondary_bitmap_t _grib_accessor_class_data_g1secondary_bitmap{"data_g1secondary_bitmap"}; +grib_accessor_class_data_g1secondary_bitmap_t _grib_accessor_class_data_g1secondary_bitmap{ "data_g1secondary_bitmap" }; grib_accessor_class* grib_accessor_class_data_g1secondary_bitmap = &_grib_accessor_class_data_g1secondary_bitmap; -void grib_accessor_class_data_g1secondary_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_g1secondary_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_secondary_bitmap_t::init(a, v, args); grib_accessor_data_g1secondary_bitmap_t* self = (grib_accessor_data_g1secondary_bitmap_t*)a; - self->number_of_ones = grib_arguments_get_name(grib_handle_of_accessor(a), args, 4); + self->number_of_ones = grib_arguments_get_name(grib_handle_of_accessor(a), args, 4); } -int grib_accessor_class_data_g1secondary_bitmap_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_data_g1secondary_bitmap_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_data_g1secondary_bitmap_t* self = (grib_accessor_data_g1secondary_bitmap_t*)a; - size_t len = 0; - int err = 0; + size_t len = 0; + int err = 0; long expand_by; *count = 0; @@ -40,11 +41,11 @@ int grib_accessor_class_data_g1secondary_bitmap_t::value_count(grib_accessor* a, return GRIB_SUCCESS; } -int grib_accessor_class_data_g1secondary_bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_g1secondary_bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_g1secondary_bitmap_t* self = (grib_accessor_data_g1secondary_bitmap_t*)a; - int err = 0; - + int err = 0; long primary_len = 0; long secondary_len = 0; double* primary_bitmap = NULL; @@ -52,11 +53,11 @@ int grib_accessor_class_data_g1secondary_bitmap_t::pack_double(grib_accessor* a, long i = 0; long j = 0; long on = 0; - long k; - long m; - double missing_value = 0; - double present_value = 0; - long expand_by = 0; + long k = 0; + long m = 0; + double missing_value = 0; + double present_value = 0; + long expand_by = 0; if (*len == 0) return GRIB_NO_VALUES; diff --git a/src/accessor/grib_accessor_class_data_g1simple_packing.cc b/src/accessor/grib_accessor_class_data_g1simple_packing.cc index a19132f1a..63b403da0 100644 --- a/src/accessor/grib_accessor_class_data_g1simple_packing.cc +++ b/src/accessor/grib_accessor_class_data_g1simple_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -12,11 +11,12 @@ #include "grib_accessor_class_data_g1simple_packing.h" #include "grib_scaling.h" -grib_accessor_class_data_g1simple_packing_t _grib_accessor_class_data_g1simple_packing{"data_g1simple_packing"}; +grib_accessor_class_data_g1simple_packing_t _grib_accessor_class_data_g1simple_packing{ "data_g1simple_packing" }; grib_accessor_class* grib_accessor_class_data_g1simple_packing = &_grib_accessor_class_data_g1simple_packing; -void grib_accessor_class_data_g1simple_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_g1simple_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_simple_packing_t::init(a, v, args); grib_accessor_data_g1simple_packing_t* self = (grib_accessor_data_g1simple_packing_t*)a; @@ -28,9 +28,10 @@ void grib_accessor_class_data_g1simple_packing_t::init(grib_accessor* a, const l a->flags |= GRIB_ACCESSOR_FLAG_DATA; } -int grib_accessor_class_data_g1simple_packing_t::value_count(grib_accessor* a, long* number_of_values){ +int grib_accessor_class_data_g1simple_packing_t::value_count(grib_accessor* a, long* number_of_values) +{ grib_accessor_data_g1simple_packing_t* self = (grib_accessor_data_g1simple_packing_t*)a; - *number_of_values = 0; + *number_of_values = 0; /* Special case for when values are cleared */ /*if(a->length == 0) @@ -39,7 +40,8 @@ int grib_accessor_class_data_g1simple_packing_t::value_count(grib_accessor* a, l return grib_get_long_internal(grib_handle_of_accessor(a), self->number_of_values, number_of_values); } -int grib_accessor_class_data_g1simple_packing_t::pack_double(grib_accessor* a, const double* cval, size_t* len){ +int grib_accessor_class_data_g1simple_packing_t::pack_double(grib_accessor* a, const double* cval, size_t* len) +{ grib_accessor_data_g1simple_packing_t* self = (grib_accessor_data_g1simple_packing_t*)a; size_t n_vals = *len; @@ -108,7 +110,7 @@ int grib_accessor_class_data_g1simple_packing_t::pack_double(grib_accessor* a, c packingType_s = grib_context_strdup(c, self->packingType); ieee_packing_s = grib_context_strdup(c, self->ieee_packing); precision_s = grib_context_strdup(c, self->precision); - precision = c->ieee_packing == 32 ? 1 : 2; + precision = c->ieee_packing == 32 ? 1 : 2; if ((ret = grib_set_string(h, packingType_s, ieee_packing_s, &lenstr)) != GRIB_SUCCESS) return ret; diff --git a/src/accessor/grib_accessor_class_data_g2bifourier_packing.cc b/src/accessor/grib_accessor_class_data_g2bifourier_packing.cc index 0a6092424..c159ceeea 100644 --- a/src/accessor/grib_accessor_class_data_g2bifourier_packing.cc +++ b/src/accessor/grib_accessor_class_data_g2bifourier_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -13,17 +12,18 @@ #include "grib_scaling.h" #include -grib_accessor_class_data_g2bifourier_packing_t _grib_accessor_class_data_g2bifourier_packing{"data_g2bifourier_packing"}; +grib_accessor_class_data_g2bifourier_packing_t _grib_accessor_class_data_g2bifourier_packing{ "data_g2bifourier_packing" }; grib_accessor_class* grib_accessor_class_data_g2bifourier_packing = &_grib_accessor_class_data_g2bifourier_packing; typedef unsigned long (*encode_float_proc)(double); typedef double (*decode_float_proc)(unsigned long); -void grib_accessor_class_data_g2bifourier_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_g2bifourier_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_simple_packing_t::init(a, v, args); grib_accessor_data_g2bifourier_packing_t* self = (grib_accessor_data_g2bifourier_packing_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); + grib_handle* gh = grib_handle_of_accessor(a); self->ieee_floats = grib_arguments_get_name(gh, args, self->carg++); self->laplacianOperatorIsSet = grib_arguments_get_name(gh, args, self->carg++); @@ -43,10 +43,11 @@ void grib_accessor_class_data_g2bifourier_packing_t::init(grib_accessor* a, cons self->dirty = 1; } -int grib_accessor_class_data_g2bifourier_packing_t::value_count(grib_accessor* a, long* numberOfValues){ +int grib_accessor_class_data_g2bifourier_packing_t::value_count(grib_accessor* a, long* numberOfValues) +{ grib_accessor_data_g2bifourier_packing_t* self = (grib_accessor_data_g2bifourier_packing_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); - *numberOfValues = 0; + grib_handle* gh = grib_handle_of_accessor(a); + *numberOfValues = 0; return grib_get_long_internal(gh, self->number_of_values, numberOfValues); } @@ -249,7 +250,7 @@ static double laplam(bif_trunc_t* bt, const double val[]) free(itab2); return 0.; } - Assert(lmax>0); + Assert(lmax > 0); /* * Now, itab2 contains all possible values of i*i+j*j, and itab1 contains @@ -426,8 +427,8 @@ static bif_trunc_t* new_bif_trunc(grib_accessor* a) bt->jtruncation_bif = (long*)grib_context_malloc(gh->context, sizeof(long) * (1 + bt->bif_i)); #define RECTANGLE 77 -#define ELLIPSE 88 -#define DIAMOND 99 +#define ELLIPSE 88 +#define DIAMOND 99 switch (bt->biFourierTruncationType) { case RECTANGLE: @@ -471,9 +472,10 @@ static bif_trunc_t* new_bif_trunc(grib_accessor* a) return NULL; } -int grib_accessor_class_data_g2bifourier_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_g2bifourier_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_g2bifourier_packing_t* self = (grib_accessor_data_g2bifourier_packing_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); + grib_handle* gh = grib_handle_of_accessor(a); unsigned char* buf = NULL; unsigned char* hres = NULL; @@ -568,19 +570,20 @@ int grib_accessor_class_data_g2bifourier_packing_t::unpack_double(grib_accessor* return ret; } -int grib_accessor_class_data_g2bifourier_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_g2bifourier_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_g2bifourier_packing_t* self = (grib_accessor_data_g2bifourier_packing_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); - const char* cclass_name = a->cclass->name; - - size_t buflen = 0; - size_t hsize = 0; - size_t lsize = 0; - unsigned char* buf = NULL; - unsigned char* hres = NULL; - unsigned char* lres = NULL; - long hpos = 0; - long lpos = 0; + grib_handle* gh = grib_handle_of_accessor(a); + const char* cclass_name = a->cclass->name; + + size_t buflen = 0; + size_t hsize = 0; + size_t lsize = 0; + unsigned char* buf = NULL; + unsigned char* hres = NULL; + unsigned char* lres = NULL; + long hpos = 0; + long lpos = 0; int isp; bif_trunc_t* bt = NULL; @@ -619,7 +622,7 @@ int grib_accessor_class_data_g2bifourier_packing_t::pack_double(grib_accessor* a if (*len != bt->n_vals_bif) { grib_context_log(gh->context, GRIB_LOG_ERROR, "BIFOURIER_PACKING: wrong number of values, expected %lu - got %lu", - bt->n_vals_bif, *len); + bt->n_vals_bif, *len); ret = GRIB_INTERNAL_ERROR; goto cleanup; } @@ -745,7 +748,7 @@ int grib_accessor_class_data_g2bifourier_packing_t::pack_double(grib_accessor* a grib_get_double_internal(gh, self->reference_value, &ref); if (ref != bt->reference_value) { grib_context_log(a->context, GRIB_LOG_ERROR, "%s %s: %s (ref=%.10e != reference_value=%.10e)", - cclass_name, __func__, self->reference_value, ref, bt->reference_value); + cclass_name, __func__, self->reference_value, ref, bt->reference_value); return GRIB_INTERNAL_ERROR; } } diff --git a/src/accessor/grib_accessor_class_data_g2complex_packing.cc b/src/accessor/grib_accessor_class_data_g2complex_packing.cc index c1e5e7aad..079d14193 100644 --- a/src/accessor/grib_accessor_class_data_g2complex_packing.cc +++ b/src/accessor/grib_accessor_class_data_g2complex_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,29 +10,32 @@ #include "grib_accessor_class_data_g2complex_packing.h" -grib_accessor_class_data_g2complex_packing_t _grib_accessor_class_data_g2complex_packing{"data_g2complex_packing"}; +grib_accessor_class_data_g2complex_packing_t _grib_accessor_class_data_g2complex_packing{ "data_g2complex_packing" }; grib_accessor_class* grib_accessor_class_data_g2complex_packing = &_grib_accessor_class_data_g2complex_packing; -void grib_accessor_class_data_g2complex_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_g2complex_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_complex_packing_t::init(a, v, args); grib_accessor_data_g2complex_packing_t* self = (grib_accessor_data_g2complex_packing_t*)a; - self->numberOfValues = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); - self->edition = 2; + self->numberOfValues = grib_arguments_get_name(grib_handle_of_accessor(a), args, self->carg++); + self->edition = 2; a->flags |= GRIB_ACCESSOR_FLAG_DATA; } -int grib_accessor_class_data_g2complex_packing_t::value_count(grib_accessor* a, long* numberOfValues){ +int grib_accessor_class_data_g2complex_packing_t::value_count(grib_accessor* a, long* numberOfValues) +{ grib_accessor_data_g2complex_packing_t* self = (grib_accessor_data_g2complex_packing_t*)a; - *numberOfValues = 0; + *numberOfValues = 0; return grib_get_long(grib_handle_of_accessor(a), self->numberOfValues, numberOfValues); } -int grib_accessor_class_data_g2complex_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_g2complex_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_g2complex_packing_t* self = (grib_accessor_data_g2complex_packing_t*)a; - int ret = GRIB_SUCCESS; + int ret = GRIB_SUCCESS; if (*len == 0) return GRIB_NO_VALUES; diff --git a/src/accessor/grib_accessor_class_data_g2secondary_bitmap.cc b/src/accessor/grib_accessor_class_data_g2secondary_bitmap.cc index a6fd7bd46..d5f9ad174 100644 --- a/src/accessor/grib_accessor_class_data_g2secondary_bitmap.cc +++ b/src/accessor/grib_accessor_class_data_g2secondary_bitmap.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,25 +10,28 @@ #include "grib_accessor_class_data_g2secondary_bitmap.h" -grib_accessor_class_data_g2secondary_bitmap_t _grib_accessor_class_data_g2secondary_bitmap{"data_g2secondary_bitmap"}; +grib_accessor_class_data_g2secondary_bitmap_t _grib_accessor_class_data_g2secondary_bitmap{ "data_g2secondary_bitmap" }; grib_accessor_class* grib_accessor_class_data_g2secondary_bitmap = &_grib_accessor_class_data_g2secondary_bitmap; -void grib_accessor_class_data_g2secondary_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_g2secondary_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_secondary_bitmap_t::init(a, v, args); grib_accessor_data_g2secondary_bitmap_t* self = (grib_accessor_data_g2secondary_bitmap_t*)a; - self->number_of_values = grib_arguments_get_name(grib_handle_of_accessor(a), args, 4); + self->number_of_values = grib_arguments_get_name(grib_handle_of_accessor(a), args, 4); } -int grib_accessor_class_data_g2secondary_bitmap_t::value_count(grib_accessor* a, long* len){ +int grib_accessor_class_data_g2secondary_bitmap_t::value_count(grib_accessor* a, long* len) +{ grib_accessor_data_g2secondary_bitmap_t* self = (grib_accessor_data_g2secondary_bitmap_t*)a; - *len = 0; + *len = 0; return grib_get_long_internal(grib_handle_of_accessor(a), self->number_of_values, len); } -int grib_accessor_class_data_g2secondary_bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_g2secondary_bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_g2secondary_bitmap_t* self = (grib_accessor_data_g2secondary_bitmap_t*)a; - int err = 0; + int err = 0; long primary_len = 0, secondary_len = 0; double* primary_bitmap = NULL; @@ -85,7 +87,7 @@ int grib_accessor_class_data_g2secondary_bitmap_t::pack_double(grib_accessor* a, primary_bitmap[k++] = present_value; for (j = 0; j < expand_by; j++) secondary_bitmap[m++] = val[i + j]; - //on++; + // on++; } } diff --git a/src/accessor/grib_accessor_class_data_g2shsimple_packing.cc b/src/accessor/grib_accessor_class_data_g2shsimple_packing.cc index 7e2b5cd54..5dde644fa 100644 --- a/src/accessor/grib_accessor_class_data_g2shsimple_packing.cc +++ b/src/accessor/grib_accessor_class_data_g2shsimple_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,11 +10,12 @@ #include "grib_accessor_class_data_g2shsimple_packing.h" -grib_accessor_class_data_g2shsimple_packing_t _grib_accessor_class_data_g2shsimple_packing{"data_g2shsimple_packing"}; +grib_accessor_class_data_g2shsimple_packing_t _grib_accessor_class_data_g2shsimple_packing{ "data_g2shsimple_packing" }; grib_accessor_class* grib_accessor_class_data_g2shsimple_packing = &_grib_accessor_class_data_g2shsimple_packing; -void grib_accessor_class_data_g2shsimple_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_g2shsimple_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_shsimple_packing_t::init(a, v, args); grib_accessor_data_g2shsimple_packing_t* self = (grib_accessor_data_g2shsimple_packing_t*)a; @@ -24,15 +24,17 @@ void grib_accessor_class_data_g2shsimple_packing_t::init(grib_accessor* a, const a->flags |= GRIB_ACCESSOR_FLAG_DATA; } -int grib_accessor_class_data_g2shsimple_packing_t::value_count(grib_accessor* a, long* len){ +int grib_accessor_class_data_g2shsimple_packing_t::value_count(grib_accessor* a, long* len) +{ grib_accessor_data_g2shsimple_packing_t* self = (grib_accessor_data_g2shsimple_packing_t*)a; - *len = 0; + *len = 0; return grib_get_long(grib_handle_of_accessor(a), self->numberOfValues, len); } -int grib_accessor_class_data_g2shsimple_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_g2shsimple_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_g2shsimple_packing_t* self = (grib_accessor_data_g2shsimple_packing_t*)a; - int err = GRIB_SUCCESS; + int err = GRIB_SUCCESS; size_t n_vals = 0; @@ -61,9 +63,10 @@ int grib_accessor_class_data_g2shsimple_packing_t::unpack_double(grib_accessor* return err; } -int grib_accessor_class_data_g2shsimple_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_g2shsimple_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_g2shsimple_packing_t* self = (grib_accessor_data_g2shsimple_packing_t*)a; - int err = GRIB_SUCCESS; + int err = GRIB_SUCCESS; size_t coded_n_vals = *len - 1; size_t n_vals = *len; diff --git a/src/accessor/grib_accessor_class_data_g2simple_packing.cc b/src/accessor/grib_accessor_class_data_g2simple_packing.cc index 08aa11699..c4491e82f 100644 --- a/src/accessor/grib_accessor_class_data_g2simple_packing.cc +++ b/src/accessor/grib_accessor_class_data_g2simple_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -12,43 +11,46 @@ #include "grib_accessor_class_data_g2simple_packing.h" #include "grib_scaling.h" -grib_accessor_class_data_g2simple_packing_t _grib_accessor_class_data_g2simple_packing{"data_g2simple_packing"}; +grib_accessor_class_data_g2simple_packing_t _grib_accessor_class_data_g2simple_packing{ "data_g2simple_packing" }; grib_accessor_class* grib_accessor_class_data_g2simple_packing = &_grib_accessor_class_data_g2simple_packing; -void grib_accessor_class_data_g2simple_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_g2simple_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_simple_packing_t::init(a, v, args); grib_accessor_data_g2simple_packing_t* self = (grib_accessor_data_g2simple_packing_t*)a; a->flags |= GRIB_ACCESSOR_FLAG_DATA; self->edition = 2; } -int grib_accessor_class_data_g2simple_packing_t::value_count(grib_accessor* a, long* n_vals){ +int grib_accessor_class_data_g2simple_packing_t::value_count(grib_accessor* a, long* n_vals) +{ grib_accessor_data_g2simple_packing_t* self = (grib_accessor_data_g2simple_packing_t*)a; - *n_vals = 0; + *n_vals = 0; return grib_get_long_internal(grib_handle_of_accessor(a), self->number_of_values, n_vals); } -int grib_accessor_class_data_g2simple_packing_t::pack_double(grib_accessor* a, const double* cval, size_t* len){ +int grib_accessor_class_data_g2simple_packing_t::pack_double(grib_accessor* a, const double* cval, size_t* len) +{ grib_accessor_data_g2simple_packing_t* self = (grib_accessor_data_g2simple_packing_t*)a; - //grib_accessor_class* super = *(a->cclass->super); - size_t n_vals = *len; - double reference_value = 0; - long binary_scale_factor = 0; - long bits_per_value = 0; - long decimal_scale_factor = 0; - double decimal = 1; - size_t buflen = 0; - unsigned char* buf = NULL; - unsigned char* encoded = NULL; - double divisor = 1; - long off = 0; - int ret = 0; - double units_factor = 1.0; - double units_bias = 0.0; - double* val = (double*)cval; + // grib_accessor_class* super = *(a->cclass->super); + size_t n_vals = *len; + double reference_value = 0; + long binary_scale_factor = 0; + long bits_per_value = 0; + long decimal_scale_factor = 0; + double decimal = 1; + size_t buflen = 0; + unsigned char* buf = NULL; + unsigned char* encoded = NULL; + double divisor = 1; + long off = 0; + int ret = 0; + double units_factor = 1.0; + double units_bias = 0.0; + double* val = (double*)cval; int i; - grib_context* c = a->context; + grib_context* c = a->context; if (*len == 0) { grib_buffer_replace(a, NULL, 0, 1, 1); @@ -76,7 +78,8 @@ int grib_accessor_class_data_g2simple_packing_t::pack_double(grib_accessor* a, c for (i = 0; i < n_vals; i++) { val[i] = val[i] * units_factor + units_bias; } - } else { + } + else { for (i = 0; i < n_vals; i++) { val[i] *= units_factor; } @@ -147,7 +150,8 @@ int grib_accessor_class_data_g2simple_packing_t::pack_double(grib_accessor* a, c return ret; } -int grib_accessor_class_data_g2simple_packing_t::pack_bytes(grib_accessor* a, const unsigned char* val, size_t* len){ +int grib_accessor_class_data_g2simple_packing_t::pack_bytes(grib_accessor* a, const unsigned char* val, size_t* len) +{ size_t length = *len; grib_buffer_replace(a, val, length, 1, 1); return GRIB_SUCCESS; diff --git a/src/accessor/grib_accessor_class_data_jpeg2000_packing.cc b/src/accessor/grib_accessor_class_data_jpeg2000_packing.cc index 5ce5ae154..1860737d1 100644 --- a/src/accessor/grib_accessor_class_data_jpeg2000_packing.cc +++ b/src/accessor/grib_accessor_class_data_jpeg2000_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,20 +10,21 @@ #include "grib_accessor_class_data_jpeg2000_packing.h" -grib_accessor_class_data_jpeg2000_packing_t _grib_accessor_class_data_jpeg2000_packing{"data_jpeg2000_packing"}; +grib_accessor_class_data_jpeg2000_packing_t _grib_accessor_class_data_jpeg2000_packing{ "data_jpeg2000_packing" }; grib_accessor_class* grib_accessor_class_data_jpeg2000_packing = &_grib_accessor_class_data_jpeg2000_packing; static int first = 1; -#define JASPER_LIB 1 +#define JASPER_LIB 1 #define OPENJPEG_LIB 2 -void grib_accessor_class_data_jpeg2000_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_jpeg2000_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_simple_packing_t::init(a, v, args); - const char* user_lib = NULL; + const char* user_lib = NULL; grib_accessor_data_jpeg2000_packing_t* self = (grib_accessor_data_jpeg2000_packing_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); self->jpeg_lib = 0; self->type_of_compression_used = grib_arguments_get_name(hand, args, self->carg++); @@ -78,9 +78,10 @@ void grib_accessor_class_data_jpeg2000_packing_t::init(grib_accessor* a, const l } } -int grib_accessor_class_data_jpeg2000_packing_t::value_count(grib_accessor* a, long* n_vals){ +int grib_accessor_class_data_jpeg2000_packing_t::value_count(grib_accessor* a, long* n_vals) +{ grib_accessor_data_jpeg2000_packing_t* self = (grib_accessor_data_jpeg2000_packing_t*)a; - *n_vals = 0; + *n_vals = 0; return grib_get_long_internal(grib_handle_of_accessor(a), self->number_of_values, n_vals); } @@ -88,16 +89,18 @@ int grib_accessor_class_data_jpeg2000_packing_t::value_count(grib_accessor* a, l #define EXTRA_BUFFER_SIZE 10240 #if HAVE_JPEG -int grib_accessor_class_data_jpeg2000_packing_t::unpack_float(grib_accessor*, float* val, size_t* len){ +int grib_accessor_class_data_jpeg2000_packing_t::unpack_float(grib_accessor*, float* val, size_t* len) +{ return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_data_jpeg2000_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_jpeg2000_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_jpeg2000_packing_t* self = (grib_accessor_data_jpeg2000_packing_t*)a; - int err = GRIB_SUCCESS; - size_t i = 0; - size_t buflen = a->byte_count(); + int err = GRIB_SUCCESS; + size_t i = 0; + size_t buflen = a->byte_count(); double bscale = 0; double dscale = 0; unsigned char* buf = NULL; @@ -112,7 +115,8 @@ int grib_accessor_class_data_jpeg2000_packing_t::unpack_double(grib_accessor* a, double units_bias = 0.0; n_vals = 0; - err = a->value_count(&nn); n_vals = nn; + err = a->value_count(&nn); + n_vals = nn; if (err) return err; @@ -176,7 +180,8 @@ int grib_accessor_class_data_jpeg2000_packing_t::unpack_double(grib_accessor* a, for (i = 0; i < n_vals; i++) { val[i] = val[i] * units_factor + units_bias; } - } else { + } + else { for (i = 0; i < n_vals; i++) { val[i] *= units_factor; } @@ -191,10 +196,11 @@ int grib_accessor_class_data_jpeg2000_packing_t::unpack_double(grib_accessor* a, return err; } -int grib_accessor_class_data_jpeg2000_packing_t::pack_double(grib_accessor* a, const double* cval, size_t* len){ +int grib_accessor_class_data_jpeg2000_packing_t::pack_double(grib_accessor* a, const double* cval, size_t* len) +{ grib_accessor_data_jpeg2000_packing_t* self = (grib_accessor_data_jpeg2000_packing_t*)a; - size_t n_vals = *len; - int err = 0; + size_t n_vals = *len; + int err = 0; int i; double reference_value = 0; long binary_scale_factor = 0; @@ -215,9 +221,9 @@ int grib_accessor_class_data_jpeg2000_packing_t::pack_double(grib_accessor* a, c long number_of_data_points; int ret = 0; j2k_encode_helper helper; - double units_factor = 1.0; - double units_bias = 0.0; - double* val = (double*)cval; + double units_factor = 1.0; + double units_bias = 0.0; + double* val = (double*)cval; const char* cclass_name = a->cclass->name; self->dirty = 1; @@ -329,28 +335,28 @@ int grib_accessor_class_data_jpeg2000_packing_t::pack_double(grib_accessor* a, c /* ECC-802: We cannot bomb out here as the user might have changed Ni/Nj and the packingType * but has not yet submitted the new data values. So len will be out of sync! * So issue a warning but proceed. - */ + */ /*return GRIB_INTERNAL_ERROR;*/ grib_context_free(a->context, buf); return GRIB_SUCCESS; } switch (type_of_compression_used) { - case 0: // Lossless + case 0: // Lossless if (target_compression_ratio != 255) { grib_context_log(a->context, GRIB_LOG_ERROR, - "%s %s: When %s=0 (Lossless), %s must be set to 255", - cclass_name, __func__, self->type_of_compression_used, self->target_compression_ratio); + "%s %s: When %s=0 (Lossless), %s must be set to 255", + cclass_name, __func__, self->type_of_compression_used, self->target_compression_ratio); return GRIB_ENCODING_ERROR; } helper.compression = 0; break; - case 1: // Lossy + case 1: // Lossy if (target_compression_ratio == 255 || target_compression_ratio == 0) { grib_context_log(a->context, GRIB_LOG_ERROR, - "%s %s: When %s=1 (Lossy), %s must be specified", - cclass_name, __func__, self->type_of_compression_used, self->target_compression_ratio); + "%s %s: When %s=1 (Lossy), %s must be specified", + cclass_name, __func__, self->type_of_compression_used, self->target_compression_ratio); return GRIB_ENCODING_ERROR; } Assert(target_compression_ratio != 255); @@ -428,34 +434,39 @@ int grib_accessor_class_data_jpeg2000_packing_t::pack_double(grib_accessor* a, c } #else -static void print_error_feature_not_enabled(grib_context* c){ +static void print_error_feature_not_enabled(grib_context* c) +{ grib_context_log(c, GRIB_LOG_ERROR, "JPEG support not enabled. Please rebuild with -DENABLE_JPG=ON"); } -int grib_accessor_class_data_jpeg2000_packing_t::unpack_float(grib_accessor* a, float* val, size_t* len){ +int grib_accessor_class_data_jpeg2000_packing_t::unpack_float(grib_accessor* a, float* val, size_t* len) +{ print_error_feature_not_enabled(a->context); return GRIB_FUNCTIONALITY_NOT_ENABLED; } -int grib_accessor_class_data_jpeg2000_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_jpeg2000_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ print_error_feature_not_enabled(a->context); return GRIB_FUNCTIONALITY_NOT_ENABLED; } -int grib_accessor_class_data_jpeg2000_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_jpeg2000_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ print_error_feature_not_enabled(a->context); return GRIB_FUNCTIONALITY_NOT_ENABLED; } #endif -int grib_accessor_class_data_jpeg2000_packing_t::unpack_double_element(grib_accessor* a, size_t idx, double* val){ +int grib_accessor_class_data_jpeg2000_packing_t::unpack_double_element(grib_accessor* a, size_t idx, double* val) +{ grib_accessor_data_jpeg2000_packing_t* self = (grib_accessor_data_jpeg2000_packing_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - size_t size = 0; - double* values = NULL; - int err = 0; - double reference_value = 0; - long bits_per_value = 0; + grib_handle* hand = grib_handle_of_accessor(a); + size_t size = 0; + double* values = NULL; + int err = 0; + double reference_value = 0; + long bits_per_value = 0; if ((err = grib_get_long_internal(hand, self->bits_per_value, &bits_per_value)) != GRIB_SUCCESS) return err; @@ -486,14 +497,15 @@ int grib_accessor_class_data_jpeg2000_packing_t::unpack_double_element(grib_acce return GRIB_SUCCESS; } -int grib_accessor_class_data_jpeg2000_packing_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array){ +int grib_accessor_class_data_jpeg2000_packing_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array) +{ grib_accessor_data_jpeg2000_packing_t* self = (grib_accessor_data_jpeg2000_packing_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); size_t size = 0, i = 0; - double* values = NULL; - int err = 0; + double* values = NULL; + int err = 0; double reference_value = 0; - long bits_per_value = 0; + long bits_per_value = 0; if ((err = grib_get_long_internal(hand, self->bits_per_value, &bits_per_value)) != GRIB_SUCCESS) return err; diff --git a/src/accessor/grib_accessor_class_data_png_packing.cc b/src/accessor/grib_accessor_class_data_png_packing.cc index 690070214..999722f36 100644 --- a/src/accessor/grib_accessor_class_data_png_packing.cc +++ b/src/accessor/grib_accessor_class_data_png_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -14,14 +13,15 @@ #define PNG_ANYBITS -grib_accessor_class_data_png_packing_t _grib_accessor_class_data_png_packing{"data_png_packing"}; +grib_accessor_class_data_png_packing_t _grib_accessor_class_data_png_packing{ "data_png_packing" }; grib_accessor_class* grib_accessor_class_data_png_packing = &_grib_accessor_class_data_png_packing; -void grib_accessor_class_data_png_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_png_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_values_t::init(a, v, args); grib_accessor_data_png_packing_t* self = (grib_accessor_data_png_packing_t*)a; - grib_handle* h = grib_handle_of_accessor(a); + grib_handle* h = grib_handle_of_accessor(a); self->number_of_values = grib_arguments_get_name(h, args, self->carg++); self->reference_value = grib_arguments_get_name(h, args, self->carg++); @@ -36,15 +36,16 @@ void grib_accessor_class_data_png_packing_t::init(grib_accessor* a, const long v a->flags |= GRIB_ACCESSOR_FLAG_DATA; } -int grib_accessor_class_data_png_packing_t::value_count(grib_accessor* a, long* n_vals){ +int grib_accessor_class_data_png_packing_t::value_count(grib_accessor* a, long* n_vals) +{ grib_accessor_data_png_packing_t* self = (grib_accessor_data_png_packing_t*)a; - *n_vals = 0; + *n_vals = 0; return grib_get_long_internal(grib_handle_of_accessor(a), self->number_of_values, n_vals); } #if HAVE_LIBPNG -#include + #include typedef struct png_read_callback_data { @@ -69,7 +70,7 @@ static void png_write_callback(png_structp png, png_bytep data, png_size_t lengt if (p->offset + length > p->length) { /* Errors handled through png_error() are fatal, meaning that png_error() should never return to its caller. Currently, this is handled via setjmp() and longjmp() */ - png_error(png,"Failed to write PNG data"); + png_error(png, "Failed to write PNG data"); } memcpy(p->buffer + p->offset, data, length); p->offset += length; @@ -80,12 +81,13 @@ static void png_flush_callback(png_structp png) /* Empty */ } -int grib_accessor_class_data_png_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_png_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_png_packing_t* self = (grib_accessor_data_png_packing_t*)a; int err = GRIB_SUCCESS; int i, j; - size_t buflen = a->byte_count(); + size_t buflen = a->byte_count(); double bscale = 0; double dscale = 0; unsigned char* buf = NULL; @@ -109,7 +111,8 @@ int grib_accessor_class_data_png_packing_t::unpack_double(grib_accessor* a, doub self->dirty = 0; - err = a->value_count(&nn); n_vals = nn; + err = a->value_count(&nn); + n_vals = nn; if (err) return err; if ((err = grib_get_long_internal(grib_handle_of_accessor(a), self->bits_per_value, &bits_per_value)) != GRIB_SUCCESS) @@ -195,11 +198,11 @@ int grib_accessor_class_data_png_packing_t::unpack_double(grib_accessor* a, doub depth = 32; bits8 = ((bits_per_value + 7) / 8) * 8; -#ifdef PNG_ANYBITS + #ifdef PNG_ANYBITS Assert(depth == bits8); -#else + #else Assert(bits_per_value % 8 == 0); -#endif + #endif i = 0; @@ -224,10 +227,11 @@ int grib_accessor_class_data_png_packing_t::unpack_double(grib_accessor* a, doub static bool is_constant(const double* values, size_t n_vals) { bool isConstant = true; - double v = 0; + double v = 0; size_t i; for (i = 0; i < n_vals; i++) { - if (i == 0) v = values[i]; + if (i == 0) + v = values[i]; else if (v != values[i]) { isConstant = false; break; @@ -236,11 +240,12 @@ static bool is_constant(const double* values, size_t n_vals) return isConstant; } -int grib_accessor_class_data_png_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_png_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_png_packing_t* self = (grib_accessor_data_png_packing_t*)a; - const char* cclass_name = a->cclass->name; + const char* cclass_name = a->cclass->name; - int err = GRIB_SUCCESS; + int err = GRIB_SUCCESS; bool is_constant_field = false; int i, j; size_t buflen = 0; @@ -299,11 +304,11 @@ int grib_accessor_class_data_png_packing_t::pack_double(grib_accessor* a, const } if (is_constant_field) { -#ifdef DEBUG + #ifdef DEBUG for (i = 1; i < n_vals; i++) { Assert(val[i] == val[0]); } -#endif + #endif if ((err = grib_set_double_internal(grib_handle_of_accessor(a), self->reference_value, val[0])) != GRIB_SUCCESS) return err; @@ -313,7 +318,7 @@ int grib_accessor_class_data_png_packing_t::pack_double(grib_accessor* a, const grib_get_double_internal(grib_handle_of_accessor(a), self->reference_value, &ref); if (ref != reference_value) { grib_context_log(a->context, GRIB_LOG_ERROR, "%s %s: %s (ref=%.10e != reference_value=%.10e)", - cclass_name, __func__, self->reference_value, ref, reference_value); + cclass_name, __func__, self->reference_value, ref, reference_value); return GRIB_INTERNAL_ERROR; } } @@ -370,7 +375,7 @@ int grib_accessor_class_data_png_packing_t::pack_double(grib_accessor* a, const /* ECC-802: We cannot bomb out here as the user might have changed Ni/Nj and the packingType * but has not yet submitted the new data values. So len will be out of sync! * So issue a warning but proceed. - */ + */ return GRIB_SUCCESS; } @@ -379,8 +384,10 @@ int grib_accessor_class_data_png_packing_t::pack_double(grib_accessor* a, const max = val[0]; min = max; for (i = 1; i < n_vals; i++) { - if (val[i] > max) max = val[i]; - else if (val[i] < min) min = val[i]; + if (val[i] > max) + max = val[i]; + else if (val[i] < min) + min = val[i]; } min *= d; max *= d; @@ -393,16 +400,16 @@ int grib_accessor_class_data_png_packing_t::pack_double(grib_accessor* a, const if (reference_value > min) { grib_context_log(a->context, GRIB_LOG_ERROR, "reference_value=%g min_value=%g diff=%g", - reference_value, min, reference_value - min); + reference_value, min, reference_value - min); return GRIB_INTERNAL_ERROR; } binary_scale_factor = grib_get_binary_scale_fact(max, reference_value, bits_per_value, &err); divisor = codes_power(-binary_scale_factor, 2); -#ifndef PNG_ANYBITS + #ifndef PNG_ANYBITS Assert(bits_per_value % 8 == 0); -#endif + #endif bits8 = (bits_per_value + 7) / 8 * 8; encoded = (unsigned char*)grib_context_buffer_malloc_clear(a->context, bits8 / 8 * n_vals); if (!encoded) { @@ -531,15 +538,16 @@ int grib_accessor_class_data_png_packing_t::pack_double(grib_accessor* a, const return err; } -int grib_accessor_class_data_png_packing_t::unpack_double_element(grib_accessor* a, size_t idx, double* val){ +int grib_accessor_class_data_png_packing_t::unpack_double_element(grib_accessor* a, size_t idx, double* val) +{ /* The index idx relates to codedValues NOT values! */ grib_accessor_data_png_packing_t* self = (grib_accessor_data_png_packing_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - int err = 0; - size_t size = 0; - double reference_value = 0; - long bits_per_value = 0; - double* values = NULL; + grib_handle* hand = grib_handle_of_accessor(a); + int err = 0; + size_t size = 0; + double reference_value = 0; + long bits_per_value = 0; + double* values = NULL; if ((err = grib_get_long_internal(hand, self->bits_per_value, &bits_per_value)) != GRIB_SUCCESS) return err; @@ -566,15 +574,16 @@ int grib_accessor_class_data_png_packing_t::unpack_double_element(grib_accessor* return GRIB_SUCCESS; } -int grib_accessor_class_data_png_packing_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array){ +int grib_accessor_class_data_png_packing_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array) +{ /* The index idx relates to codedValues NOT values! */ grib_accessor_data_png_packing_t* self = (grib_accessor_data_png_packing_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - int err = 0; + grib_handle* hand = grib_handle_of_accessor(a); + int err = 0; size_t size = 0, i = 0; - double reference_value = 0; - long bits_per_value = 0; - double* values = NULL; + double reference_value = 0; + long bits_per_value = 0; + double* values = NULL; if ((err = grib_get_long_internal(hand, self->bits_per_value, &bits_per_value)) != GRIB_SUCCESS) return err; @@ -612,24 +621,29 @@ int grib_accessor_class_data_png_packing_t::unpack_double_element_set(grib_acces #else -static void print_error_feature_not_enabled(grib_context* c){ +static void print_error_feature_not_enabled(grib_context* c) +{ grib_context_log(c, GRIB_LOG_ERROR, "PNG support not enabled. Please rebuild with -DENABLE_PNG=ON"); } -int grib_accessor_class_data_png_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_png_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ print_error_feature_not_enabled(a->context); return GRIB_FUNCTIONALITY_NOT_ENABLED; } -int grib_accessor_class_data_png_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_png_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ print_error_feature_not_enabled(a->context); return GRIB_FUNCTIONALITY_NOT_ENABLED; } -int grib_accessor_class_data_png_packing_t::unpack_double_element(grib_accessor* a, size_t idx, double* val){ +int grib_accessor_class_data_png_packing_t::unpack_double_element(grib_accessor* a, size_t idx, double* val) +{ print_error_feature_not_enabled(a->context); return GRIB_FUNCTIONALITY_NOT_ENABLED; } -int grib_accessor_class_data_png_packing_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array){ +int grib_accessor_class_data_png_packing_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array) +{ print_error_feature_not_enabled(a->context); return GRIB_FUNCTIONALITY_NOT_ENABLED; } diff --git a/src/accessor/grib_accessor_class_data_raw_packing.cc b/src/accessor/grib_accessor_class_data_raw_packing.cc index 499b46bec..8cf92e0a9 100644 --- a/src/accessor/grib_accessor_class_data_raw_packing.cc +++ b/src/accessor/grib_accessor_class_data_raw_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -12,11 +11,12 @@ #include "grib_accessor_class_data_raw_packing.h" #include "grib_ieeefloat.h" -grib_accessor_class_data_raw_packing_t _grib_accessor_class_data_raw_packing{"data_raw_packing"}; +grib_accessor_class_data_raw_packing_t _grib_accessor_class_data_raw_packing{ "data_raw_packing" }; grib_accessor_class* grib_accessor_class_data_raw_packing = &_grib_accessor_class_data_raw_packing; -void grib_accessor_class_data_raw_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_raw_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_values_t::init(a, v, args); grib_accessor_data_raw_packing_t* self = (grib_accessor_data_raw_packing_t*)a; @@ -25,19 +25,21 @@ void grib_accessor_class_data_raw_packing_t::init(grib_accessor* a, const long v a->flags |= GRIB_ACCESSOR_FLAG_DATA; } -int grib_accessor_class_data_raw_packing_t::value_count(grib_accessor* a, long* n_vals){ +int grib_accessor_class_data_raw_packing_t::value_count(grib_accessor* a, long* n_vals) +{ grib_accessor_data_raw_packing_t* self = (grib_accessor_data_raw_packing_t*)a; - *n_vals = 0; + *n_vals = 0; return grib_get_long_internal(grib_handle_of_accessor(a), self->number_of_values, n_vals); } -int grib_accessor_class_data_raw_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_raw_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_raw_packing_t* self = (grib_accessor_data_raw_packing_t*)a; - unsigned char* buf = NULL; - int bytes = 0; - size_t nvals = 0; - long inlen = a->byte_count(); - long precision = 0; + unsigned char* buf = NULL; + int bytes = 0; + size_t nvals = 0; + long inlen = a->byte_count(); + long precision = 0; int code = GRIB_SUCCESS; @@ -71,7 +73,8 @@ int grib_accessor_class_data_raw_packing_t::unpack_double(grib_accessor* a, doub return code; } -int grib_accessor_class_data_raw_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_raw_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_raw_packing_t* self = (grib_accessor_data_raw_packing_t*)a; int bytes = 0; @@ -127,7 +130,7 @@ int grib_accessor_class_data_raw_packing_t::pack_double(grib_accessor* a, const * free(buffer); * if (free_values) * free(values); - */ + */ grib_buffer_replace(a, buffer, bufsize, 1, 1); @@ -142,14 +145,16 @@ int grib_accessor_class_data_raw_packing_t::pack_double(grib_accessor* a, const return code; } -int grib_accessor_class_data_raw_packing_t::unpack_double_element(grib_accessor* a, size_t idx, double* val){ - int ret = 0; +int grib_accessor_class_data_raw_packing_t::unpack_double_element(grib_accessor* a, size_t idx, double* val) +{ + int ret = 0; grib_accessor_data_raw_packing_t* self = (grib_accessor_data_raw_packing_t*)a; - unsigned char* buf = NULL; - int bytes = 0; - size_t nvals = 0; - long inlen = a->byte_count(); long pos = 0; - long precision = 0; + unsigned char* buf = NULL; + int bytes = 0; + size_t nvals = 0; + long inlen = a->byte_count(); + long pos = 0; + long precision = 0; if ((ret = grib_get_long_internal(grib_handle_of_accessor(a), self->precision, &precision)) != GRIB_SUCCESS) return ret; @@ -183,11 +188,12 @@ int grib_accessor_class_data_raw_packing_t::unpack_double_element(grib_accessor* return ret; } -int grib_accessor_class_data_raw_packing_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array){ - int err = 0; +int grib_accessor_class_data_raw_packing_t::unpack_double_element_set(grib_accessor* a, const size_t* index_array, size_t len, double* val_array) +{ + int err = 0; size_t i = 0; - for (i=0; inumber_of_values = grib_arguments_get_name(gh, args, self->carg++); - self->bits_per_value = grib_arguments_get_name(gh, args, self->carg++); - self->max_level_value = grib_arguments_get_name(gh, args, self->carg++); - self->number_of_level_values = grib_arguments_get_name(gh, args, self->carg++); - self->decimal_scale_factor = grib_arguments_get_name(gh, args, self->carg++); - self->level_values = grib_arguments_get_name(gh, args, self->carg++); + grib_handle* gh = grib_handle_of_accessor(a); + self->number_of_values = grib_arguments_get_name(gh, args, self->carg++); + self->bits_per_value = grib_arguments_get_name(gh, args, self->carg++); + self->max_level_value = grib_arguments_get_name(gh, args, self->carg++); + self->number_of_level_values = grib_arguments_get_name(gh, args, self->carg++); + self->decimal_scale_factor = grib_arguments_get_name(gh, args, self->carg++); + self->level_values = grib_arguments_get_name(gh, args, self->carg++); a->flags |= GRIB_ACCESSOR_FLAG_DATA; } -int grib_accessor_class_data_run_length_packing_t::value_count(grib_accessor* a, long* number_of_values){ +int grib_accessor_class_data_run_length_packing_t::value_count(grib_accessor* a, long* number_of_values) +{ grib_accessor_data_run_length_packing_t* self = (grib_accessor_data_run_length_packing_t*)a; - *number_of_values = 0; + *number_of_values = 0; return grib_get_long_internal(grib_handle_of_accessor(a), self->number_of_values, number_of_values); } -int grib_accessor_class_data_run_length_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_run_length_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_run_length_packing_t* self = (grib_accessor_data_run_length_packing_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); - const char* cclass_name = a->cclass->name; - int err = GRIB_SUCCESS; + grib_handle* gh = grib_handle_of_accessor(a); + const char* cclass_name = a->cclass->name; + int err = GRIB_SUCCESS; long seclen, number_of_values, bits_per_value, max_level_value, number_of_level_values, decimal_scale_factor; - long* level_values = NULL; + long* level_values = NULL; size_t level_values_size = 0; long i = 0, number_of_compressed_values = 0, range = 0, offsetBeforeData = 0, pos = 0; long v, n, factor, k, j; - long* compressed_values = NULL; + long* compressed_values = NULL; double level_scale_factor = 0; - double* levels = NULL; - unsigned char* buf = NULL; - double missingValue = 9999.0; + double* levels = NULL; + unsigned char* buf = NULL; + double missingValue = 9999.0; if ((err = grib_get_long_internal(gh, self->seclen, &seclen)) != GRIB_SUCCESS) return err; @@ -66,12 +68,12 @@ int grib_accessor_class_data_run_length_packing_t::unpack_double(grib_accessor* if ((err = grib_get_double(gh, "missingValue", &missingValue)) != GRIB_SUCCESS) return err; - level_values = (long*)grib_context_malloc_clear(a->context, sizeof(long) * number_of_level_values); + level_values = (long*)grib_context_malloc_clear(a->context, sizeof(long) * number_of_level_values); level_values_size = number_of_level_values; if ((err = grib_get_long_array_internal(gh, self->level_values, level_values, &level_values_size)) != GRIB_SUCCESS) return err; - *len = number_of_values; - i = 0; + *len = number_of_values; + i = 0; number_of_compressed_values = ((seclen - 5) * 8) / bits_per_value; if (number_of_compressed_values == 0 || max_level_value == 0) { for (i = 0; i < number_of_values; i++) { @@ -82,23 +84,24 @@ int grib_accessor_class_data_run_length_packing_t::unpack_double(grib_accessor* range = (1 << bits_per_value) - 1 - max_level_value; if ((max_level_value <= 0) || (number_of_level_values <= 0) || (max_level_value > number_of_level_values) || (range <= 0)) { grib_context_log(a->context, GRIB_LOG_ERROR, - "%s: parameters are invalid: max_level_value=%ld(>0, <=number_of_level_values), " - "number_of_level_values=%ld(>0, >=max_level_value), range=%ld(>0)", - cclass_name, max_level_value, number_of_level_values, range); + "%s: parameters are invalid: max_level_value=%ld(>0, <=number_of_level_values), " + "number_of_level_values=%ld(>0, >=max_level_value), range=%ld(>0)", + cclass_name, max_level_value, number_of_level_values, range); return GRIB_DECODING_ERROR; } if (decimal_scale_factor > 127) { decimal_scale_factor = -(decimal_scale_factor - 128); } level_scale_factor = codes_power(-decimal_scale_factor, 10.0); - levels = (double*)grib_context_malloc_clear(a->context, sizeof(double) * (number_of_level_values + 1)); - levels[0] = missingValue; + levels = (double*)grib_context_malloc_clear(a->context, sizeof(double) * (number_of_level_values + 1)); + levels[0] = missingValue; for (i = 0; i < number_of_level_values; i++) { levels[i + 1] = level_values[i] * level_scale_factor; } compressed_values = (long*)grib_context_malloc_clear(a->context, sizeof(long) * number_of_compressed_values); - buf = (unsigned char*)grib_handle_of_accessor(a)->buffer->data; - offsetBeforeData = a->byte_offset(); buf += offsetBeforeData; + buf = (unsigned char*)grib_handle_of_accessor(a)->buffer->data; + offsetBeforeData = a->byte_offset(); + buf += offsetBeforeData; pos = 0; grib_decode_long_array(buf, &pos, bits_per_value, number_of_compressed_values, compressed_values); j = 0; @@ -106,13 +109,13 @@ int grib_accessor_class_data_run_length_packing_t::unpack_double(grib_accessor* while (i < number_of_compressed_values) { if (compressed_values[i] > max_level_value) { grib_context_log(a->context, GRIB_LOG_ERROR, - "%s: numberOfValues mismatch: i=%ld, " - "compressed_values[i]=%ld, max_level_value=%ld", - cclass_name, i, compressed_values[i], max_level_value); + "%s: numberOfValues mismatch: i=%ld, " + "compressed_values[i]=%ld, max_level_value=%ld", + cclass_name, i, compressed_values[i], max_level_value); break; } - v = compressed_values[i++]; - n = 1; + v = compressed_values[i++]; + n = 1; factor = 1; while (i < number_of_compressed_values && compressed_values[i] > max_level_value) { n += factor * (compressed_values[i] - max_level_value - 1); @@ -121,7 +124,7 @@ int grib_accessor_class_data_run_length_packing_t::unpack_double(grib_accessor* } if (n > number_of_values) { grib_context_log(a->context, GRIB_LOG_ERROR, "%s: numberOfValues mismatch: n=%ld, number_of_values=%ld", - cclass_name, n, number_of_values); + cclass_name, n, number_of_values); break; } for (k = 0; k < n; k++) { @@ -139,19 +142,20 @@ int grib_accessor_class_data_run_length_packing_t::unpack_double(grib_accessor* return err; } -int grib_accessor_class_data_run_length_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_run_length_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_run_length_packing_t* self = (grib_accessor_data_run_length_packing_t*)a; - grib_handle* gh = grib_handle_of_accessor(a); - const char* cclass_name = a->cclass->name; - int err = GRIB_SUCCESS; + grib_handle* gh = grib_handle_of_accessor(a); + const char* cclass_name = a->cclass->name; + int err = GRIB_SUCCESS; long number_of_values, bits_per_value, max_level_value, number_of_level_values, decimal_scale_factor; - long* level_values = NULL; + long* level_values = NULL; size_t level_values_size = 0; long i = 0, range = 0, pos = 0, n = 0, j = 0, k = 0, l = 0, missingValueLong = 0; double level_scale_factor = 0; - unsigned char* buf = NULL; - double missingValue = 9999.0; - size_t n_vals = *len; + unsigned char* buf = NULL; + double missingValue = 9999.0; + size_t n_vals = *len; if ((err = grib_get_long_internal(gh, self->number_of_values, &number_of_values)) != GRIB_SUCCESS) return err; @@ -177,7 +181,7 @@ int grib_accessor_class_data_run_length_packing_t::pack_double(grib_accessor* a, return GRIB_SUCCESS; } - level_values = (long*)grib_context_malloc_clear(a->context, sizeof(long) * number_of_level_values); + level_values = (long*)grib_context_malloc_clear(a->context, sizeof(long) * number_of_level_values); level_values_size = number_of_level_values; if ((err = grib_get_long_array_internal(gh, self->level_values, level_values, &level_values_size)) != GRIB_SUCCESS) return err; @@ -185,7 +189,7 @@ int grib_accessor_class_data_run_length_packing_t::pack_double(grib_accessor* a, decimal_scale_factor = -(decimal_scale_factor - 128); } level_scale_factor = grib_power(-decimal_scale_factor, 10.0); - missingValueLong = (long)(round(missingValue / level_scale_factor)); + missingValueLong = (long)(round(missingValue / level_scale_factor)); for (i = 0; i < number_of_level_values; i++) { if (missingValueLong == level_values[i]) { grib_context_log(a->context, GRIB_LOG_ERROR, "%s: Parameters are invalid: level_values[%ld]=%ld, missingValueLong=%ld", @@ -196,22 +200,23 @@ int grib_accessor_class_data_run_length_packing_t::pack_double(grib_accessor* a, range = (1 << bits_per_value) - 1 - max_level_value; if ((max_level_value <= 0) || (number_of_level_values <= 0) || (max_level_value > number_of_level_values) || (range <= 0)) { grib_context_log(a->context, GRIB_LOG_ERROR, - "%s: Parameters are invalid: max_level_value=%ld(>0, <=number_of_level_values), " - "number_of_level_values=%ld(>0, >=max_level_value), range=%ld(>0)", - cclass_name, max_level_value, number_of_level_values, range); + "%s: Parameters are invalid: max_level_value=%ld(>0, <=number_of_level_values), " + "number_of_level_values=%ld(>0, >=max_level_value), range=%ld(>0)", + cclass_name, max_level_value, number_of_level_values, range); return GRIB_ENCODING_ERROR; } buf = (unsigned char*)grib_context_malloc(a->context, 2 * number_of_values); for (i = 0; i < number_of_values; i++) { - k = (long)(round(val[i] / level_scale_factor)); + k = (long)(round(val[i] / level_scale_factor)); err = GRIB_ENCODING_ERROR; if (missingValueLong == k) { - k = 0; + k = 0; err = GRIB_SUCCESS; - } else { + } + else { for (j = 0; j < max_level_value; j++) { if (level_values[j] == k) { - k = j + 1; + k = j + 1; err = GRIB_SUCCESS; break; } @@ -219,17 +224,19 @@ int grib_accessor_class_data_run_length_packing_t::pack_double(grib_accessor* a, } if (err != GRIB_SUCCESS) { grib_context_log(a->context, GRIB_LOG_ERROR, - "%s: Values and/or parameters are invalid: val[%ld]=%lf, level_value=%ld, max_level_value=%ld", - cclass_name, i, val[i], k, max_level_value); + "%s: Values and/or parameters are invalid: val[%ld]=%lf, level_value=%ld, max_level_value=%ld", + cclass_name, i, val[i], k, max_level_value); return GRIB_ENCODING_ERROR; } if (i == 0) { grib_encode_unsigned_longb(buf, k, &pos, bits_per_value); - } else if (i == number_of_values - 1) { + } + else if (i == number_of_values - 1) { if (k != l) { if (n == 0) { grib_encode_unsigned_longb(buf, k, &pos, bits_per_value); - } else { + } + else { while (n >= range) { grib_encode_unsigned_longb(buf, (n % range) + max_level_value + 1, &pos, bits_per_value); n = n / range; @@ -237,7 +244,8 @@ int grib_accessor_class_data_run_length_packing_t::pack_double(grib_accessor* a, grib_encode_unsigned_longb(buf, n + max_level_value + 1, &pos, bits_per_value); grib_encode_unsigned_longb(buf, k, &pos, bits_per_value); } - } else { + } + else { n = n + 1; while (n >= range) { grib_encode_unsigned_longb(buf, (n % range) + max_level_value + 1, &pos, bits_per_value); @@ -245,11 +253,13 @@ int grib_accessor_class_data_run_length_packing_t::pack_double(grib_accessor* a, } grib_encode_unsigned_longb(buf, n + max_level_value + 1, &pos, bits_per_value); } - } else { + } + else { if (k != l) { - if ( n == 0 ) { + if (n == 0) { grib_encode_unsigned_longb(buf, k, &pos, bits_per_value); - } else { + } + else { while (n >= range) { grib_encode_unsigned_longb(buf, (n % range) + max_level_value + 1, &pos, bits_per_value); n = n / range; @@ -258,14 +268,15 @@ int grib_accessor_class_data_run_length_packing_t::pack_double(grib_accessor* a, grib_encode_unsigned_longb(buf, k, &pos, bits_per_value); n = 0; } - } else { + } + else { n = n + 1; } } l = k; } grib_context_free(a->context, level_values); - grib_buffer_replace(a, buf, pos/8, 1, 1); + grib_buffer_replace(a, buf, pos / 8, 1, 1); grib_context_buffer_free(a->context, buf); return err; } diff --git a/src/accessor/grib_accessor_class_data_secondary_bitmap.cc b/src/accessor/grib_accessor_class_data_secondary_bitmap.cc index f79098f84..8e8f2b626 100644 --- a/src/accessor/grib_accessor_class_data_secondary_bitmap.cc +++ b/src/accessor/grib_accessor_class_data_secondary_bitmap.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,26 +10,29 @@ #include "grib_accessor_class_data_secondary_bitmap.h" -grib_accessor_class_data_secondary_bitmap_t _grib_accessor_class_data_secondary_bitmap{"data_secondary_bitmap"}; +grib_accessor_class_data_secondary_bitmap_t _grib_accessor_class_data_secondary_bitmap{ "data_secondary_bitmap" }; grib_accessor_class* grib_accessor_class_data_secondary_bitmap = &_grib_accessor_class_data_secondary_bitmap; -void grib_accessor_class_data_secondary_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_secondary_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, v, args); grib_accessor_data_secondary_bitmap_t* self = (grib_accessor_data_secondary_bitmap_t*)a; - self->primary_bitmap = grib_arguments_get_name(grib_handle_of_accessor(a), args, 0); - self->secondary_bitmap = grib_arguments_get_name(grib_handle_of_accessor(a), args, 1); - self->missing_value = grib_arguments_get_name(grib_handle_of_accessor(a), args, 2); - self->expand_by = grib_arguments_get_name(grib_handle_of_accessor(a), args, 3); + self->primary_bitmap = grib_arguments_get_name(grib_handle_of_accessor(a), args, 0); + self->secondary_bitmap = grib_arguments_get_name(grib_handle_of_accessor(a), args, 1); + self->missing_value = grib_arguments_get_name(grib_handle_of_accessor(a), args, 2); + self->expand_by = grib_arguments_get_name(grib_handle_of_accessor(a), args, 3); a->length = 0; } -void grib_accessor_class_data_secondary_bitmap_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_data_secondary_bitmap_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_values(dumper, a); } -int grib_accessor_class_data_secondary_bitmap_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_secondary_bitmap_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_secondary_bitmap_t* self = (grib_accessor_data_secondary_bitmap_t*)a; size_t i = 0; @@ -45,7 +47,8 @@ int grib_accessor_class_data_secondary_bitmap_t::unpack_double(grib_accessor* a, size_t secondary_len; double* primary_vals; double* secondary_vals; - err = a->value_count(&nn); n_vals = nn; + err = a->value_count(&nn); + n_vals = nn; if (err) return err; @@ -111,8 +114,9 @@ int grib_accessor_class_data_secondary_bitmap_t::unpack_double(grib_accessor* a, return err; } -int grib_accessor_class_data_secondary_bitmap_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_data_secondary_bitmap_t::get_native_type(grib_accessor* a) +{ // grib_accessor_data_secondary_bitmap_t* self = (grib_accessor_data_secondary_bitmap_t*)a; - //return grib_accessor_get_native_type(grib_find_accessor(grib_handle_of_accessor(a),self->coded_values)); + // return grib_accessor_get_native_type(grib_find_accessor(grib_handle_of_accessor(a),self->coded_values)); return GRIB_TYPE_DOUBLE; } diff --git a/src/accessor/grib_accessor_class_data_sh_packed.cc b/src/accessor/grib_accessor_class_data_sh_packed.cc index 80bc7648f..e1d3044f7 100644 --- a/src/accessor/grib_accessor_class_data_sh_packed.cc +++ b/src/accessor/grib_accessor_class_data_sh_packed.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -12,17 +11,18 @@ #include "grib_accessor_class_data_sh_packed.h" #include "grib_scaling.h" -grib_accessor_class_data_sh_packed_t _grib_accessor_class_data_sh_packed{"data_sh_packed"}; +grib_accessor_class_data_sh_packed_t _grib_accessor_class_data_sh_packed{ "data_sh_packed" }; grib_accessor_class* grib_accessor_class_data_sh_packed = &_grib_accessor_class_data_sh_packed; typedef unsigned long (*encode_float_proc)(double); typedef double (*decode_float_proc)(unsigned long); -void grib_accessor_class_data_sh_packed_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_sh_packed_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_simple_packing_t::init(a, v, args); grib_accessor_data_sh_packed_t* self = (grib_accessor_data_sh_packed_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); self->GRIBEX_sh_bug_present = grib_arguments_get_name(hand, args, self->carg++); self->ieee_floats = grib_arguments_get_name(hand, args, self->carg++); @@ -39,11 +39,12 @@ void grib_accessor_class_data_sh_packed_t::init(grib_accessor* a, const long v, a->length = 0; } -int grib_accessor_class_data_sh_packed_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_data_sh_packed_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_data_sh_packed_t* self = (grib_accessor_data_sh_packed_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - int ret = 0; - const char* cclass_name = a->cclass->name; + grib_handle* hand = grib_handle_of_accessor(a); + int ret = 0; + const char* cclass_name = a->cclass->name; long sub_j = 0; long sub_k = 0; @@ -75,42 +76,44 @@ int grib_accessor_class_data_sh_packed_t::value_count(grib_accessor* a, long* co return ret; } -int grib_accessor_class_data_sh_packed_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_sh_packed_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_sh_packed_t* self = (grib_accessor_data_sh_packed_t*)a; - size_t i = 0; - int ret = GRIB_SUCCESS; + size_t i = 0; + int ret = GRIB_SUCCESS; // long lup = 0; long hcount = 0, lcount = 0, hpos = 0, mmax = 0, n_vals = 0; double* scals = NULL; /* double *pscals=NULL; */ double s = 0, d = 0, laplacianOperator = 0; - unsigned char* buf = NULL; - unsigned char* hres = NULL; - unsigned char* lres = NULL; + unsigned char* buf = NULL; + unsigned char* hres = NULL; + unsigned char* lres = NULL; unsigned long packed_offset; long lpos = 0; long maxv = 0; long GRIBEX_sh_bug_present = 0; long ieee_floats = 0; - long offsetdata = 0; - long bits_per_value = 0; - double reference_value = 0; - long binary_scale_factor = 0; - long decimal_scale_factor = 0; + long offsetdata = 0; + long bits_per_value = 0; + double reference_value = 0; + long binary_scale_factor = 0; + long decimal_scale_factor = 0; long sub_j = 0, sub_k = 0, sub_m = 0, pen_j = 0, pen_k = 0, pen_m = 0; double operat = 0; - int bytes = 0; - int err = 0; + int bytes = 0; + int err = 0; decode_float_proc decode_float = NULL; n_vals = 0; - err = a->value_count(&n_vals); if (err) + err = a->value_count(&n_vals); + if (err) return err; if (*len < n_vals) { @@ -191,7 +194,7 @@ int grib_accessor_class_data_sh_packed_t::unpack_double(grib_accessor* a, double d = codes_power(-decimal_scale_factor, 10); scals = (double*)grib_context_malloc(a->context, maxv * sizeof(double)); - if(!scals) return GRIB_OUT_OF_MEMORY; + if (!scals) return GRIB_OUT_OF_MEMORY; scals[0] = 0; for (i = 1; i < maxv; i++) { diff --git a/src/accessor/grib_accessor_class_data_sh_unpacked.cc b/src/accessor/grib_accessor_class_data_sh_unpacked.cc index efa738c65..6a95eebb1 100644 --- a/src/accessor/grib_accessor_class_data_sh_unpacked.cc +++ b/src/accessor/grib_accessor_class_data_sh_unpacked.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -12,17 +11,18 @@ #include "grib_accessor_class_data_sh_unpacked.h" #include "grib_scaling.h" -grib_accessor_class_data_sh_unpacked_t _grib_accessor_class_data_sh_unpacked{"data_sh_unpacked"}; +grib_accessor_class_data_sh_unpacked_t _grib_accessor_class_data_sh_unpacked{ "data_sh_unpacked" }; grib_accessor_class* grib_accessor_class_data_sh_unpacked = &_grib_accessor_class_data_sh_unpacked; typedef unsigned long (*encode_float_proc)(double); typedef double (*decode_float_proc)(unsigned long); -void grib_accessor_class_data_sh_unpacked_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_sh_unpacked_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_data_simple_packing_t::init(a, v, args); grib_accessor_data_sh_unpacked_t* self = (grib_accessor_data_sh_unpacked_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); self->GRIBEX_sh_bug_present = grib_arguments_get_name(hand, args, self->carg++); self->ieee_floats = grib_arguments_get_name(hand, args, self->carg++); @@ -39,9 +39,10 @@ void grib_accessor_class_data_sh_unpacked_t::init(grib_accessor* a, const long v a->length = 0; } -int grib_accessor_class_data_sh_unpacked_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_data_sh_unpacked_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_data_sh_unpacked_t* self = (grib_accessor_data_sh_unpacked_t*)a; - int ret = 0; + int ret = 0; long sub_j = 0; long sub_k = 0; @@ -62,7 +63,8 @@ int grib_accessor_class_data_sh_unpacked_t::value_count(grib_accessor* a, long* return ret; } -int grib_accessor_class_data_sh_unpacked_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_sh_unpacked_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_sh_unpacked_t* self = (grib_accessor_data_sh_unpacked_t*)a; size_t i = 0; @@ -110,7 +112,8 @@ int grib_accessor_class_data_sh_unpacked_t::unpack_double(grib_accessor* a, doub decode_float_proc decode_float = NULL; n_vals = 0; - err = a->value_count(&n_vals); if (err) + err = a->value_count(&n_vals); + if (err) return err; if (*len < n_vals) { diff --git a/src/accessor/grib_accessor_class_data_shsimple_packing.cc b/src/accessor/grib_accessor_class_data_shsimple_packing.cc index 0de921d06..7f8b60e14 100644 --- a/src/accessor/grib_accessor_class_data_shsimple_packing.cc +++ b/src/accessor/grib_accessor_class_data_shsimple_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,11 +10,12 @@ #include "grib_accessor_class_data_shsimple_packing.h" -grib_accessor_class_data_shsimple_packing_t _grib_accessor_class_data_shsimple_packing{"data_shsimple_packing"}; +grib_accessor_class_data_shsimple_packing_t _grib_accessor_class_data_shsimple_packing{ "data_shsimple_packing" }; grib_accessor_class* grib_accessor_class_data_shsimple_packing = &_grib_accessor_class_data_shsimple_packing; -void grib_accessor_class_data_shsimple_packing_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_data_shsimple_packing_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, v, args); grib_accessor_data_shsimple_packing_t* self = (grib_accessor_data_shsimple_packing_t*)a; @@ -26,13 +26,15 @@ void grib_accessor_class_data_shsimple_packing_t::init(grib_accessor* a, const l a->length = 0; } -void grib_accessor_class_data_shsimple_packing_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_data_shsimple_packing_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_values(dumper, a); } -int grib_accessor_class_data_shsimple_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_data_shsimple_packing_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_data_shsimple_packing_t* self = (grib_accessor_data_shsimple_packing_t*)a; - int err = GRIB_SUCCESS; + int err = GRIB_SUCCESS; size_t coded_n_vals = *len - 1; size_t n_vals = *len; @@ -55,6 +57,7 @@ int grib_accessor_class_data_shsimple_packing_t::pack_double(grib_accessor* a, c return err; } -int grib_accessor_class_data_shsimple_packing_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_data_shsimple_packing_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_DOUBLE; } diff --git a/src/accessor/grib_accessor_class_g1day_of_the_year_date.cc b/src/accessor/grib_accessor_class_g1day_of_the_year_date.cc index 83d23ea92..9ca30593b 100644 --- a/src/accessor/grib_accessor_class_g1day_of_the_year_date.cc +++ b/src/accessor/grib_accessor_class_g1day_of_the_year_date.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,31 +10,33 @@ #include "grib_accessor_class_g1day_of_the_year_date.h" -grib_accessor_class_g1day_of_the_year_date_t _grib_accessor_class_g1day_of_the_year_date{"g1day_of_the_year_date"}; +grib_accessor_class_g1day_of_the_year_date_t _grib_accessor_class_g1day_of_the_year_date{ "g1day_of_the_year_date" }; grib_accessor_class* grib_accessor_class_g1day_of_the_year_date = &_grib_accessor_class_g1day_of_the_year_date; - -void grib_accessor_class_g1day_of_the_year_date_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g1day_of_the_year_date_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_g1date_t::init(a, l, c); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; } -void grib_accessor_class_g1day_of_the_year_date_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_g1day_of_the_year_date_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_string(dumper, a, NULL); } -int grib_accessor_class_g1day_of_the_year_date_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_g1day_of_the_year_date_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ /* special clim case where each mont have 30 days.. to comply with mars*/ grib_accessor_g1day_of_the_year_date_t* self = (grib_accessor_g1day_of_the_year_date_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); char tmp[1024]; - long year = 0; - long century = 0; - long month = 0; - long day = 0; - long fullyear = 0; + long year = 0; + long century = 0; + long month = 0; + long day = 0; + long fullyear = 0; long fake_day_of_year = 0; grib_get_long_internal(hand, self->century, ¢ury); @@ -43,7 +44,7 @@ int grib_accessor_class_g1day_of_the_year_date_t::unpack_string(grib_accessor* a grib_get_long_internal(hand, self->month, &month); grib_get_long_internal(hand, self->year, &year); - fullyear = ((century - 1) * 100 + year); + fullyear = ((century - 1) * 100 + year); fake_day_of_year = ((month - 1) * 30) + day; snprintf(tmp, sizeof(tmp), "%04ld-%03ld", fullyear, fake_day_of_year); diff --git a/src/accessor/grib_accessor_class_g1end_of_interval_monthly.cc b/src/accessor/grib_accessor_class_g1end_of_interval_monthly.cc index ea48fc6cb..3bf953598 100644 --- a/src/accessor/grib_accessor_class_g1end_of_interval_monthly.cc +++ b/src/accessor/grib_accessor_class_g1end_of_interval_monthly.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,14 +10,15 @@ #include "grib_accessor_class_g1end_of_interval_monthly.h" -grib_accessor_class_g1end_of_interval_monthly_t _grib_accessor_class_g1end_of_interval_monthly{"g1end_of_interval_monthly"}; +grib_accessor_class_g1end_of_interval_monthly_t _grib_accessor_class_g1end_of_interval_monthly{ "g1end_of_interval_monthly" }; grib_accessor_class* grib_accessor_class_g1end_of_interval_monthly = &_grib_accessor_class_g1end_of_interval_monthly; -void grib_accessor_class_g1end_of_interval_monthly_t::init(grib_accessor* a, const long l, grib_arguments* c){ +void grib_accessor_class_g1end_of_interval_monthly_t::init(grib_accessor* a, const long l, grib_arguments* c) +{ grib_accessor_class_abstract_vector_t::init(a, l, c); grib_accessor_g1end_of_interval_monthly_t* self = (grib_accessor_g1end_of_interval_monthly_t*)a; - int n = 0; + int n = 0; self->verifyingMonth = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; @@ -26,20 +26,23 @@ void grib_accessor_class_g1end_of_interval_monthly_t::init(grib_accessor* a, con a->flags |= GRIB_ACCESSOR_FLAG_HIDDEN; self->number_of_elements = 6; - self->v = (double*)grib_context_malloc(a->context, sizeof(double) * self->number_of_elements); + self->v = (double*)grib_context_malloc(a->context, sizeof(double) * self->number_of_elements); a->length = 0; a->dirty = 1; } -int grib_accessor_class_g1end_of_interval_monthly_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_g1end_of_interval_monthly_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_g1end_of_interval_monthly_t* self = (grib_accessor_g1end_of_interval_monthly_t*)a; - int ret = 0; - char verifyingMonth[7] = {0,}; + int ret = 0; + char verifyingMonth[7] = { + 0, + }; size_t slen = 7; long year = 0, month = 0, date = 0; const long mdays[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; - long days = 0; + long days = 0; if (!a->dirty) return GRIB_SUCCESS; @@ -50,7 +53,7 @@ int grib_accessor_class_g1end_of_interval_monthly_t::unpack_double(grib_accessor if ((ret = grib_get_string(grib_handle_of_accessor(a), self->verifyingMonth, verifyingMonth, &slen)) != GRIB_SUCCESS) return ret; - date = atoi(verifyingMonth); + date = atoi(verifyingMonth); if (date < 0) { return GRIB_INVALID_ARGUMENT; } @@ -85,19 +88,22 @@ int grib_accessor_class_g1end_of_interval_monthly_t::unpack_double(grib_accessor return ret; } -int grib_accessor_class_g1end_of_interval_monthly_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_g1end_of_interval_monthly_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_g1end_of_interval_monthly_t* self = (grib_accessor_g1end_of_interval_monthly_t*)a; - *count = self->number_of_elements; + *count = self->number_of_elements; return 0; } -void grib_accessor_class_g1end_of_interval_monthly_t::destroy(grib_context* c, grib_accessor* a){ +void grib_accessor_class_g1end_of_interval_monthly_t::destroy(grib_context* c, grib_accessor* a) +{ grib_accessor_g1end_of_interval_monthly_t* self = (grib_accessor_g1end_of_interval_monthly_t*)a; grib_context_free(c, self->v); grib_accessor_class_abstract_vector_t::destroy(c, a); } -int grib_accessor_class_g1end_of_interval_monthly_t::compare(grib_accessor* a, grib_accessor* b){ +int grib_accessor_class_g1end_of_interval_monthly_t::compare(grib_accessor* a, grib_accessor* b) +{ int retval = GRIB_SUCCESS; double* aval = 0; double* bval = 0; @@ -107,11 +113,13 @@ int grib_accessor_class_g1end_of_interval_monthly_t::compare(grib_accessor* a, g size_t blen = 0; int err = 0; - err = a->value_count(&count); if (err) + err = a->value_count(&count); + if (err) return err; alen = count; - err = b->value_count(&count); if (err) + err = b->value_count(&count); + if (err) return err; blen = count; @@ -124,8 +132,9 @@ int grib_accessor_class_g1end_of_interval_monthly_t::compare(grib_accessor* a, g b->dirty = 1; a->dirty = 1; - err = a->unpack_double(aval, &alen); err = b->unpack_double(bval, &blen); - for(size_t i=0; iunpack_double(aval, &alen); + err = b->unpack_double(bval, &blen); + for (size_t i = 0; i < alen && retval == GRIB_SUCCESS; ++i) { if (aval[i] != bval[i]) retval = GRIB_DOUBLE_VALUE_MISMATCH; } diff --git a/src/accessor/grib_accessor_class_gds_not_present_bitmap.cc b/src/accessor/grib_accessor_class_gds_not_present_bitmap.cc index 6691e2fea..976f7e5b7 100644 --- a/src/accessor/grib_accessor_class_gds_not_present_bitmap.cc +++ b/src/accessor/grib_accessor_class_gds_not_present_bitmap.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,16 @@ #include "grib_accessor_class_gds_not_present_bitmap.h" -grib_accessor_class_gds_not_present_bitmap_t _grib_accessor_class_gds_not_present_bitmap{"gds_not_present_bitmap"}; +grib_accessor_class_gds_not_present_bitmap_t _grib_accessor_class_gds_not_present_bitmap{ "gds_not_present_bitmap" }; grib_accessor_class* grib_accessor_class_gds_not_present_bitmap = &_grib_accessor_class_gds_not_present_bitmap; -void grib_accessor_class_gds_not_present_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args){ +void grib_accessor_class_gds_not_present_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args) +{ grib_accessor_class_gen_t::init(a, v, args); - int n = 0; + int n = 0; grib_accessor_gds_not_present_bitmap_t* self = (grib_accessor_gds_not_present_bitmap_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); self->missing_value = grib_arguments_get_name(hand, args, n++); self->number_of_values = grib_arguments_get_name(hand, args, n++); @@ -29,15 +29,17 @@ void grib_accessor_class_gds_not_present_bitmap_t::init(grib_accessor* a, const a->length = 0; } -int grib_accessor_class_gds_not_present_bitmap_t::value_count(grib_accessor* a, long* number_of_points){ +int grib_accessor_class_gds_not_present_bitmap_t::value_count(grib_accessor* a, long* number_of_points) +{ grib_accessor_gds_not_present_bitmap_t* self = (grib_accessor_gds_not_present_bitmap_t*)a; - *number_of_points = 0; + *number_of_points = 0; return grib_get_long_internal(grib_handle_of_accessor(a), self->number_of_points, number_of_points); } -int grib_accessor_class_gds_not_present_bitmap_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_gds_not_present_bitmap_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_gds_not_present_bitmap_t* self = (grib_accessor_gds_not_present_bitmap_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); + grib_handle* hand = grib_handle_of_accessor(a); long number_of_points = 0, number_of_values = 0, ni = 0; long latitude_of_first_point = 0; @@ -47,8 +49,8 @@ int grib_accessor_class_gds_not_present_bitmap_t::unpack_double(grib_accessor* a long missing_value; double* coded_vals = NULL; - int err = a->value_count(&nn); - n_vals = nn; + int err = a->value_count(&nn); + n_vals = nn; if (err) return err; @@ -98,12 +100,14 @@ int grib_accessor_class_gds_not_present_bitmap_t::unpack_double(grib_accessor* a return err; } -int grib_accessor_class_gds_not_present_bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_gds_not_present_bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ // See deprecated/grib_accessor_class_gds_not_present_bitmap.cc for // a possible implementation return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_gds_not_present_bitmap_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_gds_not_present_bitmap_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_DOUBLE; } From 86dc278ee3406c41a477277e0d9649c2334eaf4f Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 31 Jul 2024 13:27:52 +0100 Subject: [PATCH 121/277] Formatting and cleanups --- .../grib_accessor_class_bufr_data_array.cc | 40 ++++++++++++------- .../grib_accessor_class_bufr_group.cc | 6 +-- ..._accessor_class_data_g1shsimple_packing.cc | 16 ++++---- .../grib_accessor_class_g1fcperiod.cc | 10 ++--- 4 files changed, 42 insertions(+), 30 deletions(-) diff --git a/src/accessor/grib_accessor_class_bufr_data_array.cc b/src/accessor/grib_accessor_class_bufr_data_array.cc index 0bd2c2c0f..b0b0dc50a 100644 --- a/src/accessor/grib_accessor_class_bufr_data_array.cc +++ b/src/accessor/grib_accessor_class_bufr_data_array.cc @@ -163,7 +163,8 @@ static int check_overridden_reference_values(const grib_context* c, long* refVal #define DYN_ARRAY_SIZE_INIT 1000 /* Initial size for grib_iarray_new and grib_darray_new */ #define DYN_ARRAY_SIZE_INCR 1000 /* Increment size for grib_iarray_new and grib_darray_new */ -void grib_accessor_class_bufr_data_array_t::init(grib_accessor* a, const long v, grib_arguments* params){ +void grib_accessor_class_bufr_data_array_t::init(grib_accessor* a, const long v, grib_arguments* params) +{ grib_accessor_class_gen_t::init(a, v, params); grib_accessor_bufr_data_array_t* self = (grib_accessor_bufr_data_array_t*)a; int n = 0; @@ -228,7 +229,8 @@ static int check_end_data(grib_context* c, bufr_descriptor* bd, grib_accessor_bu return 0; } -void self_clear(grib_context* c, grib_accessor_bufr_data_array_t* self){ +void self_clear(grib_context* c, grib_accessor_bufr_data_array_t* self) +{ grib_context_free(c, self->canBeMissing); grib_vdarray_delete_content(c, self->numericValues); grib_vdarray_delete(c, self->numericValues); @@ -257,30 +259,36 @@ void self_clear(grib_context* c, grib_accessor_bufr_data_array_t* self){ if (self->inputBitmap) grib_context_free(c, self->inputBitmap); } -int grib_accessor_class_bufr_data_array_t::get_native_type(grib_accessor* a){ +int grib_accessor_class_bufr_data_array_t::get_native_type(grib_accessor* a) +{ return GRIB_TYPE_DOUBLE; } -long grib_accessor_class_bufr_data_array_t::byte_count(grib_accessor* a){ +long grib_accessor_class_bufr_data_array_t::byte_count(grib_accessor* a) +{ return 0; } -long grib_accessor_class_bufr_data_array_t::byte_offset(grib_accessor* a){ +long grib_accessor_class_bufr_data_array_t::byte_offset(grib_accessor* a) +{ return a->offset; } -long grib_accessor_class_bufr_data_array_t::next_offset(grib_accessor* a){ +long grib_accessor_class_bufr_data_array_t::next_offset(grib_accessor* a) +{ return a->offset; } -int grib_accessor_class_bufr_data_array_t::pack_long(grib_accessor* a, const long* val, size_t* len){ +int grib_accessor_class_bufr_data_array_t::pack_long(grib_accessor* a, const long* val, size_t* len) +{ grib_accessor_bufr_data_array_t* self = (grib_accessor_bufr_data_array_t*)a; self->do_decode = 1; return GRIB_NOT_IMPLEMENTED; } -int grib_accessor_class_bufr_data_array_t::pack_double(grib_accessor* a, const double* val, size_t* len){ +int grib_accessor_class_bufr_data_array_t::pack_double(grib_accessor* a, const double* val, size_t* len) +{ grib_accessor_bufr_data_array_t* self = (grib_accessor_bufr_data_array_t*)a; self->do_decode = 1; return process_elements(a, PROCESS_ENCODE, 0, 0, 0); @@ -536,7 +544,8 @@ static int encode_string_array(grib_context* c, grib_buffer* buff, long* pos, bu return err; } -void set_missing_long_to_double(grib_darray* dvalues){ +void set_missing_long_to_double(grib_darray* dvalues) +{ size_t i, n = grib_darray_used_size(dvalues); for (i = 0; i < n; i++) { if (dvalues->v[i] == GRIB_MISSING_LONG) @@ -3166,14 +3175,15 @@ static int process_elements(grib_accessor* a, int flag, long onlySubset, long st return err; } -void grib_accessor_class_bufr_data_array_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_bufr_data_array_t::dump(grib_accessor* a, grib_dumper* dumper) +{ // grib_accessor_bufr_data_array_t *self =(grib_accessor_bufr_data_array_t*)a; // int err=process_elements(a,PROCESS_DECODE); // grib_dump_section(dumper,a,self->dataKeys->block); - return; } -int grib_accessor_class_bufr_data_array_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_bufr_data_array_t::value_count(grib_accessor* a, long* count) +{ int err = 0, l; long i; grib_accessor_bufr_data_array_t* self = (grib_accessor_bufr_data_array_t*)a; @@ -3196,7 +3206,8 @@ int grib_accessor_class_bufr_data_array_t::value_count(grib_accessor* a, long* c return err; } -int grib_accessor_class_bufr_data_array_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_bufr_data_array_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ int err = 0, i, k, ii; int proc_flag = PROCESS_DECODE; size_t l = 0, elementsInSubset; @@ -3249,7 +3260,8 @@ int grib_accessor_class_bufr_data_array_t::unpack_double(grib_accessor* a, doubl return GRIB_SUCCESS; } -void grib_accessor_class_bufr_data_array_t::destroy(grib_context* c, grib_accessor* a){ +void grib_accessor_class_bufr_data_array_t::destroy(grib_context* c, grib_accessor* a) +{ grib_accessor_bufr_data_array_t* self = (grib_accessor_bufr_data_array_t*)a; self_clear(c, self); if (self->dataAccessors) diff --git a/src/accessor/grib_accessor_class_bufr_group.cc b/src/accessor/grib_accessor_class_bufr_group.cc index 71249f70d..e5b7a0841 100644 --- a/src/accessor/grib_accessor_class_bufr_group.cc +++ b/src/accessor/grib_accessor_class_bufr_group.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,11 +10,12 @@ #include "grib_accessor_class_bufr_group.h" -grib_accessor_class_bufr_group_t _grib_accessor_class_bufr_group{"bufr_group"}; +grib_accessor_class_bufr_group_t _grib_accessor_class_bufr_group{ "bufr_group" }; grib_accessor_class* grib_accessor_class_bufr_group = &_grib_accessor_class_bufr_group; -void grib_accessor_class_bufr_group_t::dump(grib_accessor* a, grib_dumper* dumper){ +void grib_accessor_class_bufr_group_t::dump(grib_accessor* a, grib_dumper* dumper) +{ grib_dump_section(dumper, a, a->sub_section->block); } diff --git a/src/accessor/grib_accessor_class_data_g1shsimple_packing.cc b/src/accessor/grib_accessor_class_data_g1shsimple_packing.cc index f1f06d654..0cf00e74c 100644 --- a/src/accessor/grib_accessor_class_data_g1shsimple_packing.cc +++ b/src/accessor/grib_accessor_class_data_g1shsimple_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,15 +10,15 @@ #include "grib_accessor_class_data_g1shsimple_packing.h" -grib_accessor_class_data_g1shsimple_packing_t _grib_accessor_class_data_g1shsimple_packing{"data_g1shsimple_packing"}; +grib_accessor_class_data_g1shsimple_packing_t _grib_accessor_class_data_g1shsimple_packing{ "data_g1shsimple_packing" }; grib_accessor_class* grib_accessor_class_data_g1shsimple_packing = &_grib_accessor_class_data_g1shsimple_packing; - -int grib_accessor_class_data_g1shsimple_packing_t::value_count(grib_accessor* a, long* count){ +int grib_accessor_class_data_g1shsimple_packing_t::value_count(grib_accessor* a, long* count) +{ grib_accessor_data_g1shsimple_packing_t* self = (grib_accessor_data_g1shsimple_packing_t*)a; - size_t len = 0; - int err = 0; + size_t len = 0; + int err = 0; err = grib_get_size(grib_handle_of_accessor(a), self->coded_values, &len); len += 1; @@ -28,9 +27,10 @@ int grib_accessor_class_data_g1shsimple_packing_t::value_count(grib_accessor* a, return err; } -int grib_accessor_class_data_g1shsimple_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len){ +int grib_accessor_class_data_g1shsimple_packing_t::unpack_double(grib_accessor* a, double* val, size_t* len) +{ grib_accessor_data_g1shsimple_packing_t* self = (grib_accessor_data_g1shsimple_packing_t*)a; - int err = GRIB_SUCCESS; + int err = GRIB_SUCCESS; size_t coded_n_vals = 0; size_t n_vals = 0; diff --git a/src/accessor/grib_accessor_class_g1fcperiod.cc b/src/accessor/grib_accessor_class_g1fcperiod.cc index fcf98d78d..454a684d0 100644 --- a/src/accessor/grib_accessor_class_g1fcperiod.cc +++ b/src/accessor/grib_accessor_class_g1fcperiod.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -11,16 +10,17 @@ #include "grib_accessor_class_g1fcperiod.h" -grib_accessor_class_g1fcperiod_t _grib_accessor_class_g1fcperiod{"g1fcperiod"}; +grib_accessor_class_g1fcperiod_t _grib_accessor_class_g1fcperiod{ "g1fcperiod" }; grib_accessor_class* grib_accessor_class_g1fcperiod = &_grib_accessor_class_g1fcperiod; -int grib_accessor_class_g1fcperiod_t::unpack_string(grib_accessor* a, char* val, size_t* len){ +int grib_accessor_class_g1fcperiod_t::unpack_string(grib_accessor* a, char* val, size_t* len) +{ long start = 0, theEnd = 0; char tmp[1024]; const size_t tmpLen = sizeof(tmp); - int err = grib_g1_step_get_steps(a, &start, &theEnd); - size_t l = 0; + int err = grib_g1_step_get_steps(a, &start, &theEnd); + size_t l = 0; if (err) return err; From ec1a3a10f50aca73789ed3ca7409dc2d63a31bd3 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 31 Jul 2024 15:32:54 +0100 Subject: [PATCH 122/277] Regression test suite: For tests use the git repo and for DATA/REF point to elsewhere --- .github/ci-nightly-test.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/ci-nightly-test.sh b/.github/ci-nightly-test.sh index c2d17b709..4052a07c0 100644 --- a/.github/ci-nightly-test.sh +++ b/.github/ci-nightly-test.sh @@ -18,13 +18,13 @@ version=$(cat $TMPDIR/eccodes/VERSION) # The environment variable "GH_TOKEN" needs to be there for the clone to succeed # -#regression_suite_dir=$TMPDIR/eccodes-regression-tests -#mkdir -p $regression_suite_dir -#git clone https://${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir -#cd $regression_suite_dir +regression_suite_dir=$TMPDIR/eccodes-regression-tests +mkdir -p $regression_suite_dir +git clone https://${GH_TOKEN}@github.com/ecmwf/eccodes-regression-tests.git $regression_suite_dir +cd $regression_suite_dir # Launch the regression tests in parallel (This script uses GNU parallel) -cd ~masn/REGRESSION_TESTING/ecCodes +# cd ~masn/REGRESSION_TESTING/ecCodes ./par-suite.sh -w $TMPDIR/install/eccodes/$version # For debugging specific test(s) From 4f35b2ac2088f7a2775912b23cef18195b6218d2 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Thu, 1 Aug 2024 14:05:07 +0000 Subject: [PATCH 123/277] Filter: 'contains' for string keys to mimic strstr/strcasestr --- src/grib_expression_class_functor.cc | 28 +++++++++++++++++++++++ tests/CMakeLists.txt | 1 + tests/filter_contains.sh | 34 ++++++++++++++++++++++++++++ 3 files changed, 63 insertions(+) create mode 100755 tests/filter_contains.sh diff --git a/src/grib_expression_class_functor.cc b/src/grib_expression_class_functor.cc index f335966a0..1185338e7 100644 --- a/src/grib_expression_class_functor.cc +++ b/src/grib_expression_class_functor.cc @@ -168,6 +168,34 @@ static int evaluate_long(grib_expression* g, grib_handle* h, long* lres) return GRIB_SUCCESS; } + if (STR_EQUAL(e->name, "contains")) { + *lres = 0; + const int n = grib_arguments_get_count(e->args); + if (n != 3) return GRIB_INVALID_ARGUMENT; + const char* keyName = grib_arguments_get_name(h, e->args, 0); + if (!keyName) return GRIB_INVALID_ARGUMENT; + int type = 0; + int err = grib_get_native_type(h, keyName, &type); + if (err) return err; + if (type == GRIB_TYPE_STRING) { + char keyValue[254] = {0,}; + size_t len = sizeof(keyValue); + err = grib_get_string(h, keyName, keyValue, &len); + if (err) return err; + const char* sValue = grib_arguments_get_string(h, e->args, 1); + const bool case_sens = grib_arguments_get_long(h, e->args, 2) != 0; + const bool contains = case_sens? strcasestr(keyValue, sValue) : strstr(keyValue, sValue); + if (sValue && contains) { + *lres = 1; + return GRIB_SUCCESS; + } + } else { + // For now only keys of type string supported + return GRIB_INVALID_ARGUMENT; + } + return GRIB_SUCCESS; + } + if (STR_EQUAL(e->name, "is_one_of")) { *lres = 0; const char* keyName = grib_arguments_get_name(h, e->args, 0); diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 755a84654..b6194fc61 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -104,6 +104,7 @@ if( HAVE_BUILD_TOOLS ) grib_ifsParam grib_packing_order filter_substr + filter_contains filter_size filter_is_one_of filter_is_in_list diff --git a/tests/filter_contains.sh b/tests/filter_contains.sh new file mode 100755 index 000000000..681bc3906 --- /dev/null +++ b/tests/filter_contains.sh @@ -0,0 +1,34 @@ +#!/bin/sh +# (C) Copyright 2005- ECMWF. +# +# This software is licensed under the terms of the Apache Licence Version 2.0 +# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. +# +# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by +# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. +# + +. ./include.ctest.sh + +label="filter_contains_test" +tempFilt=temp.$label.txt +sample=$ECCODES_SAMPLES_PATH/GRIB2.tmpl + +# The contains functor: +# 1st argument: Key name (haystack) +# 2nd argument: string (needle) +# 3rd argument 0=case-sensitive, 1=case-insensitive +# +cat > $tempFilt < Date: Thu, 1 Aug 2024 14:44:58 +0000 Subject: [PATCH 124/277] Fix Windows build --- src/grib_expression_class_functor.cc | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/grib_expression_class_functor.cc b/src/grib_expression_class_functor.cc index 1185338e7..44b728662 100644 --- a/src/grib_expression_class_functor.cc +++ b/src/grib_expression_class_functor.cc @@ -71,6 +71,29 @@ grib_expression_class* grib_expression_class_functor = &_grib_expression_class_f /* END_CLASS_IMP */ + +#ifdef ECCODES_ON_WINDOWS +// Windows does not have strcasestr +static char* strcasestr(const char *haystack, const char* needle) +{ + char c, sc; + size_t len = 0; + + if ((c = *needle++) != 0) { + c = tolower((unsigned char)c); + len = strlen(needle); + do { + do { + if ((sc = *haystack++) == 0) + return (NULL); + } while ((char)tolower((unsigned char)sc) != c); + } while (strncasecmp(haystack, needle, len) != 0); + haystack--; + } + return ((char *)haystack); +} +#endif + static int evaluate_long(grib_expression* g, grib_handle* h, long* lres) { grib_expression_functor* e = (grib_expression_functor*)g; From 43dac51b42cd518bd006d08fc4c5c4064339befd Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Thu, 1 Aug 2024 15:05:12 +0000 Subject: [PATCH 125/277] Fix Windows build (take 2) --- src/grib_expression_class_functor.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/grib_expression_class_functor.cc b/src/grib_expression_class_functor.cc index 44b728662..332d219ce 100644 --- a/src/grib_expression_class_functor.cc +++ b/src/grib_expression_class_functor.cc @@ -87,7 +87,7 @@ static char* strcasestr(const char *haystack, const char* needle) if ((sc = *haystack++) == 0) return (NULL); } while ((char)tolower((unsigned char)sc) != c); - } while (strncasecmp(haystack, needle, len) != 0); + } while (_strnicmp(haystack, needle, len) != 0); haystack--; } return ((char *)haystack); From 4b60193c0745dc8950adc96c8ca8c4798789d268 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Thu, 1 Aug 2024 15:14:26 +0000 Subject: [PATCH 126/277] ECC-1779: log preprocessing is experimental --- definitions/grib2/template.7.61.def | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/definitions/grib2/template.7.61.def b/definitions/grib2/template.7.61.def index 6f7f3fdd6..fb21838b8 100644 --- a/definitions/grib2/template.7.61.def +++ b/definitions/grib2/template.7.61.def @@ -4,7 +4,7 @@ # Note from WMO document: # This template is experimental, was not validated at the time of publication and should be used only for bilateral previously agreed tests -transient template_is_deprecated = 1 : hidden; +transient template_is_experimental = 1 : hidden; meta codedValues data_g2simple_packing_with_preprocessing( section7Length, From 453c19b97ee0f70a69b006ab4e90048d816717e4 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 31 Jul 2024 14:12:10 +0100 Subject: [PATCH 127/277] ECC-1886: Enable the cf_var_name accessor --- definitions/grib2/parameters.def | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/definitions/grib2/parameters.def b/definitions/grib2/parameters.def index cceae6507..f8157da15 100644 --- a/definitions/grib2/parameters.def +++ b/definitions/grib2/parameters.def @@ -23,12 +23,12 @@ concept cfNameLegacyECMF(defaultShortName,"cfName.legacy.def",conceptsMasterDir, concept cfNameECMF(cfNameLegacyECMF,"cfName.def",conceptsMasterDir,conceptsLocalDirECMF) : no_copy; concept cfName(cfNameECMF,"cfName.def",conceptsDir2,conceptsDir1) : no_copy,dump; -concept cfVarNameLegacyECMF(defaultShortName,"cfVarName.legacy.def",conceptsMasterDir,conceptsLocalDirECMF): no_copy,hidden; -concept cfVarNameECMF (cfVarNameLegacyECMF,"cfVarName.def",conceptsMasterDir,conceptsLocalDirECMF): no_copy; -concept cfVarName (cfVarNameECMF,"cfVarName.def",conceptsDir2,conceptsDir1): no_copy,dump; +# concept cfVarNameLegacyECMF(defaultShortName,"cfVarName.legacy.def",conceptsMasterDir,conceptsLocalDirECMF): no_copy,hidden; +# concept cfVarNameECMF (cfVarNameLegacyECMF,"cfVarName.def",conceptsMasterDir,conceptsLocalDirECMF): no_copy; +# concept cfVarName (cfVarNameECMF,"cfVarName.def",conceptsDir2,conceptsDir1): no_copy,dump; # See ECC-1886 -#meta defaultCfVarName cf_var_name(shortName) : hidden, read_only; -#concept cfVarName (defaultCfVarName, "cfVarName.def", conceptsDir2, conceptsDir1): no_copy,dump; +meta defaultCfVarName cf_var_name(shortName) : hidden, read_only; +concept cfVarName (defaultCfVarName, "cfVarName.def", conceptsDir2, conceptsDir1): no_copy,dump; template_nofail names "grib2/products_[productionStatusOfProcessedData].def"; From f75193d4669a9e17f090a21b15ed987a258839d8 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 2 Aug 2024 11:37:53 +0000 Subject: [PATCH 128/277] ECC-1886: Definitions: cfVarName key should be based on the shortName (with a few exceptions) --- definitions/check_grib_defs.pl | 12 +- definitions/create_def.pl | 89 +- definitions/grib1/cfVarName.def | 1902 -- .../grib1/localConcepts/ecmf/cfVarName.def | 18277 +------------ .../grib1/localConcepts/rjtd/cfVarName.def | 913 +- definitions/grib1/section.1.def | 7 +- definitions/grib2/cfVarName.def | 11443 +------- .../grib2/localConcepts/ecmf/cfVarName.def | 21879 +--------------- .../grib2/localConcepts/kwbc/cfVarName.def | 1896 -- .../grib2/localConcepts/s2s/cfVarName.def | 208 +- .../grib2/localConcepts/tigge/cfVarName.def | 82 +- .../grib2/localConcepts/uerra/cfVarName.def | 358 +- definitions/grib2/parameters.def | 4 +- tests/grib_check_param_concepts.cc | 8 + tests/grib_check_param_concepts.sh | 9 +- 15 files changed, 1023 insertions(+), 56064 deletions(-) diff --git a/definitions/check_grib_defs.pl b/definitions/check_grib_defs.pl index d011680f3..ecce92ac3 100755 --- a/definitions/check_grib_defs.pl +++ b/definitions/check_grib_defs.pl @@ -106,12 +106,12 @@ is_deeply(\%name_map, \%shortName_map, 'Check name and shortName are the same'); is_deeply(\%name_map, \%units_map, 'Check name and units are the same'); -if (-f "cfVarName.def") { - my %cfVar_map = process("cfVarName.def"); - is_deeply(\%name_map, \%cfVar_map, 'Check name and cfVarName are the same'); -} else { - print "\n\tINFO: Did not find a cfVarName.def file!!!\n\n"; -} +#if (-f "cfVarName.def") { +# my %cfVar_map = process("cfVarName.def"); +# is_deeply(\%name_map, \%cfVar_map, 'Check name and cfVarName are the same'); +#} else { +# print "\n\tINFO: Did not find a cfVarName.def file!!!\n\n"; +#} done_testing(); diff --git a/definitions/create_def.pl b/definitions/create_def.pl index 677a189df..6e5ff223a 100755 --- a/definitions/create_def.pl +++ b/definitions/create_def.pl @@ -182,7 +182,93 @@ sub create_def { close(TAR); } - + +sub create_cfVarName { + my $p; my %seen; + my ($key) =@_; + my $field=$key; + + #if ($key =~ /paramId/) { $field="param.id"; } + #if ($key =~ /name/) { $field="param.name"; } + #if ($key =~ /units/) { $field="units.name"; } + if ($key =~ /cfVarName/) { $field="cfVarName"; } + + my $query= <<"EOF"; + select $field,force128,edition, + centre.abbreviation,param_id,attribute.name,attribute_value,param.name,param.shortName + from param,grib_encoding,grib,attribute,centre,units where + param.hide_def=0 and + grib_encoding.id=grib.encoding_id and + param.id=grib_encoding.param_id and + attribute.id=grib.attribute_id and + centre.id=grib_encoding.centre_id and + units.id=param.units_id + and cfVarName IS NOT NULL + order by edition,centre_id,param.o,param.id,grib_encoding.param_version,attribute.o; +EOF + + my $qh=$dbh->prepare($query); + $qh->execute(); + + # file containing the list of grib api parameters files we want to tar and + # distribute to users for them to download and update their list of parameter + # to the latest + #open(TAR,$tarfilesflag ? ">>" : ">","tarfiles.txt") or die "Count not open file tarfiles.txt: $!"; + #$tarfilesflag=1; + + while (my ($keyval,$force128,$edition,$centre,$paramId,$attribute,$value,$name,$shortName)=$qh->fetchrow_array ) + { + if ($centre eq "wmo" ) { $conceptDir=""; } + else { $conceptDir="/localConcepts/$centre"; } + #if ($key =~ /paramId/ && $force128==1 && $keyval >1000) { + # $keyval= $keyval % 1000; + #} + + if ($filebase ne "$basedir/grib$edition$conceptDir") { + if ($filebase) { + print $out "}\n"; + close $out; + } + $filebase="$basedir/grib$edition$conceptDir"; + mkpath($filebase); + + #copy("$filebase/$key.def","$filebase/$key.def.bkp") + # or die ("unable to copy $filebase/$key.def"); + + print TAR "grib$edition$conceptDir/$key.def\n"; + #system("cp -f $filebase/$key.def $filebase/$key.def.orig"); + open($out,"> $filebase/$key.def") + or die "unable to open $filebase/$key.def"; + print $out "# Automatically generated by $0, do not edit\n"; + $p=(); + } + if ($p ne $paramId || exists($seen{$attribute}) ) { + if ($p) { print $out "\t}\n"; } + print $out "#$name\n" ; + print $out "\'".$keyval."\' = {\n" ; + $p=$paramId; + %seen=(); + } + $seen{$attribute}=1; + print "($key=$keyval) $edition,$centre,$shortName,$paramId,$name,$attribute,$value\n"; + # we need to allow strings in the attribute_value field + # for the moment we apply a patch here + if ($attribute =~ /stepType/ ) { + $value="\"accum\""; + } + if ($value eq '') { + $value="missing()"; + } + print $out "\t $attribute = $value ;\n" ; + } + if ($filebase) { + print $out "}\n"; + close $out; + } + + close(TAR); +} + sub create_paramId_def { my $p; my %seen; @@ -270,6 +356,7 @@ sub create_def_old { create_def("shortName"); create_def("name"); create_def("units"); +create_cfVarName("cfVarName"); create_cfName("cfName"); # #create_paramId_def(); diff --git a/definitions/grib1/cfVarName.def b/definitions/grib1/cfVarName.def index 94c685c22..60f679f5d 100644 --- a/definitions/grib1/cfVarName.def +++ b/definitions/grib1/cfVarName.def @@ -1,94 +1,4 @@ # Automatically generated by ./create_def.pl, do not edit -#Stream function -'strf' = { - table2Version = 3 ; - indicatorOfParameter = 35 ; - } -#Stream function -'strf' = { - table2Version = 2 ; - indicatorOfParameter = 35 ; - } -#Stream function -'strf' = { - table2Version = 1 ; - indicatorOfParameter = 35 ; - } -#Velocity potential -'vp' = { - table2Version = 3 ; - indicatorOfParameter = 36 ; - } -#Velocity potential -'vp' = { - table2Version = 2 ; - indicatorOfParameter = 36 ; - } -#Velocity potential -'vp' = { - table2Version = 1 ; - indicatorOfParameter = 36 ; - } -#Potential temperature -'pt' = { - table2Version = 3 ; - indicatorOfParameter = 13 ; - } -#Potential temperature -'pt' = { - table2Version = 2 ; - indicatorOfParameter = 13 ; - } -#Potential temperature -'pt' = { - table2Version = 1 ; - indicatorOfParameter = 13 ; - } -#Wind speed -'ws' = { - table2Version = 3 ; - indicatorOfParameter = 32 ; - } -#Wind speed -'ws' = { - table2Version = 2 ; - indicatorOfParameter = 32 ; - } -#Wind speed -'ws' = { - table2Version = 1 ; - indicatorOfParameter = 32 ; - } -#Pressure -'pres' = { - table2Version = 3 ; - indicatorOfParameter = 1 ; - } -#Pressure -'pres' = { - table2Version = 2 ; - indicatorOfParameter = 1 ; - } -#Pressure -'pres' = { - table2Version = 1 ; - indicatorOfParameter = 1 ; - } -#Potential vorticity -'pv' = { - table2Version = 3 ; - indicatorOfParameter = 4 ; - } -#Potential vorticity -'pv' = { - table2Version = 2 ; - indicatorOfParameter = 4 ; - } -#Potential vorticity -'pv' = { - table2Version = 1 ; - indicatorOfParameter = 4 ; - } #Maximum temperature at 2 metres in the last 6 hours 'mx2t6' = { table2Version = 3 ; @@ -131,189 +41,6 @@ indicatorOfTypeOfLevel = 105 ; level = 2 ; } -#Geopotential -'z' = { - table2Version = 3 ; - indicatorOfParameter = 6 ; - } -#Geopotential -'z' = { - table2Version = 2 ; - indicatorOfParameter = 6 ; - } -#Geopotential -'z' = { - table2Version = 1 ; - indicatorOfParameter = 6 ; - } -#Temperature -'t' = { - table2Version = 3 ; - indicatorOfParameter = 11 ; - } -#Temperature -'t' = { - table2Version = 2 ; - indicatorOfParameter = 11 ; - } -#Temperature -'t' = { - table2Version = 1 ; - indicatorOfParameter = 11 ; - } -#U component of wind -'u' = { - table2Version = 3 ; - indicatorOfParameter = 33 ; - } -#U component of wind -'u' = { - table2Version = 2 ; - indicatorOfParameter = 33 ; - } -#U component of wind -'u' = { - table2Version = 1 ; - indicatorOfParameter = 33 ; - } -#V component of wind -'v' = { - table2Version = 3 ; - indicatorOfParameter = 34 ; - } -#V component of wind -'v' = { - table2Version = 2 ; - indicatorOfParameter = 34 ; - } -#V component of wind -'v' = { - table2Version = 1 ; - indicatorOfParameter = 34 ; - } -#Specific humidity -'q' = { - table2Version = 3 ; - indicatorOfParameter = 51 ; - } -#Specific humidity -'q' = { - table2Version = 2 ; - indicatorOfParameter = 51 ; - } -#Specific humidity -'q' = { - table2Version = 1 ; - indicatorOfParameter = 51 ; - } -#Surface pressure -'sp' = { - table2Version = 3 ; - indicatorOfParameter = 1 ; - indicatorOfTypeOfLevel = 1 ; - } -#Surface pressure -'sp' = { - table2Version = 2 ; - indicatorOfParameter = 1 ; - indicatorOfTypeOfLevel = 1 ; - } -#Surface pressure -'sp' = { - table2Version = 1 ; - indicatorOfParameter = 1 ; - indicatorOfTypeOfLevel = 1 ; - } -#Vertical velocity -'w' = { - table2Version = 3 ; - indicatorOfParameter = 39 ; - } -#Vertical velocity -'w' = { - table2Version = 2 ; - indicatorOfParameter = 39 ; - } -#Vertical velocity -'w' = { - table2Version = 1 ; - indicatorOfParameter = 39 ; - } -#Vorticity (relative) -'vo' = { - table2Version = 3 ; - indicatorOfParameter = 43 ; - } -#Vorticity (relative) -'vo' = { - table2Version = 2 ; - indicatorOfParameter = 43 ; - } -#Vorticity (relative) -'vo' = { - table2Version = 1 ; - indicatorOfParameter = 43 ; - } -#Mean sea level pressure -'msl' = { - table2Version = 3 ; - indicatorOfParameter = 2 ; - } -#Mean sea level pressure -'msl' = { - table2Version = 2 ; - indicatorOfParameter = 2 ; - } -#Mean sea level pressure -'msl' = { - table2Version = 1 ; - indicatorOfParameter = 2 ; - } -#Divergence -'d' = { - table2Version = 3 ; - indicatorOfParameter = 44 ; - } -#Divergence -'d' = { - table2Version = 2 ; - indicatorOfParameter = 44 ; - } -#Divergence -'d' = { - table2Version = 1 ; - indicatorOfParameter = 44 ; - } -#Geopotential height -'gh' = { - table2Version = 3 ; - indicatorOfParameter = 7 ; - } -#Geopotential height -'gh' = { - table2Version = 2 ; - indicatorOfParameter = 7 ; - } -#Geopotential height -'gh' = { - table2Version = 1 ; - indicatorOfParameter = 7 ; - } -#Relative humidity -'r' = { - table2Version = 3 ; - indicatorOfParameter = 52 ; - } -#Relative humidity -'r' = { - table2Version = 2 ; - indicatorOfParameter = 52 ; - } -#Relative humidity -'r' = { - table2Version = 1 ; - indicatorOfParameter = 52 ; - } #10 metre U wind component 'u10' = { table2Version = 3 ; @@ -397,1633 +124,4 @@ indicatorOfParameter = 17 ; indicatorOfTypeOfLevel = 105 ; level = 2 ; - } -#Land-sea mask -'lsm' = { - table2Version = 3 ; - indicatorOfParameter = 81 ; - } -#Land-sea mask -'lsm' = { - table2Version = 2 ; - indicatorOfParameter = 81 ; - } -#Land-sea mask -'lsm' = { - table2Version = 1 ; - indicatorOfParameter = 81 ; - } -#Surface roughness (climatological) -'sr' = { - table2Version = 3 ; - indicatorOfParameter = 83 ; - } -#Surface roughness (climatological) -'sr' = { - table2Version = 2 ; - indicatorOfParameter = 83 ; - } -#Surface roughness (climatological) -'sr' = { - table2Version = 1 ; - indicatorOfParameter = 83 ; - } -#Evaporation -'e' = { - table2Version = 3 ; - indicatorOfParameter = 57 ; - } -#Evaporation -'e' = { - table2Version = 2 ; - indicatorOfParameter = 57 ; - } -#Evaporation -'e' = { - table2Version = 1 ; - indicatorOfParameter = 57 ; - } -#Brightness temperature -'btmp' = { - table2Version = 3 ; - indicatorOfParameter = 118 ; - } -#Brightness temperature -'btmp' = { - table2Version = 2 ; - indicatorOfParameter = 118 ; - } -#Brightness temperature -'btmp' = { - table2Version = 1 ; - indicatorOfParameter = 118 ; - } -#Runoff -'ro' = { - table2Version = 3 ; - indicatorOfParameter = 90 ; - } -#Runoff -'ro' = { - table2Version = 2 ; - indicatorOfParameter = 90 ; - } -#Runoff -'ro' = { - table2Version = 1 ; - indicatorOfParameter = 90 ; - } -#Total column ozone -'tco3' = { - table2Version = 3 ; - indicatorOfParameter = 10 ; - } -#Total column ozone -'tco3' = { - table2Version = 2 ; - indicatorOfParameter = 10 ; - } -#Total column ozone -'tco3' = { - table2Version = 1 ; - indicatorOfParameter = 10 ; - } -#Large-scale precipitation -'lsp' = { - table2Version = 3 ; - indicatorOfParameter = 62 ; - } -#Large-scale precipitation -'lsp' = { - table2Version = 2 ; - indicatorOfParameter = 62 ; - } -#Large-scale precipitation -'lsp' = { - table2Version = 1 ; - indicatorOfParameter = 62 ; - } -#Snow depth -'sde' = { - table2Version = 3 ; - indicatorOfParameter = 66 ; - } -#Snow depth -'sde' = { - table2Version = 2 ; - indicatorOfParameter = 66 ; - } -#Snow depth -'sde' = { - table2Version = 1 ; - indicatorOfParameter = 66 ; - } -#Convective cloud cover -'ccc' = { - table2Version = 3 ; - indicatorOfParameter = 72 ; - } -#Convective cloud cover -'ccc' = { - table2Version = 2 ; - indicatorOfParameter = 72 ; - } -#Convective cloud cover -'ccc' = { - table2Version = 1 ; - indicatorOfParameter = 72 ; - } -#Low cloud cover -'lcc' = { - table2Version = 3 ; - indicatorOfParameter = 73 ; - } -#Low cloud cover -'lcc' = { - table2Version = 2 ; - indicatorOfParameter = 73 ; - } -#Low cloud cover -'lcc' = { - table2Version = 1 ; - indicatorOfParameter = 73 ; - } -#Medium cloud cover -'mcc' = { - table2Version = 3 ; - indicatorOfParameter = 74 ; - } -#Medium cloud cover -'mcc' = { - table2Version = 2 ; - indicatorOfParameter = 74 ; - } -#Medium cloud cover -'mcc' = { - table2Version = 1 ; - indicatorOfParameter = 74 ; - } -#High cloud cover -'hcc' = { - table2Version = 3 ; - indicatorOfParameter = 75 ; - } -#High cloud cover -'hcc' = { - table2Version = 2 ; - indicatorOfParameter = 75 ; - } -#High cloud cover -'hcc' = { - table2Version = 1 ; - indicatorOfParameter = 75 ; - } -#Large scale snow -'lssf' = { - table2Version = 3 ; - indicatorOfParameter = 79 ; - } -#Large scale snow -'lssf' = { - table2Version = 2 ; - indicatorOfParameter = 79 ; - } -#Large scale snow -'lssf' = { - table2Version = 1 ; - indicatorOfParameter = 79 ; - } -#Latent heat flux -'lhf' = { - table2Version = 3 ; - indicatorOfParameter = 121 ; - } -#Latent heat flux -'lhf' = { - table2Version = 2 ; - indicatorOfParameter = 121 ; - } -#Latent heat flux -'lhf' = { - table2Version = 1 ; - indicatorOfParameter = 121 ; - } -#Sensible heat flux -'shf' = { - table2Version = 3 ; - indicatorOfParameter = 122 ; - } -#Sensible heat flux -'shf' = { - table2Version = 2 ; - indicatorOfParameter = 122 ; - } -#Sensible heat flux -'shf' = { - table2Version = 1 ; - indicatorOfParameter = 122 ; - } -#Boundary layer dissipation -'bld' = { - table2Version = 3 ; - indicatorOfParameter = 123 ; - } -#Boundary layer dissipation -'bld' = { - table2Version = 2 ; - indicatorOfParameter = 123 ; - } -#Boundary layer dissipation -'bld' = { - table2Version = 1 ; - indicatorOfParameter = 123 ; - } -#Convective snow -'snoc' = { - table2Version = 3 ; - indicatorOfParameter = 78 ; - } -#Convective snow -'snoc' = { - table2Version = 2 ; - indicatorOfParameter = 78 ; - } -#Convective snow -'snoc' = { - table2Version = 1 ; - indicatorOfParameter = 78 ; - } -#Cloud water -'cwat' = { - table2Version = 3 ; - indicatorOfParameter = 76 ; - } -#Cloud water -'cwat' = { - table2Version = 2 ; - indicatorOfParameter = 76 ; - } -#Cloud water -'cwat' = { - table2Version = 1 ; - indicatorOfParameter = 76 ; - } -#Forecast albedo -'al' = { - table2Version = 3 ; - indicatorOfParameter = 84 ; - } -#Forecast albedo -'al' = { - table2Version = 2 ; - indicatorOfParameter = 84 ; - } -#Forecast albedo -'al' = { - table2Version = 1 ; - indicatorOfParameter = 84 ; - } -#Virtual temperature -'vtmp' = { - table2Version = 3 ; - indicatorOfParameter = 12 ; - } -#Virtual temperature -'vtmp' = { - table2Version = 2 ; - indicatorOfParameter = 12 ; - } -#Virtual temperature -'vtmp' = { - table2Version = 1 ; - indicatorOfParameter = 12 ; - } -#Pressure tendency -'ptend' = { - table2Version = 3 ; - indicatorOfParameter = 3 ; - } -#Pressure tendency -'ptend' = { - table2Version = 2 ; - indicatorOfParameter = 3 ; - } -#Pressure tendency -'ptend' = { - table2Version = 1 ; - indicatorOfParameter = 3 ; - } -#ICAO Standard Atmosphere reference height -'icaht' = { - table2Version = 3 ; - indicatorOfParameter = 5 ; - } -#ICAO Standard Atmosphere reference height -'icaht' = { - table2Version = 2 ; - indicatorOfParameter = 5 ; - } -#ICAO Standard Atmosphere reference height -'icaht' = { - table2Version = 1 ; - indicatorOfParameter = 5 ; - } -#Geometrical height -'h' = { - table2Version = 3 ; - indicatorOfParameter = 8 ; - } -#Geometrical height -'h' = { - table2Version = 2 ; - indicatorOfParameter = 8 ; - } -#Geometrical height -'h' = { - table2Version = 1 ; - indicatorOfParameter = 8 ; - } -#Standard deviation of height -'hstdv' = { - table2Version = 3 ; - indicatorOfParameter = 9 ; - } -#Standard deviation of height -'hstdv' = { - table2Version = 2 ; - indicatorOfParameter = 9 ; - } -#Standard deviation of height -'hstdv' = { - table2Version = 1 ; - indicatorOfParameter = 9 ; - } -#Pseudo-adiabatic potential temperature -'papt' = { - table2Version = 3 ; - indicatorOfParameter = 14 ; - } -#Pseudo-adiabatic potential temperature -'papt' = { - table2Version = 2 ; - indicatorOfParameter = 14 ; - } -#Pseudo-adiabatic potential temperature -'papt' = { - table2Version = 1 ; - indicatorOfParameter = 14 ; - } -#Maximum temperature -'tmax' = { - table2Version = 3 ; - indicatorOfParameter = 15 ; - } -#Maximum temperature -'tmax' = { - table2Version = 2 ; - indicatorOfParameter = 15 ; - } -#Maximum temperature -'tmax' = { - table2Version = 1 ; - indicatorOfParameter = 15 ; - } -#Minimum temperature -'tmin' = { - table2Version = 3 ; - indicatorOfParameter = 16 ; - } -#Minimum temperature -'tmin' = { - table2Version = 2 ; - indicatorOfParameter = 16 ; - } -#Minimum temperature -'tmin' = { - table2Version = 1 ; - indicatorOfParameter = 16 ; - } -#Dew point temperature -'dpt' = { - table2Version = 3 ; - indicatorOfParameter = 17 ; - } -#Dew point temperature -'dpt' = { - table2Version = 2 ; - indicatorOfParameter = 17 ; - } -#Dew point temperature -'dpt' = { - table2Version = 1 ; - indicatorOfParameter = 17 ; - } -#Dew point depression (or deficit) -'depr' = { - table2Version = 3 ; - indicatorOfParameter = 18 ; - } -#Dew point depression (or deficit) -'depr' = { - table2Version = 2 ; - indicatorOfParameter = 18 ; - } -#Dew point depression (or deficit) -'depr' = { - table2Version = 1 ; - indicatorOfParameter = 18 ; - } -#Lapse rate -'lapr' = { - table2Version = 3 ; - indicatorOfParameter = 19 ; - } -#Lapse rate -'lapr' = { - table2Version = 2 ; - indicatorOfParameter = 19 ; - } -#Lapse rate -'lapr' = { - table2Version = 1 ; - indicatorOfParameter = 19 ; - } -#Visibility -'vis' = { - table2Version = 3 ; - indicatorOfParameter = 20 ; - } -#Visibility -'vis' = { - table2Version = 2 ; - indicatorOfParameter = 20 ; - } -#Visibility -'vis' = { - table2Version = 1 ; - indicatorOfParameter = 20 ; - } -#Radar spectra (1) -'rdsp1' = { - table2Version = 3 ; - indicatorOfParameter = 21 ; - } -#Radar spectra (1) -'rdsp1' = { - table2Version = 2 ; - indicatorOfParameter = 21 ; - } -#Radar spectra (1) -'rdsp1' = { - table2Version = 1 ; - indicatorOfParameter = 21 ; - } -#Radar spectra (2) -'rdsp2' = { - table2Version = 3 ; - indicatorOfParameter = 22 ; - } -#Radar spectra (2) -'rdsp2' = { - table2Version = 2 ; - indicatorOfParameter = 22 ; - } -#Radar spectra (2) -'rdsp2' = { - table2Version = 1 ; - indicatorOfParameter = 22 ; - } -#Radar spectra (3) -'rdsp3' = { - table2Version = 3 ; - indicatorOfParameter = 23 ; - } -#Radar spectra (3) -'rdsp3' = { - table2Version = 2 ; - indicatorOfParameter = 23 ; - } -#Radar spectra (3) -'rdsp3' = { - table2Version = 1 ; - indicatorOfParameter = 23 ; - } -#Parcel lifted index (to 500 hPa) -'pli' = { - table2Version = 3 ; - indicatorOfParameter = 24 ; - } -#Parcel lifted index (to 500 hPa) -'pli' = { - table2Version = 2 ; - indicatorOfParameter = 24 ; - } -#Parcel lifted index (to 500 hPa) -'pli' = { - table2Version = 1 ; - indicatorOfParameter = 24 ; - } -#Temperature anomaly -'ta' = { - table2Version = 3 ; - indicatorOfParameter = 25 ; - } -#Temperature anomaly -'ta' = { - table2Version = 2 ; - indicatorOfParameter = 25 ; - } -#Temperature anomaly -'ta' = { - table2Version = 1 ; - indicatorOfParameter = 25 ; - } -#Pressure anomaly -'presa' = { - table2Version = 3 ; - indicatorOfParameter = 26 ; - } -#Pressure anomaly -'presa' = { - table2Version = 2 ; - indicatorOfParameter = 26 ; - } -#Pressure anomaly -'presa' = { - table2Version = 1 ; - indicatorOfParameter = 26 ; - } -#Geopotential height anomaly -'gpa' = { - table2Version = 3 ; - indicatorOfParameter = 27 ; - } -#Geopotential height anomaly -'gpa' = { - table2Version = 2 ; - indicatorOfParameter = 27 ; - } -#Geopotential height anomaly -'gpa' = { - table2Version = 1 ; - indicatorOfParameter = 27 ; - } -#Wave spectra (1) -'wvsp1' = { - table2Version = 3 ; - indicatorOfParameter = 28 ; - } -#Wave spectra (1) -'wvsp1' = { - table2Version = 2 ; - indicatorOfParameter = 28 ; - } -#Wave spectra (1) -'wvsp1' = { - table2Version = 1 ; - indicatorOfParameter = 28 ; - } -#Wave spectra (2) -'wvsp2' = { - table2Version = 3 ; - indicatorOfParameter = 29 ; - } -#Wave spectra (2) -'wvsp2' = { - table2Version = 2 ; - indicatorOfParameter = 29 ; - } -#Wave spectra (2) -'wvsp2' = { - table2Version = 1 ; - indicatorOfParameter = 29 ; - } -#Wave spectra (3) -'wvsp3' = { - table2Version = 3 ; - indicatorOfParameter = 30 ; - } -#Wave spectra (3) -'wvsp3' = { - table2Version = 2 ; - indicatorOfParameter = 30 ; - } -#Wave spectra (3) -'wvsp3' = { - table2Version = 1 ; - indicatorOfParameter = 30 ; - } -#Wind direction -'wdir' = { - table2Version = 3 ; - indicatorOfParameter = 31 ; - } -#Wind direction -'wdir' = { - table2Version = 2 ; - indicatorOfParameter = 31 ; - } -#Wind direction -'wdir' = { - table2Version = 1 ; - indicatorOfParameter = 31 ; - } -#Montgomery stream Function -'mntsf' = { - table2Version = 3 ; - indicatorOfParameter = 37 ; - } -#Montgomery stream Function -'mntsf' = { - table2Version = 2 ; - indicatorOfParameter = 37 ; - } -#Montgomery stream Function -'mntsf' = { - table2Version = 1 ; - indicatorOfParameter = 37 ; - } -#Sigma coordinate vertical velocity -'sgcvv' = { - table2Version = 3 ; - indicatorOfParameter = 38 ; - } -#Sigma coordinate vertical velocity -'sgcvv' = { - table2Version = 2 ; - indicatorOfParameter = 38 ; - } -#Sigma coordinate vertical velocity -'sgcvv' = { - table2Version = 1 ; - indicatorOfParameter = 38 ; - } -#Absolute vorticity -'absv' = { - table2Version = 3 ; - indicatorOfParameter = 41 ; - } -#Absolute vorticity -'absv' = { - table2Version = 2 ; - indicatorOfParameter = 41 ; - } -#Absolute vorticity -'absv' = { - table2Version = 1 ; - indicatorOfParameter = 41 ; - } -#Absolute divergence -'absd' = { - table2Version = 3 ; - indicatorOfParameter = 42 ; - } -#Absolute divergence -'absd' = { - table2Version = 2 ; - indicatorOfParameter = 42 ; - } -#Absolute divergence -'absd' = { - table2Version = 1 ; - indicatorOfParameter = 42 ; - } -#Vertical u-component shear -'vucsh' = { - table2Version = 3 ; - indicatorOfParameter = 45 ; - } -#Vertical u-component shear -'vucsh' = { - table2Version = 2 ; - indicatorOfParameter = 45 ; - } -#Vertical u-component shear -'vucsh' = { - table2Version = 1 ; - indicatorOfParameter = 45 ; - } -#Vertical v-component shear -'vvcsh' = { - table2Version = 3 ; - indicatorOfParameter = 46 ; - } -#Vertical v-component shear -'vvcsh' = { - table2Version = 2 ; - indicatorOfParameter = 46 ; - } -#Vertical v-component shear -'vvcsh' = { - table2Version = 1 ; - indicatorOfParameter = 46 ; - } -#Direction of current -'dirc' = { - table2Version = 3 ; - indicatorOfParameter = 47 ; - } -#Direction of current -'dirc' = { - table2Version = 2 ; - indicatorOfParameter = 47 ; - } -#Direction of current -'dirc' = { - table2Version = 1 ; - indicatorOfParameter = 47 ; - } -#Speed of current -'spc' = { - table2Version = 3 ; - indicatorOfParameter = 48 ; - } -#Speed of current -'spc' = { - table2Version = 2 ; - indicatorOfParameter = 48 ; - } -#Speed of current -'spc' = { - table2Version = 1 ; - indicatorOfParameter = 48 ; - } -#Humidity mixing ratio -'mixr' = { - table2Version = 3 ; - indicatorOfParameter = 53 ; - } -#Humidity mixing ratio -'mixr' = { - table2Version = 2 ; - indicatorOfParameter = 53 ; - } -#Humidity mixing ratio -'mixr' = { - table2Version = 1 ; - indicatorOfParameter = 53 ; - } -#Precipitable water -'pwat' = { - table2Version = 3 ; - indicatorOfParameter = 54 ; - } -#Precipitable water -'pwat' = { - table2Version = 2 ; - indicatorOfParameter = 54 ; - } -#Precipitable water -'pwat' = { - table2Version = 1 ; - indicatorOfParameter = 54 ; - } -#Vapour pressure -'vp' = { - table2Version = 3 ; - indicatorOfParameter = 55 ; - } -#Vapour pressure -'vp' = { - table2Version = 2 ; - indicatorOfParameter = 55 ; - } -#Vapour pressure -'vp' = { - table2Version = 1 ; - indicatorOfParameter = 55 ; - } -#Saturation deficit -'satd' = { - table2Version = 3 ; - indicatorOfParameter = 56 ; - } -#Saturation deficit -'satd' = { - table2Version = 2 ; - indicatorOfParameter = 56 ; - } -#Saturation deficit -'satd' = { - table2Version = 1 ; - indicatorOfParameter = 56 ; - } -#Precipitation rate -'prate' = { - table2Version = 3 ; - indicatorOfParameter = 59 ; - } -#Precipitation rate -'prate' = { - table2Version = 2 ; - indicatorOfParameter = 59 ; - } -#Precipitation rate -'prate' = { - table2Version = 1 ; - indicatorOfParameter = 59 ; - } -#Thunderstorm probability -'tstm' = { - table2Version = 3 ; - indicatorOfParameter = 60 ; - } -#Thunderstorm probability -'tstm' = { - table2Version = 2 ; - indicatorOfParameter = 60 ; - } -#Thunderstorm probability -'tstm' = { - table2Version = 1 ; - indicatorOfParameter = 60 ; - } -#Convective precipitation (water) -'acpcp' = { - table2Version = 3 ; - indicatorOfParameter = 63 ; - } -#Convective precipitation (water) -'acpcp' = { - table2Version = 2 ; - indicatorOfParameter = 63 ; - } -#Convective precipitation (water) -'acpcp' = { - table2Version = 1 ; - indicatorOfParameter = 63 ; - } -#Snow fall rate water equivalent -'srweq' = { - table2Version = 3 ; - indicatorOfParameter = 64 ; - } -#Snow fall rate water equivalent -'srweq' = { - table2Version = 2 ; - indicatorOfParameter = 64 ; - } -#Snow fall rate water equivalent -'srweq' = { - table2Version = 1 ; - indicatorOfParameter = 64 ; - } -#Mixed layer depth -'mld' = { - table2Version = 3 ; - indicatorOfParameter = 67 ; - } -#Mixed layer depth -'mld' = { - table2Version = 2 ; - indicatorOfParameter = 67 ; - } -#Mixed layer depth -'mld' = { - table2Version = 1 ; - indicatorOfParameter = 67 ; - } -#Transient thermocline depth -'tthdp' = { - table2Version = 3 ; - indicatorOfParameter = 68 ; - } -#Transient thermocline depth -'tthdp' = { - table2Version = 2 ; - indicatorOfParameter = 68 ; - } -#Transient thermocline depth -'tthdp' = { - table2Version = 1 ; - indicatorOfParameter = 68 ; - } -#Main thermocline depth -'mthd' = { - table2Version = 3 ; - indicatorOfParameter = 69 ; - } -#Main thermocline depth -'mthd' = { - table2Version = 2 ; - indicatorOfParameter = 69 ; - } -#Main thermocline depth -'mthd' = { - table2Version = 1 ; - indicatorOfParameter = 69 ; - } -#Main thermocline anomaly -'mtha' = { - table2Version = 3 ; - indicatorOfParameter = 70 ; - } -#Main thermocline anomaly -'mtha' = { - table2Version = 2 ; - indicatorOfParameter = 70 ; - } -#Main thermocline anomaly -'mtha' = { - table2Version = 1 ; - indicatorOfParameter = 70 ; - } -#Best lifted index (to 500 hPa) -'bli' = { - table2Version = 3 ; - indicatorOfParameter = 77 ; - } -#Best lifted index (to 500 hPa) -'bli' = { - table2Version = 2 ; - indicatorOfParameter = 77 ; - } -#Best lifted index (to 500 hPa) -'bli' = { - table2Version = 1 ; - indicatorOfParameter = 77 ; - } -#Water temperature -'wtmp' = { - table2Version = 3 ; - indicatorOfParameter = 80 ; - } -#Water temperature -'wtmp' = { - table2Version = 2 ; - indicatorOfParameter = 80 ; - } -#Water temperature -'wtmp' = { - table2Version = 1 ; - indicatorOfParameter = 80 ; - } -#Deviation of sea-level from mean -'dslm' = { - table2Version = 3 ; - indicatorOfParameter = 82 ; - } -#Deviation of sea-level from mean -'dslm' = { - table2Version = 2 ; - indicatorOfParameter = 82 ; - } -#Deviation of sea-level from mean -'dslm' = { - table2Version = 1 ; - indicatorOfParameter = 82 ; - } -#Soil moisture content -'ssw' = { - table2Version = 3 ; - indicatorOfParameter = 86 ; - } -#Soil moisture content -'ssw' = { - table2Version = 2 ; - indicatorOfParameter = 86 ; - } -#Soil moisture content -'ssw' = { - table2Version = 1 ; - indicatorOfParameter = 86 ; - } -#Salinity -'s' = { - table2Version = 3 ; - indicatorOfParameter = 88 ; - } -#Salinity -'s' = { - table2Version = 2 ; - indicatorOfParameter = 88 ; - } -#Salinity -'s' = { - table2Version = 1 ; - indicatorOfParameter = 88 ; - } -#Density -'den' = { - table2Version = 3 ; - indicatorOfParameter = 89 ; - } -#Density -'den' = { - table2Version = 2 ; - indicatorOfParameter = 89 ; - } -#Density -'den' = { - table2Version = 1 ; - indicatorOfParameter = 89 ; - } -#Ice cover (1=ice, 0=no ice) -'icec' = { - table2Version = 3 ; - indicatorOfParameter = 91 ; - } -#Ice cover (1=ice, 0=no ice) -'icec' = { - table2Version = 2 ; - indicatorOfParameter = 91 ; - } -#Ice cover (1=ice, 0=no ice) -'icec' = { - table2Version = 1 ; - indicatorOfParameter = 91 ; - } -#Ice thickness -'icetk' = { - table2Version = 3 ; - indicatorOfParameter = 92 ; - } -#Ice thickness -'icetk' = { - table2Version = 2 ; - indicatorOfParameter = 92 ; - } -#Ice thickness -'icetk' = { - table2Version = 1 ; - indicatorOfParameter = 92 ; - } -#Direction of ice drift -'diced' = { - table2Version = 3 ; - indicatorOfParameter = 93 ; - } -#Direction of ice drift -'diced' = { - table2Version = 2 ; - indicatorOfParameter = 93 ; - } -#Direction of ice drift -'diced' = { - table2Version = 1 ; - indicatorOfParameter = 93 ; - } -#Speed of ice drift -'siced' = { - table2Version = 3 ; - indicatorOfParameter = 94 ; - } -#Speed of ice drift -'siced' = { - table2Version = 2 ; - indicatorOfParameter = 94 ; - } -#Speed of ice drift -'siced' = { - table2Version = 1 ; - indicatorOfParameter = 94 ; - } -#U-component of ice drift -'uice' = { - table2Version = 3 ; - indicatorOfParameter = 95 ; - } -#U-component of ice drift -'uice' = { - table2Version = 2 ; - indicatorOfParameter = 95 ; - } -#U-component of ice drift -'uice' = { - table2Version = 1 ; - indicatorOfParameter = 95 ; - } -#V-component of ice drift -'vice' = { - table2Version = 3 ; - indicatorOfParameter = 96 ; - } -#V-component of ice drift -'vice' = { - table2Version = 2 ; - indicatorOfParameter = 96 ; - } -#V-component of ice drift -'vice' = { - table2Version = 1 ; - indicatorOfParameter = 96 ; - } -#Ice growth rate -'iceg' = { - table2Version = 3 ; - indicatorOfParameter = 97 ; - } -#Ice growth rate -'iceg' = { - table2Version = 2 ; - indicatorOfParameter = 97 ; - } -#Ice growth rate -'iceg' = { - table2Version = 1 ; - indicatorOfParameter = 97 ; - } -#Ice divergence -'iced' = { - table2Version = 3 ; - indicatorOfParameter = 98 ; - } -#Ice divergence -'iced' = { - table2Version = 2 ; - indicatorOfParameter = 98 ; - } -#Ice divergence -'iced' = { - table2Version = 1 ; - indicatorOfParameter = 98 ; - } -#Snowmelt -'snom' = { - table2Version = 3 ; - indicatorOfParameter = 99 ; - } -#Snowmelt -'snom' = { - table2Version = 2 ; - indicatorOfParameter = 99 ; - } -#Snowmelt -'snom' = { - table2Version = 1 ; - indicatorOfParameter = 99 ; - } -#Signific.height,combined wind waves+swell -'swh' = { - table2Version = 3 ; - indicatorOfParameter = 100 ; - } -#Signific.height,combined wind waves+swell -'swh' = { - table2Version = 2 ; - indicatorOfParameter = 100 ; - } -#Signific.height,combined wind waves+swell -'swh' = { - table2Version = 1 ; - indicatorOfParameter = 100 ; - } -#Mean direction of wind waves -'mdww' = { - table2Version = 3 ; - indicatorOfParameter = 101 ; - } -#Mean direction of wind waves -'mdww' = { - table2Version = 2 ; - indicatorOfParameter = 101 ; - } -#Mean direction of wind waves -'mdww' = { - table2Version = 1 ; - indicatorOfParameter = 101 ; - } -#Significant height of wind waves -'shww' = { - table2Version = 3 ; - indicatorOfParameter = 102 ; - } -#Significant height of wind waves -'shww' = { - table2Version = 2 ; - indicatorOfParameter = 102 ; - } -#Significant height of wind waves -'shww' = { - table2Version = 1 ; - indicatorOfParameter = 102 ; - } -#Mean period of wind waves -'mpww' = { - table2Version = 3 ; - indicatorOfParameter = 103 ; - } -#Mean period of wind waves -'mpww' = { - table2Version = 2 ; - indicatorOfParameter = 103 ; - } -#Mean period of wind waves -'mpww' = { - table2Version = 1 ; - indicatorOfParameter = 103 ; - } -#Direction of swell waves -'swdir' = { - table2Version = 3 ; - indicatorOfParameter = 104 ; - } -#Direction of swell waves -'swdir' = { - table2Version = 2 ; - indicatorOfParameter = 104 ; - } -#Direction of swell waves -'swdir' = { - table2Version = 1 ; - indicatorOfParameter = 104 ; - } -#Significant height of swell waves -'swell' = { - table2Version = 3 ; - indicatorOfParameter = 105 ; - } -#Significant height of swell waves -'swell' = { - table2Version = 2 ; - indicatorOfParameter = 105 ; - } -#Significant height of swell waves -'swell' = { - table2Version = 1 ; - indicatorOfParameter = 105 ; - } -#Mean period of swell waves -'swper' = { - table2Version = 3 ; - indicatorOfParameter = 106 ; - } -#Mean period of swell waves -'swper' = { - table2Version = 2 ; - indicatorOfParameter = 106 ; - } -#Mean period of swell waves -'swper' = { - table2Version = 1 ; - indicatorOfParameter = 106 ; - } -#Primary wave direction -'mdps' = { - table2Version = 3 ; - indicatorOfParameter = 107 ; - } -#Primary wave direction -'mdps' = { - table2Version = 2 ; - indicatorOfParameter = 107 ; - } -#Primary wave direction -'mdps' = { - table2Version = 1 ; - indicatorOfParameter = 107 ; - } -#Primary wave mean period -'mpps' = { - table2Version = 3 ; - indicatorOfParameter = 108 ; - } -#Primary wave mean period -'mpps' = { - table2Version = 2 ; - indicatorOfParameter = 108 ; - } -#Primary wave mean period -'mpps' = { - table2Version = 1 ; - indicatorOfParameter = 108 ; - } -#Secondary wave direction -'dirsw' = { - table2Version = 3 ; - indicatorOfParameter = 109 ; - } -#Secondary wave direction -'dirsw' = { - table2Version = 2 ; - indicatorOfParameter = 109 ; - } -#Secondary wave direction -'dirsw' = { - table2Version = 1 ; - indicatorOfParameter = 109 ; - } -#Secondary wave mean period -'swp' = { - table2Version = 3 ; - indicatorOfParameter = 110 ; - } -#Secondary wave mean period -'swp' = { - table2Version = 2 ; - indicatorOfParameter = 110 ; - } -#Secondary wave mean period -'swp' = { - table2Version = 1 ; - indicatorOfParameter = 110 ; - } -#Net short-wave radiation flux (surface) -'nswrs' = { - table2Version = 3 ; - indicatorOfParameter = 111 ; - } -#Net short-wave radiation flux (surface) -'nswrs' = { - table2Version = 2 ; - indicatorOfParameter = 111 ; - } -#Net short-wave radiation flux (surface) -'nswrs' = { - table2Version = 1 ; - indicatorOfParameter = 111 ; - } -#Net long-wave radiation flux (surface) -'nlwrs' = { - table2Version = 3 ; - indicatorOfParameter = 112 ; - } -#Net long-wave radiation flux (surface) -'nlwrs' = { - table2Version = 2 ; - indicatorOfParameter = 112 ; - } -#Net long-wave radiation flux (surface) -'nlwrs' = { - table2Version = 1 ; - indicatorOfParameter = 112 ; - } -#Net short-wave radiation flux(atmosph.top) -'nswrt' = { - table2Version = 3 ; - indicatorOfParameter = 113 ; - } -#Net short-wave radiation flux(atmosph.top) -'nswrt' = { - table2Version = 2 ; - indicatorOfParameter = 113 ; - } -#Net short-wave radiation flux(atmosph.top) -'nswrt' = { - table2Version = 1 ; - indicatorOfParameter = 113 ; - } -#Net long-wave radiation flux(atmosph.top) -'nlwrt' = { - table2Version = 3 ; - indicatorOfParameter = 114 ; - } -#Net long-wave radiation flux(atmosph.top) -'nlwrt' = { - table2Version = 2 ; - indicatorOfParameter = 114 ; - } -#Net long-wave radiation flux(atmosph.top) -'nlwrt' = { - table2Version = 1 ; - indicatorOfParameter = 114 ; - } -#Long wave radiation flux -'lwavr' = { - table2Version = 3 ; - indicatorOfParameter = 115 ; - } -#Long wave radiation flux -'lwavr' = { - table2Version = 2 ; - indicatorOfParameter = 115 ; - } -#Long wave radiation flux -'lwavr' = { - table2Version = 1 ; - indicatorOfParameter = 115 ; - } -#Short wave radiation flux -'swavr' = { - table2Version = 3 ; - indicatorOfParameter = 116 ; - } -#Short wave radiation flux -'swavr' = { - table2Version = 2 ; - indicatorOfParameter = 116 ; - } -#Short wave radiation flux -'swavr' = { - table2Version = 1 ; - indicatorOfParameter = 116 ; - } -#Global radiation flux -'grad' = { - table2Version = 3 ; - indicatorOfParameter = 117 ; - } -#Global radiation flux -'grad' = { - table2Version = 2 ; - indicatorOfParameter = 117 ; - } -#Global radiation flux -'grad' = { - table2Version = 1 ; - indicatorOfParameter = 117 ; - } -#Radiance (with respect to wave number) -'lwrad' = { - table2Version = 3 ; - indicatorOfParameter = 119 ; - } -#Radiance (with respect to wave number) -'lwrad' = { - table2Version = 2 ; - indicatorOfParameter = 119 ; - } -#Radiance (with respect to wave number) -'lwrad' = { - table2Version = 1 ; - indicatorOfParameter = 119 ; - } -#Radiance (with respect to wave length) -'swrad' = { - table2Version = 3 ; - indicatorOfParameter = 120 ; - } -#Radiance (with respect to wave length) -'swrad' = { - table2Version = 2 ; - indicatorOfParameter = 120 ; - } -#Radiance (with respect to wave length) -'swrad' = { - table2Version = 1 ; - indicatorOfParameter = 120 ; - } -#Momentum flux, u-component -'uflx' = { - table2Version = 3 ; - indicatorOfParameter = 124 ; - } -#Momentum flux, u-component -'uflx' = { - table2Version = 2 ; - indicatorOfParameter = 124 ; - } -#Momentum flux, u-component -'uflx' = { - table2Version = 1 ; - indicatorOfParameter = 124 ; - } -#Momentum flux, v-component -'vflx' = { - table2Version = 3 ; - indicatorOfParameter = 125 ; - } -#Momentum flux, v-component -'vflx' = { - table2Version = 2 ; - indicatorOfParameter = 125 ; - } -#Momentum flux, v-component -'vflx' = { - table2Version = 1 ; - indicatorOfParameter = 125 ; - } -#Wind mixing energy -'wmixe' = { - table2Version = 3 ; - indicatorOfParameter = 126 ; - } -#Wind mixing energy -'wmixe' = { - table2Version = 2 ; - indicatorOfParameter = 126 ; - } -#Wind mixing energy -'wmixe' = { - table2Version = 1 ; - indicatorOfParameter = 126 ; - } -#Image data -'imgd' = { - table2Version = 3 ; - indicatorOfParameter = 127 ; - } -#Image data -'imgd' = { - table2Version = 2 ; - indicatorOfParameter = 127 ; - } -#Image data -'imgd' = { - table2Version = 1 ; - indicatorOfParameter = 127 ; - } -#Percentage of vegetation -'vegrea' = { - table2Version = 3 ; - indicatorOfParameter = 87 ; - } -#Percentage of vegetation -'vegrea' = { - table2Version = 2 ; - indicatorOfParameter = 87 ; - } -#Percentage of vegetation -'vegrea' = { - table2Version = 1 ; - indicatorOfParameter = 87 ; - } -#Orography -'orog' = { - table2Version = 3 ; - indicatorOfParameter = 7 ; - indicatorOfTypeOfLevel = 1 ; - } -#Orography -'orog' = { - table2Version = 2 ; - indicatorOfParameter = 7 ; - indicatorOfTypeOfLevel = 1 ; - } -#Orography -'orog' = { - table2Version = 1 ; - indicatorOfParameter = 7 ; - indicatorOfTypeOfLevel = 1 ; - } -#Soil moisture -'sm' = { - table2Version = 3 ; - indicatorOfParameter = 86 ; - } -#Soil moisture -'sm' = { - table2Version = 2 ; - indicatorOfParameter = 86 ; - } -#Soil moisture -'sm' = { - table2Version = 1 ; - indicatorOfParameter = 86 ; - } -#Soil temperature -'st' = { - table2Version = 3 ; - indicatorOfParameter = 85 ; - } -#Soil temperature -'st' = { - table2Version = 2 ; - indicatorOfParameter = 85 ; - } -#Soil temperature -'st' = { - table2Version = 1 ; - indicatorOfParameter = 85 ; - } -#Snowfall water equivalent -'sf' = { - table2Version = 3 ; - indicatorOfParameter = 65 ; - } -#Snowfall water equivalent -'sf' = { - table2Version = 2 ; - indicatorOfParameter = 65 ; - } -#Snowfall water equivalent -'sf' = { - table2Version = 1 ; - indicatorOfParameter = 65 ; - } -#Total Cloud Cover -'tcc' = { - table2Version = 3 ; - indicatorOfParameter = 71 ; - } -#Total Cloud Cover -'tcc' = { - table2Version = 2 ; - indicatorOfParameter = 71 ; - } -#Total Cloud Cover -'tcc' = { - table2Version = 1 ; - indicatorOfParameter = 71 ; - } -#Total Precipitation -'tp' = { - table2Version = 3 ; - indicatorOfParameter = 61 ; - indicatorOfTypeOfLevel = 1 ; - level = 0 ; - } -#Total Precipitation -'tp' = { - table2Version = 2 ; - indicatorOfParameter = 61 ; - indicatorOfTypeOfLevel = 1 ; - level = 0 ; - } -#Total Precipitation -'tp' = { - table2Version = 1 ; - indicatorOfParameter = 61 ; - indicatorOfTypeOfLevel = 1 ; - level = 0 ; } diff --git a/definitions/grib1/localConcepts/ecmf/cfVarName.def b/definitions/grib1/localConcepts/ecmf/cfVarName.def index e3d757597..92f6bd7cb 100644 --- a/definitions/grib1/localConcepts/ecmf/cfVarName.def +++ b/definitions/grib1/localConcepts/ecmf/cfVarName.def @@ -1,18008 +1,503 @@ # Automatically generated by ./create_def.pl, do not edit -#Total precipitation of at least 1 mm -'tpg1' = { - table2Version = 131 ; - indicatorOfParameter = 60 ; - } -#Total precipitation of at least 5 mm -'tpg5' = { - table2Version = 131 ; - indicatorOfParameter = 61 ; - } -#Total precipitation of at least 10 mm -'tpg10' = { - table2Version = 131 ; - indicatorOfParameter = 62 ; - } -#Total precipitation of at least 20 mm -'tpg20' = { - table2Version = 131 ; - indicatorOfParameter = 63 ; - } -#Total precipitation of at least 40 mm -'tpg40' = { - table2Version = 131 ; - indicatorOfParameter = 82 ; - } -#Total precipitation of at least 60 mm -'tpg60' = { - table2Version = 131 ; - indicatorOfParameter = 83 ; - } -#Total precipitation of at least 80 mm -'tpg80' = { - table2Version = 131 ; - indicatorOfParameter = 84 ; - } -#Total precipitation of at least 100 mm -'tpg100' = { - table2Version = 131 ; - indicatorOfParameter = 85 ; - } -#Total precipitation of at least 150 mm -'tpg150' = { - table2Version = 131 ; - indicatorOfParameter = 86 ; - } -#Total precipitation of at least 200 mm -'tpg200' = { - table2Version = 131 ; - indicatorOfParameter = 87 ; - } -#Total precipitation of at least 300 mm -'tpg300' = { - table2Version = 131 ; - indicatorOfParameter = 88 ; - } -#Stream function -'strf' = { - table2Version = 128 ; - indicatorOfParameter = 1 ; - } -#Velocity potential -'vp' = { - table2Version = 128 ; - indicatorOfParameter = 2 ; - } -#Potential temperature -'pt' = { - table2Version = 128 ; - indicatorOfParameter = 3 ; - } -#Equivalent potential temperature -'eqpt' = { - table2Version = 128 ; - indicatorOfParameter = 4 ; - } -#Saturated equivalent potential temperature -'sept' = { - table2Version = 128 ; - indicatorOfParameter = 5 ; - } -#Soil sand fraction -'ssfr' = { - table2Version = 128 ; - indicatorOfParameter = 6 ; - } -#Soil clay fraction -'scfr' = { - table2Version = 128 ; - indicatorOfParameter = 7 ; - } -#Surface runoff -'sro' = { - table2Version = 128 ; - indicatorOfParameter = 8 ; - } -#Sub-surface runoff -'ssro' = { - table2Version = 128 ; - indicatorOfParameter = 9 ; - } -#Wind speed -'ws' = { - table2Version = 128 ; - indicatorOfParameter = 10 ; - } -#U component of divergent wind -'udvw' = { - table2Version = 128 ; - indicatorOfParameter = 11 ; - } -#V component of divergent wind -'vdvw' = { - table2Version = 128 ; - indicatorOfParameter = 12 ; - } -#U component of rotational wind -'urtw' = { - table2Version = 128 ; - indicatorOfParameter = 13 ; - } -#V component of rotational wind -'vrtw' = { - table2Version = 128 ; - indicatorOfParameter = 14 ; - } -#UV visible albedo for direct radiation (climatological) -'aluvp' = { - table2Version = 128 ; - indicatorOfParameter = 15 ; - } -#UV visible albedo for diffuse radiation (climatological) -'aluvd' = { - table2Version = 128 ; - indicatorOfParameter = 16 ; - } -#Near IR albedo for direct radiation (climatological) -'alnip' = { - table2Version = 128 ; - indicatorOfParameter = 17 ; - } -#Near IR albedo for diffuse radiation (climatological) -'alnid' = { - table2Version = 128 ; - indicatorOfParameter = 18 ; - } -#Clear sky surface UV -'uvcs' = { - table2Version = 128 ; - indicatorOfParameter = 19 ; - } -#Surface photosynthetically active radiation, clear sky -'parcs' = { - table2Version = 128 ; - indicatorOfParameter = 20 ; - } -#Unbalanced component of temperature -'uctp' = { - table2Version = 128 ; - indicatorOfParameter = 21 ; - } -#Unbalanced component of logarithm of surface pressure -'ucln' = { - table2Version = 128 ; - indicatorOfParameter = 22 ; - } -#Unbalanced component of divergence -'ucdv' = { - table2Version = 128 ; - indicatorOfParameter = 23 ; - } -#Reserved for future unbalanced components -'p24.128' = { - table2Version = 128 ; - indicatorOfParameter = 24 ; - } -#Reserved for future unbalanced components -'p25.128' = { - table2Version = 128 ; - indicatorOfParameter = 25 ; - } -#Lake cover -'cl' = { - table2Version = 128 ; - indicatorOfParameter = 26 ; - } -#Low vegetation cover -'cvl' = { - table2Version = 128 ; - indicatorOfParameter = 27 ; - } -#High vegetation cover -'cvh' = { - table2Version = 128 ; - indicatorOfParameter = 28 ; - } -#Type of low vegetation -'tvl' = { - table2Version = 128 ; - indicatorOfParameter = 29 ; - } -#Type of high vegetation -'tvh' = { - table2Version = 128 ; - indicatorOfParameter = 30 ; - } #Sea ice area fraction 'siconc' = { table2Version = 128 ; indicatorOfParameter = 31 ; } -#Snow albedo -'asn' = { +#Maximum 10 metre wind gust since previous post-processing +'fg10' = { table2Version = 128 ; - indicatorOfParameter = 32 ; + indicatorOfParameter = 49 ; } -#Snow density -'rsn' = { +#Maximum temperature at 2 metres in the last 6 hours +'mx2t6' = { table2Version = 128 ; - indicatorOfParameter = 33 ; + indicatorOfParameter = 121 ; } -#Sea surface temperature -'sst' = { +#Minimum temperature at 2 metres in the last 6 hours +'mn2t6' = { table2Version = 128 ; - indicatorOfParameter = 34 ; + indicatorOfParameter = 122 ; } -#Ice temperature layer 1 -'istl1' = { +#10 metre U wind component +'u10' = { table2Version = 128 ; - indicatorOfParameter = 35 ; + indicatorOfParameter = 165 ; } -#Ice temperature layer 2 -'istl2' = { - table2Version = 128 ; - indicatorOfParameter = 36 ; +#10 metre U wind component +'u10' = { + table2Version = 160 ; + indicatorOfParameter = 165 ; } -#Ice temperature layer 3 -'istl3' = { - table2Version = 128 ; - indicatorOfParameter = 37 ; +#10 metre U wind component +'u10' = { + table2Version = 180 ; + indicatorOfParameter = 165 ; } -#Ice temperature layer 4 -'istl4' = { - table2Version = 128 ; - indicatorOfParameter = 38 ; +#10 metre U wind component +'u10' = { + table2Version = 190 ; + indicatorOfParameter = 165 ; } -#Volumetric soil water layer 1 -'swvl1' = { +#10 metre V wind component +'v10' = { table2Version = 128 ; - indicatorOfParameter = 39 ; + indicatorOfParameter = 166 ; } -#Volumetric soil water layer 2 -'swvl2' = { - table2Version = 128 ; - indicatorOfParameter = 40 ; +#10 metre V wind component +'v10' = { + table2Version = 160 ; + indicatorOfParameter = 166 ; } -#Volumetric soil water layer 3 -'swvl3' = { - table2Version = 128 ; - indicatorOfParameter = 41 ; +#10 metre V wind component +'v10' = { + table2Version = 180 ; + indicatorOfParameter = 166 ; } -#Volumetric soil water layer 4 -'swvl4' = { - table2Version = 128 ; - indicatorOfParameter = 42 ; +#10 metre V wind component +'v10' = { + table2Version = 190 ; + indicatorOfParameter = 166 ; } -#Soil type -'slt' = { +#2 metre temperature +'t2m' = { table2Version = 128 ; - indicatorOfParameter = 43 ; + indicatorOfParameter = 167 ; } -#Snow evaporation -'es' = { - table2Version = 128 ; - indicatorOfParameter = 44 ; +#2 metre temperature +'t2m' = { + table2Version = 160 ; + indicatorOfParameter = 167 ; } -#Snowmelt -'smlt' = { - table2Version = 128 ; - indicatorOfParameter = 45 ; +#2 metre temperature +'t2m' = { + table2Version = 180 ; + indicatorOfParameter = 167 ; } -#Solar duration -'sdur' = { - table2Version = 128 ; - indicatorOfParameter = 46 ; +#2 metre temperature +'t2m' = { + table2Version = 190 ; + indicatorOfParameter = 167 ; } -#Direct solar radiation -'dsrp' = { +#2 metre dewpoint temperature +'d2m' = { table2Version = 128 ; - indicatorOfParameter = 47 ; + indicatorOfParameter = 168 ; } -#Magnitude of turbulent surface stress -'magss' = { - table2Version = 128 ; - indicatorOfParameter = 48 ; +#2 metre dewpoint temperature +'d2m' = { + table2Version = 160 ; + indicatorOfParameter = 168 ; } -#Maximum 10 metre wind gust since previous post-processing -'fg10' = { - table2Version = 128 ; - indicatorOfParameter = 49 ; +#2 metre dewpoint temperature +'d2m' = { + table2Version = 180 ; + indicatorOfParameter = 168 ; } -#Large-scale precipitation fraction -'lspf' = { - table2Version = 128 ; - indicatorOfParameter = 50 ; +#2 metre dewpoint temperature +'d2m' = { + table2Version = 190 ; + indicatorOfParameter = 168 ; } -#Maximum temperature at 2 metres in the last 24 hours -'mx2t24' = { +#Maximum temperature at 2 metres since previous post-processing +'mx2t' = { table2Version = 128 ; - indicatorOfParameter = 51 ; + indicatorOfParameter = 201 ; } -#Minimum temperature at 2 metres in the last 24 hours -'mn2t24' = { - table2Version = 128 ; - indicatorOfParameter = 52 ; +#Maximum temperature at 2 metres since previous post-processing +'mx2t' = { + table2Version = 170 ; + indicatorOfParameter = 201 ; } -#Montgomery potential -'mont' = { - table2Version = 128 ; - indicatorOfParameter = 53 ; +#Maximum temperature at 2 metres since previous post-processing +'mx2t' = { + table2Version = 190 ; + indicatorOfParameter = 201 ; } -#Pressure -'pres' = { +#Minimum temperature at 2 metres since previous post-processing +'mn2t' = { table2Version = 128 ; - indicatorOfParameter = 54 ; + indicatorOfParameter = 202 ; } -#Mean temperature at 2 metres in the last 24 hours -'mean2t24' = { - table2Version = 128 ; - indicatorOfParameter = 55 ; +#Minimum temperature at 2 metres since previous post-processing +'mn2t' = { + table2Version = 170 ; + indicatorOfParameter = 202 ; } -#Mean 2 metre dewpoint temperature in the last 24 hours -'mn2d24' = { - table2Version = 128 ; - indicatorOfParameter = 56 ; +#Minimum temperature at 2 metres since previous post-processing +'mn2t' = { + table2Version = 190 ; + indicatorOfParameter = 202 ; } -#Downward UV radiation at the surface -'uvb' = { +#10 metre wind speed +'si10' = { table2Version = 128 ; - indicatorOfParameter = 57 ; + indicatorOfParameter = 207 ; } -#Photosynthetically active radiation at the surface -'par' = { - table2Version = 128 ; - indicatorOfParameter = 58 ; +#10 metre wind gust difference +'fgdiff10' = { + table2Version = 200 ; + indicatorOfParameter = 49 ; } -#Convective available potential energy -'cape' = { - table2Version = 128 ; - indicatorOfParameter = 59 ; +#10 metre wind gust in the last 6 hours difference +'fg6diff10' = { + table2Version = 200 ; + indicatorOfParameter = 123 ; } -#Potential vorticity -'pv' = { - table2Version = 128 ; - indicatorOfParameter = 60 ; +#10 metre U wind component difference +'udiff10' = { + table2Version = 200 ; + indicatorOfParameter = 165 ; } -#Observation count -'obct' = { - table2Version = 128 ; - indicatorOfParameter = 62 ; +#10 metre V wind component difference +'vdiff10' = { + table2Version = 200 ; + indicatorOfParameter = 166 ; } -#Start time for skin temperature difference -'stsktd' = { - table2Version = 128 ; - indicatorOfParameter = 63 ; +#2 metre temperature difference +'difft2' = { + table2Version = 200 ; + indicatorOfParameter = 167 ; } -#Finish time for skin temperature difference -'ftsktd' = { - table2Version = 128 ; - indicatorOfParameter = 64 ; +#10 metre wind speed difference +'sidiff10' = { + table2Version = 200 ; + indicatorOfParameter = 207 ; } -#Skin temperature difference -'sktd' = { - table2Version = 128 ; - indicatorOfParameter = 65 ; +#10 metre wind gust of at least 10 m/s +'fgg1010' = { + table2Version = 131 ; + indicatorOfParameter = 100 ; } -#Leaf area index, low vegetation -'lai_lv' = { - table2Version = 128 ; - indicatorOfParameter = 66 ; +#100 metre U wind component anomaly +'ua100' = { + table2Version = 171 ; + indicatorOfParameter = 6 ; } -#Leaf area index, high vegetation -'lai_hv' = { - table2Version = 128 ; - indicatorOfParameter = 67 ; - } -#Minimum stomatal resistance, low vegetation -'msr_lv' = { - table2Version = 128 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'msr_hv' = { - table2Version = 128 ; - indicatorOfParameter = 69 ; - } -#Biome cover, low vegetation -'bc_lv' = { - table2Version = 128 ; - indicatorOfParameter = 70 ; - } -#Biome cover, high vegetation -'bc_hv' = { - table2Version = 128 ; - indicatorOfParameter = 71 ; - } -#Instantaneous surface solar radiation downwards -'issrd' = { - table2Version = 128 ; - indicatorOfParameter = 72 ; - } -#Instantaneous surface thermal radiation downwards -'istrd' = { - table2Version = 128 ; - indicatorOfParameter = 73 ; - } -#Standard deviation of filtered subgrid orography (climatological) -'sdfor' = { - table2Version = 128 ; - indicatorOfParameter = 74 ; - } -#Specific rain water content -'crwc' = { - table2Version = 128 ; - indicatorOfParameter = 75 ; - } -#Specific snow water content -'cswc' = { - table2Version = 128 ; - indicatorOfParameter = 76 ; - } -#Eta-coordinate vertical velocity -'etadot' = { - table2Version = 128 ; - indicatorOfParameter = 77 ; - } -#Total column cloud liquid water -'tclw' = { - table2Version = 128 ; - indicatorOfParameter = 78 ; - } -#Total column cloud ice water -'tciw' = { - table2Version = 128 ; - indicatorOfParameter = 79 ; - } -#Experimental product -'p80.128' = { - table2Version = 128 ; - indicatorOfParameter = 80 ; - } -#Experimental product -'p81.128' = { - table2Version = 128 ; - indicatorOfParameter = 81 ; - } -#Experimental product -'p82.128' = { - table2Version = 128 ; - indicatorOfParameter = 82 ; - } -#Experimental product -'p83.128' = { - table2Version = 128 ; - indicatorOfParameter = 83 ; - } -#Experimental product -'p84.128' = { - table2Version = 128 ; - indicatorOfParameter = 84 ; - } -#Experimental product -'p85.128' = { - table2Version = 128 ; - indicatorOfParameter = 85 ; - } -#Experimental product -'p86.128' = { - table2Version = 128 ; - indicatorOfParameter = 86 ; - } -#Experimental product -'p87.128' = { - table2Version = 128 ; - indicatorOfParameter = 87 ; - } -#Experimental product -'p88.128' = { - table2Version = 128 ; - indicatorOfParameter = 88 ; - } -#Experimental product -'p89.128' = { - table2Version = 128 ; - indicatorOfParameter = 89 ; - } -#Experimental product -'p90.128' = { - table2Version = 128 ; - indicatorOfParameter = 90 ; - } -#Experimental product -'p91.128' = { - table2Version = 128 ; - indicatorOfParameter = 91 ; - } -#Experimental product -'p92.128' = { - table2Version = 128 ; - indicatorOfParameter = 92 ; - } -#Experimental product -'p93.128' = { - table2Version = 128 ; - indicatorOfParameter = 93 ; - } -#Experimental product -'p94.128' = { - table2Version = 128 ; - indicatorOfParameter = 94 ; - } -#Experimental product -'p95.128' = { - table2Version = 128 ; - indicatorOfParameter = 95 ; - } -#Experimental product -'p96.128' = { - table2Version = 128 ; - indicatorOfParameter = 96 ; - } -#Experimental product -'p97.128' = { - table2Version = 128 ; - indicatorOfParameter = 97 ; - } -#Experimental product -'p98.128' = { - table2Version = 128 ; - indicatorOfParameter = 98 ; - } -#Experimental product -'p99.128' = { - table2Version = 128 ; - indicatorOfParameter = 99 ; - } -#Experimental product -'p100.128' = { - table2Version = 128 ; - indicatorOfParameter = 100 ; - } -#Experimental product -'p101.128' = { - table2Version = 128 ; - indicatorOfParameter = 101 ; - } -#Experimental product -'p102.128' = { - table2Version = 128 ; - indicatorOfParameter = 102 ; - } -#Experimental product -'p103.128' = { - table2Version = 128 ; - indicatorOfParameter = 103 ; - } -#Experimental product -'p104.128' = { - table2Version = 128 ; - indicatorOfParameter = 104 ; - } -#Experimental product -'p105.128' = { - table2Version = 128 ; - indicatorOfParameter = 105 ; - } -#Experimental product -'p106.128' = { - table2Version = 128 ; - indicatorOfParameter = 106 ; - } -#Experimental product -'p107.128' = { - table2Version = 128 ; - indicatorOfParameter = 107 ; - } -#Experimental product -'p108.128' = { - table2Version = 128 ; - indicatorOfParameter = 108 ; - } -#Experimental product -'p109.128' = { - table2Version = 128 ; - indicatorOfParameter = 109 ; - } -#Experimental product -'p110.128' = { - table2Version = 128 ; - indicatorOfParameter = 110 ; - } -#Experimental product -'p111.128' = { - table2Version = 128 ; - indicatorOfParameter = 111 ; - } -#Experimental product -'p112.128' = { - table2Version = 128 ; - indicatorOfParameter = 112 ; - } -#Experimental product -'p113.128' = { - table2Version = 128 ; - indicatorOfParameter = 113 ; - } -#Experimental product -'p114.128' = { - table2Version = 128 ; - indicatorOfParameter = 114 ; - } -#Experimental product -'p115.128' = { - table2Version = 128 ; - indicatorOfParameter = 115 ; - } -#Experimental product -'p116.128' = { - table2Version = 128 ; - indicatorOfParameter = 116 ; - } -#Experimental product -'p117.128' = { - table2Version = 128 ; - indicatorOfParameter = 117 ; - } -#Experimental product -'p118.128' = { - table2Version = 128 ; - indicatorOfParameter = 118 ; - } -#Experimental product -'p119.128' = { - table2Version = 128 ; - indicatorOfParameter = 119 ; - } -#Experimental product -'p120.128' = { - table2Version = 128 ; - indicatorOfParameter = 120 ; - } -#Maximum temperature at 2 metres in the last 6 hours -'mx2t6' = { - table2Version = 128 ; - indicatorOfParameter = 121 ; - } -#Minimum temperature at 2 metres in the last 6 hours -'mn2t6' = { - table2Version = 128 ; - indicatorOfParameter = 122 ; - } -#Maximum 10 metre wind gust in the last 6 hours -'p10fg6' = { - table2Version = 128 ; - indicatorOfParameter = 123 ; - } -#Surface emissivity -'emis' = { - table2Version = 128 ; - indicatorOfParameter = 124 ; - } -#Vertically integrated total energy -'vite' = { - table2Version = 128 ; - indicatorOfParameter = 125 ; - } -#Generic parameter for sensitive area prediction -'p126.128' = { - table2Version = 128 ; - indicatorOfParameter = 126 ; - } -#Atmospheric tide -'at' = { - table2Version = 128 ; - indicatorOfParameter = 127 ; - } -#Atmospheric tide -'at' = { - table2Version = 160 ; - indicatorOfParameter = 127 ; - } -#Budget values -'bv' = { - table2Version = 128 ; - indicatorOfParameter = 128 ; - } -#Budget values -'bv' = { - table2Version = 160 ; - indicatorOfParameter = 128 ; - } -#Geopotential -'z' = { - table2Version = 128 ; - indicatorOfParameter = 129 ; - } -#Geopotential -'z' = { - table2Version = 160 ; - indicatorOfParameter = 129 ; - } -#Geopotential -'z' = { - table2Version = 170 ; - indicatorOfParameter = 129 ; - } -#Geopotential -'z' = { - table2Version = 180 ; - indicatorOfParameter = 129 ; - } -#Geopotential -'z' = { - table2Version = 190 ; - indicatorOfParameter = 129 ; - } -#Temperature -'t' = { - table2Version = 128 ; - indicatorOfParameter = 130 ; - } -#Temperature -'t' = { - table2Version = 160 ; - indicatorOfParameter = 130 ; - } -#Temperature -'t' = { - table2Version = 170 ; - indicatorOfParameter = 130 ; - } -#Temperature -'t' = { - table2Version = 180 ; - indicatorOfParameter = 130 ; - } -#Temperature -'t' = { - table2Version = 190 ; - indicatorOfParameter = 130 ; - } -#U component of wind -'u' = { - table2Version = 128 ; - indicatorOfParameter = 131 ; - } -#U component of wind -'u' = { - table2Version = 160 ; - indicatorOfParameter = 131 ; - } -#U component of wind -'u' = { - table2Version = 170 ; - indicatorOfParameter = 131 ; - } -#U component of wind -'u' = { - table2Version = 180 ; - indicatorOfParameter = 131 ; - } -#U component of wind -'u' = { - table2Version = 190 ; - indicatorOfParameter = 131 ; - } -#V component of wind -'v' = { - table2Version = 128 ; - indicatorOfParameter = 132 ; - } -#V component of wind -'v' = { - table2Version = 160 ; - indicatorOfParameter = 132 ; - } -#V component of wind -'v' = { - table2Version = 170 ; - indicatorOfParameter = 132 ; - } -#V component of wind -'v' = { - table2Version = 180 ; - indicatorOfParameter = 132 ; - } -#V component of wind -'v' = { - table2Version = 190 ; - indicatorOfParameter = 132 ; - } -#Specific humidity -'q' = { - table2Version = 128 ; - indicatorOfParameter = 133 ; - } -#Specific humidity -'q' = { - table2Version = 160 ; - indicatorOfParameter = 133 ; - } -#Specific humidity -'q' = { - table2Version = 170 ; - indicatorOfParameter = 133 ; - } -#Specific humidity -'q' = { - table2Version = 180 ; - indicatorOfParameter = 133 ; - } -#Specific humidity -'q' = { - table2Version = 190 ; - indicatorOfParameter = 133 ; - } -#Surface pressure -'sp' = { - table2Version = 128 ; - indicatorOfParameter = 134 ; - } -#Surface pressure -'sp' = { - table2Version = 160 ; - indicatorOfParameter = 134 ; - } -#Surface pressure -'sp' = { - table2Version = 162 ; - indicatorOfParameter = 52 ; - } -#Surface pressure -'sp' = { - table2Version = 180 ; - indicatorOfParameter = 134 ; - } -#Surface pressure -'sp' = { - table2Version = 190 ; - indicatorOfParameter = 134 ; - } -#Vertical velocity -'w' = { - table2Version = 128 ; - indicatorOfParameter = 135 ; - } -#Vertical velocity -'w' = { - table2Version = 170 ; - indicatorOfParameter = 135 ; - } -#Total column water -'tcw' = { - table2Version = 128 ; - indicatorOfParameter = 136 ; - } -#Total column water -'tcw' = { - table2Version = 160 ; - indicatorOfParameter = 136 ; - } -#Total column vertically-integrated water vapour -'tcwv' = { - table2Version = 128 ; - indicatorOfParameter = 137 ; - } -#Total column vertically-integrated water vapour -'tcwv' = { - table2Version = 180 ; - indicatorOfParameter = 137 ; - } -#Vorticity (relative) -'vo' = { - table2Version = 128 ; - indicatorOfParameter = 138 ; - } -#Vorticity (relative) -'vo' = { - table2Version = 160 ; - indicatorOfParameter = 138 ; - } -#Vorticity (relative) -'vo' = { - table2Version = 170 ; - indicatorOfParameter = 138 ; - } -#Vorticity (relative) -'vo' = { - table2Version = 180 ; - indicatorOfParameter = 138 ; - } -#Vorticity (relative) -'vo' = { - table2Version = 190 ; - indicatorOfParameter = 138 ; - } -#Soil temperature level 1 -'stl1' = { - table2Version = 128 ; - indicatorOfParameter = 139 ; - } -#Soil temperature level 1 -'stl1' = { - table2Version = 160 ; - indicatorOfParameter = 139 ; - } -#Soil temperature level 1 -'stl1' = { - table2Version = 170 ; - indicatorOfParameter = 139 ; - } -#Soil temperature level 1 -'stl1' = { - table2Version = 190 ; - indicatorOfParameter = 139 ; - } -#Soil wetness level 1 -'swl1' = { - table2Version = 128 ; - indicatorOfParameter = 140 ; - } -#Soil wetness level 1 -'swl1' = { - table2Version = 170 ; - indicatorOfParameter = 140 ; - } -#Snow depth -'sd' = { - table2Version = 128 ; - indicatorOfParameter = 141 ; - } -#Snow depth -'sd' = { - table2Version = 170 ; - indicatorOfParameter = 141 ; - } -#Snow depth -'sd' = { - table2Version = 180 ; - indicatorOfParameter = 141 ; - } -#Large-scale precipitation -'lsp' = { - table2Version = 128 ; - indicatorOfParameter = 142 ; - } -#Large-scale precipitation -'lsp' = { - table2Version = 170 ; - indicatorOfParameter = 142 ; - } -#Large-scale precipitation -'lsp' = { - table2Version = 180 ; - indicatorOfParameter = 142 ; - } -#Convective precipitation -'cp' = { - table2Version = 128 ; - indicatorOfParameter = 143 ; - } -#Convective precipitation -'cp' = { - table2Version = 170 ; - indicatorOfParameter = 143 ; - } -#Convective precipitation -'cp' = { - table2Version = 180 ; - indicatorOfParameter = 143 ; - } -#Snowfall -'sf' = { - table2Version = 128 ; - indicatorOfParameter = 144 ; - } -#Snowfall -'sf' = { - table2Version = 180 ; - indicatorOfParameter = 144 ; - } -#Boundary layer dissipation -'bld' = { - table2Version = 128 ; - indicatorOfParameter = 145 ; - } -#Boundary layer dissipation -'bld' = { - table2Version = 160 ; - indicatorOfParameter = 145 ; - } -#Surface sensible heat flux -'sshf' = { - table2Version = 128 ; - indicatorOfParameter = 146 ; - } -#Surface sensible heat flux -'sshf' = { - table2Version = 160 ; - indicatorOfParameter = 146 ; - } -#Surface sensible heat flux -'sshf' = { - table2Version = 170 ; - indicatorOfParameter = 146 ; - } -#Surface sensible heat flux -'sshf' = { - table2Version = 180 ; - indicatorOfParameter = 146 ; - } -#Surface sensible heat flux -'sshf' = { - table2Version = 190 ; - indicatorOfParameter = 146 ; - } -#Surface latent heat flux -'slhf' = { - table2Version = 128 ; - indicatorOfParameter = 147 ; - } -#Surface latent heat flux -'slhf' = { - table2Version = 160 ; - indicatorOfParameter = 147 ; - } -#Surface latent heat flux -'slhf' = { - table2Version = 170 ; - indicatorOfParameter = 147 ; - } -#Surface latent heat flux -'slhf' = { - table2Version = 180 ; - indicatorOfParameter = 147 ; - } -#Surface latent heat flux -'slhf' = { - table2Version = 190 ; - indicatorOfParameter = 147 ; - } -#Charnock -'chnk' = { - table2Version = 128 ; - indicatorOfParameter = 148 ; - } -#Surface net radiation (SW and LW) -'snr' = { - table2Version = 128 ; - indicatorOfParameter = 149 ; - } -#Top net radiation (SW and LW) -'tnr' = { - table2Version = 128 ; - indicatorOfParameter = 150 ; - } -#Mean sea level pressure -'msl' = { - table2Version = 128 ; - indicatorOfParameter = 151 ; - } -#Mean sea level pressure -'msl' = { - table2Version = 160 ; - indicatorOfParameter = 151 ; - } -#Mean sea level pressure -'msl' = { - table2Version = 170 ; - indicatorOfParameter = 151 ; - } -#Mean sea level pressure -'msl' = { - table2Version = 180 ; - indicatorOfParameter = 151 ; - } -#Mean sea level pressure -'msl' = { - table2Version = 190 ; - indicatorOfParameter = 151 ; - } -#Logarithm of surface pressure -'lnsp' = { - table2Version = 128 ; - indicatorOfParameter = 152 ; - } -#Logarithm of surface pressure -'lnsp' = { - table2Version = 160 ; - indicatorOfParameter = 152 ; - } -#Short-wave heating rate -'swhr' = { - table2Version = 128 ; - indicatorOfParameter = 153 ; - } -#Long-wave heating rate -'lwhr' = { - table2Version = 128 ; - indicatorOfParameter = 154 ; - } -#Divergence -'d' = { - table2Version = 128 ; - indicatorOfParameter = 155 ; - } -#Divergence -'d' = { - table2Version = 160 ; - indicatorOfParameter = 155 ; - } -#Divergence -'d' = { - table2Version = 170 ; - indicatorOfParameter = 155 ; - } -#Divergence -'d' = { - table2Version = 180 ; - indicatorOfParameter = 155 ; - } -#Divergence -'d' = { - table2Version = 190 ; - indicatorOfParameter = 155 ; - } -#Geopotential height -'gh' = { - table2Version = 128 ; - indicatorOfParameter = 156 ; - } -#Relative humidity -'r' = { - table2Version = 128 ; - indicatorOfParameter = 157 ; - } -#Relative humidity -'r' = { - table2Version = 170 ; - indicatorOfParameter = 157 ; - } -#Relative humidity -'r' = { - table2Version = 190 ; - indicatorOfParameter = 157 ; - } -#Tendency of surface pressure -'tsp' = { - table2Version = 128 ; - indicatorOfParameter = 158 ; - } -#Tendency of surface pressure -'tsp' = { - table2Version = 160 ; - indicatorOfParameter = 158 ; - } -#Boundary layer height -'blh' = { - table2Version = 128 ; - indicatorOfParameter = 159 ; - } -#Standard deviation of sub-gridscale orography -'sdor' = { - table2Version = 128 ; - indicatorOfParameter = 160 ; - } -#Anisotropy of sub-gridscale orography -'isor' = { - table2Version = 128 ; - indicatorOfParameter = 161 ; - } -#Angle of sub-gridscale orography -'anor' = { - table2Version = 128 ; - indicatorOfParameter = 162 ; - } -#Slope of sub-gridscale orography -'slor' = { - table2Version = 128 ; - indicatorOfParameter = 163 ; - } -#Total cloud cover -'tcc' = { - table2Version = 128 ; - indicatorOfParameter = 164 ; - } -#Total cloud cover -'tcc' = { - table2Version = 160 ; - indicatorOfParameter = 164 ; - } -#Total cloud cover -'tcc' = { - table2Version = 170 ; - indicatorOfParameter = 164 ; - } -#Total cloud cover -'tcc' = { - table2Version = 180 ; - indicatorOfParameter = 164 ; - } -#Total cloud cover -'tcc' = { - table2Version = 190 ; - indicatorOfParameter = 164 ; - } -#10 metre U wind component -'u10' = { - table2Version = 128 ; - indicatorOfParameter = 165 ; - } -#10 metre U wind component -'u10' = { - table2Version = 160 ; - indicatorOfParameter = 165 ; - } -#10 metre U wind component -'u10' = { - table2Version = 180 ; - indicatorOfParameter = 165 ; - } -#10 metre U wind component -'u10' = { - table2Version = 190 ; - indicatorOfParameter = 165 ; - } -#10 metre V wind component -'v10' = { - table2Version = 128 ; - indicatorOfParameter = 166 ; - } -#10 metre V wind component -'v10' = { - table2Version = 160 ; - indicatorOfParameter = 166 ; - } -#10 metre V wind component -'v10' = { - table2Version = 180 ; - indicatorOfParameter = 166 ; - } -#10 metre V wind component -'v10' = { - table2Version = 190 ; - indicatorOfParameter = 166 ; - } -#2 metre temperature -'t2m' = { - table2Version = 128 ; - indicatorOfParameter = 167 ; - } -#2 metre temperature -'t2m' = { - table2Version = 160 ; - indicatorOfParameter = 167 ; - } -#2 metre temperature -'t2m' = { - table2Version = 180 ; - indicatorOfParameter = 167 ; - } -#2 metre temperature -'t2m' = { - table2Version = 190 ; - indicatorOfParameter = 167 ; - } -#2 metre dewpoint temperature -'d2m' = { - table2Version = 128 ; - indicatorOfParameter = 168 ; - } -#2 metre dewpoint temperature -'d2m' = { - table2Version = 160 ; - indicatorOfParameter = 168 ; - } -#2 metre dewpoint temperature -'d2m' = { - table2Version = 180 ; - indicatorOfParameter = 168 ; - } -#2 metre dewpoint temperature -'d2m' = { - table2Version = 190 ; - indicatorOfParameter = 168 ; - } -#Surface short-wave (solar) radiation downwards -'ssrd' = { - table2Version = 128 ; - indicatorOfParameter = 169 ; - } -#Surface short-wave (solar) radiation downwards -'ssrd' = { - table2Version = 190 ; - indicatorOfParameter = 169 ; - } -#Soil temperature level 2 -'stl2' = { - table2Version = 128 ; - indicatorOfParameter = 170 ; - } -#Soil temperature level 2 -'stl2' = { - table2Version = 160 ; - indicatorOfParameter = 170 ; - } -#Soil wetness level 2 -'swl2' = { - table2Version = 128 ; - indicatorOfParameter = 171 ; - } -#Land-sea mask -'lsm' = { - table2Version = 128 ; - indicatorOfParameter = 172 ; - } -#Land-sea mask -'lsm' = { - table2Version = 160 ; - indicatorOfParameter = 172 ; - } -#Land-sea mask -'lsm' = { - table2Version = 171 ; - indicatorOfParameter = 172 ; - } -#Land-sea mask -'lsm' = { - table2Version = 174 ; - indicatorOfParameter = 172 ; - } -#Land-sea mask -'lsm' = { - table2Version = 175 ; - indicatorOfParameter = 172 ; - } -#Land-sea mask -'lsm' = { - table2Version = 180 ; - indicatorOfParameter = 172 ; - } -#Land-sea mask -'lsm' = { - table2Version = 190 ; - indicatorOfParameter = 172 ; - } -#Surface roughness (climatological) -'sr' = { - table2Version = 128 ; - indicatorOfParameter = 173 ; - } -#Surface roughness (climatological) -'sr' = { - table2Version = 160 ; - indicatorOfParameter = 173 ; - } -#Albedo (climatological) -'al' = { - table2Version = 128 ; - indicatorOfParameter = 174 ; - } -#Albedo (climatological) -'al' = { - table2Version = 160 ; - indicatorOfParameter = 174 ; - } -#Albedo (climatological) -'al' = { - table2Version = 190 ; - indicatorOfParameter = 174 ; - } -#Surface long-wave (thermal) radiation downwards -'strd' = { - table2Version = 128 ; - indicatorOfParameter = 175 ; - } -#Surface long-wave (thermal) radiation downwards -'strd' = { - table2Version = 190 ; - indicatorOfParameter = 175 ; - } -#Surface net short-wave (solar) radiation -'ssr' = { - table2Version = 128 ; - indicatorOfParameter = 176 ; - } -#Surface net short-wave (solar) radiation -'ssr' = { - table2Version = 160 ; - indicatorOfParameter = 176 ; - } -#Surface net short-wave (solar) radiation -'ssr' = { - table2Version = 170 ; - indicatorOfParameter = 176 ; - } -#Surface net short-wave (solar) radiation -'ssr' = { - table2Version = 190 ; - indicatorOfParameter = 176 ; - } -#Surface net long-wave (thermal) radiation -'str' = { - table2Version = 128 ; - indicatorOfParameter = 177 ; - } -#Surface net long-wave (thermal) radiation -'str' = { - table2Version = 160 ; - indicatorOfParameter = 177 ; - } -#Surface net long-wave (thermal) radiation -'str' = { - table2Version = 170 ; - indicatorOfParameter = 177 ; - } -#Surface net long-wave (thermal) radiation -'str' = { - table2Version = 190 ; - indicatorOfParameter = 177 ; - } -#Top net short-wave (solar) radiation -'tsr' = { - table2Version = 128 ; - indicatorOfParameter = 178 ; - } -#Top net short-wave (solar) radiation -'tsr' = { - table2Version = 160 ; - indicatorOfParameter = 178 ; - } -#Top net short-wave (solar) radiation -'tsr' = { - table2Version = 190 ; - indicatorOfParameter = 178 ; - } -#Top net long-wave (thermal) radiation -'ttr' = { - table2Version = 128 ; - indicatorOfParameter = 179 ; - } -#Top net long-wave (thermal) radiation -'ttr' = { - table2Version = 160 ; - indicatorOfParameter = 179 ; - } -#Top net long-wave (thermal) radiation -'ttr' = { - table2Version = 190 ; - indicatorOfParameter = 179 ; - } -#Time-integrated eastward turbulent surface stress -'ewss' = { - table2Version = 128 ; - indicatorOfParameter = 180 ; - } -#Time-integrated eastward turbulent surface stress -'ewss' = { - table2Version = 170 ; - indicatorOfParameter = 180 ; - } -#Time-integrated eastward turbulent surface stress -'ewss' = { - table2Version = 180 ; - indicatorOfParameter = 180 ; - } -#Time-integrated northward turbulent surface stress -'nsss' = { - table2Version = 128 ; - indicatorOfParameter = 181 ; - } -#Time-integrated northward turbulent surface stress -'nsss' = { - table2Version = 170 ; - indicatorOfParameter = 181 ; - } -#Time-integrated northward turbulent surface stress -'nsss' = { - table2Version = 180 ; - indicatorOfParameter = 181 ; - } -#Evaporation -'e' = { - table2Version = 128 ; - indicatorOfParameter = 182 ; - } -#Evaporation -'e' = { - table2Version = 170 ; - indicatorOfParameter = 182 ; - } -#Evaporation -'e' = { - table2Version = 180 ; - indicatorOfParameter = 182 ; - } -#Evaporation -'e' = { - table2Version = 190 ; - indicatorOfParameter = 182 ; - } -#Soil temperature level 3 -'stl3' = { - table2Version = 128 ; - indicatorOfParameter = 183 ; - } -#Soil temperature level 3 -'stl3' = { - table2Version = 160 ; - indicatorOfParameter = 183 ; - } -#Soil wetness level 3 -'swl3' = { - table2Version = 128 ; - indicatorOfParameter = 184 ; - } -#Soil wetness level 3 -'swl3' = { - table2Version = 170 ; - indicatorOfParameter = 184 ; - } -#Convective cloud cover -'ccc' = { - table2Version = 128 ; - indicatorOfParameter = 185 ; - } -#Convective cloud cover -'ccc' = { - table2Version = 160 ; - indicatorOfParameter = 185 ; - } -#Convective cloud cover -'ccc' = { - table2Version = 170 ; - indicatorOfParameter = 185 ; - } -#Low cloud cover -'lcc' = { - table2Version = 128 ; - indicatorOfParameter = 186 ; - } -#Low cloud cover -'lcc' = { - table2Version = 160 ; - indicatorOfParameter = 186 ; - } -#Medium cloud cover -'mcc' = { - table2Version = 128 ; - indicatorOfParameter = 187 ; - } -#Medium cloud cover -'mcc' = { - table2Version = 160 ; - indicatorOfParameter = 187 ; - } -#High cloud cover -'hcc' = { - table2Version = 128 ; - indicatorOfParameter = 188 ; - } -#High cloud cover -'hcc' = { - table2Version = 160 ; - indicatorOfParameter = 188 ; - } -#Sunshine duration -'sund' = { - table2Version = 128 ; - indicatorOfParameter = 189 ; - } -#East-West component of sub-gridscale orographic variance -'ewov' = { - table2Version = 128 ; - indicatorOfParameter = 190 ; - } -#East-West component of sub-gridscale orographic variance -'ewov' = { - table2Version = 160 ; - indicatorOfParameter = 190 ; - } -#North-South component of sub-gridscale orographic variance -'nsov' = { - table2Version = 128 ; - indicatorOfParameter = 191 ; - } -#North-South component of sub-gridscale orographic variance -'nsov' = { - table2Version = 160 ; - indicatorOfParameter = 191 ; - } -#North-West/South-East component of sub-gridscale orographic variance -'nwov' = { - table2Version = 128 ; - indicatorOfParameter = 192 ; - } -#North-West/South-East component of sub-gridscale orographic variance -'nwov' = { - table2Version = 160 ; - indicatorOfParameter = 192 ; - } -#North-East/South-West component of sub-gridscale orographic variance -'neov' = { - table2Version = 128 ; - indicatorOfParameter = 193 ; - } -#North-East/South-West component of sub-gridscale orographic variance -'neov' = { - table2Version = 160 ; - indicatorOfParameter = 193 ; - } -#Brightness temperature -'btmp' = { - table2Version = 128 ; - indicatorOfParameter = 194 ; - } -#Eastward gravity wave surface stress -'lgws' = { - table2Version = 128 ; - indicatorOfParameter = 195 ; - } -#Eastward gravity wave surface stress -'lgws' = { - table2Version = 160 ; - indicatorOfParameter = 195 ; - } -#Northward gravity wave surface stress -'mgws' = { - table2Version = 128 ; - indicatorOfParameter = 196 ; - } -#Northward gravity wave surface stress -'mgws' = { - table2Version = 160 ; - indicatorOfParameter = 196 ; - } -#Gravity wave dissipation -'gwd' = { - table2Version = 128 ; - indicatorOfParameter = 197 ; - } -#Gravity wave dissipation -'gwd' = { - table2Version = 160 ; - indicatorOfParameter = 197 ; - } -#Skin reservoir content -'src' = { - table2Version = 128 ; - indicatorOfParameter = 198 ; - } -#Vegetation fraction -'veg' = { - table2Version = 128 ; - indicatorOfParameter = 199 ; - } -#Variance of sub-gridscale orography -'vso' = { - table2Version = 128 ; - indicatorOfParameter = 200 ; - } -#Variance of sub-gridscale orography -'vso' = { - table2Version = 160 ; - indicatorOfParameter = 200 ; - } -#Maximum temperature at 2 metres since previous post-processing -'mx2t' = { - table2Version = 128 ; - indicatorOfParameter = 201 ; - } -#Maximum temperature at 2 metres since previous post-processing -'mx2t' = { - table2Version = 170 ; - indicatorOfParameter = 201 ; - } -#Maximum temperature at 2 metres since previous post-processing -'mx2t' = { - table2Version = 190 ; - indicatorOfParameter = 201 ; - } -#Minimum temperature at 2 metres since previous post-processing -'mn2t' = { - table2Version = 128 ; - indicatorOfParameter = 202 ; - } -#Minimum temperature at 2 metres since previous post-processing -'mn2t' = { - table2Version = 170 ; - indicatorOfParameter = 202 ; - } -#Minimum temperature at 2 metres since previous post-processing -'mn2t' = { - table2Version = 190 ; - indicatorOfParameter = 202 ; - } -#Ozone mass mixing ratio -'o3' = { - table2Version = 128 ; - indicatorOfParameter = 203 ; - } -#Precipitation analysis weights -'paw' = { - table2Version = 128 ; - indicatorOfParameter = 204 ; - } -#Precipitation analysis weights -'paw' = { - table2Version = 160 ; - indicatorOfParameter = 204 ; - } -#Runoff -'ro' = { - table2Version = 128 ; - indicatorOfParameter = 205 ; - } -#Runoff -'ro' = { - table2Version = 180 ; - indicatorOfParameter = 205 ; - } -#Total column ozone -'tco3' = { - table2Version = 128 ; - indicatorOfParameter = 206 ; - } -#10 metre wind speed -'si10' = { - table2Version = 128 ; - indicatorOfParameter = 207 ; - } -#Top net short-wave (solar) radiation, clear sky -'tsrc' = { - table2Version = 128 ; - indicatorOfParameter = 208 ; - } -#Top net long-wave (thermal) radiation, clear sky -'ttrc' = { - table2Version = 128 ; - indicatorOfParameter = 209 ; - } -#Surface net short-wave (solar) radiation, clear sky -'ssrc' = { - table2Version = 128 ; - indicatorOfParameter = 210 ; - } -#Surface net long-wave (thermal) radiation, clear sky -'strc' = { - table2Version = 128 ; - indicatorOfParameter = 211 ; - } -#TOA incident short-wave (solar) radiation -'tisr' = { - table2Version = 128 ; - indicatorOfParameter = 212 ; - } -#Vertically integrated moisture divergence -'vimd' = { - table2Version = 128 ; - indicatorOfParameter = 213 ; - } -#Diabatic heating by radiation -'dhr' = { - table2Version = 128 ; - indicatorOfParameter = 214 ; - } -#Diabatic heating by vertical diffusion -'dhvd' = { - table2Version = 128 ; - indicatorOfParameter = 215 ; - } -#Diabatic heating by cumulus convection -'dhcc' = { - table2Version = 128 ; - indicatorOfParameter = 216 ; - } -#Diabatic heating large-scale condensation -'dhlc' = { - table2Version = 128 ; - indicatorOfParameter = 217 ; - } -#Vertical diffusion of zonal wind -'vdzw' = { - table2Version = 128 ; - indicatorOfParameter = 218 ; - } -#Vertical diffusion of meridional wind -'vdmw' = { - table2Version = 128 ; - indicatorOfParameter = 219 ; - } -#East-West gravity wave drag tendency -'ewgd' = { - table2Version = 128 ; - indicatorOfParameter = 220 ; - } -#North-South gravity wave drag tendency -'nsgd' = { - table2Version = 128 ; - indicatorOfParameter = 221 ; - } -#Convective tendency of zonal wind -'ctzw' = { - table2Version = 128 ; - indicatorOfParameter = 222 ; - } -#Convective tendency of zonal wind -'ctzw' = { - table2Version = 130 ; - indicatorOfParameter = 222 ; - } -#Convective tendency of meridional wind -'ctmw' = { - table2Version = 128 ; - indicatorOfParameter = 223 ; - } -#Convective tendency of meridional wind -'ctmw' = { - table2Version = 130 ; - indicatorOfParameter = 223 ; - } -#Vertical diffusion of humidity -'vdh' = { - table2Version = 128 ; - indicatorOfParameter = 224 ; - } -#Humidity tendency by cumulus convection -'htcc' = { - table2Version = 128 ; - indicatorOfParameter = 225 ; - } -#Humidity tendency by large-scale condensation -'htlc' = { - table2Version = 128 ; - indicatorOfParameter = 226 ; - } -#Tendency due to removal of negative humidity -'crnh' = { - table2Version = 128 ; - indicatorOfParameter = 227 ; - } -#Tendency due to removal of negative humidity -'crnh' = { - table2Version = 130 ; - indicatorOfParameter = 227 ; - } -#Total precipitation -'tp' = { - table2Version = 128 ; - indicatorOfParameter = 228 ; - } -#Total precipitation -'tp' = { - table2Version = 160 ; - indicatorOfParameter = 228 ; - } -#Total precipitation -'tp' = { - table2Version = 170 ; - indicatorOfParameter = 228 ; - } -#Total precipitation -'tp' = { - table2Version = 190 ; - indicatorOfParameter = 228 ; - } -#Instantaneous eastward turbulent surface stress -'iews' = { - table2Version = 128 ; - indicatorOfParameter = 229 ; - } -#Instantaneous eastward turbulent surface stress -'iews' = { - table2Version = 160 ; - indicatorOfParameter = 229 ; - } -#Instantaneous northward turbulent surface stress -'inss' = { - table2Version = 128 ; - indicatorOfParameter = 230 ; - } -#Instantaneous northward turbulent surface stress -'inss' = { - table2Version = 160 ; - indicatorOfParameter = 230 ; - } -#Instantaneous surface sensible heat flux -'ishf' = { - table2Version = 128 ; - indicatorOfParameter = 231 ; - } -#Instantaneous moisture flux -'ie' = { - table2Version = 128 ; - indicatorOfParameter = 232 ; - } -#Instantaneous moisture flux -'ie' = { - table2Version = 160 ; - indicatorOfParameter = 232 ; - } -#Apparent surface humidity -'asq' = { - table2Version = 128 ; - indicatorOfParameter = 233 ; - } -#Apparent surface humidity -'asq' = { - table2Version = 160 ; - indicatorOfParameter = 233 ; - } -#Logarithm of surface roughness length for heat (climatological) -'lsrh' = { - table2Version = 128 ; - indicatorOfParameter = 234 ; - } -#Logarithm of surface roughness length for heat (climatological) -'lsrh' = { - table2Version = 160 ; - indicatorOfParameter = 234 ; - } -#Skin temperature -'skt' = { - table2Version = 128 ; - indicatorOfParameter = 235 ; - } -#Skin temperature -'skt' = { - table2Version = 160 ; - indicatorOfParameter = 235 ; - } -#Soil temperature level 4 -'stl4' = { - table2Version = 128 ; - indicatorOfParameter = 236 ; - } -#Soil temperature level 4 -'stl4' = { - table2Version = 160 ; - indicatorOfParameter = 236 ; - } -#Soil wetness level 4 -'swl4' = { - table2Version = 128 ; - indicatorOfParameter = 237 ; - } -#Soil wetness level 4 -'swl4' = { - table2Version = 160 ; - indicatorOfParameter = 237 ; - } -#Temperature of snow layer -'tsn' = { - table2Version = 128 ; - indicatorOfParameter = 238 ; - } -#Temperature of snow layer -'tsn' = { - table2Version = 160 ; - indicatorOfParameter = 238 ; - } -#Convective snowfall -'csf' = { - table2Version = 128 ; - indicatorOfParameter = 239 ; - } -#Large-scale snowfall -'lsf' = { - table2Version = 128 ; - indicatorOfParameter = 240 ; - } -#Accumulated cloud fraction tendency -'acf' = { - table2Version = 128 ; - indicatorOfParameter = 241 ; - } -#Accumulated liquid water tendency -'alw' = { - table2Version = 128 ; - indicatorOfParameter = 242 ; - } -#Forecast albedo -'fal' = { - table2Version = 128 ; - indicatorOfParameter = 243 ; - } -#Forecast surface roughness -'fsr' = { - table2Version = 128 ; - indicatorOfParameter = 244 ; - } -#Forecast surface roughness -'fsr' = { - table2Version = 160 ; - indicatorOfParameter = 244 ; - } -#Forecast logarithm of surface roughness for heat -'flsr' = { - table2Version = 128 ; - indicatorOfParameter = 245 ; - } -#Forecast logarithm of surface roughness for heat -'flsr' = { - table2Version = 160 ; - indicatorOfParameter = 245 ; - } -#Specific cloud liquid water content -'clwc' = { - table2Version = 128 ; - indicatorOfParameter = 246 ; - } -#Specific cloud ice water content -'ciwc' = { - table2Version = 128 ; - indicatorOfParameter = 247 ; - } -#Fraction of cloud cover -'cc' = { - table2Version = 128 ; - indicatorOfParameter = 248 ; - } -#Accumulated ice water tendency -'aiw' = { - table2Version = 128 ; - indicatorOfParameter = 249 ; - } -#Ice age -'ice' = { - table2Version = 128 ; - indicatorOfParameter = 250 ; - } -#Adiabatic tendency of temperature -'atte' = { - table2Version = 128 ; - indicatorOfParameter = 251 ; - } -#Adiabatic tendency of humidity -'athe' = { - table2Version = 128 ; - indicatorOfParameter = 252 ; - } -#Adiabatic tendency of zonal wind -'atze' = { - table2Version = 128 ; - indicatorOfParameter = 253 ; - } -#Adiabatic tendency of meridional wind -'atmw' = { - table2Version = 128 ; - indicatorOfParameter = 254 ; - } -#Indicates a missing value -'p255.190' = { - table2Version = 128 ; - indicatorOfParameter = 255 ; - } -#Indicates a missing value -'p255.190' = { - table2Version = 130 ; - indicatorOfParameter = 255 ; - } -#Indicates a missing value -'p255.190' = { - table2Version = 132 ; - indicatorOfParameter = 255 ; - } -#Indicates a missing value -'p255.190' = { - table2Version = 160 ; - indicatorOfParameter = 255 ; - } -#Indicates a missing value -'p255.190' = { - table2Version = 170 ; - indicatorOfParameter = 255 ; - } -#Indicates a missing value -'p255.190' = { - table2Version = 180 ; - indicatorOfParameter = 255 ; - } -#Indicates a missing value -'p255.190' = { - table2Version = 190 ; - indicatorOfParameter = 255 ; - } -#Stream function difference -'strfdiff' = { - table2Version = 200 ; - indicatorOfParameter = 1 ; - } -#Velocity potential difference -'vpotdiff' = { - table2Version = 200 ; - indicatorOfParameter = 2 ; - } -#Potential temperature difference -'ptdiff' = { - table2Version = 200 ; - indicatorOfParameter = 3 ; - } -#Equivalent potential temperature difference -'eqptdiff' = { - table2Version = 200 ; - indicatorOfParameter = 4 ; - } -#Saturated equivalent potential temperature difference -'septdiff' = { - table2Version = 200 ; - indicatorOfParameter = 5 ; - } -#U component of divergent wind difference -'udvwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 11 ; - } -#V component of divergent wind difference -'vdvwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 12 ; - } -#U component of rotational wind difference -'urtwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 13 ; - } -#V component of rotational wind difference -'vrtwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 14 ; - } -#Unbalanced component of temperature difference -'uctpdiff' = { - table2Version = 200 ; - indicatorOfParameter = 21 ; - } -#Unbalanced component of logarithm of surface pressure difference -'uclndiff' = { - table2Version = 200 ; - indicatorOfParameter = 22 ; - } -#Unbalanced component of divergence difference -'ucdvdiff' = { - table2Version = 200 ; - indicatorOfParameter = 23 ; - } -#Reserved for future unbalanced components -'p24.200' = { - table2Version = 200 ; - indicatorOfParameter = 24 ; - } -#Reserved for future unbalanced components -'p25.200' = { - table2Version = 200 ; - indicatorOfParameter = 25 ; - } -#Lake cover difference -'cldiff' = { - table2Version = 200 ; - indicatorOfParameter = 26 ; - } -#Low vegetation cover difference -'cvldiff' = { - table2Version = 200 ; - indicatorOfParameter = 27 ; - } -#High vegetation cover difference -'cvhdiff' = { - table2Version = 200 ; - indicatorOfParameter = 28 ; - } -#Type of low vegetation difference -'tvldiff' = { - table2Version = 200 ; - indicatorOfParameter = 29 ; - } -#Type of high vegetation difference -'tvhdiff' = { - table2Version = 200 ; - indicatorOfParameter = 30 ; - } -#Sea-ice cover difference -'sicdiff' = { - table2Version = 200 ; - indicatorOfParameter = 31 ; - } -#Snow albedo difference -'asndiff' = { - table2Version = 200 ; - indicatorOfParameter = 32 ; - } -#Snow density difference -'rsndiff' = { - table2Version = 200 ; - indicatorOfParameter = 33 ; - } -#Sea surface temperature difference -'sstdiff' = { - table2Version = 200 ; - indicatorOfParameter = 34 ; - } -#Ice surface temperature layer 1 difference -'istl1diff' = { - table2Version = 200 ; - indicatorOfParameter = 35 ; - } -#Ice surface temperature layer 2 difference -'istl2diff' = { - table2Version = 200 ; - indicatorOfParameter = 36 ; - } -#Ice surface temperature layer 3 difference -'istl3diff' = { - table2Version = 200 ; - indicatorOfParameter = 37 ; - } -#Ice surface temperature layer 4 difference -'istl4diff' = { - table2Version = 200 ; - indicatorOfParameter = 38 ; - } -#Volumetric soil water layer 1 difference -'swvl1diff' = { - table2Version = 200 ; - indicatorOfParameter = 39 ; - } -#Volumetric soil water layer 2 difference -'swvl2diff' = { - table2Version = 200 ; - indicatorOfParameter = 40 ; - } -#Volumetric soil water layer 3 difference -'swvl3diff' = { - table2Version = 200 ; - indicatorOfParameter = 41 ; - } -#Volumetric soil water layer 4 difference -'swvl4diff' = { - table2Version = 200 ; - indicatorOfParameter = 42 ; - } -#Soil type difference -'sltdiff' = { - table2Version = 200 ; - indicatorOfParameter = 43 ; - } -#Snow evaporation difference -'esdiff' = { - table2Version = 200 ; - indicatorOfParameter = 44 ; - } -#Snowmelt difference -'smltdiff' = { - table2Version = 200 ; - indicatorOfParameter = 45 ; - } -#Solar duration difference -'sdurdiff' = { - table2Version = 200 ; - indicatorOfParameter = 46 ; - } -#Direct solar radiation difference -'dsrpdiff' = { - table2Version = 200 ; - indicatorOfParameter = 47 ; - } -#Magnitude of turbulent surface stress difference -'magssdiff' = { - table2Version = 200 ; - indicatorOfParameter = 48 ; - } -#10 metre wind gust difference -'fgdiff10' = { - table2Version = 200 ; - indicatorOfParameter = 49 ; - } -#Large-scale precipitation fraction difference -'lspfdiff' = { - table2Version = 200 ; - indicatorOfParameter = 50 ; - } -#Maximum 2 metre temperature difference -'mx2t24diff' = { - table2Version = 200 ; - indicatorOfParameter = 51 ; - } -#Minimum 2 metre temperature difference -'mn2t24diff' = { - table2Version = 200 ; - indicatorOfParameter = 52 ; - } -#Montgomery potential difference -'montdiff' = { - table2Version = 200 ; - indicatorOfParameter = 53 ; - } -#Pressure difference -'presdiff' = { - table2Version = 200 ; - indicatorOfParameter = 54 ; - } -#Mean 2 metre temperature in the last 24 hours difference -'mean2t24diff' = { - table2Version = 200 ; - indicatorOfParameter = 55 ; - } -#Mean 2 metre dewpoint temperature in the last 24 hours difference -'mn2d24diff' = { - table2Version = 200 ; - indicatorOfParameter = 56 ; - } -#Downward UV radiation at the surface difference -'uvbdiff' = { - table2Version = 200 ; - indicatorOfParameter = 57 ; - } -#Photosynthetically active radiation at the surface difference -'pardiff' = { - table2Version = 200 ; - indicatorOfParameter = 58 ; - } -#Convective available potential energy difference -'capediff' = { - table2Version = 200 ; - indicatorOfParameter = 59 ; - } -#Potential vorticity difference -'pvdiff' = { - table2Version = 200 ; - indicatorOfParameter = 60 ; - } -#Total precipitation from observations difference -'tpodiff' = { - table2Version = 200 ; - indicatorOfParameter = 61 ; - } -#Observation count difference -'obctdiff' = { - table2Version = 200 ; - indicatorOfParameter = 62 ; - } -#Start time for skin temperature difference -'p63.200' = { - table2Version = 200 ; - indicatorOfParameter = 63 ; - } -#Finish time for skin temperature difference -'p64.200' = { - table2Version = 200 ; - indicatorOfParameter = 64 ; - } -#Skin temperature difference -'p65.200' = { - table2Version = 200 ; - indicatorOfParameter = 65 ; - } -#Leaf area index, low vegetation -'p66.200' = { - table2Version = 200 ; - indicatorOfParameter = 66 ; - } -#Leaf area index, high vegetation -'p67.200' = { - table2Version = 200 ; - indicatorOfParameter = 67 ; - } -#Minimum stomatal resistance, low vegetation -'p68.200' = { - table2Version = 200 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'p69.200' = { - table2Version = 200 ; - indicatorOfParameter = 69 ; - } -#Biome cover, low vegetation -'p70.200' = { - table2Version = 200 ; - indicatorOfParameter = 70 ; - } -#Biome cover, high vegetation -'p71.200' = { - table2Version = 200 ; - indicatorOfParameter = 71 ; - } -#Total column liquid water -'p78.200' = { - table2Version = 200 ; - indicatorOfParameter = 78 ; - } -#Total column ice water -'p79.200' = { - table2Version = 200 ; - indicatorOfParameter = 79 ; - } -#Experimental product -'p80.200' = { - table2Version = 200 ; - indicatorOfParameter = 80 ; - } -#Experimental product -'p81.200' = { - table2Version = 200 ; - indicatorOfParameter = 81 ; - } -#Experimental product -'p82.200' = { - table2Version = 200 ; - indicatorOfParameter = 82 ; - } -#Experimental product -'p83.200' = { - table2Version = 200 ; - indicatorOfParameter = 83 ; - } -#Experimental product -'p84.200' = { - table2Version = 200 ; - indicatorOfParameter = 84 ; - } -#Experimental product -'p85.200' = { - table2Version = 200 ; - indicatorOfParameter = 85 ; - } -#Experimental product -'p86.200' = { - table2Version = 200 ; - indicatorOfParameter = 86 ; - } -#Experimental product -'p87.200' = { - table2Version = 200 ; - indicatorOfParameter = 87 ; - } -#Experimental product -'p88.200' = { - table2Version = 200 ; - indicatorOfParameter = 88 ; - } -#Experimental product -'p89.200' = { - table2Version = 200 ; - indicatorOfParameter = 89 ; - } -#Experimental product -'p90.200' = { - table2Version = 200 ; - indicatorOfParameter = 90 ; - } -#Experimental product -'p91.200' = { - table2Version = 200 ; - indicatorOfParameter = 91 ; - } -#Experimental product -'p92.200' = { - table2Version = 200 ; - indicatorOfParameter = 92 ; - } -#Experimental product -'p93.200' = { - table2Version = 200 ; - indicatorOfParameter = 93 ; - } -#Experimental product -'p94.200' = { - table2Version = 200 ; - indicatorOfParameter = 94 ; - } -#Experimental product -'p95.200' = { - table2Version = 200 ; - indicatorOfParameter = 95 ; - } -#Experimental product -'p96.200' = { - table2Version = 200 ; - indicatorOfParameter = 96 ; - } -#Experimental product -'p97.200' = { - table2Version = 200 ; - indicatorOfParameter = 97 ; - } -#Experimental product -'p98.200' = { - table2Version = 200 ; - indicatorOfParameter = 98 ; - } -#Experimental product -'p99.200' = { - table2Version = 200 ; - indicatorOfParameter = 99 ; - } -#Experimental product -'p100.200' = { - table2Version = 200 ; - indicatorOfParameter = 100 ; - } -#Experimental product -'p101.200' = { - table2Version = 200 ; - indicatorOfParameter = 101 ; - } -#Experimental product -'p102.200' = { - table2Version = 200 ; - indicatorOfParameter = 102 ; - } -#Experimental product -'p103.200' = { - table2Version = 200 ; - indicatorOfParameter = 103 ; - } -#Experimental product -'p104.200' = { - table2Version = 200 ; - indicatorOfParameter = 104 ; - } -#Experimental product -'p105.200' = { - table2Version = 200 ; - indicatorOfParameter = 105 ; - } -#Experimental product -'p106.200' = { - table2Version = 200 ; - indicatorOfParameter = 106 ; - } -#Experimental product -'p107.200' = { - table2Version = 200 ; - indicatorOfParameter = 107 ; - } -#Experimental product -'p108.200' = { - table2Version = 200 ; - indicatorOfParameter = 108 ; - } -#Experimental product -'p109.200' = { - table2Version = 200 ; - indicatorOfParameter = 109 ; - } -#Experimental product -'p110.200' = { - table2Version = 200 ; - indicatorOfParameter = 110 ; - } -#Experimental product -'p111.200' = { - table2Version = 200 ; - indicatorOfParameter = 111 ; - } -#Experimental product -'p112.200' = { - table2Version = 200 ; - indicatorOfParameter = 112 ; - } -#Experimental product -'p113.200' = { - table2Version = 200 ; - indicatorOfParameter = 113 ; - } -#Experimental product -'p114.200' = { - table2Version = 200 ; - indicatorOfParameter = 114 ; - } -#Experimental product -'p115.200' = { - table2Version = 200 ; - indicatorOfParameter = 115 ; - } -#Experimental product -'p116.200' = { - table2Version = 200 ; - indicatorOfParameter = 116 ; - } -#Experimental product -'p117.200' = { - table2Version = 200 ; - indicatorOfParameter = 117 ; - } -#Experimental product -'p118.200' = { - table2Version = 200 ; - indicatorOfParameter = 118 ; - } -#Experimental product -'p119.200' = { - table2Version = 200 ; - indicatorOfParameter = 119 ; - } -#Experimental product -'p120.200' = { - table2Version = 200 ; - indicatorOfParameter = 120 ; - } -#Maximum temperature at 2 metres difference -'mx2t6diff' = { - table2Version = 200 ; - indicatorOfParameter = 121 ; - } -#Minimum temperature at 2 metres difference -'mn2t6diff' = { - table2Version = 200 ; - indicatorOfParameter = 122 ; - } -#10 metre wind gust in the last 6 hours difference -'fg6diff10' = { - table2Version = 200 ; - indicatorOfParameter = 123 ; - } -#Vertically integrated total energy -'p125.200' = { - table2Version = 200 ; - indicatorOfParameter = 125 ; - } -#Generic parameter for sensitive area prediction -'p126.200' = { - table2Version = 200 ; - indicatorOfParameter = 126 ; - } -#Atmospheric tide difference -'atdiff' = { - table2Version = 200 ; - indicatorOfParameter = 127 ; - } -#Budget values difference -'bvdiff' = { - table2Version = 200 ; - indicatorOfParameter = 128 ; - } -#Geopotential difference -'zdiff' = { - table2Version = 200 ; - indicatorOfParameter = 129 ; - } -#Temperature difference -'tdiff' = { - table2Version = 200 ; - indicatorOfParameter = 130 ; - } -#U component of wind difference -'udiff' = { - table2Version = 200 ; - indicatorOfParameter = 131 ; - } -#V component of wind difference -'vdiff' = { - table2Version = 200 ; - indicatorOfParameter = 132 ; - } -#Specific humidity difference -'qdiff' = { - table2Version = 200 ; - indicatorOfParameter = 133 ; - } -#Surface pressure difference -'spdiff' = { - table2Version = 200 ; - indicatorOfParameter = 134 ; - } -#Vertical velocity (pressure) difference -'wdiff' = { - table2Version = 200 ; - indicatorOfParameter = 135 ; - } -#Total column water difference -'tcwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 136 ; - } -#Total column water vapour difference -'tcwvdiff' = { - table2Version = 200 ; - indicatorOfParameter = 137 ; - } -#Vorticity (relative) difference -'vodiff' = { - table2Version = 200 ; - indicatorOfParameter = 138 ; - } -#Soil temperature level 1 difference -'stl1diff' = { - table2Version = 200 ; - indicatorOfParameter = 139 ; - } -#Soil wetness level 1 difference -'swl1diff' = { - table2Version = 200 ; - indicatorOfParameter = 140 ; - } -#Snow depth difference -'sddiff' = { - table2Version = 200 ; - indicatorOfParameter = 141 ; - } -#Stratiform precipitation (Large-scale precipitation) difference -'lspdiff' = { - table2Version = 200 ; - indicatorOfParameter = 142 ; - } -#Convective precipitation difference -'cpdiff' = { - table2Version = 200 ; - indicatorOfParameter = 143 ; - } -#Snowfall (convective + stratiform) difference -'sfdiff' = { - table2Version = 200 ; - indicatorOfParameter = 144 ; - } -#Boundary layer dissipation difference -'blddiff' = { - table2Version = 200 ; - indicatorOfParameter = 145 ; - } -#Surface sensible heat flux difference -'sshfdiff' = { - table2Version = 200 ; - indicatorOfParameter = 146 ; - } -#Surface latent heat flux difference -'slhfdiff' = { - table2Version = 200 ; - indicatorOfParameter = 147 ; - } -#Charnock difference -'chnkdiff' = { - table2Version = 200 ; - indicatorOfParameter = 148 ; - } -#Surface net radiation difference -'snrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 149 ; - } -#Top net radiation difference -'tnrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 150 ; - } -#Mean sea level pressure difference -'msldiff' = { - table2Version = 200 ; - indicatorOfParameter = 151 ; - } -#Logarithm of surface pressure difference -'lnspdiff' = { - table2Version = 200 ; - indicatorOfParameter = 152 ; - } -#Short-wave heating rate difference -'swhrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 153 ; - } -#Long-wave heating rate difference -'lwhrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 154 ; - } -#Divergence difference -'ddiff' = { - table2Version = 200 ; - indicatorOfParameter = 155 ; - } -#Height difference -'ghdiff' = { - table2Version = 200 ; - indicatorOfParameter = 156 ; - } -#Relative humidity difference -'rdiff' = { - table2Version = 200 ; - indicatorOfParameter = 157 ; - } -#Tendency of surface pressure difference -'tspdiff' = { - table2Version = 200 ; - indicatorOfParameter = 158 ; - } -#Boundary layer height difference -'blhdiff' = { - table2Version = 200 ; - indicatorOfParameter = 159 ; - } -#Standard deviation of orography difference -'sdordiff' = { - table2Version = 200 ; - indicatorOfParameter = 160 ; - } -#Anisotropy of sub-gridscale orography difference -'isordiff' = { - table2Version = 200 ; - indicatorOfParameter = 161 ; - } -#Angle of sub-gridscale orography difference -'anordiff' = { - table2Version = 200 ; - indicatorOfParameter = 162 ; - } -#Slope of sub-gridscale orography difference -'slordiff' = { - table2Version = 200 ; - indicatorOfParameter = 163 ; - } -#Total cloud cover difference -'tccdiff' = { - table2Version = 200 ; - indicatorOfParameter = 164 ; - } -#10 metre U wind component difference -'udiff10' = { - table2Version = 200 ; - indicatorOfParameter = 165 ; - } -#10 metre V wind component difference -'vdiff10' = { - table2Version = 200 ; - indicatorOfParameter = 166 ; - } -#2 metre temperature difference -'difft2' = { - table2Version = 200 ; - indicatorOfParameter = 167 ; - } -#Surface solar radiation downwards difference -'ssrddiff' = { - table2Version = 200 ; - indicatorOfParameter = 169 ; - } -#Soil temperature level 2 difference -'stl2diff' = { - table2Version = 200 ; - indicatorOfParameter = 170 ; - } -#Soil wetness level 2 difference -'swl2diff' = { - table2Version = 200 ; - indicatorOfParameter = 171 ; - } -#Land-sea mask difference -'lsmdiff' = { - table2Version = 200 ; - indicatorOfParameter = 172 ; - } -#Surface roughness difference -'srdiff' = { - table2Version = 200 ; - indicatorOfParameter = 173 ; - } -#Albedo difference -'aldiff' = { - table2Version = 200 ; - indicatorOfParameter = 174 ; - } -#Surface thermal radiation downwards difference -'strddiff' = { - table2Version = 200 ; - indicatorOfParameter = 175 ; - } -#Surface net solar radiation difference -'ssrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 176 ; - } -#Surface net thermal radiation difference -'strdiff' = { - table2Version = 200 ; - indicatorOfParameter = 177 ; - } -#Top net solar radiation difference -'tsrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 178 ; - } -#Top net thermal radiation difference -'ttrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 179 ; - } -#East-West surface stress difference -'ewssdiff' = { - table2Version = 200 ; - indicatorOfParameter = 180 ; - } -#North-South surface stress difference -'nsssdiff' = { - table2Version = 200 ; - indicatorOfParameter = 181 ; - } -#Evaporation difference -'ediff' = { - table2Version = 200 ; - indicatorOfParameter = 182 ; - } -#Soil temperature level 3 difference -'stl3diff' = { - table2Version = 200 ; - indicatorOfParameter = 183 ; - } -#Soil wetness level 3 difference -'swl3diff' = { - table2Version = 200 ; - indicatorOfParameter = 184 ; - } -#Convective cloud cover difference -'cccdiff' = { - table2Version = 200 ; - indicatorOfParameter = 185 ; - } -#Low cloud cover difference -'lccdiff' = { - table2Version = 200 ; - indicatorOfParameter = 186 ; - } -#Medium cloud cover difference -'mccdiff' = { - table2Version = 200 ; - indicatorOfParameter = 187 ; - } -#High cloud cover difference -'hccdiff' = { - table2Version = 200 ; - indicatorOfParameter = 188 ; - } -#Sunshine duration difference -'sunddiff' = { - table2Version = 200 ; - indicatorOfParameter = 189 ; - } -#East-West component of sub-gridscale orographic variance difference -'ewovdiff' = { - table2Version = 200 ; - indicatorOfParameter = 190 ; - } -#North-South component of sub-gridscale orographic variance difference -'nsovdiff' = { - table2Version = 200 ; - indicatorOfParameter = 191 ; - } -#North-West/South-East component of sub-gridscale orographic variance difference -'nwovdiff' = { - table2Version = 200 ; - indicatorOfParameter = 192 ; - } -#North-East/South-West component of sub-gridscale orographic variance difference -'neovdiff' = { - table2Version = 200 ; - indicatorOfParameter = 193 ; - } -#Brightness temperature difference -'btmpdiff' = { - table2Version = 200 ; - indicatorOfParameter = 194 ; - } -#Longitudinal component of gravity wave stress difference -'lgwsdiff' = { - table2Version = 200 ; - indicatorOfParameter = 195 ; - } -#Meridional component of gravity wave stress difference -'mgwsdiff' = { - table2Version = 200 ; - indicatorOfParameter = 196 ; - } -#Gravity wave dissipation difference -'gwddiff' = { - table2Version = 200 ; - indicatorOfParameter = 197 ; - } -#Skin reservoir content difference -'srcdiff' = { - table2Version = 200 ; - indicatorOfParameter = 198 ; - } -#Vegetation fraction difference -'vegdiff' = { - table2Version = 200 ; - indicatorOfParameter = 199 ; - } -#Variance of sub-gridscale orography difference -'vsodiff' = { - table2Version = 200 ; - indicatorOfParameter = 200 ; - } -#Maximum temperature at 2 metres since previous post-processing difference -'mx2tdiff' = { - table2Version = 200 ; - indicatorOfParameter = 201 ; - } -#Minimum temperature at 2 metres since previous post-processing difference -'mn2tdiff' = { - table2Version = 200 ; - indicatorOfParameter = 202 ; - } -#Ozone mass mixing ratio difference -'o3diff' = { - table2Version = 200 ; - indicatorOfParameter = 203 ; - } -#Precipitation analysis weights difference -'pawdiff' = { - table2Version = 200 ; - indicatorOfParameter = 204 ; - } -#Runoff difference -'rodiff' = { - table2Version = 200 ; - indicatorOfParameter = 205 ; - } -#Total column ozone difference -'tco3diff' = { - table2Version = 200 ; - indicatorOfParameter = 206 ; - } -#10 metre wind speed difference -'sidiff10' = { - table2Version = 200 ; - indicatorOfParameter = 207 ; - } -#Top net solar radiation, clear sky difference -'tsrcdiff' = { - table2Version = 200 ; - indicatorOfParameter = 208 ; - } -#Top net thermal radiation, clear sky difference -'ttrcdiff' = { - table2Version = 200 ; - indicatorOfParameter = 209 ; - } -#Surface net solar radiation, clear sky difference -'ssrcdiff' = { - table2Version = 200 ; - indicatorOfParameter = 210 ; - } -#Surface net thermal radiation, clear sky difference -'strcdiff' = { - table2Version = 200 ; - indicatorOfParameter = 211 ; - } -#TOA incident solar radiation difference -'tisrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 212 ; - } -#Diabatic heating by radiation difference -'dhrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 214 ; - } -#Diabatic heating by vertical diffusion difference -'dhvddiff' = { - table2Version = 200 ; - indicatorOfParameter = 215 ; - } -#Diabatic heating by cumulus convection difference -'dhccdiff' = { - table2Version = 200 ; - indicatorOfParameter = 216 ; - } -#Diabatic heating large-scale condensation difference -'dhlcdiff' = { - table2Version = 200 ; - indicatorOfParameter = 217 ; - } -#Vertical diffusion of zonal wind difference -'vdzwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 218 ; - } -#Vertical diffusion of meridional wind difference -'vdmwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 219 ; - } -#East-West gravity wave drag tendency difference -'ewgddiff' = { - table2Version = 200 ; - indicatorOfParameter = 220 ; - } -#North-South gravity wave drag tendency difference -'nsgddiff' = { - table2Version = 200 ; - indicatorOfParameter = 221 ; - } -#Convective tendency of zonal wind difference -'ctzwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 222 ; - } -#Convective tendency of meridional wind difference -'ctmwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 223 ; - } -#Vertical diffusion of humidity difference -'vdhdiff' = { - table2Version = 200 ; - indicatorOfParameter = 224 ; - } -#Humidity tendency by cumulus convection difference -'htccdiff' = { - table2Version = 200 ; - indicatorOfParameter = 225 ; - } -#Humidity tendency by large-scale condensation difference -'htlcdiff' = { - table2Version = 200 ; - indicatorOfParameter = 226 ; - } -#Change from removal of negative humidity difference -'crnhdiff' = { - table2Version = 200 ; - indicatorOfParameter = 227 ; - } -#Total precipitation difference -'tpdiff' = { - table2Version = 200 ; - indicatorOfParameter = 228 ; - } -#Instantaneous X surface stress difference -'iewsdiff' = { - table2Version = 200 ; - indicatorOfParameter = 229 ; - } -#Instantaneous Y surface stress difference -'inssdiff' = { - table2Version = 200 ; - indicatorOfParameter = 230 ; - } -#Instantaneous surface heat flux difference -'ishfdiff' = { - table2Version = 200 ; - indicatorOfParameter = 231 ; - } -#Instantaneous moisture flux difference -'iediff' = { - table2Version = 200 ; - indicatorOfParameter = 232 ; - } -#Apparent surface humidity difference -'asqdiff' = { - table2Version = 200 ; - indicatorOfParameter = 233 ; - } -#Logarithm of surface roughness length for heat difference -'lsrhdiff' = { - table2Version = 200 ; - indicatorOfParameter = 234 ; - } -#Skin temperature difference -'sktdiff' = { - table2Version = 200 ; - indicatorOfParameter = 235 ; - } -#Soil temperature level 4 difference -'stl4diff' = { - table2Version = 200 ; - indicatorOfParameter = 236 ; - } -#Soil wetness level 4 difference -'swl4diff' = { - table2Version = 200 ; - indicatorOfParameter = 237 ; - } -#Temperature of snow layer difference -'tsndiff' = { - table2Version = 200 ; - indicatorOfParameter = 238 ; - } -#Convective snowfall difference -'csfdiff' = { - table2Version = 200 ; - indicatorOfParameter = 239 ; - } -#Large scale snowfall difference -'lsfdiff' = { - table2Version = 200 ; - indicatorOfParameter = 240 ; - } -#Accumulated cloud fraction tendency difference -'acfdiff' = { - table2Version = 200 ; - indicatorOfParameter = 241 ; - } -#Accumulated liquid water tendency difference -'alwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 242 ; - } -#Forecast albedo difference -'faldiff' = { - table2Version = 200 ; - indicatorOfParameter = 243 ; - } -#Forecast surface roughness difference -'fsrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 244 ; - } -#Forecast logarithm of surface roughness for heat difference -'flsrdiff' = { - table2Version = 200 ; - indicatorOfParameter = 245 ; - } -#Specific cloud liquid water content difference -'clwcdiff' = { - table2Version = 200 ; - indicatorOfParameter = 246 ; - } -#Specific cloud ice water content difference -'ciwcdiff' = { - table2Version = 200 ; - indicatorOfParameter = 247 ; - } -#Cloud cover difference -'ccdiff' = { - table2Version = 200 ; - indicatorOfParameter = 248 ; - } -#Accumulated ice water tendency difference -'aiwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 249 ; - } -#Ice age difference -'icediff' = { - table2Version = 200 ; - indicatorOfParameter = 250 ; - } -#Adiabatic tendency of temperature difference -'attediff' = { - table2Version = 200 ; - indicatorOfParameter = 251 ; - } -#Adiabatic tendency of humidity difference -'athediff' = { - table2Version = 200 ; - indicatorOfParameter = 252 ; - } -#Adiabatic tendency of zonal wind difference -'atzediff' = { - table2Version = 200 ; - indicatorOfParameter = 253 ; - } -#Adiabatic tendency of meridional wind difference -'atmwdiff' = { - table2Version = 200 ; - indicatorOfParameter = 254 ; - } -#Indicates a missing value -'p255.200' = { - table2Version = 200 ; - indicatorOfParameter = 255 ; - } -#Probability of a tropical storm -'p131089' = { - table2Version = 131 ; - indicatorOfParameter = 89 ; - } -#Probability of a hurricane -'p131090' = { - table2Version = 131 ; - indicatorOfParameter = 90 ; - } -#Probability of a tropical depression -'p131091' = { - table2Version = 131 ; - indicatorOfParameter = 91 ; - } -#Climatological probability of a tropical storm -'p131092' = { - table2Version = 131 ; - indicatorOfParameter = 92 ; - } -#Climatological probability of a hurricane -'p131093' = { - table2Version = 131 ; - indicatorOfParameter = 93 ; - } -#Climatological probability of a tropical depression -'p131094' = { - table2Version = 131 ; - indicatorOfParameter = 94 ; - } -#Probability anomaly of a tropical storm -'p131095' = { - table2Version = 131 ; - indicatorOfParameter = 95 ; - } -#Probability anomaly of a hurricane -'p131096' = { - table2Version = 131 ; - indicatorOfParameter = 96 ; - } -#Probability anomaly of a tropical depression -'p131097' = { - table2Version = 131 ; - indicatorOfParameter = 97 ; - } -#Total precipitation of at least 25 mm -'tpg25' = { - table2Version = 131 ; - indicatorOfParameter = 98 ; - } -#Total precipitation of at least 50 mm -'tpg50' = { - table2Version = 131 ; - indicatorOfParameter = 99 ; - } -#10 metre wind gust of at least 10 m/s -'fgg1010' = { - table2Version = 131 ; - indicatorOfParameter = 100 ; - } -#Convective available potential energy shear index -'capesi' = { - table2Version = 132 ; - indicatorOfParameter = 44 ; - } -#Water vapour flux index -'wvfi' = { - table2Version = 132 ; - indicatorOfParameter = 45 ; - } -#Convective available potential energy index -'capei' = { - table2Version = 132 ; - indicatorOfParameter = 59 ; - } -#Maximum of significant wave height index -'maxswhi' = { - table2Version = 132 ; - indicatorOfParameter = 216 ; - } -#Wave experimental parameter 1 -'p140080' = { - table2Version = 140 ; - indicatorOfParameter = 80 ; - } -#Wave experimental parameter 2 -'p140081' = { - table2Version = 140 ; - indicatorOfParameter = 81 ; - } -#Wave experimental parameter 3 -'p140082' = { - table2Version = 140 ; - indicatorOfParameter = 82 ; - } -#Wave experimental parameter 4 -'p140083' = { - table2Version = 140 ; - indicatorOfParameter = 83 ; - } -#Wave experimental parameter 5 -'p140084' = { - table2Version = 140 ; - indicatorOfParameter = 84 ; - } -#Wave induced mean sea level correction -'weta' = { - table2Version = 140 ; - indicatorOfParameter = 98 ; - } -#Ratio of wave angular and frequency width -'wraf' = { - table2Version = 140 ; - indicatorOfParameter = 99 ; - } -#Number of events in freak waves statistics -'wnslc' = { - table2Version = 140 ; - indicatorOfParameter = 100 ; - } -#U-component of atmospheric surface momentum flux -'utaua' = { - table2Version = 140 ; - indicatorOfParameter = 101 ; - } -#V-component of atmospheric surface momentum flux -'vtaua' = { - table2Version = 140 ; - indicatorOfParameter = 102 ; - } -#U-component of surface momentum flux into ocean -'utauo' = { - table2Version = 140 ; - indicatorOfParameter = 103 ; - } -#V-component of surface momentum flux into ocean -'vtauo' = { - table2Version = 140 ; - indicatorOfParameter = 104 ; - } -#Wave turbulent energy flux into ocean -'wphio' = { - table2Version = 140 ; - indicatorOfParameter = 105 ; - } -#Wave directional width of first swell partition -'wdw1' = { - table2Version = 140 ; - indicatorOfParameter = 106 ; - } -#Wave frequency width of first swell partition -'wfw1' = { - table2Version = 140 ; - indicatorOfParameter = 107 ; - } -#Wave directional width of second swell partition -'wdw2' = { - table2Version = 140 ; - indicatorOfParameter = 108 ; - } -#Wave frequency width of second swell partition -'wfw2' = { - table2Version = 140 ; - indicatorOfParameter = 109 ; - } -#Wave directional width of third swell partition -'wdw3' = { - table2Version = 140 ; - indicatorOfParameter = 110 ; - } -#Wave frequency width of third swell partition -'wfw3' = { - table2Version = 140 ; - indicatorOfParameter = 111 ; - } -#Wave energy flux magnitude -'wefxm' = { - table2Version = 140 ; - indicatorOfParameter = 112 ; - } -#Wave energy flux mean direction -'wefxd' = { - table2Version = 140 ; - indicatorOfParameter = 113 ; - } -#Significant wave height of all waves with periods within the inclusive range from 10 to 12 seconds -'h1012' = { - table2Version = 140 ; - indicatorOfParameter = 114 ; - } -#Significant wave height of all waves with periods within the inclusive range from 12 to 14 seconds -'h1214' = { - table2Version = 140 ; - indicatorOfParameter = 115 ; - } -#Significant wave height of all waves with periods within the inclusive range from 14 to 17 seconds -'h1417' = { - table2Version = 140 ; - indicatorOfParameter = 116 ; - } -#Significant wave height of all waves with periods within the inclusive range from 17 to 21 seconds -'h1721' = { - table2Version = 140 ; - indicatorOfParameter = 117 ; - } -#Significant wave height of all waves with periods within the inclusive range from 21 to 25 seconds -'h2125' = { - table2Version = 140 ; - indicatorOfParameter = 118 ; - } -#Significant wave height of all waves with periods within the inclusive range from 25 to 30 seconds -'h2530' = { - table2Version = 140 ; - indicatorOfParameter = 119 ; - } -#Significant wave height of all waves with period larger than 10s -'sh10' = { - table2Version = 140 ; - indicatorOfParameter = 120 ; - } -#Significant wave height of first swell partition -'p140121' = { - table2Version = 140 ; - indicatorOfParameter = 121 ; - } -#Mean wave direction of first swell partition -'p140122' = { - table2Version = 140 ; - indicatorOfParameter = 122 ; - } -#Mean wave period of first swell partition -'p140123' = { - table2Version = 140 ; - indicatorOfParameter = 123 ; - } -#Significant wave height of second swell partition -'p140124' = { - table2Version = 140 ; - indicatorOfParameter = 124 ; - } -#Mean wave direction of second swell partition -'p140125' = { - table2Version = 140 ; - indicatorOfParameter = 125 ; - } -#Mean wave period of second swell partition -'p140126' = { - table2Version = 140 ; - indicatorOfParameter = 126 ; - } -#Significant wave height of third swell partition -'p140127' = { - table2Version = 140 ; - indicatorOfParameter = 127 ; - } -#Mean wave direction of third swell partition -'p140128' = { - table2Version = 140 ; - indicatorOfParameter = 128 ; - } -#Mean wave period of third swell partition -'p140129' = { - table2Version = 140 ; - indicatorOfParameter = 129 ; - } -#Wave Spectral Skewness -'wss' = { - table2Version = 140 ; - indicatorOfParameter = 207 ; - } -#Free convective velocity over the oceans -'p140208' = { - table2Version = 140 ; - indicatorOfParameter = 208 ; - } -#Air density over the oceans -'p140209' = { - table2Version = 140 ; - indicatorOfParameter = 209 ; - } -#Mean square wave strain in sea ice -'p140210' = { - table2Version = 140 ; - indicatorOfParameter = 210 ; - } -#Normalized energy flux into waves -'phiaw' = { - table2Version = 140 ; - indicatorOfParameter = 211 ; - } -#Normalized energy flux into ocean -'phioc' = { - table2Version = 140 ; - indicatorOfParameter = 212 ; - } -#Turbulent Langmuir number -'tla' = { - table2Version = 140 ; - indicatorOfParameter = 213 ; - } -#Normalized stress into ocean -'tauoc' = { - table2Version = 140 ; - indicatorOfParameter = 214 ; - } -#Reserved -'p193.151' = { - table2Version = 151 ; - indicatorOfParameter = 193 ; - } -#Water vapour flux -'wvf' = { - table2Version = 162 ; - indicatorOfParameter = 45 ; - } -#Vertical integral of divergence of cloud liquid water flux -'p79.162' = { - table2Version = 162 ; - indicatorOfParameter = 79 ; - } -#Vertical integral of divergence of cloud frozen water flux -'p80.162' = { - table2Version = 162 ; - indicatorOfParameter = 80 ; - } -#Vertical integral of eastward cloud liquid water flux -'p88.162' = { - table2Version = 162 ; - indicatorOfParameter = 88 ; - } -#Vertical integral of northward cloud liquid water flux -'p89.162' = { - table2Version = 162 ; - indicatorOfParameter = 89 ; - } -#Vertical integral of eastward cloud frozen water flux -'p90.162' = { - table2Version = 162 ; - indicatorOfParameter = 90 ; - } -#Vertical integral of northward cloud frozen water flux -'p91.162' = { - table2Version = 162 ; - indicatorOfParameter = 91 ; - } -#Vertical integral of mass tendency -'p92.162' = { - table2Version = 162 ; - indicatorOfParameter = 92 ; - } -#U-tendency from dynamics -'utendd' = { - table2Version = 162 ; - indicatorOfParameter = 114 ; - } -#V-tendency from dynamics -'vtendd' = { - table2Version = 162 ; - indicatorOfParameter = 115 ; - } -#T-tendency from dynamics -'ttendd' = { - table2Version = 162 ; - indicatorOfParameter = 116 ; - } -#q-tendency from dynamics -'qtendd' = { - table2Version = 162 ; - indicatorOfParameter = 117 ; - } -#T-tendency from radiation -'ttendr' = { - table2Version = 162 ; - indicatorOfParameter = 118 ; - } -#U-tendency from turbulent diffusion + subgrid orography -'utendts' = { - table2Version = 162 ; - indicatorOfParameter = 119 ; - } -#V-tendency from turbulent diffusion + subgrid orography -'vtendts' = { - table2Version = 162 ; - indicatorOfParameter = 120 ; - } -#T-tendency from turbulent diffusion + subgrid orography -'ttendts' = { - table2Version = 162 ; - indicatorOfParameter = 121 ; - } -#q-tendency from turbulent diffusion -'qtendt' = { - table2Version = 162 ; - indicatorOfParameter = 122 ; - } -#U-tendency from subgrid orography -'utends' = { - table2Version = 162 ; - indicatorOfParameter = 123 ; - } -#V-tendency from subgrid orography -'vtends' = { - table2Version = 162 ; - indicatorOfParameter = 124 ; - } -#T-tendency from subgrid orography -'ttends' = { - table2Version = 162 ; - indicatorOfParameter = 125 ; - } -#U-tendency from convection (deep+shallow) -'utendcds' = { - table2Version = 162 ; - indicatorOfParameter = 126 ; - } -#V-tendency from convection (deep+shallow) -'vtendcds' = { - table2Version = 162 ; - indicatorOfParameter = 127 ; - } -#T-tendency from convection (deep+shallow) -'ttendcds' = { - table2Version = 162 ; - indicatorOfParameter = 128 ; - } -#q-tendency from convection (deep+shallow) -'qtendcds' = { - table2Version = 162 ; - indicatorOfParameter = 129 ; - } -#Liquid Precipitation flux from convection -'lpc' = { - table2Version = 162 ; - indicatorOfParameter = 130 ; - } -#Ice Precipitation flux from convection -'ipc' = { - table2Version = 162 ; - indicatorOfParameter = 131 ; - } -#T-tendency from cloud scheme -'ttendcs' = { - table2Version = 162 ; - indicatorOfParameter = 132 ; - } -#q-tendency from cloud scheme -'qtendcs' = { - table2Version = 162 ; - indicatorOfParameter = 133 ; - } -#ql-tendency from cloud scheme -'qltendcs' = { - table2Version = 162 ; - indicatorOfParameter = 134 ; - } -#qi-tendency from cloud scheme -'qitendcs' = { - table2Version = 162 ; - indicatorOfParameter = 135 ; - } -#Liquid Precip flux from cloud scheme (stratiform) -'lpcs' = { - table2Version = 162 ; - indicatorOfParameter = 136 ; - } -#Ice Precip flux from cloud scheme (stratiform) -'ipcs' = { - table2Version = 162 ; - indicatorOfParameter = 137 ; - } -#U-tendency from shallow convection -'utendcs' = { - table2Version = 162 ; - indicatorOfParameter = 138 ; - } -#V-tendency from shallow convection -'vtendcs' = { - table2Version = 162 ; - indicatorOfParameter = 139 ; - } -#T-tendency from shallow convection -'ttendsc' = { - table2Version = 162 ; - indicatorOfParameter = 140 ; - } -#q-tendency from shallow convection -'qtendsc' = { - table2Version = 162 ; - indicatorOfParameter = 141 ; - } -#Standardised precipitation index valid in the last 3 months -'spi03' = { - table2Version = 170 ; - indicatorOfParameter = 1 ; - } -#Standardised precipitation index valid in the last 6 months -'spi06' = { - table2Version = 170 ; - indicatorOfParameter = 2 ; - } -#Standardised precipitation index valid in the last 12 months -'spi12' = { - table2Version = 170 ; - indicatorOfParameter = 3 ; - } -#100 metre U wind component anomaly -'ua100' = { - table2Version = 171 ; - indicatorOfParameter = 6 ; - } -#100 metre V wind component anomaly -'va100' = { - table2Version = 171 ; - indicatorOfParameter = 7 ; - } -#Lake mix-layer temperature anomaly -'lmlta' = { - table2Version = 171 ; - indicatorOfParameter = 24 ; - } -#Lake ice depth anomaly -'licda' = { - table2Version = 171 ; - indicatorOfParameter = 25 ; - } -#Maximum temperature at 2 metres in the last 6 hours anomaly -'mx2t6a' = { - table2Version = 171 ; - indicatorOfParameter = 121 ; - } -#Minimum temperature at 2 metres in the last 6 hours anomaly -'mn2t6a' = { - table2Version = 171 ; - indicatorOfParameter = 122 ; - } -#Mean surface runoff rate -'msror' = { - table2Version = 172 ; - indicatorOfParameter = 8 ; - } -#Mean sub-surface runoff rate -'mssror' = { - table2Version = 172 ; - indicatorOfParameter = 9 ; - } -#Mean surface runoff rate anomaly -'msrora' = { - table2Version = 173 ; - indicatorOfParameter = 8 ; - } -#Mean sub-surface runoff rate anomaly -'mssrora' = { - table2Version = 173 ; - indicatorOfParameter = 9 ; - } -#Clear-sky (II) down surface sw flux -'sswcsdown' = { - table2Version = 174 ; - indicatorOfParameter = 10 ; - } -#Clear-sky (II) up surface sw flux -'sswcsup' = { - table2Version = 174 ; - indicatorOfParameter = 13 ; - } -#Visibility at 1.5m -'vis15' = { - table2Version = 174 ; - indicatorOfParameter = 25 ; - } -#Minimum temperature at 1.5m since previous post-processing -'mn15t' = { - table2Version = 174 ; - indicatorOfParameter = 50 ; - } -#Maximum temperature at 1.5m since previous post-processing -'mx15t' = { - table2Version = 174 ; - indicatorOfParameter = 51 ; - } -#Relative humidity at 1.5m -'rhum' = { - table2Version = 174 ; - indicatorOfParameter = 52 ; - } -#2 metre specific humidity -'sh2' = { - table2Version = 174 ; - indicatorOfParameter = 96 ; - } -#Sea ice snow thickness -'sisnthick' = { - table2Version = 174 ; - indicatorOfParameter = 97 ; - } -#Short wave radiation flux at surface -'swrsurf' = { - table2Version = 174 ; - indicatorOfParameter = 116 ; - } -#Short wave radiation flux at top of atmosphere -'swrtop' = { - table2Version = 174 ; - indicatorOfParameter = 117 ; - } -#Total column water vapour -'tcwvap' = { - table2Version = 174 ; - indicatorOfParameter = 137 ; - } -#Large scale rainfall rate -'lsrrate' = { - table2Version = 174 ; - indicatorOfParameter = 142 ; - } -#Convective rainfall rate -'crfrate' = { - table2Version = 174 ; - indicatorOfParameter = 143 ; - } -#Very low cloud amount -'vlca' = { - table2Version = 174 ; - indicatorOfParameter = 186 ; - } -#Convective snowfall rate -'csfrate' = { - table2Version = 174 ; - indicatorOfParameter = 239 ; - } -#Large scale snowfall rate -'lsfrate' = { - table2Version = 174 ; - indicatorOfParameter = 240 ; - } -#Total cloud amount - random overlap -'tccro' = { - table2Version = 174 ; - indicatorOfParameter = 248 ; - } -#Total cloud amount in lw radiation -'tcclwr' = { - table2Version = 174 ; - indicatorOfParameter = 249 ; - } -#Volcanic ash aerosol mixing ratio -'aermr13' = { - table2Version = 210 ; - indicatorOfParameter = 13 ; - } -#Volcanic sulphate aerosol mixing ratio -'aermr14' = { - table2Version = 210 ; - indicatorOfParameter = 14 ; - } -#Volcanic SO2 precursor mixing ratio -'aermr15' = { - table2Version = 210 ; - indicatorOfParameter = 15 ; - } -#SO4 aerosol precursor mass mixing ratio -'aerpr03' = { - table2Version = 210 ; - indicatorOfParameter = 28 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 1 -'aerwv01' = { - table2Version = 210 ; - indicatorOfParameter = 29 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 2 -'aerwv02' = { - table2Version = 210 ; - indicatorOfParameter = 30 ; - } -#DMS surface emission -'emdms' = { - table2Version = 210 ; - indicatorOfParameter = 43 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 3 -'aerwv03' = { - table2Version = 210 ; - indicatorOfParameter = 44 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 4 -'aerwv04' = { - table2Version = 210 ; - indicatorOfParameter = 45 ; - } -#Experimental product -'p55.210' = { - table2Version = 210 ; - indicatorOfParameter = 55 ; - } -#Experimental product -'p56.210' = { - table2Version = 210 ; - indicatorOfParameter = 56 ; - } -#Mixing ration of organic carbon aerosol, nucleation mode -'ocnuc' = { - table2Version = 210 ; - indicatorOfParameter = 57 ; - } -#Monoterpene precursor mixing ratio -'monot' = { - table2Version = 210 ; - indicatorOfParameter = 58 ; - } -#Secondary organic precursor mixing ratio -'soapr' = { - table2Version = 210 ; - indicatorOfParameter = 59 ; - } -#Injection height (from IS4FIRES) -'injh' = { - table2Version = 210 ; - indicatorOfParameter = 60 ; - } -#Particulate matter d <= 1 um -'pm1' = { - table2Version = 210 ; - indicatorOfParameter = 72 ; - } -#Particulate matter d <= 2.5 um -'pm2p5' = { - table2Version = 210 ; - indicatorOfParameter = 73 ; - } -#Particulate matter d <= 10 um -'pm10' = { - table2Version = 210 ; - indicatorOfParameter = 74 ; - } -#Wildfire viewing angle of observation -'vafire' = { - table2Version = 210 ; - indicatorOfParameter = 79 ; - } -#Wildfire Flux of Ethane (C2H6) -'c2h6fire' = { - table2Version = 210 ; - indicatorOfParameter = 118 ; - } -#Mean height of maximum injection -'mami' = { - table2Version = 210 ; - indicatorOfParameter = 119 ; - } -#Plume top height above surface -'apt' = { - table2Version = 210 ; - indicatorOfParameter = 120 ; - } -#UV visible albedo for direct radiation, isotropic component (climatological) -'aluvpi' = { - table2Version = 210 ; - indicatorOfParameter = 186 ; - } -#UV visible albedo for direct radiation, volumetric component (climatological) -'aluvpv' = { - table2Version = 210 ; - indicatorOfParameter = 187 ; - } -#UV visible albedo for direct radiation, geometric component (climatological) -'aluvpg' = { - table2Version = 210 ; - indicatorOfParameter = 188 ; - } -#Near IR albedo for direct radiation, isotropic component (climatological) -'alnipi' = { - table2Version = 210 ; - indicatorOfParameter = 189 ; - } -#Near IR albedo for direct radiation, volumetric component (climatological) -'alnipv' = { - table2Version = 210 ; - indicatorOfParameter = 190 ; - } -#Near IR albedo for direct radiation, geometric component (climatological) -'alnipg' = { - table2Version = 210 ; - indicatorOfParameter = 191 ; - } -#UV visible albedo for diffuse radiation, isotropic component (climatological) -'aluvdi' = { - table2Version = 210 ; - indicatorOfParameter = 192 ; - } -#UV visible albedo for diffuse radiation, volumetric component (climatological) -'aluvdv' = { - table2Version = 210 ; - indicatorOfParameter = 193 ; - } -#UV visible albedo for diffuse radiation, geometric component (climatological) -'aluvdg' = { - table2Version = 210 ; - indicatorOfParameter = 194 ; - } -#Near IR albedo for diffuse radiation, isotropic component (climatological) -'alnidi' = { - table2Version = 210 ; - indicatorOfParameter = 195 ; - } -#Near IR albedo for diffuse radiation, volumetric component (climatological) -'alnidv' = { - table2Version = 210 ; - indicatorOfParameter = 196 ; - } -#Near IR albedo for diffuse radiation, geometric component (climatological) -'alnidg' = { - table2Version = 210 ; - indicatorOfParameter = 197 ; - } -#Total aerosol optical depth at 340 nm -'aod340' = { - table2Version = 210 ; - indicatorOfParameter = 217 ; - } -#Total aerosol optical depth at 355 nm -'aod355' = { - table2Version = 210 ; - indicatorOfParameter = 218 ; - } -#Total aerosol optical depth at 380 nm -'aod380' = { - table2Version = 210 ; - indicatorOfParameter = 219 ; - } -#Total aerosol optical depth at 400 nm -'aod400' = { - table2Version = 210 ; - indicatorOfParameter = 220 ; - } -#Total aerosol optical depth at 440 nm -'aod440' = { - table2Version = 210 ; - indicatorOfParameter = 221 ; - } -#Total aerosol optical depth at 500 nm -'aod500' = { - table2Version = 210 ; - indicatorOfParameter = 222 ; - } -#Total aerosol optical depth at 532 nm -'aod532' = { - table2Version = 210 ; - indicatorOfParameter = 223 ; - } -#Total aerosol optical depth at 645 nm -'aod645' = { - table2Version = 210 ; - indicatorOfParameter = 224 ; - } -#Total aerosol optical depth at 800 nm -'aod800' = { - table2Version = 210 ; - indicatorOfParameter = 225 ; - } -#Total aerosol optical depth at 858 nm -'aod858' = { - table2Version = 210 ; - indicatorOfParameter = 226 ; - } -#Total aerosol optical depth at 1020 nm -'aod1020' = { - table2Version = 210 ; - indicatorOfParameter = 227 ; - } -#Total aerosol optical depth at 1064 nm -'aod1064' = { - table2Version = 210 ; - indicatorOfParameter = 228 ; - } -#Total aerosol optical depth at 1640 nm -'aod1640' = { - table2Version = 210 ; - indicatorOfParameter = 229 ; - } -#Total aerosol optical depth at 2130 nm -'aod2130' = { - table2Version = 210 ; - indicatorOfParameter = 230 ; - } -#Wildfire Flux of Toluene (C7H8) -'c7h8fire' = { - table2Version = 210 ; - indicatorOfParameter = 231 ; - } -#Wildfire Flux of Benzene (C6H6) -'c6h6fire' = { - table2Version = 210 ; - indicatorOfParameter = 232 ; - } -#Wildfire Flux of Xylene (C8H10) -'c8h10fire' = { - table2Version = 210 ; - indicatorOfParameter = 233 ; - } -#Wildfire Flux of Butenes (C4H8) -'c4h8fire' = { - table2Version = 210 ; - indicatorOfParameter = 234 ; - } -#Wildfire Flux of Pentenes (C5H10) -'c5h10fire' = { - table2Version = 210 ; - indicatorOfParameter = 235 ; - } -#Wildfire Flux of Hexene (C6H12) -'c6h12fire' = { - table2Version = 210 ; - indicatorOfParameter = 236 ; - } -#Wildfire Flux of Octene (C8H16) -'c8h16fire' = { - table2Version = 210 ; - indicatorOfParameter = 237 ; - } -#Wildfire Flux of Butanes (C4H10) -'c4h10fire' = { - table2Version = 210 ; - indicatorOfParameter = 238 ; - } -#Wildfire Flux of Pentanes (C5H12) -'c5h12fire' = { - table2Version = 210 ; - indicatorOfParameter = 239 ; - } -#Wildfire Flux of Hexanes (C6H14) -'c6h14fire' = { - table2Version = 210 ; - indicatorOfParameter = 240 ; - } -#Wildfire Flux of Heptane (C7H16) -'c7h16fire' = { - table2Version = 210 ; - indicatorOfParameter = 241 ; - } -#Plume bottom height above surface -'apb' = { - table2Version = 210 ; - indicatorOfParameter = 242 ; - } -#Volcanic sulphate aerosol optical depth at 550 nm -'vsuaod550' = { - table2Version = 210 ; - indicatorOfParameter = 243 ; - } -#Volcanic ash optical depth at 550 nm -'vashaod550' = { - table2Version = 210 ; - indicatorOfParameter = 244 ; - } -#Profile of total aerosol dry extinction coefficient -'taedec550' = { - table2Version = 210 ; - indicatorOfParameter = 245 ; - } -#Profile of total aerosol dry absorption coefficient -'taedab550' = { - table2Version = 210 ; - indicatorOfParameter = 246 ; - } -#Nitrate fine mode aerosol mass mixing ratio -'aermr16' = { - table2Version = 210 ; - indicatorOfParameter = 247 ; - } -#Nitrate coarse mode aerosol mass mixing ratio -'aermr17' = { - table2Version = 210 ; - indicatorOfParameter = 248 ; - } -#Ammonium aerosol mass mixing ratio -'aermr18' = { - table2Version = 210 ; - indicatorOfParameter = 249 ; - } -#Nitrate aerosol optical depth at 550 nm -'niaod550' = { - table2Version = 210 ; - indicatorOfParameter = 250 ; - } -#Ammonium aerosol optical depth at 550 nm -'amaod550' = { - table2Version = 210 ; - indicatorOfParameter = 251 ; - } -#Aerosol type 13 mass mixing ratio -'aermr13diff' = { - table2Version = 211 ; - indicatorOfParameter = 13 ; - } -#Aerosol type 14 mass mixing ratio -'aermr14diff' = { - table2Version = 211 ; - indicatorOfParameter = 14 ; - } -#Aerosol type 15 mass mixing ratio -'aermr15diff' = { - table2Version = 211 ; - indicatorOfParameter = 15 ; - } -#SO4 aerosol precursor mass mixing ratio -'aerpr03diff' = { - table2Version = 211 ; - indicatorOfParameter = 28 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 1 -'aerwv01diff' = { - table2Version = 211 ; - indicatorOfParameter = 29 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 2 -'aerwv02diff' = { - table2Version = 211 ; - indicatorOfParameter = 30 ; - } -#DMS surface emission -'emdmsdiff' = { - table2Version = 211 ; - indicatorOfParameter = 43 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 3 -'aerwv03diff' = { - table2Version = 211 ; - indicatorOfParameter = 44 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 4 -'aerwv04diff' = { - table2Version = 211 ; - indicatorOfParameter = 45 ; - } -#Experimental product -'p55.211' = { - table2Version = 211 ; - indicatorOfParameter = 55 ; - } -#Experimental product -'p56.211' = { - table2Version = 211 ; - indicatorOfParameter = 56 ; - } -#Wildfire Flux of Ethane (C2H6) -'c2h6firediff' = { - table2Version = 211 ; - indicatorOfParameter = 118 ; - } -#Altitude of emitter -'alediff' = { - table2Version = 211 ; - indicatorOfParameter = 119 ; - } -#Altitude of plume top -'aptdiff' = { - table2Version = 211 ; - indicatorOfParameter = 120 ; - } -#Experimental product -'p1.212' = { - table2Version = 212 ; - indicatorOfParameter = 1 ; - } -#Experimental product -'p2.212' = { - table2Version = 212 ; - indicatorOfParameter = 2 ; - } -#Experimental product -'p3.212' = { - table2Version = 212 ; - indicatorOfParameter = 3 ; - } -#Experimental product -'p4.212' = { - table2Version = 212 ; - indicatorOfParameter = 4 ; - } -#Experimental product -'p5.212' = { - table2Version = 212 ; - indicatorOfParameter = 5 ; - } -#Experimental product -'p6.212' = { - table2Version = 212 ; - indicatorOfParameter = 6 ; - } -#Experimental product -'p7.212' = { - table2Version = 212 ; - indicatorOfParameter = 7 ; - } -#Experimental product -'p8.212' = { - table2Version = 212 ; - indicatorOfParameter = 8 ; - } -#Experimental product -'p9.212' = { - table2Version = 212 ; - indicatorOfParameter = 9 ; - } -#Experimental product -'p10.212' = { - table2Version = 212 ; - indicatorOfParameter = 10 ; - } -#Experimental product -'p11.212' = { - table2Version = 212 ; - indicatorOfParameter = 11 ; - } -#Experimental product -'p12.212' = { - table2Version = 212 ; - indicatorOfParameter = 12 ; - } -#Experimental product -'p13.212' = { - table2Version = 212 ; - indicatorOfParameter = 13 ; - } -#Experimental product -'p14.212' = { - table2Version = 212 ; - indicatorOfParameter = 14 ; - } -#Experimental product -'p15.212' = { - table2Version = 212 ; - indicatorOfParameter = 15 ; - } -#Experimental product -'p16.212' = { - table2Version = 212 ; - indicatorOfParameter = 16 ; - } -#Experimental product -'p17.212' = { - table2Version = 212 ; - indicatorOfParameter = 17 ; - } -#Experimental product -'p18.212' = { - table2Version = 212 ; - indicatorOfParameter = 18 ; - } -#Experimental product -'p19.212' = { - table2Version = 212 ; - indicatorOfParameter = 19 ; - } -#Experimental product -'p20.212' = { - table2Version = 212 ; - indicatorOfParameter = 20 ; - } -#Experimental product -'p21.212' = { - table2Version = 212 ; - indicatorOfParameter = 21 ; - } -#Experimental product -'p22.212' = { - table2Version = 212 ; - indicatorOfParameter = 22 ; - } -#Experimental product -'p23.212' = { - table2Version = 212 ; - indicatorOfParameter = 23 ; - } -#Experimental product -'p24.212' = { - table2Version = 212 ; - indicatorOfParameter = 24 ; - } -#Experimental product -'p25.212' = { - table2Version = 212 ; - indicatorOfParameter = 25 ; - } -#Experimental product -'p26.212' = { - table2Version = 212 ; - indicatorOfParameter = 26 ; - } -#Experimental product -'p27.212' = { - table2Version = 212 ; - indicatorOfParameter = 27 ; - } -#Experimental product -'p28.212' = { - table2Version = 212 ; - indicatorOfParameter = 28 ; - } -#Experimental product -'p29.212' = { - table2Version = 212 ; - indicatorOfParameter = 29 ; - } -#Experimental product -'p30.212' = { - table2Version = 212 ; - indicatorOfParameter = 30 ; - } -#Experimental product -'p31.212' = { - table2Version = 212 ; - indicatorOfParameter = 31 ; - } -#Experimental product -'p32.212' = { - table2Version = 212 ; - indicatorOfParameter = 32 ; - } -#Experimental product -'p33.212' = { - table2Version = 212 ; - indicatorOfParameter = 33 ; - } -#Experimental product -'p34.212' = { - table2Version = 212 ; - indicatorOfParameter = 34 ; - } -#Experimental product -'p35.212' = { - table2Version = 212 ; - indicatorOfParameter = 35 ; - } -#Experimental product -'p36.212' = { - table2Version = 212 ; - indicatorOfParameter = 36 ; - } -#Experimental product -'p37.212' = { - table2Version = 212 ; - indicatorOfParameter = 37 ; - } -#Experimental product -'p38.212' = { - table2Version = 212 ; - indicatorOfParameter = 38 ; - } -#Experimental product -'p39.212' = { - table2Version = 212 ; - indicatorOfParameter = 39 ; - } -#Experimental product -'p40.212' = { - table2Version = 212 ; - indicatorOfParameter = 40 ; - } -#Experimental product -'p41.212' = { - table2Version = 212 ; - indicatorOfParameter = 41 ; - } -#Experimental product -'p42.212' = { - table2Version = 212 ; - indicatorOfParameter = 42 ; - } -#Experimental product -'p43.212' = { - table2Version = 212 ; - indicatorOfParameter = 43 ; - } -#Experimental product -'p44.212' = { - table2Version = 212 ; - indicatorOfParameter = 44 ; - } -#Experimental product -'p45.212' = { - table2Version = 212 ; - indicatorOfParameter = 45 ; - } -#Experimental product -'p46.212' = { - table2Version = 212 ; - indicatorOfParameter = 46 ; - } -#Experimental product -'p47.212' = { - table2Version = 212 ; - indicatorOfParameter = 47 ; - } -#Experimental product -'p48.212' = { - table2Version = 212 ; - indicatorOfParameter = 48 ; - } -#Experimental product -'p49.212' = { - table2Version = 212 ; - indicatorOfParameter = 49 ; - } -#Experimental product -'p50.212' = { - table2Version = 212 ; - indicatorOfParameter = 50 ; - } -#Experimental product -'p51.212' = { - table2Version = 212 ; - indicatorOfParameter = 51 ; - } -#Experimental product -'p52.212' = { - table2Version = 212 ; - indicatorOfParameter = 52 ; - } -#Experimental product -'p53.212' = { - table2Version = 212 ; - indicatorOfParameter = 53 ; - } -#Experimental product -'p54.212' = { - table2Version = 212 ; - indicatorOfParameter = 54 ; - } -#Experimental product -'p55.212' = { - table2Version = 212 ; - indicatorOfParameter = 55 ; - } -#Experimental product -'p56.212' = { - table2Version = 212 ; - indicatorOfParameter = 56 ; - } -#Experimental product -'p57.212' = { - table2Version = 212 ; - indicatorOfParameter = 57 ; - } -#Experimental product -'p58.212' = { - table2Version = 212 ; - indicatorOfParameter = 58 ; - } -#Experimental product -'p59.212' = { - table2Version = 212 ; - indicatorOfParameter = 59 ; - } -#Experimental product -'p60.212' = { - table2Version = 212 ; - indicatorOfParameter = 60 ; - } -#Experimental product -'p61.212' = { - table2Version = 212 ; - indicatorOfParameter = 61 ; - } -#Experimental product -'p62.212' = { - table2Version = 212 ; - indicatorOfParameter = 62 ; - } -#Experimental product -'p63.212' = { - table2Version = 212 ; - indicatorOfParameter = 63 ; - } -#Experimental product -'p64.212' = { - table2Version = 212 ; - indicatorOfParameter = 64 ; - } -#Experimental product -'p65.212' = { - table2Version = 212 ; - indicatorOfParameter = 65 ; - } -#Experimental product -'p66.212' = { - table2Version = 212 ; - indicatorOfParameter = 66 ; - } -#Experimental product -'p67.212' = { - table2Version = 212 ; - indicatorOfParameter = 67 ; - } -#Experimental product -'p68.212' = { - table2Version = 212 ; - indicatorOfParameter = 68 ; - } -#Experimental product -'p69.212' = { - table2Version = 212 ; - indicatorOfParameter = 69 ; - } -#Experimental product -'p70.212' = { - table2Version = 212 ; - indicatorOfParameter = 70 ; - } -#Experimental product -'p71.212' = { - table2Version = 212 ; - indicatorOfParameter = 71 ; - } -#Experimental product -'p72.212' = { - table2Version = 212 ; - indicatorOfParameter = 72 ; - } -#Experimental product -'p73.212' = { - table2Version = 212 ; - indicatorOfParameter = 73 ; - } -#Experimental product -'p74.212' = { - table2Version = 212 ; - indicatorOfParameter = 74 ; - } -#Experimental product -'p75.212' = { - table2Version = 212 ; - indicatorOfParameter = 75 ; - } -#Experimental product -'p76.212' = { - table2Version = 212 ; - indicatorOfParameter = 76 ; - } -#Experimental product -'p77.212' = { - table2Version = 212 ; - indicatorOfParameter = 77 ; - } -#Experimental product -'p78.212' = { - table2Version = 212 ; - indicatorOfParameter = 78 ; - } -#Experimental product -'p79.212' = { - table2Version = 212 ; - indicatorOfParameter = 79 ; - } -#Experimental product -'p80.212' = { - table2Version = 212 ; - indicatorOfParameter = 80 ; - } -#Experimental product -'p81.212' = { - table2Version = 212 ; - indicatorOfParameter = 81 ; - } -#Experimental product -'p82.212' = { - table2Version = 212 ; - indicatorOfParameter = 82 ; - } -#Experimental product -'p83.212' = { - table2Version = 212 ; - indicatorOfParameter = 83 ; - } -#Experimental product -'p84.212' = { - table2Version = 212 ; - indicatorOfParameter = 84 ; - } -#Experimental product -'p85.212' = { - table2Version = 212 ; - indicatorOfParameter = 85 ; - } -#Experimental product -'p86.212' = { - table2Version = 212 ; - indicatorOfParameter = 86 ; - } -#Experimental product -'p87.212' = { - table2Version = 212 ; - indicatorOfParameter = 87 ; - } -#Experimental product -'p88.212' = { - table2Version = 212 ; - indicatorOfParameter = 88 ; - } -#Experimental product -'p89.212' = { - table2Version = 212 ; - indicatorOfParameter = 89 ; - } -#Experimental product -'p90.212' = { - table2Version = 212 ; - indicatorOfParameter = 90 ; - } -#Experimental product -'p91.212' = { - table2Version = 212 ; - indicatorOfParameter = 91 ; - } -#Experimental product -'p92.212' = { - table2Version = 212 ; - indicatorOfParameter = 92 ; - } -#Experimental product -'p93.212' = { - table2Version = 212 ; - indicatorOfParameter = 93 ; - } -#Experimental product -'p94.212' = { - table2Version = 212 ; - indicatorOfParameter = 94 ; - } -#Experimental product -'p95.212' = { - table2Version = 212 ; - indicatorOfParameter = 95 ; - } -#Experimental product -'p96.212' = { - table2Version = 212 ; - indicatorOfParameter = 96 ; - } -#Experimental product -'p97.212' = { - table2Version = 212 ; - indicatorOfParameter = 97 ; - } -#Experimental product -'p98.212' = { - table2Version = 212 ; - indicatorOfParameter = 98 ; - } -#Experimental product -'p99.212' = { - table2Version = 212 ; - indicatorOfParameter = 99 ; - } -#Experimental product -'p100.212' = { - table2Version = 212 ; - indicatorOfParameter = 100 ; - } -#Experimental product -'p101.212' = { - table2Version = 212 ; - indicatorOfParameter = 101 ; - } -#Experimental product -'p102.212' = { - table2Version = 212 ; - indicatorOfParameter = 102 ; - } -#Experimental product -'p103.212' = { - table2Version = 212 ; - indicatorOfParameter = 103 ; - } -#Experimental product -'p104.212' = { - table2Version = 212 ; - indicatorOfParameter = 104 ; - } -#Experimental product -'p105.212' = { - table2Version = 212 ; - indicatorOfParameter = 105 ; - } -#Experimental product -'p106.212' = { - table2Version = 212 ; - indicatorOfParameter = 106 ; - } -#Experimental product -'p107.212' = { - table2Version = 212 ; - indicatorOfParameter = 107 ; - } -#Experimental product -'p108.212' = { - table2Version = 212 ; - indicatorOfParameter = 108 ; - } -#Experimental product -'p109.212' = { - table2Version = 212 ; - indicatorOfParameter = 109 ; - } -#Experimental product -'p110.212' = { - table2Version = 212 ; - indicatorOfParameter = 110 ; - } -#Experimental product -'p111.212' = { - table2Version = 212 ; - indicatorOfParameter = 111 ; - } -#Experimental product -'p112.212' = { - table2Version = 212 ; - indicatorOfParameter = 112 ; - } -#Experimental product -'p113.212' = { - table2Version = 212 ; - indicatorOfParameter = 113 ; - } -#Experimental product -'p114.212' = { - table2Version = 212 ; - indicatorOfParameter = 114 ; - } -#Experimental product -'p115.212' = { - table2Version = 212 ; - indicatorOfParameter = 115 ; - } -#Experimental product -'p116.212' = { - table2Version = 212 ; - indicatorOfParameter = 116 ; - } -#Experimental product -'p117.212' = { - table2Version = 212 ; - indicatorOfParameter = 117 ; - } -#Experimental product -'p118.212' = { - table2Version = 212 ; - indicatorOfParameter = 118 ; - } -#Experimental product -'p119.212' = { - table2Version = 212 ; - indicatorOfParameter = 119 ; - } -#Experimental product -'p120.212' = { - table2Version = 212 ; - indicatorOfParameter = 120 ; - } -#Experimental product -'p121.212' = { - table2Version = 212 ; - indicatorOfParameter = 121 ; - } -#Experimental product -'p122.212' = { - table2Version = 212 ; - indicatorOfParameter = 122 ; - } -#Experimental product -'p123.212' = { - table2Version = 212 ; - indicatorOfParameter = 123 ; - } -#Experimental product -'p124.212' = { - table2Version = 212 ; - indicatorOfParameter = 124 ; - } -#Experimental product -'p125.212' = { - table2Version = 212 ; - indicatorOfParameter = 125 ; - } -#Experimental product -'p126.212' = { - table2Version = 212 ; - indicatorOfParameter = 126 ; - } -#Experimental product -'p127.212' = { - table2Version = 212 ; - indicatorOfParameter = 127 ; - } -#Experimental product -'p128.212' = { - table2Version = 212 ; - indicatorOfParameter = 128 ; - } -#Experimental product -'p129.212' = { - table2Version = 212 ; - indicatorOfParameter = 129 ; - } -#Experimental product -'p130.212' = { - table2Version = 212 ; - indicatorOfParameter = 130 ; - } -#Experimental product -'p131.212' = { - table2Version = 212 ; - indicatorOfParameter = 131 ; - } -#Experimental product -'p132.212' = { - table2Version = 212 ; - indicatorOfParameter = 132 ; - } -#Experimental product -'p133.212' = { - table2Version = 212 ; - indicatorOfParameter = 133 ; - } -#Experimental product -'p134.212' = { - table2Version = 212 ; - indicatorOfParameter = 134 ; - } -#Experimental product -'p135.212' = { - table2Version = 212 ; - indicatorOfParameter = 135 ; - } -#Experimental product -'p136.212' = { - table2Version = 212 ; - indicatorOfParameter = 136 ; - } -#Experimental product -'p137.212' = { - table2Version = 212 ; - indicatorOfParameter = 137 ; - } -#Experimental product -'p138.212' = { - table2Version = 212 ; - indicatorOfParameter = 138 ; - } -#Experimental product -'p139.212' = { - table2Version = 212 ; - indicatorOfParameter = 139 ; - } -#Experimental product -'p140.212' = { - table2Version = 212 ; - indicatorOfParameter = 140 ; - } -#Experimental product -'p141.212' = { - table2Version = 212 ; - indicatorOfParameter = 141 ; - } -#Experimental product -'p142.212' = { - table2Version = 212 ; - indicatorOfParameter = 142 ; - } -#Experimental product -'p143.212' = { - table2Version = 212 ; - indicatorOfParameter = 143 ; - } -#Experimental product -'p144.212' = { - table2Version = 212 ; - indicatorOfParameter = 144 ; - } -#Experimental product -'p145.212' = { - table2Version = 212 ; - indicatorOfParameter = 145 ; - } -#Experimental product -'p146.212' = { - table2Version = 212 ; - indicatorOfParameter = 146 ; - } -#Experimental product -'p147.212' = { - table2Version = 212 ; - indicatorOfParameter = 147 ; - } -#Experimental product -'p148.212' = { - table2Version = 212 ; - indicatorOfParameter = 148 ; - } -#Experimental product -'p149.212' = { - table2Version = 212 ; - indicatorOfParameter = 149 ; - } -#Experimental product -'p150.212' = { - table2Version = 212 ; - indicatorOfParameter = 150 ; - } -#Experimental product -'p151.212' = { - table2Version = 212 ; - indicatorOfParameter = 151 ; - } -#Experimental product -'p152.212' = { - table2Version = 212 ; - indicatorOfParameter = 152 ; - } -#Experimental product -'p153.212' = { - table2Version = 212 ; - indicatorOfParameter = 153 ; - } -#Experimental product -'p154.212' = { - table2Version = 212 ; - indicatorOfParameter = 154 ; - } -#Experimental product -'p155.212' = { - table2Version = 212 ; - indicatorOfParameter = 155 ; - } -#Experimental product -'p156.212' = { - table2Version = 212 ; - indicatorOfParameter = 156 ; - } -#Experimental product -'p157.212' = { - table2Version = 212 ; - indicatorOfParameter = 157 ; - } -#Experimental product -'p158.212' = { - table2Version = 212 ; - indicatorOfParameter = 158 ; - } -#Experimental product -'p159.212' = { - table2Version = 212 ; - indicatorOfParameter = 159 ; - } -#Experimental product -'p160.212' = { - table2Version = 212 ; - indicatorOfParameter = 160 ; - } -#Experimental product -'p161.212' = { - table2Version = 212 ; - indicatorOfParameter = 161 ; - } -#Experimental product -'p162.212' = { - table2Version = 212 ; - indicatorOfParameter = 162 ; - } -#Experimental product -'p163.212' = { - table2Version = 212 ; - indicatorOfParameter = 163 ; - } -#Experimental product -'p164.212' = { - table2Version = 212 ; - indicatorOfParameter = 164 ; - } -#Experimental product -'p165.212' = { - table2Version = 212 ; - indicatorOfParameter = 165 ; - } -#Experimental product -'p166.212' = { - table2Version = 212 ; - indicatorOfParameter = 166 ; - } -#Experimental product -'p167.212' = { - table2Version = 212 ; - indicatorOfParameter = 167 ; - } -#Experimental product -'p168.212' = { - table2Version = 212 ; - indicatorOfParameter = 168 ; - } -#Experimental product -'p169.212' = { - table2Version = 212 ; - indicatorOfParameter = 169 ; - } -#Experimental product -'p170.212' = { - table2Version = 212 ; - indicatorOfParameter = 170 ; - } -#Experimental product -'p171.212' = { - table2Version = 212 ; - indicatorOfParameter = 171 ; - } -#Experimental product -'p172.212' = { - table2Version = 212 ; - indicatorOfParameter = 172 ; - } -#Experimental product -'p173.212' = { - table2Version = 212 ; - indicatorOfParameter = 173 ; - } -#Experimental product -'p174.212' = { - table2Version = 212 ; - indicatorOfParameter = 174 ; - } -#Experimental product -'p175.212' = { - table2Version = 212 ; - indicatorOfParameter = 175 ; - } -#Experimental product -'p176.212' = { - table2Version = 212 ; - indicatorOfParameter = 176 ; - } -#Experimental product -'p177.212' = { - table2Version = 212 ; - indicatorOfParameter = 177 ; - } -#Experimental product -'p178.212' = { - table2Version = 212 ; - indicatorOfParameter = 178 ; - } -#Experimental product -'p179.212' = { - table2Version = 212 ; - indicatorOfParameter = 179 ; - } -#Experimental product -'p180.212' = { - table2Version = 212 ; - indicatorOfParameter = 180 ; - } -#Experimental product -'p181.212' = { - table2Version = 212 ; - indicatorOfParameter = 181 ; - } -#Experimental product -'p182.212' = { - table2Version = 212 ; - indicatorOfParameter = 182 ; - } -#Experimental product -'p183.212' = { - table2Version = 212 ; - indicatorOfParameter = 183 ; - } -#Experimental product -'p184.212' = { - table2Version = 212 ; - indicatorOfParameter = 184 ; - } -#Experimental product -'p185.212' = { - table2Version = 212 ; - indicatorOfParameter = 185 ; - } -#Experimental product -'p186.212' = { - table2Version = 212 ; - indicatorOfParameter = 186 ; - } -#Experimental product -'p187.212' = { - table2Version = 212 ; - indicatorOfParameter = 187 ; - } -#Experimental product -'p188.212' = { - table2Version = 212 ; - indicatorOfParameter = 188 ; - } -#Experimental product -'p189.212' = { - table2Version = 212 ; - indicatorOfParameter = 189 ; - } -#Experimental product -'p190.212' = { - table2Version = 212 ; - indicatorOfParameter = 190 ; - } -#Experimental product -'p191.212' = { - table2Version = 212 ; - indicatorOfParameter = 191 ; - } -#Experimental product -'p192.212' = { - table2Version = 212 ; - indicatorOfParameter = 192 ; - } -#Experimental product -'p193.212' = { - table2Version = 212 ; - indicatorOfParameter = 193 ; - } -#Experimental product -'p194.212' = { - table2Version = 212 ; - indicatorOfParameter = 194 ; - } -#Experimental product -'p195.212' = { - table2Version = 212 ; - indicatorOfParameter = 195 ; - } -#Experimental product -'p196.212' = { - table2Version = 212 ; - indicatorOfParameter = 196 ; - } -#Experimental product -'p197.212' = { - table2Version = 212 ; - indicatorOfParameter = 197 ; - } -#Experimental product -'p198.212' = { - table2Version = 212 ; - indicatorOfParameter = 198 ; - } -#Experimental product -'p199.212' = { - table2Version = 212 ; - indicatorOfParameter = 199 ; - } -#Experimental product -'p200.212' = { - table2Version = 212 ; - indicatorOfParameter = 200 ; - } -#Experimental product -'p201.212' = { - table2Version = 212 ; - indicatorOfParameter = 201 ; - } -#Experimental product -'p202.212' = { - table2Version = 212 ; - indicatorOfParameter = 202 ; - } -#Experimental product -'p203.212' = { - table2Version = 212 ; - indicatorOfParameter = 203 ; - } -#Experimental product -'p204.212' = { - table2Version = 212 ; - indicatorOfParameter = 204 ; - } -#Experimental product -'p205.212' = { - table2Version = 212 ; - indicatorOfParameter = 205 ; - } -#Experimental product -'p206.212' = { - table2Version = 212 ; - indicatorOfParameter = 206 ; - } -#Experimental product -'p207.212' = { - table2Version = 212 ; - indicatorOfParameter = 207 ; - } -#Experimental product -'p208.212' = { - table2Version = 212 ; - indicatorOfParameter = 208 ; - } -#Experimental product -'p209.212' = { - table2Version = 212 ; - indicatorOfParameter = 209 ; - } -#Experimental product -'p210.212' = { - table2Version = 212 ; - indicatorOfParameter = 210 ; - } -#Experimental product -'p211.212' = { - table2Version = 212 ; - indicatorOfParameter = 211 ; - } -#Experimental product -'p212.212' = { - table2Version = 212 ; - indicatorOfParameter = 212 ; - } -#Experimental product -'p213.212' = { - table2Version = 212 ; - indicatorOfParameter = 213 ; - } -#Experimental product -'p214.212' = { - table2Version = 212 ; - indicatorOfParameter = 214 ; - } -#Experimental product -'p215.212' = { - table2Version = 212 ; - indicatorOfParameter = 215 ; - } -#Experimental product -'p216.212' = { - table2Version = 212 ; - indicatorOfParameter = 216 ; - } -#Experimental product -'p217.212' = { - table2Version = 212 ; - indicatorOfParameter = 217 ; - } -#Experimental product -'p218.212' = { - table2Version = 212 ; - indicatorOfParameter = 218 ; - } -#Experimental product -'p219.212' = { - table2Version = 212 ; - indicatorOfParameter = 219 ; - } -#Experimental product -'p220.212' = { - table2Version = 212 ; - indicatorOfParameter = 220 ; - } -#Experimental product -'p221.212' = { - table2Version = 212 ; - indicatorOfParameter = 221 ; - } -#Experimental product -'p222.212' = { - table2Version = 212 ; - indicatorOfParameter = 222 ; - } -#Experimental product -'p223.212' = { - table2Version = 212 ; - indicatorOfParameter = 223 ; - } -#Experimental product -'p224.212' = { - table2Version = 212 ; - indicatorOfParameter = 224 ; - } -#Experimental product -'p225.212' = { - table2Version = 212 ; - indicatorOfParameter = 225 ; - } -#Experimental product -'p226.212' = { - table2Version = 212 ; - indicatorOfParameter = 226 ; - } -#Experimental product -'p227.212' = { - table2Version = 212 ; - indicatorOfParameter = 227 ; - } -#Experimental product -'p228.212' = { - table2Version = 212 ; - indicatorOfParameter = 228 ; - } -#Experimental product -'p229.212' = { - table2Version = 212 ; - indicatorOfParameter = 229 ; - } -#Experimental product -'p230.212' = { - table2Version = 212 ; - indicatorOfParameter = 230 ; - } -#Experimental product -'p231.212' = { - table2Version = 212 ; - indicatorOfParameter = 231 ; - } -#Experimental product -'p232.212' = { - table2Version = 212 ; - indicatorOfParameter = 232 ; - } -#Experimental product -'p233.212' = { - table2Version = 212 ; - indicatorOfParameter = 233 ; - } -#Experimental product -'p234.212' = { - table2Version = 212 ; - indicatorOfParameter = 234 ; - } -#Experimental product -'p235.212' = { - table2Version = 212 ; - indicatorOfParameter = 235 ; - } -#Experimental product -'p236.212' = { - table2Version = 212 ; - indicatorOfParameter = 236 ; - } -#Experimental product -'p237.212' = { - table2Version = 212 ; - indicatorOfParameter = 237 ; - } -#Experimental product -'p238.212' = { - table2Version = 212 ; - indicatorOfParameter = 238 ; - } -#Experimental product -'p239.212' = { - table2Version = 212 ; - indicatorOfParameter = 239 ; - } -#Experimental product -'p240.212' = { - table2Version = 212 ; - indicatorOfParameter = 240 ; - } -#Experimental product -'p241.212' = { - table2Version = 212 ; - indicatorOfParameter = 241 ; - } -#Experimental product -'p242.212' = { - table2Version = 212 ; - indicatorOfParameter = 242 ; - } -#Experimental product -'p243.212' = { - table2Version = 212 ; - indicatorOfParameter = 243 ; - } -#Experimental product -'p244.212' = { - table2Version = 212 ; - indicatorOfParameter = 244 ; - } -#Experimental product -'p245.212' = { - table2Version = 212 ; - indicatorOfParameter = 245 ; - } -#Experimental product -'p246.212' = { - table2Version = 212 ; - indicatorOfParameter = 246 ; - } -#Experimental product -'p247.212' = { - table2Version = 212 ; - indicatorOfParameter = 247 ; - } -#Experimental product -'p248.212' = { - table2Version = 212 ; - indicatorOfParameter = 248 ; - } -#Experimental product -'p249.212' = { - table2Version = 212 ; - indicatorOfParameter = 249 ; - } -#Experimental product -'p250.212' = { - table2Version = 212 ; - indicatorOfParameter = 250 ; - } -#Experimental product -'p251.212' = { - table2Version = 212 ; - indicatorOfParameter = 251 ; - } -#Experimental product -'p252.212' = { - table2Version = 212 ; - indicatorOfParameter = 252 ; - } -#Experimental product -'p253.212' = { - table2Version = 212 ; - indicatorOfParameter = 253 ; - } -#Experimental product -'p254.212' = { - table2Version = 212 ; - indicatorOfParameter = 254 ; - } -#Experimental product -'p255.212' = { - table2Version = 212 ; - indicatorOfParameter = 255 ; - } -#Random pattern 1 for sppt -'sppt1' = { - table2Version = 213 ; - indicatorOfParameter = 1 ; - } -#Random pattern 2 for sppt -'sppt2' = { - table2Version = 213 ; - indicatorOfParameter = 2 ; - } -#Random pattern 3 for sppt -'sppt3' = { - table2Version = 213 ; - indicatorOfParameter = 3 ; - } -#Random pattern 4 for sppt -'sppt4' = { - table2Version = 213 ; - indicatorOfParameter = 4 ; - } -#Random pattern 5 for sppt -'sppt5' = { - table2Version = 213 ; - indicatorOfParameter = 5 ; - } -#Random pattern 1 for SPP scheme -'spp1' = { - table2Version = 213 ; - indicatorOfParameter = 101 ; - } -#Random pattern 2 for SPP scheme -'spp2' = { - table2Version = 213 ; - indicatorOfParameter = 102 ; - } -#Random pattern 3 for SPP scheme -'spp3' = { - table2Version = 213 ; - indicatorOfParameter = 103 ; - } -#Random pattern 4 for SPP scheme -'spp4' = { - table2Version = 213 ; - indicatorOfParameter = 104 ; - } -#Random pattern 5 for SPP scheme -'spp5' = { - table2Version = 213 ; - indicatorOfParameter = 105 ; - } -#Random pattern 6 for SPP scheme -'spp6' = { - table2Version = 213 ; - indicatorOfParameter = 106 ; - } -#Random pattern 7 for SPP scheme -'spp7' = { - table2Version = 213 ; - indicatorOfParameter = 107 ; - } -#Random pattern 8 for SPP scheme -'spp8' = { - table2Version = 213 ; - indicatorOfParameter = 108 ; - } -#Random pattern 9 for SPP scheme -'spp9' = { - table2Version = 213 ; - indicatorOfParameter = 109 ; - } -#Random pattern 10 for SPP scheme -'spp10' = { - table2Version = 213 ; - indicatorOfParameter = 110 ; - } -#Random pattern 11 for SPP scheme -'spp11' = { - table2Version = 213 ; - indicatorOfParameter = 111 ; - } -#Random pattern 12 for SPP scheme -'spp12' = { - table2Version = 213 ; - indicatorOfParameter = 112 ; - } -#Random pattern 13 for SPP scheme -'spp13' = { - table2Version = 213 ; - indicatorOfParameter = 113 ; - } -#Random pattern 14 for SPP scheme -'spp14' = { - table2Version = 213 ; - indicatorOfParameter = 114 ; - } -#Random pattern 15 for SPP scheme -'spp15' = { - table2Version = 213 ; - indicatorOfParameter = 115 ; - } -#Random pattern 16 for SPP scheme -'spp16' = { - table2Version = 213 ; - indicatorOfParameter = 116 ; - } -#Random pattern 17 for SPP scheme -'spp17' = { - table2Version = 213 ; - indicatorOfParameter = 117 ; - } -#Random pattern 18 for SPP scheme -'spp18' = { - table2Version = 213 ; - indicatorOfParameter = 118 ; - } -#Random pattern 19 for SPP scheme -'spp19' = { - table2Version = 213 ; - indicatorOfParameter = 119 ; - } -#Random pattern 20 for SPP scheme -'spp20' = { - table2Version = 213 ; - indicatorOfParameter = 120 ; - } -#Random pattern 21 for SPP scheme -'spp21' = { - table2Version = 213 ; - indicatorOfParameter = 121 ; - } -#Random pattern 22 for SPP scheme -'spp22' = { - table2Version = 213 ; - indicatorOfParameter = 122 ; - } -#Random pattern 23 for SPP scheme -'spp23' = { - table2Version = 213 ; - indicatorOfParameter = 123 ; - } -#Random pattern 24 for SPP scheme -'spp24' = { - table2Version = 213 ; - indicatorOfParameter = 124 ; - } -#Random pattern 25 for SPP scheme -'spp25' = { - table2Version = 213 ; - indicatorOfParameter = 125 ; - } -#Random pattern 26 for SPP scheme -'spp26' = { - table2Version = 213 ; - indicatorOfParameter = 126 ; - } -#Random pattern 27 for SPP scheme -'spp27' = { - table2Version = 213 ; - indicatorOfParameter = 127 ; - } -#Random pattern 28 for SPP scheme -'spp28' = { - table2Version = 213 ; - indicatorOfParameter = 128 ; - } -#Random pattern 29 for SPP scheme -'spp29' = { - table2Version = 213 ; - indicatorOfParameter = 129 ; - } -#Random pattern 30 for SPP scheme -'spp30' = { - table2Version = 213 ; - indicatorOfParameter = 130 ; - } -#Random pattern 31 for SPP scheme -'spp31' = { - table2Version = 213 ; - indicatorOfParameter = 131 ; - } -#Random pattern 32 for SPP scheme -'spp32' = { - table2Version = 213 ; - indicatorOfParameter = 132 ; - } -#Random pattern 33 for SPP scheme -'spp33' = { - table2Version = 213 ; - indicatorOfParameter = 133 ; - } -#Random pattern 34 for SPP scheme -'spp34' = { - table2Version = 213 ; - indicatorOfParameter = 134 ; - } -#Random pattern 35 for SPP scheme -'spp35' = { - table2Version = 213 ; - indicatorOfParameter = 135 ; - } -#Random pattern 36 for SPP scheme -'spp36' = { - table2Version = 213 ; - indicatorOfParameter = 136 ; - } -#Random pattern 37 for SPP scheme -'spp37' = { - table2Version = 213 ; - indicatorOfParameter = 137 ; - } -#Random pattern 38 for SPP scheme -'spp38' = { - table2Version = 213 ; - indicatorOfParameter = 138 ; - } -#Random pattern 39 for SPP scheme -'spp39' = { - table2Version = 213 ; - indicatorOfParameter = 139 ; - } -#Random pattern 40 for SPP scheme -'spp40' = { - table2Version = 213 ; - indicatorOfParameter = 140 ; - } -#Random pattern 41 for SPP scheme -'spp41' = { - table2Version = 213 ; - indicatorOfParameter = 141 ; - } -#Random pattern 42 for SPP scheme -'spp42' = { - table2Version = 213 ; - indicatorOfParameter = 142 ; - } -#Random pattern 43 for SPP scheme -'spp43' = { - table2Version = 213 ; - indicatorOfParameter = 143 ; - } -#Random pattern 44 for SPP scheme -'spp44' = { - table2Version = 213 ; - indicatorOfParameter = 144 ; - } -#Random pattern 45 for SPP scheme -'spp45' = { - table2Version = 213 ; - indicatorOfParameter = 145 ; - } -#Random pattern 46 for SPP scheme -'spp46' = { - table2Version = 213 ; - indicatorOfParameter = 146 ; - } -#Random pattern 47 for SPP scheme -'spp47' = { - table2Version = 213 ; - indicatorOfParameter = 147 ; - } -#Random pattern 48 for SPP scheme -'spp48' = { - table2Version = 213 ; - indicatorOfParameter = 148 ; - } -#Random pattern 49 for SPP scheme -'spp49' = { - table2Version = 213 ; - indicatorOfParameter = 149 ; - } -#Random pattern 50 for SPP scheme -'spp50' = { - table2Version = 213 ; - indicatorOfParameter = 150 ; - } -#Random pattern 51 for SPP scheme -'spp51' = { - table2Version = 213 ; - indicatorOfParameter = 151 ; - } -#Random pattern 52 for SPP scheme -'spp52' = { - table2Version = 213 ; - indicatorOfParameter = 152 ; - } -#Random pattern 53 for SPP scheme -'spp53' = { - table2Version = 213 ; - indicatorOfParameter = 153 ; - } -#Random pattern 54 for SPP scheme -'spp54' = { - table2Version = 213 ; - indicatorOfParameter = 154 ; - } -#Random pattern 55 for SPP scheme -'spp55' = { - table2Version = 213 ; - indicatorOfParameter = 155 ; - } -#Random pattern 56 for SPP scheme -'spp56' = { - table2Version = 213 ; - indicatorOfParameter = 156 ; - } -#Random pattern 57 for SPP scheme -'spp57' = { - table2Version = 213 ; - indicatorOfParameter = 157 ; - } -#Random pattern 58 for SPP scheme -'spp58' = { - table2Version = 213 ; - indicatorOfParameter = 158 ; - } -#Random pattern 59 for SPP scheme -'spp59' = { - table2Version = 213 ; - indicatorOfParameter = 159 ; - } -#Random pattern 60 for SPP scheme -'spp60' = { - table2Version = 213 ; - indicatorOfParameter = 160 ; - } -#Random pattern 61 for SPP scheme -'spp61' = { - table2Version = 213 ; - indicatorOfParameter = 161 ; - } -#Random pattern 62 for SPP scheme -'spp62' = { - table2Version = 213 ; - indicatorOfParameter = 162 ; - } -#Random pattern 63 for SPP scheme -'spp63' = { - table2Version = 213 ; - indicatorOfParameter = 163 ; - } -#Random pattern 64 for SPP scheme -'spp64' = { - table2Version = 213 ; - indicatorOfParameter = 164 ; - } -#Random pattern 65 for SPP scheme -'spp65' = { - table2Version = 213 ; - indicatorOfParameter = 165 ; - } -#Random pattern 66 for SPP scheme -'spp66' = { - table2Version = 213 ; - indicatorOfParameter = 166 ; - } -#Random pattern 67 for SPP scheme -'spp67' = { - table2Version = 213 ; - indicatorOfParameter = 167 ; - } -#Random pattern 68 for SPP scheme -'spp68' = { - table2Version = 213 ; - indicatorOfParameter = 168 ; - } -#Random pattern 69 for SPP scheme -'spp69' = { - table2Version = 213 ; - indicatorOfParameter = 169 ; - } -#Random pattern 70 for SPP scheme -'spp70' = { - table2Version = 213 ; - indicatorOfParameter = 170 ; - } -#Random pattern 71 for SPP scheme -'spp71' = { - table2Version = 213 ; - indicatorOfParameter = 171 ; - } -#Random pattern 72 for SPP scheme -'spp72' = { - table2Version = 213 ; - indicatorOfParameter = 172 ; - } -#Random pattern 73 for SPP scheme -'spp73' = { - table2Version = 213 ; - indicatorOfParameter = 173 ; - } -#Random pattern 74 for SPP scheme -'spp74' = { - table2Version = 213 ; - indicatorOfParameter = 174 ; - } -#Random pattern 75 for SPP scheme -'spp75' = { - table2Version = 213 ; - indicatorOfParameter = 175 ; - } -#Random pattern 76 for SPP scheme -'spp76' = { - table2Version = 213 ; - indicatorOfParameter = 176 ; - } -#Random pattern 77 for SPP scheme -'spp77' = { - table2Version = 213 ; - indicatorOfParameter = 177 ; - } -#Random pattern 78 for SPP scheme -'spp78' = { - table2Version = 213 ; - indicatorOfParameter = 178 ; - } -#Random pattern 79 for SPP scheme -'spp79' = { - table2Version = 213 ; - indicatorOfParameter = 179 ; - } -#Random pattern 80 for SPP scheme -'spp80' = { - table2Version = 213 ; - indicatorOfParameter = 180 ; - } -#Random pattern 81 for SPP scheme -'spp81' = { - table2Version = 213 ; - indicatorOfParameter = 181 ; - } -#Random pattern 82 for SPP scheme -'spp82' = { - table2Version = 213 ; - indicatorOfParameter = 182 ; - } -#Random pattern 83 for SPP scheme -'spp83' = { - table2Version = 213 ; - indicatorOfParameter = 183 ; - } -#Random pattern 84 for SPP scheme -'spp84' = { - table2Version = 213 ; - indicatorOfParameter = 184 ; - } -#Random pattern 85 for SPP scheme -'spp85' = { - table2Version = 213 ; - indicatorOfParameter = 185 ; - } -#Random pattern 86 for SPP scheme -'spp86' = { - table2Version = 213 ; - indicatorOfParameter = 186 ; - } -#Random pattern 87 for SPP scheme -'spp87' = { - table2Version = 213 ; - indicatorOfParameter = 187 ; - } -#Random pattern 88 for SPP scheme -'spp88' = { - table2Version = 213 ; - indicatorOfParameter = 188 ; - } -#Random pattern 89 for SPP scheme -'spp89' = { - table2Version = 213 ; - indicatorOfParameter = 189 ; - } -#Random pattern 90 for SPP scheme -'spp90' = { - table2Version = 213 ; - indicatorOfParameter = 190 ; - } -#Random pattern 91 for SPP scheme -'spp91' = { - table2Version = 213 ; - indicatorOfParameter = 191 ; - } -#Random pattern 92 for SPP scheme -'spp92' = { - table2Version = 213 ; - indicatorOfParameter = 192 ; - } -#Random pattern 93 for SPP scheme -'spp93' = { - table2Version = 213 ; - indicatorOfParameter = 193 ; - } -#Random pattern 94 for SPP scheme -'spp94' = { - table2Version = 213 ; - indicatorOfParameter = 194 ; - } -#Random pattern 95 for SPP scheme -'spp95' = { - table2Version = 213 ; - indicatorOfParameter = 195 ; - } -#Random pattern 96 for SPP scheme -'spp96' = { - table2Version = 213 ; - indicatorOfParameter = 196 ; - } -#Random pattern 97 for SPP scheme -'spp97' = { - table2Version = 213 ; - indicatorOfParameter = 197 ; - } -#Random pattern 98 for SPP scheme -'spp98' = { - table2Version = 213 ; - indicatorOfParameter = 198 ; - } -#Random pattern 99 for SPP scheme -'spp99' = { - table2Version = 213 ; - indicatorOfParameter = 199 ; - } -#Random pattern 100 for SPP scheme -'spp100' = { - table2Version = 213 ; - indicatorOfParameter = 200 ; - } -#Random pattern 101 for SPP scheme -'spp101' = { - table2Version = 213 ; - indicatorOfParameter = 201 ; - } -#Random pattern 102 for SPP scheme -'spp102' = { - table2Version = 213 ; - indicatorOfParameter = 202 ; - } -#Random pattern 103 for SPP scheme -'spp103' = { - table2Version = 213 ; - indicatorOfParameter = 203 ; - } -#Random pattern 104 for SPP scheme -'spp104' = { - table2Version = 213 ; - indicatorOfParameter = 204 ; - } -#Random pattern 105 for SPP scheme -'spp105' = { - table2Version = 213 ; - indicatorOfParameter = 205 ; - } -#Random pattern 106 for SPP scheme -'spp106' = { - table2Version = 213 ; - indicatorOfParameter = 206 ; - } -#Random pattern 107 for SPP scheme -'spp107' = { - table2Version = 213 ; - indicatorOfParameter = 207 ; - } -#Random pattern 108 for SPP scheme -'spp108' = { - table2Version = 213 ; - indicatorOfParameter = 208 ; - } -#Random pattern 109 for SPP scheme -'spp109' = { - table2Version = 213 ; - indicatorOfParameter = 209 ; - } -#Random pattern 110 for SPP scheme -'spp110' = { - table2Version = 213 ; - indicatorOfParameter = 210 ; - } -#Random pattern 111 for SPP scheme -'spp111' = { - table2Version = 213 ; - indicatorOfParameter = 211 ; - } -#Random pattern 112 for SPP scheme -'spp112' = { - table2Version = 213 ; - indicatorOfParameter = 212 ; - } -#Random pattern 113 for SPP scheme -'spp113' = { - table2Version = 213 ; - indicatorOfParameter = 213 ; - } -#Random pattern 114 for SPP scheme -'spp114' = { - table2Version = 213 ; - indicatorOfParameter = 214 ; - } -#Random pattern 115 for SPP scheme -'spp115' = { - table2Version = 213 ; - indicatorOfParameter = 215 ; - } -#Random pattern 116 for SPP scheme -'spp116' = { - table2Version = 213 ; - indicatorOfParameter = 216 ; - } -#Random pattern 117 for SPP scheme -'spp117' = { - table2Version = 213 ; - indicatorOfParameter = 217 ; - } -#Random pattern 118 for SPP scheme -'spp118' = { - table2Version = 213 ; - indicatorOfParameter = 218 ; - } -#Random pattern 119 for SPP scheme -'spp119' = { - table2Version = 213 ; - indicatorOfParameter = 219 ; - } -#Random pattern 120 for SPP scheme -'spp120' = { - table2Version = 213 ; - indicatorOfParameter = 220 ; - } -#Random pattern 121 for SPP scheme -'spp121' = { - table2Version = 213 ; - indicatorOfParameter = 221 ; - } -#Cosine of solar zenith angle -'uvcossza' = { - table2Version = 214 ; - indicatorOfParameter = 1 ; - } -#UV biologically effective dose -'uvbed' = { - table2Version = 214 ; - indicatorOfParameter = 2 ; - } -#UV biologically effective dose clear-sky -'uvbedcs' = { - table2Version = 214 ; - indicatorOfParameter = 3 ; - } -#Total surface UV spectral flux (280-285 nm) -'uvsflxt280285' = { - table2Version = 214 ; - indicatorOfParameter = 4 ; - } -#Total surface UV spectral flux (285-290 nm) -'uvsflxt285290' = { - table2Version = 214 ; - indicatorOfParameter = 5 ; - } -#Total surface UV spectral flux (290-295 nm) -'uvsflxt290295' = { - table2Version = 214 ; - indicatorOfParameter = 6 ; - } -#Total surface UV spectral flux (295-300 nm) -'uvsflxt295300' = { - table2Version = 214 ; - indicatorOfParameter = 7 ; - } -#Total surface UV spectral flux (300-305 nm) -'uvsflxt300305' = { - table2Version = 214 ; - indicatorOfParameter = 8 ; - } -#Total surface UV spectral flux (305-310 nm) -'uvsflxt305310' = { - table2Version = 214 ; - indicatorOfParameter = 9 ; - } -#Total surface UV spectral flux (310-315 nm) -'uvsflxt310315' = { - table2Version = 214 ; - indicatorOfParameter = 10 ; - } -#Total surface UV spectral flux (315-320 nm) -'uvsflxt315320' = { - table2Version = 214 ; - indicatorOfParameter = 11 ; - } -#Total surface UV spectral flux (320-325 nm) -'uvsflxt320325' = { - table2Version = 214 ; - indicatorOfParameter = 12 ; - } -#Total surface UV spectral flux (325-330 nm) -'uvsflxt325330' = { - table2Version = 214 ; - indicatorOfParameter = 13 ; - } -#Total surface UV spectral flux (330-335 nm) -'uvsflxt330335' = { - table2Version = 214 ; - indicatorOfParameter = 14 ; - } -#Total surface UV spectral flux (335-340 nm) -'uvsflxt335340' = { - table2Version = 214 ; - indicatorOfParameter = 15 ; - } -#Total surface UV spectral flux (340-345 nm) -'uvsflxt340345' = { - table2Version = 214 ; - indicatorOfParameter = 16 ; - } -#Total surface UV spectral flux (345-350 nm) -'uvsflxt345350' = { - table2Version = 214 ; - indicatorOfParameter = 17 ; - } -#Total surface UV spectral flux (350-355 nm) -'uvsflxt350355' = { - table2Version = 214 ; - indicatorOfParameter = 18 ; - } -#Total surface UV spectral flux (355-360 nm) -'uvsflxt355360' = { - table2Version = 214 ; - indicatorOfParameter = 19 ; - } -#Total surface UV spectral flux (360-365 nm) -'uvsflxt360365' = { - table2Version = 214 ; - indicatorOfParameter = 20 ; - } -#Total surface UV spectral flux (365-370 nm) -'uvsflxt365370' = { - table2Version = 214 ; - indicatorOfParameter = 21 ; - } -#Total surface UV spectral flux (370-375 nm) -'uvsflxt370375' = { - table2Version = 214 ; - indicatorOfParameter = 22 ; - } -#Total surface UV spectral flux (375-380 nm) -'uvsflxt375380' = { - table2Version = 214 ; - indicatorOfParameter = 23 ; - } -#Total surface UV spectral flux (380-385 nm) -'uvsflxt380385' = { - table2Version = 214 ; - indicatorOfParameter = 24 ; - } -#Total surface UV spectral flux (385-390 nm) -'uvsflxt385390' = { - table2Version = 214 ; - indicatorOfParameter = 25 ; - } -#Total surface UV spectral flux (390-395 nm) -'uvsflxt390395' = { - table2Version = 214 ; - indicatorOfParameter = 26 ; - } -#Total surface UV spectral flux (395-400 nm) -'uvsflxt395400' = { - table2Version = 214 ; - indicatorOfParameter = 27 ; - } -#Clear-sky surface UV spectral flux (280-285 nm) -'uvsflxcs280285' = { - table2Version = 214 ; - indicatorOfParameter = 28 ; - } -#Clear-sky surface UV spectral flux (285-290 nm) -'uvsflxcs285290' = { - table2Version = 214 ; - indicatorOfParameter = 29 ; - } -#Clear-sky surface UV spectral flux (290-295 nm) -'uvsflxcs290295' = { - table2Version = 214 ; - indicatorOfParameter = 30 ; - } -#Clear-sky surface UV spectral flux (295-300 nm) -'uvsflxcs295300' = { - table2Version = 214 ; - indicatorOfParameter = 31 ; - } -#Clear-sky surface UV spectral flux (300-305 nm) -'uvsflxcs300305' = { - table2Version = 214 ; - indicatorOfParameter = 32 ; - } -#Clear-sky surface UV spectral flux (305-310 nm) -'uvsflxcs305310' = { - table2Version = 214 ; - indicatorOfParameter = 33 ; - } -#Clear-sky surface UV spectral flux (310-315 nm) -'uvsflxcs310315' = { - table2Version = 214 ; - indicatorOfParameter = 34 ; - } -#Clear-sky surface UV spectral flux (315-320 nm) -'uvsflxcs315320' = { - table2Version = 214 ; - indicatorOfParameter = 35 ; - } -#Clear-sky surface UV spectral flux (320-325 nm) -'uvsflxcs320325' = { - table2Version = 214 ; - indicatorOfParameter = 36 ; - } -#Clear-sky surface UV spectral flux (325-330 nm) -'uvsflxcs325330' = { - table2Version = 214 ; - indicatorOfParameter = 37 ; - } -#Clear-sky surface UV spectral flux (330-335 nm) -'uvsflxcs330335' = { - table2Version = 214 ; - indicatorOfParameter = 38 ; - } -#Clear-sky surface UV spectral flux (335-340 nm) -'uvsflxcs335340' = { - table2Version = 214 ; - indicatorOfParameter = 39 ; - } -#Clear-sky surface UV spectral flux (340-345 nm) -'uvsflxcs340345' = { - table2Version = 214 ; - indicatorOfParameter = 40 ; - } -#Clear-sky surface UV spectral flux (345-350 nm) -'uvsflxcs345350' = { - table2Version = 214 ; - indicatorOfParameter = 41 ; - } -#Clear-sky surface UV spectral flux (350-355 nm) -'uvsflxcs350355' = { - table2Version = 214 ; - indicatorOfParameter = 42 ; - } -#Clear-sky surface UV spectral flux (355-360 nm) -'uvsflxcs355360' = { - table2Version = 214 ; - indicatorOfParameter = 43 ; - } -#Clear-sky surface UV spectral flux (360-365 nm) -'uvsflxcs360365' = { - table2Version = 214 ; - indicatorOfParameter = 44 ; - } -#Clear-sky surface UV spectral flux (365-370 nm) -'uvsflxcs365370' = { - table2Version = 214 ; - indicatorOfParameter = 45 ; - } -#Clear-sky surface UV spectral flux (370-375 nm) -'uvsflxcs370375' = { - table2Version = 214 ; - indicatorOfParameter = 46 ; - } -#Clear-sky surface UV spectral flux (375-380 nm) -'uvsflxcs375380' = { - table2Version = 214 ; - indicatorOfParameter = 47 ; - } -#Clear-sky surface UV spectral flux (380-385 nm) -'uvsflxcs380385' = { - table2Version = 214 ; - indicatorOfParameter = 48 ; - } -#Clear-sky surface UV spectral flux (385-390 nm) -'uvsflxcs385390' = { - table2Version = 214 ; - indicatorOfParameter = 49 ; - } -#Clear-sky surface UV spectral flux (390-395 nm) -'uvsflxcs390395' = { - table2Version = 214 ; - indicatorOfParameter = 50 ; - } -#Clear-sky surface UV spectral flux (395-400 nm) -'uvsflxcs395400' = { - table2Version = 214 ; - indicatorOfParameter = 51 ; - } -#Profile of optical thickness at 340 nm -'aot340' = { - table2Version = 214 ; - indicatorOfParameter = 52 ; - } -#Source/gain of sea salt aerosol (0.03 - 0.5 um) -'aersrcsss' = { - table2Version = 215 ; - indicatorOfParameter = 1 ; - } -#Source/gain of sea salt aerosol (0.5 - 5 um) -'aersrcssm' = { - table2Version = 215 ; - indicatorOfParameter = 2 ; - } -#Source/gain of sea salt aerosol (5 - 20 um) -'aersrcssl' = { - table2Version = 215 ; - indicatorOfParameter = 3 ; - } -#Dry deposition of sea salt aerosol (0.03 - 0.5 um) -'aerddpsss' = { - table2Version = 215 ; - indicatorOfParameter = 4 ; - } -#Dry deposition of sea salt aerosol (0.5 - 5 um) -'aerddpssm' = { - table2Version = 215 ; - indicatorOfParameter = 5 ; - } -#Dry deposition of sea salt aerosol (5 - 20 um) -'aerddpssl' = { - table2Version = 215 ; - indicatorOfParameter = 6 ; - } -#Sedimentation of sea salt aerosol (0.03 - 0.5 um) -'aersdmsss' = { - table2Version = 215 ; - indicatorOfParameter = 7 ; - } -#Sedimentation of sea salt aerosol (0.5 - 5 um) -'aersdmssm' = { - table2Version = 215 ; - indicatorOfParameter = 8 ; - } -#Sedimentation of sea salt aerosol (5 - 20 um) -'aersdmssl' = { - table2Version = 215 ; - indicatorOfParameter = 9 ; - } -#Wet deposition of sea salt aerosol (0.03 - 0.5 um) by large-scale precipitation -'aerwdlssss' = { - table2Version = 215 ; - indicatorOfParameter = 10 ; - } -#Wet deposition of sea salt aerosol (0.5 - 5 um) by large-scale precipitation -'aerwdlsssm' = { - table2Version = 215 ; - indicatorOfParameter = 11 ; - } -#Wet deposition of sea salt aerosol (5 - 20 um) by large-scale precipitation -'aerwdlsssl' = { - table2Version = 215 ; - indicatorOfParameter = 12 ; - } -#Wet deposition of sea salt aerosol (0.03 - 0.5 um) by convective precipitation -'aerwdccsss' = { - table2Version = 215 ; - indicatorOfParameter = 13 ; - } -#Wet deposition of sea salt aerosol (0.5 - 5 um) by convective precipitation -'aerwdccssm' = { - table2Version = 215 ; - indicatorOfParameter = 14 ; - } -#Wet deposition of sea salt aerosol (5 - 20 um) by convective precipitation -'aerwdccssl' = { - table2Version = 215 ; - indicatorOfParameter = 15 ; - } -#Negative fixer of sea salt aerosol (0.03 - 0.5 um) -'aerngtsss' = { - table2Version = 215 ; - indicatorOfParameter = 16 ; - } -#Negative fixer of sea salt aerosol (0.5 - 5 um) -'aerngtssm' = { - table2Version = 215 ; - indicatorOfParameter = 17 ; - } -#Negative fixer of sea salt aerosol (5 - 20 um) -'aerngtssl' = { - table2Version = 215 ; - indicatorOfParameter = 18 ; - } -#Vertically integrated mass of sea salt aerosol (0.03 - 0.5 um) -'aermsssss' = { - table2Version = 215 ; - indicatorOfParameter = 19 ; - } -#Vertically integrated mass of sea salt aerosol (0.5 - 5 um) -'aermssssm' = { - table2Version = 215 ; - indicatorOfParameter = 20 ; - } -#Vertically integrated mass of sea salt aerosol (5 - 20 um) -'aermssssl' = { - table2Version = 215 ; - indicatorOfParameter = 21 ; - } -#Sea salt aerosol (0.03 - 0.5 um) optical depth -'aerodsss' = { - table2Version = 215 ; - indicatorOfParameter = 22 ; - } -#Sea salt aerosol (0.5 - 5 um) optical depth -'aerodssm' = { - table2Version = 215 ; - indicatorOfParameter = 23 ; - } -#Sea salt aerosol (5 - 20 um) optical depth -'aerodssl' = { - table2Version = 215 ; - indicatorOfParameter = 24 ; - } -#Source/gain of dust aerosol (0.03 - 0.55 um) -'aersrcdus' = { - table2Version = 215 ; - indicatorOfParameter = 25 ; - } -#Source/gain of dust aerosol (0.55 - 9 um) -'aersrcdum' = { - table2Version = 215 ; - indicatorOfParameter = 26 ; - } -#Source/gain of dust aerosol (9 - 20 um) -'aersrcdul' = { - table2Version = 215 ; - indicatorOfParameter = 27 ; - } -#Dry deposition of dust aerosol (0.03 - 0.55 um) -'aerddpdus' = { - table2Version = 215 ; - indicatorOfParameter = 28 ; - } -#Dry deposition of dust aerosol (0.55 - 9 um) -'aerddpdum' = { - table2Version = 215 ; - indicatorOfParameter = 29 ; - } -#Dry deposition of dust aerosol (9 - 20 um) -'aerddpdul' = { - table2Version = 215 ; - indicatorOfParameter = 30 ; - } -#Sedimentation of dust aerosol (0.03 - 0.55 um) -'aersdmdus' = { - table2Version = 215 ; - indicatorOfParameter = 31 ; - } -#Sedimentation of dust aerosol (0.55 - 9 um) -'aersdmdum' = { - table2Version = 215 ; - indicatorOfParameter = 32 ; - } -#Sedimentation of dust aerosol (9 - 20 um) -'aersdmdul' = { - table2Version = 215 ; - indicatorOfParameter = 33 ; - } -#Wet deposition of dust aerosol (0.03 - 0.55 um) by large-scale precipitation -'aerwdlsdus' = { - table2Version = 215 ; - indicatorOfParameter = 34 ; - } -#Wet deposition of dust aerosol (0.55 - 9 um) by large-scale precipitation -'aerwdlsdum' = { - table2Version = 215 ; - indicatorOfParameter = 35 ; - } -#Wet deposition of dust aerosol (9 - 20 um) by large-scale precipitation -'aerwdlsdul' = { - table2Version = 215 ; - indicatorOfParameter = 36 ; - } -#Wet deposition of dust aerosol (0.03 - 0.55 um) by convective precipitation -'aerwdccdus' = { - table2Version = 215 ; - indicatorOfParameter = 37 ; - } -#Wet deposition of dust aerosol (0.55 - 9 um) by convective precipitation -'aerwdccdum' = { - table2Version = 215 ; - indicatorOfParameter = 38 ; - } -#Wet deposition of dust aerosol (9 - 20 um) by convective precipitation -'aerwdccdul' = { - table2Version = 215 ; - indicatorOfParameter = 39 ; - } -#Negative fixer of dust aerosol (0.03 - 0.55 um) -'aerngtdus' = { - table2Version = 215 ; - indicatorOfParameter = 40 ; - } -#Negative fixer of dust aerosol (0.55 - 9 um) -'aerngtdum' = { - table2Version = 215 ; - indicatorOfParameter = 41 ; - } -#Negative fixer of dust aerosol (9 - 20 um) -'aerngtdul' = { - table2Version = 215 ; - indicatorOfParameter = 42 ; - } -#Vertically integrated mass of dust aerosol (0.03 - 0.55 um) -'aermssdus' = { - table2Version = 215 ; - indicatorOfParameter = 43 ; - } -#Vertically integrated mass of dust aerosol (0.55 - 9 um) -'aermssdum' = { - table2Version = 215 ; - indicatorOfParameter = 44 ; - } -#Vertically integrated mass of dust aerosol (9 - 20 um) -'aermssdul' = { - table2Version = 215 ; - indicatorOfParameter = 45 ; - } -#Dust aerosol (0.03 - 0.55 um) optical depth -'aeroddus' = { - table2Version = 215 ; - indicatorOfParameter = 46 ; - } -#Dust aerosol (0.55 - 9 um) optical depth -'aeroddum' = { - table2Version = 215 ; - indicatorOfParameter = 47 ; - } -#Dust aerosol (9 - 20 um) optical depth -'aeroddul' = { - table2Version = 215 ; - indicatorOfParameter = 48 ; - } -#Source/gain of hydrophobic organic matter aerosol -'aersrcomhphob' = { - table2Version = 215 ; - indicatorOfParameter = 49 ; - } -#Source/gain of hydrophilic organic matter aerosol -'aersrcomhphil' = { - table2Version = 215 ; - indicatorOfParameter = 50 ; - } -#Dry deposition of hydrophobic organic matter aerosol -'aerddpomhphob' = { - table2Version = 215 ; - indicatorOfParameter = 51 ; - } -#Dry deposition of hydrophilic organic matter aerosol -'aerddpomhphil' = { - table2Version = 215 ; - indicatorOfParameter = 52 ; - } -#Sedimentation of hydrophobic organic matter aerosol -'aersdmomhphob' = { - table2Version = 215 ; - indicatorOfParameter = 53 ; - } -#Sedimentation of hydrophilic organic matter aerosol -'aersdmomhphil' = { - table2Version = 215 ; - indicatorOfParameter = 54 ; - } -#Wet deposition of hydrophobic organic matter aerosol by large-scale precipitation -'aerwdlsomhphob' = { - table2Version = 215 ; - indicatorOfParameter = 55 ; - } -#Wet deposition of hydrophilic organic matter aerosol by large-scale precipitation -'aerwdlsomhphil' = { - table2Version = 215 ; - indicatorOfParameter = 56 ; - } -#Wet deposition of hydrophobic organic matter aerosol by convective precipitation -'aerwdccomhphob' = { - table2Version = 215 ; - indicatorOfParameter = 57 ; - } -#Wet deposition of hydrophilic organic matter aerosol by convective precipitation -'aerwdccomhphil' = { - table2Version = 215 ; - indicatorOfParameter = 58 ; - } -#Negative fixer of hydrophobic organic matter aerosol -'aerngtomhphob' = { - table2Version = 215 ; - indicatorOfParameter = 59 ; - } -#Negative fixer of hydrophilic organic matter aerosol -'aerngtomhphil' = { - table2Version = 215 ; - indicatorOfParameter = 60 ; - } -#Vertically integrated mass of hydrophobic organic matter aerosol -'aermssomhphob' = { - table2Version = 215 ; - indicatorOfParameter = 61 ; - } -#Vertically integrated mass of hydrophilic organic matter aerosol -'aermssomhphil' = { - table2Version = 215 ; - indicatorOfParameter = 62 ; - } -#Hydrophobic organic matter aerosol optical depth -'aerodomhphob' = { - table2Version = 215 ; - indicatorOfParameter = 63 ; - } -#Hydrophilic organic matter aerosol optical depth -'aerodomhphil' = { - table2Version = 215 ; - indicatorOfParameter = 64 ; - } -#Source/gain of hydrophobic black carbon aerosol -'aersrcbchphob' = { - table2Version = 215 ; - indicatorOfParameter = 65 ; - } -#Source/gain of hydrophilic black carbon aerosol -'aersrcbchphil' = { - table2Version = 215 ; - indicatorOfParameter = 66 ; - } -#Dry deposition of hydrophobic black carbon aerosol -'aerddpbchphob' = { - table2Version = 215 ; - indicatorOfParameter = 67 ; - } -#Dry deposition of hydrophilic black carbon aerosol -'aerddpbchphil' = { - table2Version = 215 ; - indicatorOfParameter = 68 ; - } -#Sedimentation of hydrophobic black carbon aerosol -'aersdmbchphob' = { - table2Version = 215 ; - indicatorOfParameter = 69 ; - } -#Sedimentation of hydrophilic black carbon aerosol -'aersdmbchphil' = { - table2Version = 215 ; - indicatorOfParameter = 70 ; - } -#Wet deposition of hydrophobic black carbon aerosol by large-scale precipitation -'aerwdlsbchphob' = { - table2Version = 215 ; - indicatorOfParameter = 71 ; - } -#Wet deposition of hydrophilic black carbon aerosol by large-scale precipitation -'aerwdlsbchphil' = { - table2Version = 215 ; - indicatorOfParameter = 72 ; - } -#Wet deposition of hydrophobic black carbon aerosol by convective precipitation -'aerwdccbchphob' = { - table2Version = 215 ; - indicatorOfParameter = 73 ; - } -#Wet deposition of hydrophilic black carbon aerosol by convective precipitation -'aerwdccbchphil' = { - table2Version = 215 ; - indicatorOfParameter = 74 ; - } -#Negative fixer of hydrophobic black carbon aerosol -'aerngtbchphob' = { - table2Version = 215 ; - indicatorOfParameter = 75 ; - } -#Negative fixer of hydrophilic black carbon aerosol -'aerngtbchphil' = { - table2Version = 215 ; - indicatorOfParameter = 76 ; - } -#Vertically integrated mass of hydrophobic black carbon aerosol -'aermssbchphob' = { - table2Version = 215 ; - indicatorOfParameter = 77 ; - } -#Vertically integrated mass of hydrophilic black carbon aerosol -'aermssbchphil' = { - table2Version = 215 ; - indicatorOfParameter = 78 ; - } -#Hydrophobic black carbon aerosol optical depth -'aerodbchphob' = { - table2Version = 215 ; - indicatorOfParameter = 79 ; - } -#Hydrophilic black carbon aerosol optical depth -'aerodbchphil' = { - table2Version = 215 ; - indicatorOfParameter = 80 ; - } -#Source/gain of sulphate aerosol -'aersrcsu' = { - table2Version = 215 ; - indicatorOfParameter = 81 ; - } -#Dry deposition of sulphate aerosol -'aerddpsu' = { - table2Version = 215 ; - indicatorOfParameter = 82 ; - } -#Sedimentation of sulphate aerosol -'aersdmsu' = { - table2Version = 215 ; - indicatorOfParameter = 83 ; - } -#Wet deposition of sulphate aerosol by large-scale precipitation -'aerwdlssu' = { - table2Version = 215 ; - indicatorOfParameter = 84 ; - } -#Wet deposition of sulphate aerosol by convective precipitation -'aerwdccsu' = { - table2Version = 215 ; - indicatorOfParameter = 85 ; - } -#Negative fixer of sulphate aerosol -'aerngtsu' = { - table2Version = 215 ; - indicatorOfParameter = 86 ; - } -#Vertically integrated mass of sulphate aerosol -'aermsssu' = { - table2Version = 215 ; - indicatorOfParameter = 87 ; - } -#Sulphate aerosol optical depth -'aerodsu' = { - table2Version = 215 ; - indicatorOfParameter = 88 ; - } -#Accumulated total aerosol optical depth at 550 nm -'accaod550' = { - table2Version = 215 ; - indicatorOfParameter = 89 ; - } -#Effective (snow effect included) UV visible albedo for direct radiation -'aluvpsn' = { - table2Version = 215 ; - indicatorOfParameter = 90 ; - } -#10 metre wind speed dust emission potential -'aerdep10si' = { - table2Version = 215 ; - indicatorOfParameter = 91 ; - } -#10 metre wind gustiness dust emission potential -'aerdep10fg' = { - table2Version = 215 ; - indicatorOfParameter = 92 ; - } -#Total aerosol optical thickness at 532 nm -'aot532' = { - table2Version = 215 ; - indicatorOfParameter = 93 ; - } -#Natural (sea-salt and dust) aerosol optical thickness at 532 nm -'naot532' = { - table2Version = 215 ; - indicatorOfParameter = 94 ; - } -#Anthropogenic (black carbon, organic matter, sulphate) aerosol optical thickness at 532 nm -'aaot532' = { - table2Version = 215 ; - indicatorOfParameter = 95 ; - } -#Total absorption aerosol optical depth at 340 nm -'aodabs340' = { - table2Version = 215 ; - indicatorOfParameter = 96 ; - } -#Total absorption aerosol optical depth at 355 nm -'aodabs355' = { - table2Version = 215 ; - indicatorOfParameter = 97 ; - } -#Total absorption aerosol optical depth at 380 nm -'aodabs380' = { - table2Version = 215 ; - indicatorOfParameter = 98 ; - } -#Total absorption aerosol optical depth at 400 nm -'aodabs400' = { - table2Version = 215 ; - indicatorOfParameter = 99 ; - } -#Total absorption aerosol optical depth at 440 nm -'aodabs440' = { - table2Version = 215 ; - indicatorOfParameter = 100 ; - } -#Total absorption aerosol optical depth at 469 nm -'aodabs469' = { - table2Version = 215 ; - indicatorOfParameter = 101 ; - } -#Total absorption aerosol optical depth at 500 nm -'aodabs500' = { - table2Version = 215 ; - indicatorOfParameter = 102 ; - } -#Total absorption aerosol optical depth at 532 nm -'aodabs532' = { - table2Version = 215 ; - indicatorOfParameter = 103 ; - } -#Total absorption aerosol optical depth at 550 nm -'aodabs550' = { - table2Version = 215 ; - indicatorOfParameter = 104 ; - } -#Total absorption aerosol optical depth at 645 nm -'aodabs645' = { - table2Version = 215 ; - indicatorOfParameter = 105 ; - } -#Total absorption aerosol optical depth at 670 nm -'aodabs670' = { - table2Version = 215 ; - indicatorOfParameter = 106 ; - } -#Total absorption aerosol optical depth at 800 nm -'aodabs800' = { - table2Version = 215 ; - indicatorOfParameter = 107 ; - } -#Total absorption aerosol optical depth at 858 nm -'aodabs858' = { - table2Version = 215 ; - indicatorOfParameter = 108 ; - } -#Total absorption aerosol optical depth at 865 nm -'aodabs865' = { - table2Version = 215 ; - indicatorOfParameter = 109 ; - } -#Total absorption aerosol optical depth at 1020 nm -'aodabs1020' = { - table2Version = 215 ; - indicatorOfParameter = 110 ; - } -#Total absorption aerosol optical depth at 1064 nm -'aodabs1064' = { - table2Version = 215 ; - indicatorOfParameter = 111 ; - } -#Total absorption aerosol optical depth at 1240 nm -'aodabs1240' = { - table2Version = 215 ; - indicatorOfParameter = 112 ; - } -#Total absorption aerosol optical depth at 1640 nm -'aodabs1640' = { - table2Version = 215 ; - indicatorOfParameter = 113 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 340 nm -'aodfm340' = { - table2Version = 215 ; - indicatorOfParameter = 114 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 355 nm -'aodfm355' = { - table2Version = 215 ; - indicatorOfParameter = 115 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 380 nm -'aodfm380' = { - table2Version = 215 ; - indicatorOfParameter = 116 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 400 nm -'aodfm400' = { - table2Version = 215 ; - indicatorOfParameter = 117 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 440 nm -'aodfm440' = { - table2Version = 215 ; - indicatorOfParameter = 118 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 469 nm -'aodfm469' = { - table2Version = 215 ; - indicatorOfParameter = 119 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 500 nm -'aodfm500' = { - table2Version = 215 ; - indicatorOfParameter = 120 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 532 nm -'aodfm532' = { - table2Version = 215 ; - indicatorOfParameter = 121 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 550 nm -'aodfm550' = { - table2Version = 215 ; - indicatorOfParameter = 122 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 645 nm -'aodfm645' = { - table2Version = 215 ; - indicatorOfParameter = 123 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 670 nm -'aodfm670' = { - table2Version = 215 ; - indicatorOfParameter = 124 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 800 nm -'aodfm800' = { - table2Version = 215 ; - indicatorOfParameter = 125 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 858 nm -'aodfm858' = { - table2Version = 215 ; - indicatorOfParameter = 126 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 865 nm -'aodfm865' = { - table2Version = 215 ; - indicatorOfParameter = 127 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 1020 nm -'aodfm1020' = { - table2Version = 215 ; - indicatorOfParameter = 128 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 1064 nm -'aodfm1064' = { - table2Version = 215 ; - indicatorOfParameter = 129 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 1240 nm -'aodfm1240' = { - table2Version = 215 ; - indicatorOfParameter = 130 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 1640 nm -'aodfm1640' = { - table2Version = 215 ; - indicatorOfParameter = 131 ; - } -#Single scattering albedo at 340 nm -'ssa340' = { - table2Version = 215 ; - indicatorOfParameter = 132 ; - } -#Single scattering albedo at 355 nm -'ssa355' = { - table2Version = 215 ; - indicatorOfParameter = 133 ; - } -#Single scattering albedo at 380 nm -'ssa380' = { - table2Version = 215 ; - indicatorOfParameter = 134 ; - } -#Single scattering albedo at 400 nm -'ssa400' = { - table2Version = 215 ; - indicatorOfParameter = 135 ; - } -#Single scattering albedo at 440 nm -'ssa440' = { - table2Version = 215 ; - indicatorOfParameter = 136 ; - } -#Single scattering albedo at 469 nm -'ssa469' = { - table2Version = 215 ; - indicatorOfParameter = 137 ; - } -#Single scattering albedo at 500 nm -'ssa500' = { - table2Version = 215 ; - indicatorOfParameter = 138 ; - } -#Single scattering albedo at 532 nm -'ssa532' = { - table2Version = 215 ; - indicatorOfParameter = 139 ; - } -#Single scattering albedo at 550 nm -'ssa550' = { - table2Version = 215 ; - indicatorOfParameter = 140 ; - } -#Single scattering albedo at 645 nm -'ssa645' = { - table2Version = 215 ; - indicatorOfParameter = 141 ; - } -#Single scattering albedo at 670 nm -'ssa670' = { - table2Version = 215 ; - indicatorOfParameter = 142 ; - } -#Single scattering albedo at 800 nm -'ssa800' = { - table2Version = 215 ; - indicatorOfParameter = 143 ; - } -#Single scattering albedo at 858 nm -'ssa858' = { - table2Version = 215 ; - indicatorOfParameter = 144 ; - } -#Single scattering albedo at 865 nm -'ssa865' = { - table2Version = 215 ; - indicatorOfParameter = 145 ; - } -#Single scattering albedo at 1020 nm -'ssa1020' = { - table2Version = 215 ; - indicatorOfParameter = 146 ; - } -#Single scattering albedo at 1064 nm -'ssa1064' = { - table2Version = 215 ; - indicatorOfParameter = 147 ; - } -#Single scattering albedo at 1240 nm -'ssa1240' = { - table2Version = 215 ; - indicatorOfParameter = 148 ; - } -#Single scattering albedo at 1640 nm -'ssa1640' = { - table2Version = 215 ; - indicatorOfParameter = 149 ; - } -#Asymmetry factor at 340 nm -'asymmetry340' = { - table2Version = 215 ; - indicatorOfParameter = 150 ; - } -#Asymmetry factor at 355 nm -'asymmetry355' = { - table2Version = 215 ; - indicatorOfParameter = 151 ; - } -#Asymmetry factor at 380 nm -'asymmetry380' = { - table2Version = 215 ; - indicatorOfParameter = 152 ; - } -#Asymmetry factor at 400 nm -'asymmetry400' = { - table2Version = 215 ; - indicatorOfParameter = 153 ; - } -#Asymmetry factor at 440 nm -'asymmetry440' = { - table2Version = 215 ; - indicatorOfParameter = 154 ; - } -#Asymmetry factor at 469 nm -'asymmetry469' = { - table2Version = 215 ; - indicatorOfParameter = 155 ; - } -#Asymmetry factor at 500 nm -'asymmetry500' = { - table2Version = 215 ; - indicatorOfParameter = 156 ; - } -#Asymmetry factor at 532 nm -'asymmetry532' = { - table2Version = 215 ; - indicatorOfParameter = 157 ; - } -#Asymmetry factor at 550 nm -'asymmetry550' = { - table2Version = 215 ; - indicatorOfParameter = 158 ; - } -#Asymmetry factor at 645 nm -'asymmetry645' = { - table2Version = 215 ; - indicatorOfParameter = 159 ; - } -#Asymmetry factor at 670 nm -'asymmetry670' = { - table2Version = 215 ; - indicatorOfParameter = 160 ; - } -#Asymmetry factor at 800 nm -'asymmetry800' = { - table2Version = 215 ; - indicatorOfParameter = 161 ; - } -#Asymmetry factor at 858 nm -'asymmetry858' = { - table2Version = 215 ; - indicatorOfParameter = 162 ; - } -#Asymmetry factor at 865 nm -'asymmetry865' = { - table2Version = 215 ; - indicatorOfParameter = 163 ; - } -#Asymmetry factor at 1020 nm -'asymmetry1020' = { - table2Version = 215 ; - indicatorOfParameter = 164 ; - } -#Asymmetry factor at 1064 nm -'asymmetry1064' = { - table2Version = 215 ; - indicatorOfParameter = 165 ; - } -#Asymmetry factor at 1240 nm -'asymmetry1240' = { - table2Version = 215 ; - indicatorOfParameter = 166 ; - } -#Asymmetry factor at 1640 nm -'asymmetry1640' = { - table2Version = 215 ; - indicatorOfParameter = 167 ; - } -#Source/gain of sulphur dioxide -'aersrcso2' = { - table2Version = 215 ; - indicatorOfParameter = 168 ; - } -#Dry deposition of sulphur dioxide -'aerddpso2' = { - table2Version = 215 ; - indicatorOfParameter = 169 ; - } -#Sedimentation of sulphur dioxide -'aersdmso2' = { - table2Version = 215 ; - indicatorOfParameter = 170 ; - } -#Wet deposition of sulphur dioxide by large-scale precipitation -'aerwdlsso2' = { - table2Version = 215 ; - indicatorOfParameter = 171 ; - } -#Wet deposition of sulphur dioxide by convective precipitation -'aerwdccso2' = { - table2Version = 215 ; - indicatorOfParameter = 172 ; - } -#Negative fixer of sulphur dioxide -'aerngtso2' = { - table2Version = 215 ; - indicatorOfParameter = 173 ; - } -#Vertically integrated mass of sulphur dioxide -'aermssso2' = { - table2Version = 215 ; - indicatorOfParameter = 174 ; - } -#Sulphur dioxide optical depth -'aerodso2' = { - table2Version = 215 ; - indicatorOfParameter = 175 ; - } -#Total absorption aerosol optical depth at 2130 nm -'aodabs2130' = { - table2Version = 215 ; - indicatorOfParameter = 176 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 2130 nm -'aodfm2130' = { - table2Version = 215 ; - indicatorOfParameter = 177 ; - } -#Single scattering albedo at 2130 nm -'ssa2130' = { - table2Version = 215 ; - indicatorOfParameter = 178 ; - } -#Asymmetry factor at 2130 nm -'asymmetry2130' = { - table2Version = 215 ; - indicatorOfParameter = 179 ; - } -#Aerosol extinction coefficient at 355 nm -'aerext355' = { - table2Version = 215 ; - indicatorOfParameter = 180 ; - } -#Aerosol extinction coefficient at 532 nm -'aerext532' = { - table2Version = 215 ; - indicatorOfParameter = 181 ; - } -#Aerosol extinction coefficient at 1064 nm -'aerext1064' = { - table2Version = 215 ; - indicatorOfParameter = 182 ; - } -#Aerosol backscatter coefficient at 355 nm (from top of atmosphere) -'aerbackscattoa355' = { - table2Version = 215 ; - indicatorOfParameter = 183 ; - } -#Aerosol backscatter coefficient at 532 nm (from top of atmosphere) -'aerbackscattoa532' = { - table2Version = 215 ; - indicatorOfParameter = 184 ; - } -#Aerosol backscatter coefficient at 1064 nm (from top of atmosphere) -'aerbackscattoa1064' = { - table2Version = 215 ; - indicatorOfParameter = 185 ; - } -#Aerosol backscatter coefficient at 355 nm (from ground) -'aerbackscatgnd355' = { - table2Version = 215 ; - indicatorOfParameter = 186 ; - } -#Aerosol backscatter coefficient at 532 nm (from ground) -'aerbackscatgnd532' = { - table2Version = 215 ; - indicatorOfParameter = 187 ; - } -#Aerosol backscatter coefficient at 1064 nm (from ground) -'aerbackscatgnd1064' = { - table2Version = 215 ; - indicatorOfParameter = 188 ; - } -#Source/gain of fine-mode nitrate aerosol -'aersrcnif' = { - table2Version = 215 ; - indicatorOfParameter = 189 ; - } -#Source/gain of coarse-mode nitrate aerosol -'aersrcnic' = { - table2Version = 215 ; - indicatorOfParameter = 190 ; - } -#Dry deposition of fine-mode nitrate aerosol -'aerddpnif' = { - table2Version = 215 ; - indicatorOfParameter = 191 ; - } -#Dry deposition of coarse-mode nitrate aerosol -'aerddpnic' = { - table2Version = 215 ; - indicatorOfParameter = 192 ; - } -#Sedimentation of fine-mode nitrate aerosol -'aersdmnif' = { - table2Version = 215 ; - indicatorOfParameter = 193 ; - } -#Sedimentation of coarse-mode nitrate aerosol -'aersdmnic' = { - table2Version = 215 ; - indicatorOfParameter = 194 ; - } -#Wet deposition of fine-mode nitrate aerosol by large-scale precipitation -'aerwdlnif' = { - table2Version = 215 ; - indicatorOfParameter = 195 ; - } -#Wet deposition of coarse-mode nitrate aerosol by large-scale precipitation -'aerwdlnic' = { - table2Version = 215 ; - indicatorOfParameter = 196 ; - } -#Wet deposition of fine-mode nitrate aerosol by convective precipitation -'aerwdcnif' = { - table2Version = 215 ; - indicatorOfParameter = 197 ; - } -#Wet deposition of coarse-mode nitrate aerosol by convective precipitation -'aerwdcnic' = { - table2Version = 215 ; - indicatorOfParameter = 198 ; - } -#Negative fixer of fine-mode nitrate aerosol -'aerngtnif' = { - table2Version = 215 ; - indicatorOfParameter = 199 ; - } -#Negative fixer of coarse-mode nitrate aerosol -'aerngtnic' = { - table2Version = 215 ; - indicatorOfParameter = 200 ; - } -#Vertically integrated mass of fine-mode nitrate aerosol -'aermssnif' = { - table2Version = 215 ; - indicatorOfParameter = 201 ; - } -#Vertically integrated mass of coarse-mode nitrate aerosol -'aermssnic' = { - table2Version = 215 ; - indicatorOfParameter = 202 ; - } -#Fine-mode nitrate aerosol optical depth at 550 nm -'aerodnif' = { - table2Version = 215 ; - indicatorOfParameter = 203 ; - } -#Coarse-mode nitrate aerosol optical depth at 550 nm -'aerodnic' = { - table2Version = 215 ; - indicatorOfParameter = 204 ; - } -#Source/gain of ammonium aerosol -'aersrcam' = { - table2Version = 215 ; - indicatorOfParameter = 205 ; - } -#Dry deposition of ammonium aerosol -'aerddpam' = { - table2Version = 215 ; - indicatorOfParameter = 206 ; - } -#Sedimentation of ammonium aerosol -'aersdmam' = { - table2Version = 215 ; - indicatorOfParameter = 207 ; - } -#Wet deposition of ammonium aerosol by large-scale precipitation -'aerwdlam' = { - table2Version = 215 ; - indicatorOfParameter = 208 ; - } -#Wet deposition of ammonium aerosol by convective precipitation -'aerwdcam' = { - table2Version = 215 ; - indicatorOfParameter = 209 ; - } -#Negative fixer of ammonium aerosol -'aerngtam' = { - table2Version = 215 ; - indicatorOfParameter = 210 ; - } -#Vertically integrated mass of ammonium aerosol -'aermssam' = { - table2Version = 215 ; - indicatorOfParameter = 211 ; - } -#Experimental product -'p1.216' = { - table2Version = 216 ; - indicatorOfParameter = 1 ; - } -#Experimental product -'p2.216' = { - table2Version = 216 ; - indicatorOfParameter = 2 ; - } -#Experimental product -'p3.216' = { - table2Version = 216 ; - indicatorOfParameter = 3 ; - } -#Experimental product -'p4.216' = { - table2Version = 216 ; - indicatorOfParameter = 4 ; - } -#Experimental product -'p5.216' = { - table2Version = 216 ; - indicatorOfParameter = 5 ; - } -#Experimental product -'p6.216' = { - table2Version = 216 ; - indicatorOfParameter = 6 ; - } -#Experimental product -'p7.216' = { - table2Version = 216 ; - indicatorOfParameter = 7 ; - } -#Experimental product -'p8.216' = { - table2Version = 216 ; - indicatorOfParameter = 8 ; - } -#Experimental product -'p9.216' = { - table2Version = 216 ; - indicatorOfParameter = 9 ; - } -#Experimental product -'p10.216' = { - table2Version = 216 ; - indicatorOfParameter = 10 ; - } -#Experimental product -'p11.216' = { - table2Version = 216 ; - indicatorOfParameter = 11 ; - } -#Experimental product -'p12.216' = { - table2Version = 216 ; - indicatorOfParameter = 12 ; - } -#Experimental product -'p13.216' = { - table2Version = 216 ; - indicatorOfParameter = 13 ; - } -#Experimental product -'p14.216' = { - table2Version = 216 ; - indicatorOfParameter = 14 ; - } -#Experimental product -'p15.216' = { - table2Version = 216 ; - indicatorOfParameter = 15 ; - } -#Experimental product -'p16.216' = { - table2Version = 216 ; - indicatorOfParameter = 16 ; - } -#Experimental product -'p17.216' = { - table2Version = 216 ; - indicatorOfParameter = 17 ; - } -#Experimental product -'p18.216' = { - table2Version = 216 ; - indicatorOfParameter = 18 ; - } -#Experimental product -'p19.216' = { - table2Version = 216 ; - indicatorOfParameter = 19 ; - } -#Experimental product -'p20.216' = { - table2Version = 216 ; - indicatorOfParameter = 20 ; - } -#Experimental product -'p21.216' = { - table2Version = 216 ; - indicatorOfParameter = 21 ; - } -#Experimental product -'p22.216' = { - table2Version = 216 ; - indicatorOfParameter = 22 ; - } -#Experimental product -'p23.216' = { - table2Version = 216 ; - indicatorOfParameter = 23 ; - } -#Experimental product -'p24.216' = { - table2Version = 216 ; - indicatorOfParameter = 24 ; - } -#Experimental product -'p25.216' = { - table2Version = 216 ; - indicatorOfParameter = 25 ; - } -#Experimental product -'p26.216' = { - table2Version = 216 ; - indicatorOfParameter = 26 ; - } -#Experimental product -'p27.216' = { - table2Version = 216 ; - indicatorOfParameter = 27 ; - } -#Experimental product -'p28.216' = { - table2Version = 216 ; - indicatorOfParameter = 28 ; - } -#Experimental product -'p29.216' = { - table2Version = 216 ; - indicatorOfParameter = 29 ; - } -#Experimental product -'p30.216' = { - table2Version = 216 ; - indicatorOfParameter = 30 ; - } -#Experimental product -'p31.216' = { - table2Version = 216 ; - indicatorOfParameter = 31 ; - } -#Experimental product -'p32.216' = { - table2Version = 216 ; - indicatorOfParameter = 32 ; - } -#Experimental product -'p33.216' = { - table2Version = 216 ; - indicatorOfParameter = 33 ; - } -#Experimental product -'p34.216' = { - table2Version = 216 ; - indicatorOfParameter = 34 ; - } -#Experimental product -'p35.216' = { - table2Version = 216 ; - indicatorOfParameter = 35 ; - } -#Experimental product -'p36.216' = { - table2Version = 216 ; - indicatorOfParameter = 36 ; - } -#Experimental product -'p37.216' = { - table2Version = 216 ; - indicatorOfParameter = 37 ; - } -#Experimental product -'p38.216' = { - table2Version = 216 ; - indicatorOfParameter = 38 ; - } -#Experimental product -'p39.216' = { - table2Version = 216 ; - indicatorOfParameter = 39 ; - } -#Experimental product -'p40.216' = { - table2Version = 216 ; - indicatorOfParameter = 40 ; - } -#Experimental product -'p41.216' = { - table2Version = 216 ; - indicatorOfParameter = 41 ; - } -#Experimental product -'p42.216' = { - table2Version = 216 ; - indicatorOfParameter = 42 ; - } -#Experimental product -'p43.216' = { - table2Version = 216 ; - indicatorOfParameter = 43 ; - } -#Experimental product -'p44.216' = { - table2Version = 216 ; - indicatorOfParameter = 44 ; - } -#Experimental product -'p45.216' = { - table2Version = 216 ; - indicatorOfParameter = 45 ; - } -#Experimental product -'p46.216' = { - table2Version = 216 ; - indicatorOfParameter = 46 ; - } -#Experimental product -'p47.216' = { - table2Version = 216 ; - indicatorOfParameter = 47 ; - } -#Experimental product -'p48.216' = { - table2Version = 216 ; - indicatorOfParameter = 48 ; - } -#Experimental product -'p49.216' = { - table2Version = 216 ; - indicatorOfParameter = 49 ; - } -#Experimental product -'p50.216' = { - table2Version = 216 ; - indicatorOfParameter = 50 ; - } -#Experimental product -'p51.216' = { - table2Version = 216 ; - indicatorOfParameter = 51 ; - } -#Experimental product -'p52.216' = { - table2Version = 216 ; - indicatorOfParameter = 52 ; - } -#Experimental product -'p53.216' = { - table2Version = 216 ; - indicatorOfParameter = 53 ; - } -#Experimental product -'p54.216' = { - table2Version = 216 ; - indicatorOfParameter = 54 ; - } -#Experimental product -'p55.216' = { - table2Version = 216 ; - indicatorOfParameter = 55 ; - } -#Experimental product -'p56.216' = { - table2Version = 216 ; - indicatorOfParameter = 56 ; - } -#Experimental product -'p57.216' = { - table2Version = 216 ; - indicatorOfParameter = 57 ; - } -#Experimental product -'p58.216' = { - table2Version = 216 ; - indicatorOfParameter = 58 ; - } -#Experimental product -'p59.216' = { - table2Version = 216 ; - indicatorOfParameter = 59 ; - } -#Experimental product -'p60.216' = { - table2Version = 216 ; - indicatorOfParameter = 60 ; - } -#Experimental product -'p61.216' = { - table2Version = 216 ; - indicatorOfParameter = 61 ; - } -#Experimental product -'p62.216' = { - table2Version = 216 ; - indicatorOfParameter = 62 ; - } -#Experimental product -'p63.216' = { - table2Version = 216 ; - indicatorOfParameter = 63 ; - } -#Experimental product -'p64.216' = { - table2Version = 216 ; - indicatorOfParameter = 64 ; - } -#Experimental product -'p65.216' = { - table2Version = 216 ; - indicatorOfParameter = 65 ; - } -#Experimental product -'p66.216' = { - table2Version = 216 ; - indicatorOfParameter = 66 ; - } -#Experimental product -'p67.216' = { - table2Version = 216 ; - indicatorOfParameter = 67 ; - } -#Experimental product -'p68.216' = { - table2Version = 216 ; - indicatorOfParameter = 68 ; - } -#Experimental product -'p69.216' = { - table2Version = 216 ; - indicatorOfParameter = 69 ; - } -#Experimental product -'p70.216' = { - table2Version = 216 ; - indicatorOfParameter = 70 ; - } -#Experimental product -'p71.216' = { - table2Version = 216 ; - indicatorOfParameter = 71 ; - } -#Experimental product -'p72.216' = { - table2Version = 216 ; - indicatorOfParameter = 72 ; - } -#Experimental product -'p73.216' = { - table2Version = 216 ; - indicatorOfParameter = 73 ; - } -#Experimental product -'p74.216' = { - table2Version = 216 ; - indicatorOfParameter = 74 ; - } -#Experimental product -'p75.216' = { - table2Version = 216 ; - indicatorOfParameter = 75 ; - } -#Experimental product -'p76.216' = { - table2Version = 216 ; - indicatorOfParameter = 76 ; - } -#Experimental product -'p77.216' = { - table2Version = 216 ; - indicatorOfParameter = 77 ; - } -#Experimental product -'p78.216' = { - table2Version = 216 ; - indicatorOfParameter = 78 ; - } -#Experimental product -'p79.216' = { - table2Version = 216 ; - indicatorOfParameter = 79 ; - } -#Experimental product -'p80.216' = { - table2Version = 216 ; - indicatorOfParameter = 80 ; - } -#Experimental product -'p81.216' = { - table2Version = 216 ; - indicatorOfParameter = 81 ; - } -#Experimental product -'p82.216' = { - table2Version = 216 ; - indicatorOfParameter = 82 ; - } -#Experimental product -'p83.216' = { - table2Version = 216 ; - indicatorOfParameter = 83 ; - } -#Experimental product -'p84.216' = { - table2Version = 216 ; - indicatorOfParameter = 84 ; - } -#Experimental product -'p85.216' = { - table2Version = 216 ; - indicatorOfParameter = 85 ; - } -#Experimental product -'p86.216' = { - table2Version = 216 ; - indicatorOfParameter = 86 ; - } -#Experimental product -'p87.216' = { - table2Version = 216 ; - indicatorOfParameter = 87 ; - } -#Experimental product -'p88.216' = { - table2Version = 216 ; - indicatorOfParameter = 88 ; - } -#Experimental product -'p89.216' = { - table2Version = 216 ; - indicatorOfParameter = 89 ; - } -#Experimental product -'p90.216' = { - table2Version = 216 ; - indicatorOfParameter = 90 ; - } -#Experimental product -'p91.216' = { - table2Version = 216 ; - indicatorOfParameter = 91 ; - } -#Experimental product -'p92.216' = { - table2Version = 216 ; - indicatorOfParameter = 92 ; - } -#Experimental product -'p93.216' = { - table2Version = 216 ; - indicatorOfParameter = 93 ; - } -#Experimental product -'p94.216' = { - table2Version = 216 ; - indicatorOfParameter = 94 ; - } -#Experimental product -'p95.216' = { - table2Version = 216 ; - indicatorOfParameter = 95 ; - } -#Experimental product -'p96.216' = { - table2Version = 216 ; - indicatorOfParameter = 96 ; - } -#Experimental product -'p97.216' = { - table2Version = 216 ; - indicatorOfParameter = 97 ; - } -#Experimental product -'p98.216' = { - table2Version = 216 ; - indicatorOfParameter = 98 ; - } -#Experimental product -'p99.216' = { - table2Version = 216 ; - indicatorOfParameter = 99 ; - } -#Experimental product -'p100.216' = { - table2Version = 216 ; - indicatorOfParameter = 100 ; - } -#Experimental product -'p101.216' = { - table2Version = 216 ; - indicatorOfParameter = 101 ; - } -#Experimental product -'p102.216' = { - table2Version = 216 ; - indicatorOfParameter = 102 ; - } -#Experimental product -'p103.216' = { - table2Version = 216 ; - indicatorOfParameter = 103 ; - } -#Experimental product -'p104.216' = { - table2Version = 216 ; - indicatorOfParameter = 104 ; - } -#Experimental product -'p105.216' = { - table2Version = 216 ; - indicatorOfParameter = 105 ; - } -#Experimental product -'p106.216' = { - table2Version = 216 ; - indicatorOfParameter = 106 ; - } -#Experimental product -'p107.216' = { - table2Version = 216 ; - indicatorOfParameter = 107 ; - } -#Experimental product -'p108.216' = { - table2Version = 216 ; - indicatorOfParameter = 108 ; - } -#Experimental product -'p109.216' = { - table2Version = 216 ; - indicatorOfParameter = 109 ; - } -#Experimental product -'p110.216' = { - table2Version = 216 ; - indicatorOfParameter = 110 ; - } -#Experimental product -'p111.216' = { - table2Version = 216 ; - indicatorOfParameter = 111 ; - } -#Experimental product -'p112.216' = { - table2Version = 216 ; - indicatorOfParameter = 112 ; - } -#Experimental product -'p113.216' = { - table2Version = 216 ; - indicatorOfParameter = 113 ; - } -#Experimental product -'p114.216' = { - table2Version = 216 ; - indicatorOfParameter = 114 ; - } -#Experimental product -'p115.216' = { - table2Version = 216 ; - indicatorOfParameter = 115 ; - } -#Experimental product -'p116.216' = { - table2Version = 216 ; - indicatorOfParameter = 116 ; - } -#Experimental product -'p117.216' = { - table2Version = 216 ; - indicatorOfParameter = 117 ; - } -#Experimental product -'p118.216' = { - table2Version = 216 ; - indicatorOfParameter = 118 ; - } -#Experimental product -'p119.216' = { - table2Version = 216 ; - indicatorOfParameter = 119 ; - } -#Experimental product -'p120.216' = { - table2Version = 216 ; - indicatorOfParameter = 120 ; - } -#Experimental product -'p121.216' = { - table2Version = 216 ; - indicatorOfParameter = 121 ; - } -#Experimental product -'p122.216' = { - table2Version = 216 ; - indicatorOfParameter = 122 ; - } -#Experimental product -'p123.216' = { - table2Version = 216 ; - indicatorOfParameter = 123 ; - } -#Experimental product -'p124.216' = { - table2Version = 216 ; - indicatorOfParameter = 124 ; - } -#Experimental product -'p125.216' = { - table2Version = 216 ; - indicatorOfParameter = 125 ; - } -#Experimental product -'p126.216' = { - table2Version = 216 ; - indicatorOfParameter = 126 ; - } -#Experimental product -'p127.216' = { - table2Version = 216 ; - indicatorOfParameter = 127 ; - } -#Experimental product -'p128.216' = { - table2Version = 216 ; - indicatorOfParameter = 128 ; - } -#Experimental product -'p129.216' = { - table2Version = 216 ; - indicatorOfParameter = 129 ; - } -#Experimental product -'p130.216' = { - table2Version = 216 ; - indicatorOfParameter = 130 ; - } -#Experimental product -'p131.216' = { - table2Version = 216 ; - indicatorOfParameter = 131 ; - } -#Experimental product -'p132.216' = { - table2Version = 216 ; - indicatorOfParameter = 132 ; - } -#Experimental product -'p133.216' = { - table2Version = 216 ; - indicatorOfParameter = 133 ; - } -#Experimental product -'p134.216' = { - table2Version = 216 ; - indicatorOfParameter = 134 ; - } -#Experimental product -'p135.216' = { - table2Version = 216 ; - indicatorOfParameter = 135 ; - } -#Experimental product -'p136.216' = { - table2Version = 216 ; - indicatorOfParameter = 136 ; - } -#Experimental product -'p137.216' = { - table2Version = 216 ; - indicatorOfParameter = 137 ; - } -#Experimental product -'p138.216' = { - table2Version = 216 ; - indicatorOfParameter = 138 ; - } -#Experimental product -'p139.216' = { - table2Version = 216 ; - indicatorOfParameter = 139 ; - } -#Experimental product -'p140.216' = { - table2Version = 216 ; - indicatorOfParameter = 140 ; - } -#Experimental product -'p141.216' = { - table2Version = 216 ; - indicatorOfParameter = 141 ; - } -#Experimental product -'p142.216' = { - table2Version = 216 ; - indicatorOfParameter = 142 ; - } -#Experimental product -'p143.216' = { - table2Version = 216 ; - indicatorOfParameter = 143 ; - } -#Experimental product -'p144.216' = { - table2Version = 216 ; - indicatorOfParameter = 144 ; - } -#Experimental product -'p145.216' = { - table2Version = 216 ; - indicatorOfParameter = 145 ; - } -#Experimental product -'p146.216' = { - table2Version = 216 ; - indicatorOfParameter = 146 ; - } -#Experimental product -'p147.216' = { - table2Version = 216 ; - indicatorOfParameter = 147 ; - } -#Experimental product -'p148.216' = { - table2Version = 216 ; - indicatorOfParameter = 148 ; - } -#Experimental product -'p149.216' = { - table2Version = 216 ; - indicatorOfParameter = 149 ; - } -#Experimental product -'p150.216' = { - table2Version = 216 ; - indicatorOfParameter = 150 ; - } -#Experimental product -'p151.216' = { - table2Version = 216 ; - indicatorOfParameter = 151 ; - } -#Experimental product -'p152.216' = { - table2Version = 216 ; - indicatorOfParameter = 152 ; - } -#Experimental product -'p153.216' = { - table2Version = 216 ; - indicatorOfParameter = 153 ; - } -#Experimental product -'p154.216' = { - table2Version = 216 ; - indicatorOfParameter = 154 ; - } -#Experimental product -'p155.216' = { - table2Version = 216 ; - indicatorOfParameter = 155 ; - } -#Experimental product -'p156.216' = { - table2Version = 216 ; - indicatorOfParameter = 156 ; - } -#Experimental product -'p157.216' = { - table2Version = 216 ; - indicatorOfParameter = 157 ; - } -#Experimental product -'p158.216' = { - table2Version = 216 ; - indicatorOfParameter = 158 ; - } -#Experimental product -'p159.216' = { - table2Version = 216 ; - indicatorOfParameter = 159 ; - } -#Experimental product -'p160.216' = { - table2Version = 216 ; - indicatorOfParameter = 160 ; - } -#Experimental product -'p161.216' = { - table2Version = 216 ; - indicatorOfParameter = 161 ; - } -#Experimental product -'p162.216' = { - table2Version = 216 ; - indicatorOfParameter = 162 ; - } -#Experimental product -'p163.216' = { - table2Version = 216 ; - indicatorOfParameter = 163 ; - } -#Experimental product -'p164.216' = { - table2Version = 216 ; - indicatorOfParameter = 164 ; - } -#Experimental product -'p165.216' = { - table2Version = 216 ; - indicatorOfParameter = 165 ; - } -#Experimental product -'p166.216' = { - table2Version = 216 ; - indicatorOfParameter = 166 ; - } -#Experimental product -'p167.216' = { - table2Version = 216 ; - indicatorOfParameter = 167 ; - } -#Experimental product -'p168.216' = { - table2Version = 216 ; - indicatorOfParameter = 168 ; - } -#Experimental product -'p169.216' = { - table2Version = 216 ; - indicatorOfParameter = 169 ; - } -#Experimental product -'p170.216' = { - table2Version = 216 ; - indicatorOfParameter = 170 ; - } -#Experimental product -'p171.216' = { - table2Version = 216 ; - indicatorOfParameter = 171 ; - } -#Experimental product -'p172.216' = { - table2Version = 216 ; - indicatorOfParameter = 172 ; - } -#Experimental product -'p173.216' = { - table2Version = 216 ; - indicatorOfParameter = 173 ; - } -#Experimental product -'p174.216' = { - table2Version = 216 ; - indicatorOfParameter = 174 ; - } -#Experimental product -'p175.216' = { - table2Version = 216 ; - indicatorOfParameter = 175 ; - } -#Experimental product -'p176.216' = { - table2Version = 216 ; - indicatorOfParameter = 176 ; - } -#Experimental product -'p177.216' = { - table2Version = 216 ; - indicatorOfParameter = 177 ; - } -#Experimental product -'p178.216' = { - table2Version = 216 ; - indicatorOfParameter = 178 ; - } -#Experimental product -'p179.216' = { - table2Version = 216 ; - indicatorOfParameter = 179 ; - } -#Experimental product -'p180.216' = { - table2Version = 216 ; - indicatorOfParameter = 180 ; - } -#Experimental product -'p181.216' = { - table2Version = 216 ; - indicatorOfParameter = 181 ; - } -#Experimental product -'p182.216' = { - table2Version = 216 ; - indicatorOfParameter = 182 ; - } -#Experimental product -'p183.216' = { - table2Version = 216 ; - indicatorOfParameter = 183 ; - } -#Experimental product -'p184.216' = { - table2Version = 216 ; - indicatorOfParameter = 184 ; - } -#Experimental product -'p185.216' = { - table2Version = 216 ; - indicatorOfParameter = 185 ; - } -#Experimental product -'p186.216' = { - table2Version = 216 ; - indicatorOfParameter = 186 ; - } -#Experimental product -'p187.216' = { - table2Version = 216 ; - indicatorOfParameter = 187 ; - } -#Experimental product -'p188.216' = { - table2Version = 216 ; - indicatorOfParameter = 188 ; - } -#Experimental product -'p189.216' = { - table2Version = 216 ; - indicatorOfParameter = 189 ; - } -#Experimental product -'p190.216' = { - table2Version = 216 ; - indicatorOfParameter = 190 ; - } -#Experimental product -'p191.216' = { - table2Version = 216 ; - indicatorOfParameter = 191 ; - } -#Experimental product -'p192.216' = { - table2Version = 216 ; - indicatorOfParameter = 192 ; - } -#Experimental product -'p193.216' = { - table2Version = 216 ; - indicatorOfParameter = 193 ; - } -#Experimental product -'p194.216' = { - table2Version = 216 ; - indicatorOfParameter = 194 ; - } -#Experimental product -'p195.216' = { - table2Version = 216 ; - indicatorOfParameter = 195 ; - } -#Experimental product -'p196.216' = { - table2Version = 216 ; - indicatorOfParameter = 196 ; - } -#Experimental product -'p197.216' = { - table2Version = 216 ; - indicatorOfParameter = 197 ; - } -#Experimental product -'p198.216' = { - table2Version = 216 ; - indicatorOfParameter = 198 ; - } -#Experimental product -'p199.216' = { - table2Version = 216 ; - indicatorOfParameter = 199 ; - } -#Experimental product -'p200.216' = { - table2Version = 216 ; - indicatorOfParameter = 200 ; - } -#Experimental product -'p201.216' = { - table2Version = 216 ; - indicatorOfParameter = 201 ; - } -#Experimental product -'p202.216' = { - table2Version = 216 ; - indicatorOfParameter = 202 ; - } -#Experimental product -'p203.216' = { - table2Version = 216 ; - indicatorOfParameter = 203 ; - } -#Experimental product -'p204.216' = { - table2Version = 216 ; - indicatorOfParameter = 204 ; - } -#Experimental product -'p205.216' = { - table2Version = 216 ; - indicatorOfParameter = 205 ; - } -#Experimental product -'p206.216' = { - table2Version = 216 ; - indicatorOfParameter = 206 ; - } -#Experimental product -'p207.216' = { - table2Version = 216 ; - indicatorOfParameter = 207 ; - } -#Experimental product -'p208.216' = { - table2Version = 216 ; - indicatorOfParameter = 208 ; - } -#Experimental product -'p209.216' = { - table2Version = 216 ; - indicatorOfParameter = 209 ; - } -#Experimental product -'p210.216' = { - table2Version = 216 ; - indicatorOfParameter = 210 ; - } -#Experimental product -'p211.216' = { - table2Version = 216 ; - indicatorOfParameter = 211 ; - } -#Experimental product -'p212.216' = { - table2Version = 216 ; - indicatorOfParameter = 212 ; - } -#Experimental product -'p213.216' = { - table2Version = 216 ; - indicatorOfParameter = 213 ; - } -#Experimental product -'p214.216' = { - table2Version = 216 ; - indicatorOfParameter = 214 ; - } -#Experimental product -'p215.216' = { - table2Version = 216 ; - indicatorOfParameter = 215 ; - } -#Experimental product -'p216.216' = { - table2Version = 216 ; - indicatorOfParameter = 216 ; - } -#Experimental product -'p217.216' = { - table2Version = 216 ; - indicatorOfParameter = 217 ; - } -#Experimental product -'p218.216' = { - table2Version = 216 ; - indicatorOfParameter = 218 ; - } -#Experimental product -'p219.216' = { - table2Version = 216 ; - indicatorOfParameter = 219 ; - } -#Experimental product -'p220.216' = { - table2Version = 216 ; - indicatorOfParameter = 220 ; - } -#Experimental product -'p221.216' = { - table2Version = 216 ; - indicatorOfParameter = 221 ; - } -#Experimental product -'p222.216' = { - table2Version = 216 ; - indicatorOfParameter = 222 ; - } -#Experimental product -'p223.216' = { - table2Version = 216 ; - indicatorOfParameter = 223 ; - } -#Experimental product -'p224.216' = { - table2Version = 216 ; - indicatorOfParameter = 224 ; - } -#Experimental product -'p225.216' = { - table2Version = 216 ; - indicatorOfParameter = 225 ; - } -#Experimental product -'p226.216' = { - table2Version = 216 ; - indicatorOfParameter = 226 ; - } -#Experimental product -'p227.216' = { - table2Version = 216 ; - indicatorOfParameter = 227 ; - } -#Experimental product -'p228.216' = { - table2Version = 216 ; - indicatorOfParameter = 228 ; - } -#Experimental product -'p229.216' = { - table2Version = 216 ; - indicatorOfParameter = 229 ; - } -#Experimental product -'p230.216' = { - table2Version = 216 ; - indicatorOfParameter = 230 ; - } -#Experimental product -'p231.216' = { - table2Version = 216 ; - indicatorOfParameter = 231 ; - } -#Experimental product -'p232.216' = { - table2Version = 216 ; - indicatorOfParameter = 232 ; - } -#Experimental product -'p233.216' = { - table2Version = 216 ; - indicatorOfParameter = 233 ; - } -#Experimental product -'p234.216' = { - table2Version = 216 ; - indicatorOfParameter = 234 ; - } -#Experimental product -'p235.216' = { - table2Version = 216 ; - indicatorOfParameter = 235 ; - } -#Experimental product -'p236.216' = { - table2Version = 216 ; - indicatorOfParameter = 236 ; - } -#Experimental product -'p237.216' = { - table2Version = 216 ; - indicatorOfParameter = 237 ; - } -#Experimental product -'p238.216' = { - table2Version = 216 ; - indicatorOfParameter = 238 ; - } -#Experimental product -'p239.216' = { - table2Version = 216 ; - indicatorOfParameter = 239 ; - } -#Experimental product -'p240.216' = { - table2Version = 216 ; - indicatorOfParameter = 240 ; - } -#Experimental product -'p241.216' = { - table2Version = 216 ; - indicatorOfParameter = 241 ; - } -#Experimental product -'p242.216' = { - table2Version = 216 ; - indicatorOfParameter = 242 ; - } -#Experimental product -'p243.216' = { - table2Version = 216 ; - indicatorOfParameter = 243 ; - } -#Experimental product -'p244.216' = { - table2Version = 216 ; - indicatorOfParameter = 244 ; - } -#Experimental product -'p245.216' = { - table2Version = 216 ; - indicatorOfParameter = 245 ; - } -#Experimental product -'p246.216' = { - table2Version = 216 ; - indicatorOfParameter = 246 ; - } -#Experimental product -'p247.216' = { - table2Version = 216 ; - indicatorOfParameter = 247 ; - } -#Experimental product -'p248.216' = { - table2Version = 216 ; - indicatorOfParameter = 248 ; - } -#Experimental product -'p249.216' = { - table2Version = 216 ; - indicatorOfParameter = 249 ; - } -#Experimental product -'p250.216' = { - table2Version = 216 ; - indicatorOfParameter = 250 ; - } -#Experimental product -'p251.216' = { - table2Version = 216 ; - indicatorOfParameter = 251 ; - } -#Experimental product -'p252.216' = { - table2Version = 216 ; - indicatorOfParameter = 252 ; - } -#Experimental product -'p253.216' = { - table2Version = 216 ; - indicatorOfParameter = 253 ; - } -#Experimental product -'p254.216' = { - table2Version = 216 ; - indicatorOfParameter = 254 ; - } -#Experimental product -'p255.216' = { - table2Version = 216 ; - indicatorOfParameter = 255 ; - } -#Hydrogen peroxide -'h2o2' = { - table2Version = 217 ; - indicatorOfParameter = 3 ; - } -#Methane (chemistry) -'ch4_c' = { - table2Version = 217 ; - indicatorOfParameter = 4 ; - } -#Nitric acid -'hno3' = { - table2Version = 217 ; - indicatorOfParameter = 6 ; - } -#Methyl peroxide -'ch3ooh' = { - table2Version = 217 ; - indicatorOfParameter = 7 ; - } -#Paraffins -'par' = { - table2Version = 217 ; - indicatorOfParameter = 9 ; - } -#Ethene -'c2h4' = { - table2Version = 217 ; - indicatorOfParameter = 10 ; - } -#Olefins -'ole' = { - table2Version = 217 ; - indicatorOfParameter = 11 ; - } -#Aldehydes -'ald2' = { - table2Version = 217 ; - indicatorOfParameter = 12 ; - } -#Peroxyacetyl nitrate -'pan' = { - table2Version = 217 ; - indicatorOfParameter = 13 ; - } -#Peroxides -'rooh' = { - table2Version = 217 ; - indicatorOfParameter = 14 ; - } -#Organic nitrates -'onit' = { - table2Version = 217 ; - indicatorOfParameter = 15 ; - } -#Isoprene -'c5h8' = { - table2Version = 217 ; - indicatorOfParameter = 16 ; - } -#Dimethyl sulfide -'dms' = { - table2Version = 217 ; - indicatorOfParameter = 18 ; - } -#Ammonia mass mixing ratio -'nh3' = { - table2Version = 217 ; - indicatorOfParameter = 19 ; - } -#Sulfate -'so4' = { - table2Version = 217 ; - indicatorOfParameter = 20 ; - } -#Ammonium -'nh4' = { - table2Version = 217 ; - indicatorOfParameter = 21 ; - } -#Methane sulfonic acid -'msa' = { - table2Version = 217 ; - indicatorOfParameter = 22 ; - } -#Methyl glyoxal -'ch3cocho' = { - table2Version = 217 ; - indicatorOfParameter = 23 ; - } -#Stratospheric ozone -'o3s' = { - table2Version = 217 ; - indicatorOfParameter = 24 ; - } -#Lead -'pb' = { - table2Version = 217 ; - indicatorOfParameter = 26 ; - } -#Nitrogen monoxide mass mixing ratio -'no' = { - table2Version = 217 ; - indicatorOfParameter = 27 ; - } -#Hydroperoxy radical -'ho2' = { - table2Version = 217 ; - indicatorOfParameter = 28 ; - } -#Methylperoxy radical -'ch3o2' = { - table2Version = 217 ; - indicatorOfParameter = 29 ; - } -#Hydroxyl radical -'oh' = { - table2Version = 217 ; - indicatorOfParameter = 30 ; - } -#Nitrate radical -'no3' = { - table2Version = 217 ; - indicatorOfParameter = 32 ; - } -#Dinitrogen pentoxide -'n2o5' = { - table2Version = 217 ; - indicatorOfParameter = 33 ; - } -#Pernitric acid -'ho2no2' = { - table2Version = 217 ; - indicatorOfParameter = 34 ; - } -#Peroxy acetyl radical -'c2o3' = { - table2Version = 217 ; - indicatorOfParameter = 35 ; - } -#Organic ethers -'ror' = { - table2Version = 217 ; - indicatorOfParameter = 36 ; - } -#PAR budget corrector -'rxpar' = { - table2Version = 217 ; - indicatorOfParameter = 37 ; - } -#NO to NO2 operator -'xo2' = { - table2Version = 217 ; - indicatorOfParameter = 38 ; - } -#NO to alkyl nitrate operator -'xo2n' = { - table2Version = 217 ; - indicatorOfParameter = 39 ; - } -#Amine -'nh2' = { - table2Version = 217 ; - indicatorOfParameter = 40 ; - } -#Polar stratospheric cloud -'psc' = { - table2Version = 217 ; - indicatorOfParameter = 41 ; - } -#Methanol -'ch3oh' = { - table2Version = 217 ; - indicatorOfParameter = 42 ; - } -#Formic acid -'hcooh' = { - table2Version = 217 ; - indicatorOfParameter = 43 ; - } -#Methacrylic acid -'mcooh' = { - table2Version = 217 ; - indicatorOfParameter = 44 ; - } -#Ethane -'c2h6' = { - table2Version = 217 ; - indicatorOfParameter = 45 ; - } -#Ethanol -'c2h5oh' = { - table2Version = 217 ; - indicatorOfParameter = 46 ; - } -#Propane -'c3h8' = { - table2Version = 217 ; - indicatorOfParameter = 47 ; - } -#Propene -'c3h6' = { - table2Version = 217 ; - indicatorOfParameter = 48 ; - } -#Terpenes -'c10h16' = { - table2Version = 217 ; - indicatorOfParameter = 49 ; - } -#Methacrolein MVK -'ispd' = { - table2Version = 217 ; - indicatorOfParameter = 50 ; - } -#Nitrate -'no3_a' = { - table2Version = 217 ; - indicatorOfParameter = 51 ; - } -#Acetone -'ch3coch3' = { - table2Version = 217 ; - indicatorOfParameter = 52 ; - } -#Acetone product -'aco2' = { - table2Version = 217 ; - indicatorOfParameter = 53 ; - } -#IC3H7O2 -'ic3h7o2' = { - table2Version = 217 ; - indicatorOfParameter = 54 ; - } -#HYPROPO2 -'hypropo2' = { - table2Version = 217 ; - indicatorOfParameter = 55 ; - } -#Nitrogen oxides Transp -'noxa' = { - table2Version = 217 ; - indicatorOfParameter = 56 ; - } -#Total column hydrogen peroxide -'tc_h2o2' = { - table2Version = 218 ; - indicatorOfParameter = 3 ; - } -#Total column methane -'tc_ch4' = { - table2Version = 218 ; - indicatorOfParameter = 4 ; - } -#Total column nitric acid -'tc_hno3' = { - table2Version = 218 ; - indicatorOfParameter = 6 ; - } -#Total column methyl peroxide -'tc_ch3ooh' = { - table2Version = 218 ; - indicatorOfParameter = 7 ; - } -#Total column paraffins -'tc_par' = { - table2Version = 218 ; - indicatorOfParameter = 9 ; - } -#Total column ethene -'tc_c2h4' = { - table2Version = 218 ; - indicatorOfParameter = 10 ; - } -#Total column olefins -'tc_ole' = { - table2Version = 218 ; - indicatorOfParameter = 11 ; - } -#Total column aldehydes -'tc_ald2' = { - table2Version = 218 ; - indicatorOfParameter = 12 ; - } -#Total column peroxyacetyl nitrate -'tc_pan' = { - table2Version = 218 ; - indicatorOfParameter = 13 ; - } -#Total column peroxides -'tc_rooh' = { - table2Version = 218 ; - indicatorOfParameter = 14 ; - } -#Total column organic nitrates -'tc_onit' = { - table2Version = 218 ; - indicatorOfParameter = 15 ; - } -#Total column isoprene -'tc_c5h8' = { - table2Version = 218 ; - indicatorOfParameter = 16 ; - } -#Total column dimethyl sulfide -'tc_dms' = { - table2Version = 218 ; - indicatorOfParameter = 18 ; - } -#Total column ammonia -'tc_nh3' = { - table2Version = 218 ; - indicatorOfParameter = 19 ; - } -#Total column sulfate -'tc_so4' = { - table2Version = 218 ; - indicatorOfParameter = 20 ; - } -#Total column ammonium -'tc_nh4' = { - table2Version = 218 ; - indicatorOfParameter = 21 ; - } -#Total column methane sulfonic acid -'tc_msa' = { - table2Version = 218 ; - indicatorOfParameter = 22 ; - } -#Total column methyl glyoxal -'tc_ch3cocho' = { - table2Version = 218 ; - indicatorOfParameter = 23 ; - } -#Total column stratospheric ozone -'tc_o3s' = { - table2Version = 218 ; - indicatorOfParameter = 24 ; - } -#Total column lead -'tc_pb' = { - table2Version = 218 ; - indicatorOfParameter = 26 ; - } -#Total column nitrogen monoxide -'tc_no' = { - table2Version = 218 ; - indicatorOfParameter = 27 ; - } -#Total column hydroperoxy radical -'tc_ho2' = { - table2Version = 218 ; - indicatorOfParameter = 28 ; - } -#Total column methylperoxy radical -'tc_ch3o2' = { - table2Version = 218 ; - indicatorOfParameter = 29 ; - } -#Total column hydroxyl radical -'tc_oh' = { - table2Version = 218 ; - indicatorOfParameter = 30 ; - } -#Total column nitrate radical -'tc_no3' = { - table2Version = 218 ; - indicatorOfParameter = 32 ; - } -#Total column dinitrogen pentoxide -'tc_n2o5' = { - table2Version = 218 ; - indicatorOfParameter = 33 ; - } -#Total column pernitric acid -'tc_ho2no2' = { - table2Version = 218 ; - indicatorOfParameter = 34 ; - } -#Total column peroxy acetyl radical -'tc_c2o3' = { - table2Version = 218 ; - indicatorOfParameter = 35 ; - } -#Total column organic ethers -'tc_ror' = { - table2Version = 218 ; - indicatorOfParameter = 36 ; - } -#Total column PAR budget corrector -'tc_rxpar' = { - table2Version = 218 ; - indicatorOfParameter = 37 ; - } -#Total column NO to NO2 operator -'tc_xo2' = { - table2Version = 218 ; - indicatorOfParameter = 38 ; - } -#Total column NO to alkyl nitrate operator -'tc_xo2n' = { - table2Version = 218 ; - indicatorOfParameter = 39 ; - } -#Total column amine -'tc_nh2' = { - table2Version = 218 ; - indicatorOfParameter = 40 ; - } -#Total column polar stratospheric cloud -'tc_psc' = { - table2Version = 218 ; - indicatorOfParameter = 41 ; - } -#Total column methanol -'tc_ch3oh' = { - table2Version = 218 ; - indicatorOfParameter = 42 ; - } -#Total column formic acid -'tc_hcooh' = { - table2Version = 218 ; - indicatorOfParameter = 43 ; - } -#Total column methacrylic acid -'tc_mcooh' = { - table2Version = 218 ; - indicatorOfParameter = 44 ; - } -#Total column ethane -'tc_c2h6' = { - table2Version = 218 ; - indicatorOfParameter = 45 ; - } -#Total column ethanol -'tc_c2h5oh' = { - table2Version = 218 ; - indicatorOfParameter = 46 ; - } -#Total column propane -'tc_c3h8' = { - table2Version = 218 ; - indicatorOfParameter = 47 ; - } -#Total column propene -'tc_c3h6' = { - table2Version = 218 ; - indicatorOfParameter = 48 ; - } -#Total column terpenes -'tc_c10h16' = { - table2Version = 218 ; - indicatorOfParameter = 49 ; - } -#Total column methacrolein MVK -'tc_ispd' = { - table2Version = 218 ; - indicatorOfParameter = 50 ; - } -#Total column nitrate -'tc_no3_a' = { - table2Version = 218 ; - indicatorOfParameter = 51 ; - } -#Total column acetone -'tc_ch3coch3' = { - table2Version = 218 ; - indicatorOfParameter = 52 ; - } -#Total column acetone product -'tc_aco2' = { - table2Version = 218 ; - indicatorOfParameter = 53 ; - } -#Total column IC3H7O2 -'tc_ic3h7o2' = { - table2Version = 218 ; - indicatorOfParameter = 54 ; - } -#Total column HYPROPO2 -'tc_hypropo2' = { - table2Version = 218 ; - indicatorOfParameter = 55 ; - } -#Total column nitrogen oxides Transp -'tc_noxa' = { - table2Version = 218 ; - indicatorOfParameter = 56 ; - } -#Ozone emissions -'e_go3' = { - table2Version = 219 ; - indicatorOfParameter = 1 ; - } -#Nitrogen oxides emissions -'e_nox' = { - table2Version = 219 ; - indicatorOfParameter = 2 ; - } -#Hydrogen peroxide emissions -'e_h2o2' = { - table2Version = 219 ; - indicatorOfParameter = 3 ; - } -#Methane emissions -'e_ch4' = { - table2Version = 219 ; - indicatorOfParameter = 4 ; - } -#Carbon monoxide emissions -'e_co' = { - table2Version = 219 ; - indicatorOfParameter = 5 ; - } -#Nitric acid emissions -'e_hno3' = { - table2Version = 219 ; - indicatorOfParameter = 6 ; - } -#Methyl peroxide emissions -'e_ch3ooh' = { - table2Version = 219 ; - indicatorOfParameter = 7 ; - } -#Formaldehyde emissions -'e_hcho' = { - table2Version = 219 ; - indicatorOfParameter = 8 ; - } -#Paraffins emissions -'e_par' = { - table2Version = 219 ; - indicatorOfParameter = 9 ; - } -#Ethene emissions -'e_c2h4' = { - table2Version = 219 ; - indicatorOfParameter = 10 ; - } -#Olefins emissions -'e_ole' = { - table2Version = 219 ; - indicatorOfParameter = 11 ; - } -#Aldehydes emissions -'e_ald2' = { - table2Version = 219 ; - indicatorOfParameter = 12 ; - } -#Peroxyacetyl nitrate emissions -'e_pan' = { - table2Version = 219 ; - indicatorOfParameter = 13 ; - } -#Peroxides emissions -'e_rooh' = { - table2Version = 219 ; - indicatorOfParameter = 14 ; - } -#Organic nitrates emissions -'e_onit' = { - table2Version = 219 ; - indicatorOfParameter = 15 ; - } -#Isoprene emissions -'e_c5h8' = { - table2Version = 219 ; - indicatorOfParameter = 16 ; - } -#Sulfur dioxide emissions -'e_so2' = { - table2Version = 219 ; - indicatorOfParameter = 17 ; - } -#Dimethyl sulfide emissions -'e_dms' = { - table2Version = 219 ; - indicatorOfParameter = 18 ; - } -#Ammonia emissions -'e_nh3' = { - table2Version = 219 ; - indicatorOfParameter = 19 ; - } -#Sulfate emissions -'e_so4' = { - table2Version = 219 ; - indicatorOfParameter = 20 ; - } -#Ammonium emissions -'e_nh4' = { - table2Version = 219 ; - indicatorOfParameter = 21 ; - } -#Methane sulfonic acid emissions -'e_msa' = { - table2Version = 219 ; - indicatorOfParameter = 22 ; - } -#Methyl glyoxal emissions -'e_ch3cocho' = { - table2Version = 219 ; - indicatorOfParameter = 23 ; - } -#Stratospheric ozone emissions -'e_o3s' = { - table2Version = 219 ; - indicatorOfParameter = 24 ; - } -#Radon emissions -'e_ra' = { - table2Version = 219 ; - indicatorOfParameter = 25 ; - } -#Lead emissions -'e_pb' = { - table2Version = 219 ; - indicatorOfParameter = 26 ; - } -#Nitrogen monoxide emissions -'e_no' = { - table2Version = 219 ; - indicatorOfParameter = 27 ; - } -#Hydroperoxy radical emissions -'e_ho2' = { - table2Version = 219 ; - indicatorOfParameter = 28 ; - } -#Methylperoxy radical emissions -'e_ch3o2' = { - table2Version = 219 ; - indicatorOfParameter = 29 ; - } -#Hydroxyl radical emissions -'e_oh' = { - table2Version = 219 ; - indicatorOfParameter = 30 ; - } -#Nitrogen dioxide emissions -'e_no2' = { - table2Version = 219 ; - indicatorOfParameter = 31 ; - } -#Nitrate radical emissions -'e_no3' = { - table2Version = 219 ; - indicatorOfParameter = 32 ; - } -#Dinitrogen pentoxide emissions -'e_n2o5' = { - table2Version = 219 ; - indicatorOfParameter = 33 ; - } -#Pernitric acid emissions -'e_ho2no2' = { - table2Version = 219 ; - indicatorOfParameter = 34 ; - } -#Peroxy acetyl radical emissions -'e_c2o3' = { - table2Version = 219 ; - indicatorOfParameter = 35 ; - } -#Organic ethers emissions -'e_ror' = { - table2Version = 219 ; - indicatorOfParameter = 36 ; - } -#PAR budget corrector emissions -'e_rxpar' = { - table2Version = 219 ; - indicatorOfParameter = 37 ; - } -#NO to NO2 operator emissions -'e_xo2' = { - table2Version = 219 ; - indicatorOfParameter = 38 ; - } -#NO to alkyl nitrate operator emissions -'e_xo2n' = { - table2Version = 219 ; - indicatorOfParameter = 39 ; - } -#Amine emissions -'e_nh2' = { - table2Version = 219 ; - indicatorOfParameter = 40 ; - } -#Polar stratospheric cloud emissions -'e_psc' = { - table2Version = 219 ; - indicatorOfParameter = 41 ; - } -#Methanol emissions -'e_ch3oh' = { - table2Version = 219 ; - indicatorOfParameter = 42 ; - } -#Formic acid emissions -'e_hcooh' = { - table2Version = 219 ; - indicatorOfParameter = 43 ; - } -#Methacrylic acid emissions -'e_mcooh' = { - table2Version = 219 ; - indicatorOfParameter = 44 ; - } -#Ethane emissions -'e_c2h6' = { - table2Version = 219 ; - indicatorOfParameter = 45 ; - } -#Ethanol emissions -'e_c2h5oh' = { - table2Version = 219 ; - indicatorOfParameter = 46 ; - } -#Propane emissions -'e_c3h8' = { - table2Version = 219 ; - indicatorOfParameter = 47 ; - } -#Propene emissions -'e_c3h6' = { - table2Version = 219 ; - indicatorOfParameter = 48 ; - } -#Terpenes emissions -'e_c10h16' = { - table2Version = 219 ; - indicatorOfParameter = 49 ; - } -#Methacrolein MVK emissions -'e_ispd' = { - table2Version = 219 ; - indicatorOfParameter = 50 ; - } -#Nitrate emissions -'e_no3_a' = { - table2Version = 219 ; - indicatorOfParameter = 51 ; - } -#Acetone emissions -'e_ch3coch3' = { - table2Version = 219 ; - indicatorOfParameter = 52 ; - } -#Acetone product emissions -'e_aco2' = { - table2Version = 219 ; - indicatorOfParameter = 53 ; - } -#IC3H7O2 emissions -'e_ic3h7o2' = { - table2Version = 219 ; - indicatorOfParameter = 54 ; - } -#HYPROPO2 emissions -'e_hypropo2' = { - table2Version = 219 ; - indicatorOfParameter = 55 ; - } -#Nitrogen oxides Transp emissions -'e_noxa' = { - table2Version = 219 ; - indicatorOfParameter = 56 ; - } -#Ozone deposition velocity -'dv_go3' = { - table2Version = 221 ; - indicatorOfParameter = 1 ; - } -#Nitrogen oxides deposition velocity -'dv_nox' = { - table2Version = 221 ; - indicatorOfParameter = 2 ; - } -#Hydrogen peroxide deposition velocity -'dv_h2o2' = { - table2Version = 221 ; - indicatorOfParameter = 3 ; - } -#Methane deposition velocity -'dv_ch4' = { - table2Version = 221 ; - indicatorOfParameter = 4 ; - } -#Carbon monoxide deposition velocity -'dv_co' = { - table2Version = 221 ; - indicatorOfParameter = 5 ; - } -#Nitric acid deposition velocity -'dv_hno3' = { - table2Version = 221 ; - indicatorOfParameter = 6 ; - } -#Methyl peroxide deposition velocity -'dv_ch3ooh' = { - table2Version = 221 ; - indicatorOfParameter = 7 ; - } -#Formaldehyde deposition velocity -'dv_hcho' = { - table2Version = 221 ; - indicatorOfParameter = 8 ; - } -#Paraffins deposition velocity -'dv_par' = { - table2Version = 221 ; - indicatorOfParameter = 9 ; - } -#Ethene deposition velocity -'dv_c2h4' = { - table2Version = 221 ; - indicatorOfParameter = 10 ; - } -#Olefins deposition velocity -'dv_ole' = { - table2Version = 221 ; - indicatorOfParameter = 11 ; - } -#Aldehydes deposition velocity -'dv_ald2' = { - table2Version = 221 ; - indicatorOfParameter = 12 ; - } -#Peroxyacetyl nitrate deposition velocity -'dv_pan' = { - table2Version = 221 ; - indicatorOfParameter = 13 ; - } -#Peroxides deposition velocity -'dv_rooh' = { - table2Version = 221 ; - indicatorOfParameter = 14 ; - } -#Organic nitrates deposition velocity -'dv_onit' = { - table2Version = 221 ; - indicatorOfParameter = 15 ; - } -#Isoprene deposition velocity -'dv_c5h8' = { - table2Version = 221 ; - indicatorOfParameter = 16 ; - } -#Sulfur dioxide deposition velocity -'dv_so2' = { - table2Version = 221 ; - indicatorOfParameter = 17 ; - } -#Dimethyl sulfide deposition velocity -'dv_dms' = { - table2Version = 221 ; - indicatorOfParameter = 18 ; - } -#Ammonia deposition velocity -'dv_nh3' = { - table2Version = 221 ; - indicatorOfParameter = 19 ; - } -#Sulfate deposition velocity -'dv_so4' = { - table2Version = 221 ; - indicatorOfParameter = 20 ; - } -#Ammonium deposition velocity -'dv_nh4' = { - table2Version = 221 ; - indicatorOfParameter = 21 ; - } -#Methane sulfonic acid deposition velocity -'dv_msa' = { - table2Version = 221 ; - indicatorOfParameter = 22 ; - } -#Methyl glyoxal deposition velocity -'dv_ch3cocho' = { - table2Version = 221 ; - indicatorOfParameter = 23 ; - } -#Stratospheric ozone deposition velocity -'dv_o3s' = { - table2Version = 221 ; - indicatorOfParameter = 24 ; - } -#Radon deposition velocity -'dv_ra' = { - table2Version = 221 ; - indicatorOfParameter = 25 ; - } -#Lead deposition velocity -'dv_pb' = { - table2Version = 221 ; - indicatorOfParameter = 26 ; - } -#Nitrogen monoxide deposition velocity -'dv_no' = { - table2Version = 221 ; - indicatorOfParameter = 27 ; - } -#Hydroperoxy radical deposition velocity -'dv_ho2' = { - table2Version = 221 ; - indicatorOfParameter = 28 ; - } -#Methylperoxy radical deposition velocity -'dv_ch3o2' = { - table2Version = 221 ; - indicatorOfParameter = 29 ; - } -#Hydroxyl radical deposition velocity -'dv_oh' = { - table2Version = 221 ; - indicatorOfParameter = 30 ; - } -#Nitrogen dioxide deposition velocity -'dv_no2' = { - table2Version = 221 ; - indicatorOfParameter = 31 ; - } -#Nitrate radical deposition velocity -'dv_no3' = { - table2Version = 221 ; - indicatorOfParameter = 32 ; - } -#Dinitrogen pentoxide deposition velocity -'dv_n2o5' = { - table2Version = 221 ; - indicatorOfParameter = 33 ; - } -#Pernitric acid deposition velocity -'dv_ho2no2' = { - table2Version = 221 ; - indicatorOfParameter = 34 ; - } -#Peroxy acetyl radical deposition velocity -'dv_c2o3' = { - table2Version = 221 ; - indicatorOfParameter = 35 ; - } -#Organic ethers deposition velocity -'dv_ror' = { - table2Version = 221 ; - indicatorOfParameter = 36 ; - } -#PAR budget corrector deposition velocity -'dv_rxpar' = { - table2Version = 221 ; - indicatorOfParameter = 37 ; - } -#NO to NO2 operator deposition velocity -'dv_xo2' = { - table2Version = 221 ; - indicatorOfParameter = 38 ; - } -#NO to alkyl nitrate operator deposition velocity -'dv_xo2n' = { - table2Version = 221 ; - indicatorOfParameter = 39 ; - } -#Amine deposition velocity -'dv_nh2' = { - table2Version = 221 ; - indicatorOfParameter = 40 ; - } -#Polar stratospheric cloud deposition velocity -'dv_psc' = { - table2Version = 221 ; - indicatorOfParameter = 41 ; - } -#Methanol deposition velocity -'dv_ch3oh' = { - table2Version = 221 ; - indicatorOfParameter = 42 ; - } -#Formic acid deposition velocity -'dv_hcooh' = { - table2Version = 221 ; - indicatorOfParameter = 43 ; - } -#Methacrylic acid deposition velocity -'dv_mcooh' = { - table2Version = 221 ; - indicatorOfParameter = 44 ; - } -#Ethane deposition velocity -'dv_c2h6' = { - table2Version = 221 ; - indicatorOfParameter = 45 ; - } -#Ethanol deposition velocity -'dv_c2h5oh' = { - table2Version = 221 ; - indicatorOfParameter = 46 ; - } -#Propane deposition velocity -'dv_c3h8' = { - table2Version = 221 ; - indicatorOfParameter = 47 ; - } -#Propene deposition velocity -'dv_c3h6' = { - table2Version = 221 ; - indicatorOfParameter = 48 ; - } -#Terpenes deposition velocity -'dv_c10h16' = { - table2Version = 221 ; - indicatorOfParameter = 49 ; - } -#Methacrolein MVK deposition velocity -'dv_ispd' = { - table2Version = 221 ; - indicatorOfParameter = 50 ; - } -#Nitrate deposition velocity -'dv_no3_a' = { - table2Version = 221 ; - indicatorOfParameter = 51 ; - } -#Acetone deposition velocity -'dv_ch3coch3' = { - table2Version = 221 ; - indicatorOfParameter = 52 ; - } -#Acetone product deposition velocity -'dv_aco2' = { - table2Version = 221 ; - indicatorOfParameter = 53 ; - } -#IC3H7O2 deposition velocity -'dv_ic3h7o2' = { - table2Version = 221 ; - indicatorOfParameter = 54 ; - } -#HYPROPO2 deposition velocity -'dv_hypropo2' = { - table2Version = 221 ; - indicatorOfParameter = 55 ; - } -#Nitrogen oxides Transp deposition velocity -'dv_noxa' = { - table2Version = 221 ; - indicatorOfParameter = 56 ; - } -#-10 degrees C isothermal level (atm) -'degm10l' = { - table2Version = 228 ; - indicatorOfParameter = 20 ; - } -#Total sky direct short-wave (solar) radiation at surface -'fdir' = { - table2Version = 228 ; - indicatorOfParameter = 21 ; - } -#Surface direct short-wave radiation, clear sky -'cdir' = { - table2Version = 228 ; - indicatorOfParameter = 22 ; - } -#Cloud base height -'cbh' = { - table2Version = 228 ; - indicatorOfParameter = 23 ; - } -#0 degrees C isothermal level (atm) -'deg0l' = { - table2Version = 228 ; - indicatorOfParameter = 24 ; - } -#Horizontal visibility -'hvis' = { - table2Version = 228 ; - indicatorOfParameter = 25 ; - } -#Maximum temperature at 2 metres in the last 3 hours -'mx2t3' = { - table2Version = 228 ; - indicatorOfParameter = 26 ; - } -#Minimum temperature at 2 metres in the last 3 hours -'mn2t3' = { - table2Version = 228 ; - indicatorOfParameter = 27 ; - } -#Maximum 10 metre wind gust in the last 3 hours -'fg310' = { - table2Version = 228 ; - indicatorOfParameter = 28 ; - } -#Instantaneous 10 metre wind gust -'i10fg' = { - table2Version = 228 ; - indicatorOfParameter = 29 ; - } -#2 metre relative humidity with respect to water -'rhw2' = { - table2Version = 228 ; - indicatorOfParameter = 37 ; - } -#Soil wetness index in layer 1 -'swi1' = { - table2Version = 228 ; - indicatorOfParameter = 40 ; - } -#Soil wetness index in layer 2 -'swi2' = { - table2Version = 228 ; - indicatorOfParameter = 41 ; - } -#Soil wetness index in layer 3 -'swi3' = { - table2Version = 228 ; - indicatorOfParameter = 42 ; - } -#Soil wetness index in layer 4 -'swi4' = { - table2Version = 228 ; - indicatorOfParameter = 43 ; - } -#Convective available potential energy shear -'capes' = { - table2Version = 228 ; - indicatorOfParameter = 44 ; - } -#Height of convective cloud top -'hcct' = { - table2Version = 228 ; - indicatorOfParameter = 46 ; - } -#Height of zero-degree wet-bulb temperature -'hwbt0' = { - table2Version = 228 ; - indicatorOfParameter = 47 ; - } -#Height of one-degree wet-bulb temperature -'hwbt1' = { - table2Version = 228 ; - indicatorOfParameter = 48 ; - } -#Instantaneous total lightning flash density -'litoti' = { - table2Version = 228 ; - indicatorOfParameter = 50 ; - } -#Averaged total lightning flash density in the last hour -'litota1' = { - table2Version = 228 ; - indicatorOfParameter = 51 ; - } -#Instantaneous cloud-to-ground lightning flash density -'licgi' = { - table2Version = 228 ; - indicatorOfParameter = 52 ; - } -#Averaged cloud-to-ground lightning flash density in the last hour -'licga1' = { - table2Version = 228 ; - indicatorOfParameter = 53 ; - } -#SMOS observed soil moisture retrieved using neural network -'smnnob' = { - table2Version = 228 ; - indicatorOfParameter = 70 ; - } -#SMOS observed soil moisture uncertainty retrieved using neural network -'smnner' = { - table2Version = 228 ; - indicatorOfParameter = 71 ; - } -#SMOS radio frequency interference probability -'smnnrfi' = { - table2Version = 228 ; - indicatorOfParameter = 72 ; - } -#SMOS number of observations per grid point -'smnnnb' = { - table2Version = 228 ; - indicatorOfParameter = 73 ; - } -#SMOS observation time for the satellite soil moisture data -'smnntim' = { - table2Version = 228 ; - indicatorOfParameter = 74 ; - } -#GPP coefficient from Biogenic Flux Adjustment System -'gppbfas' = { - table2Version = 228 ; - indicatorOfParameter = 78 ; - } -#Rec coefficient from Biogenic Flux Adjustment System -'recbfas' = { - table2Version = 228 ; - indicatorOfParameter = 79 ; - } -#Accumulated Carbon Dioxide Net Ecosystem Exchange -'aco2nee' = { - table2Version = 228 ; - indicatorOfParameter = 80 ; - } -#Accumulated Carbon Dioxide Gross Primary Production -'aco2gpp' = { - table2Version = 228 ; - indicatorOfParameter = 81 ; - } -#Accumulated Carbon Dioxide Ecosystem Respiration -'aco2rec' = { - table2Version = 228 ; - indicatorOfParameter = 82 ; - } -#Flux of Carbon Dioxide Net Ecosystem Exchange -'fco2nee' = { - table2Version = 228 ; - indicatorOfParameter = 83 ; - } -#Flux of Carbon Dioxide Gross Primary Production -'fco2gpp' = { - table2Version = 228 ; - indicatorOfParameter = 84 ; - } -#Flux of Carbon Dioxide Ecosystem Respiration -'fco2rec' = { - table2Version = 228 ; - indicatorOfParameter = 85 ; - } -#Total column supercooled liquid water -'tcslw' = { - table2Version = 228 ; - indicatorOfParameter = 88 ; - } -#Total column rain water -'tcrw' = { - table2Version = 228 ; - indicatorOfParameter = 89 ; - } -#Total column snow water -'tcsw' = { - table2Version = 228 ; - indicatorOfParameter = 90 ; - } -#Canopy cover fraction -'ccf' = { - table2Version = 228 ; - indicatorOfParameter = 91 ; - } -#Soil texture fraction -'stf' = { - table2Version = 228 ; - indicatorOfParameter = 92 ; - } -#Volumetric soil moisture -'swv' = { - table2Version = 228 ; - indicatorOfParameter = 93 ; - } -#Ice temperature -'ist' = { - table2Version = 228 ; - indicatorOfParameter = 94 ; - } -#Surface short-wave (solar) radiation downward clear-sky -'ssrdc' = { - table2Version = 228 ; - indicatorOfParameter = 129 ; - } -#Surface long-wave (thermal) radiation downward clear-sky -'strdc' = { - table2Version = 228 ; - indicatorOfParameter = 130 ; - } -#Accumulated freezing rain -'fzra' = { - table2Version = 228 ; - indicatorOfParameter = 216 ; - } -#Instantaneous large-scale surface precipitation fraction -'ilspf' = { - table2Version = 228 ; - indicatorOfParameter = 217 ; - } -#Convective rain rate -'crr' = { - table2Version = 228 ; - indicatorOfParameter = 218 ; - } -#Large scale rain rate -'lsrr' = { - table2Version = 228 ; - indicatorOfParameter = 219 ; - } -#Convective snowfall rate water equivalent -'csfr' = { - table2Version = 228 ; - indicatorOfParameter = 220 ; - } -#Large scale snowfall rate water equivalent -'lssfr' = { - table2Version = 228 ; - indicatorOfParameter = 221 ; - } -#Maximum total precipitation rate in the last 3 hours -'mxtpr3' = { - table2Version = 228 ; - indicatorOfParameter = 222 ; - } -#Minimum total precipitation rate in the last 3 hours -'mntpr3' = { - table2Version = 228 ; - indicatorOfParameter = 223 ; - } -#Maximum total precipitation rate in the last 6 hours -'mxtpr6' = { - table2Version = 228 ; - indicatorOfParameter = 224 ; - } -#Minimum total precipitation rate in the last 6 hours -'mntpr6' = { - table2Version = 228 ; - indicatorOfParameter = 225 ; - } -#Maximum total precipitation rate since previous post-processing -'mxtpr' = { - table2Version = 228 ; - indicatorOfParameter = 226 ; - } -#Minimum total precipitation rate since previous post-processing -'mntpr' = { - table2Version = 228 ; - indicatorOfParameter = 227 ; - } -#SMOS first Brightness Temperature Bias Correction parameter -'smos_tb_cdfa' = { - table2Version = 228 ; - indicatorOfParameter = 229 ; - } -#SMOS second Brightness Temperature Bias Correction parameter -'smos_tb_cdfb' = { - table2Version = 228 ; - indicatorOfParameter = 230 ; - } -#200 metre U wind component -'u200' = { - table2Version = 228 ; - indicatorOfParameter = 239 ; - } -#200 metre V wind component -'v200' = { - table2Version = 228 ; - indicatorOfParameter = 240 ; - } -#200 metre wind speed -'si200' = { - table2Version = 228 ; - indicatorOfParameter = 241 ; - } -#Surface solar radiation diffuse total sky -'fdif' = { - table2Version = 228 ; - indicatorOfParameter = 242 ; - } -#Surface solar radiation diffuse clear-sky -'cdif' = { - table2Version = 228 ; - indicatorOfParameter = 243 ; - } -#Surface albedo of direct radiation -'aldr' = { - table2Version = 228 ; - indicatorOfParameter = 244 ; - } -#Surface albedo of diffuse radiation -'aldf' = { - table2Version = 228 ; - indicatorOfParameter = 245 ; - } -#100 metre wind speed -'si100' = { - table2Version = 228 ; - indicatorOfParameter = 249 ; - } -#Irrigation fraction -'irrfr' = { - table2Version = 228 ; - indicatorOfParameter = 250 ; - } -#Potential evaporation -'pev' = { - table2Version = 228 ; - indicatorOfParameter = 251 ; - } -#Irrigation -'irr' = { - table2Version = 228 ; - indicatorOfParameter = 252 ; - } -#Surface runoff (variable resolution) -'srovar' = { - table2Version = 230 ; - indicatorOfParameter = 8 ; - } -#Sub-surface runoff (variable resolution) -'ssrovar' = { - table2Version = 230 ; - indicatorOfParameter = 9 ; - } -#Clear sky surface photosynthetically active radiation (variable resolution) -'parcsvar' = { - table2Version = 230 ; - indicatorOfParameter = 20 ; - } -#Total sky direct solar radiation at surface (variable resolution) -'fdirvar' = { - table2Version = 230 ; - indicatorOfParameter = 21 ; - } -#Clear-sky direct solar radiation at surface (variable resolution) -'cdirvar' = { - table2Version = 230 ; - indicatorOfParameter = 22 ; - } -#Direct solar radiation (variable resolution) -'dsrpvar' = { - table2Version = 230 ; - indicatorOfParameter = 47 ; - } -#Large-scale precipitation fraction (variable resolution) -'lspfvar' = { - table2Version = 230 ; - indicatorOfParameter = 50 ; - } -#Accumulated Carbon Dioxide Net Ecosystem Exchange (variable resolution) -'aco2neevar' = { - table2Version = 230 ; - indicatorOfParameter = 80 ; - } -#Accumulated Carbon Dioxide Gross Primary Production (variable resolution) -'aco2gppvar' = { - table2Version = 230 ; - indicatorOfParameter = 81 ; - } -#Accumulated Carbon Dioxide Ecosystem Respiration (variable resolution) -'aco2recvar' = { - table2Version = 230 ; - indicatorOfParameter = 82 ; - } -#Surface solar radiation downward clear-sky (variable resolution) -'ssrdcvar' = { - table2Version = 230 ; - indicatorOfParameter = 129 ; - } -#Surface thermal radiation downward clear-sky (variable resolution) -'strdcvar' = { - table2Version = 230 ; - indicatorOfParameter = 130 ; - } -#Albedo (variable resolution) -'alvar' = { - table2Version = 230 ; - indicatorOfParameter = 174 ; - } -#Vertically integrated moisture divergence (variable resolution) -'vimdvar' = { - table2Version = 230 ; - indicatorOfParameter = 213 ; - } -#Accumulated freezing rain (variable resolution) -'fzravar' = { - table2Version = 230 ; - indicatorOfParameter = 216 ; - } -#Total precipitation (variable resolution) -'tpvar' = { - table2Version = 230 ; - indicatorOfParameter = 228 ; - } -#Convective snowfall (variable resolution) -'csfvar' = { - table2Version = 230 ; - indicatorOfParameter = 239 ; - } -#Large-scale snowfall (variable resolution) -'lsfvar' = { - table2Version = 230 ; - indicatorOfParameter = 240 ; - } -#Potential evaporation (variable resolution) -'pevvar' = { - table2Version = 230 ; - indicatorOfParameter = 251 ; - } -#Mean surface runoff rate -'msror' = { - table2Version = 235 ; - indicatorOfParameter = 20 ; - } -#Mean sub-surface runoff rate -'mssror' = { - table2Version = 235 ; - indicatorOfParameter = 21 ; - } -#Mean surface photosynthetically active radiation flux, clear sky -'msparfcs' = { - table2Version = 235 ; - indicatorOfParameter = 22 ; - } -#Mean snow evaporation rate -'mser' = { - table2Version = 235 ; - indicatorOfParameter = 23 ; - } -#Mean snowmelt rate -'msmr' = { - table2Version = 235 ; - indicatorOfParameter = 24 ; - } -#Mean magnitude of turbulent surface stress -'mmtss' = { - table2Version = 235 ; - indicatorOfParameter = 25 ; - } -#Mean large-scale precipitation fraction -'mlspf' = { - table2Version = 235 ; - indicatorOfParameter = 26 ; - } -#Mean surface downward UV radiation flux -'msdwuvrf' = { - table2Version = 235 ; - indicatorOfParameter = 27 ; - } -#Mean surface photosynthetically active radiation flux -'msparf' = { - table2Version = 235 ; - indicatorOfParameter = 28 ; - } -#Mean large-scale precipitation rate -'mlspr' = { - table2Version = 235 ; - indicatorOfParameter = 29 ; - } -#Mean convective precipitation rate -'mcpr' = { - table2Version = 235 ; - indicatorOfParameter = 30 ; - } -#Mean snowfall rate -'msr' = { - table2Version = 235 ; - indicatorOfParameter = 31 ; - } -#Mean boundary layer dissipation -'mbld' = { - table2Version = 235 ; - indicatorOfParameter = 32 ; - } -#Mean surface sensible heat flux -'msshf' = { - table2Version = 235 ; - indicatorOfParameter = 33 ; - } -#Mean surface latent heat flux -'mslhf' = { - table2Version = 235 ; - indicatorOfParameter = 34 ; - } -#Mean surface downward short-wave radiation flux -'msdwswrf' = { - table2Version = 235 ; - indicatorOfParameter = 35 ; - } -#Mean surface downward long-wave radiation flux -'msdwlwrf' = { - table2Version = 235 ; - indicatorOfParameter = 36 ; - } -#Mean surface net short-wave radiation flux -'msnswrf' = { - table2Version = 235 ; - indicatorOfParameter = 37 ; - } -#Mean surface net long-wave radiation flux -'msnlwrf' = { - table2Version = 235 ; - indicatorOfParameter = 38 ; - } -#Mean top net short-wave radiation flux -'mtnswrf' = { - table2Version = 235 ; - indicatorOfParameter = 39 ; - } -#Mean top net long-wave radiation flux -'mtnlwrf' = { - table2Version = 235 ; - indicatorOfParameter = 40 ; - } -#Mean eastward turbulent surface stress -'metss' = { - table2Version = 235 ; - indicatorOfParameter = 41 ; - } -#Mean northward turbulent surface stress -'mntss' = { - table2Version = 235 ; - indicatorOfParameter = 42 ; - } -#Mean evaporation rate -'mer' = { - table2Version = 235 ; - indicatorOfParameter = 43 ; - } -#Sunshine duration fraction -'sdf' = { - table2Version = 235 ; - indicatorOfParameter = 44 ; - } -#Mean eastward gravity wave surface stress -'megwss' = { - table2Version = 235 ; - indicatorOfParameter = 45 ; - } -#Mean northward gravity wave surface stress -'mngwss' = { - table2Version = 235 ; - indicatorOfParameter = 46 ; - } -#Mean gravity wave dissipation -'mgwd' = { - table2Version = 235 ; - indicatorOfParameter = 47 ; - } -#Mean runoff rate -'mror' = { - table2Version = 235 ; - indicatorOfParameter = 48 ; - } -#Mean top net short-wave radiation flux, clear sky -'mtnswrfcs' = { - table2Version = 235 ; - indicatorOfParameter = 49 ; - } -#Mean top net long-wave radiation flux, clear sky -'mtnlwrfcs' = { - table2Version = 235 ; - indicatorOfParameter = 50 ; - } -#Mean surface net short-wave radiation flux, clear sky -'msnswrfcs' = { - table2Version = 235 ; - indicatorOfParameter = 51 ; - } -#Mean surface net long-wave radiation flux, clear sky -'msnlwrfcs' = { - table2Version = 235 ; - indicatorOfParameter = 52 ; - } -#Mean top downward short-wave radiation flux -'mtdwswrf' = { - table2Version = 235 ; - indicatorOfParameter = 53 ; - } -#Mean vertically integrated moisture divergence -'mvimd' = { - table2Version = 235 ; - indicatorOfParameter = 54 ; - } -#Mean total precipitation rate -'mtpr' = { - table2Version = 235 ; - indicatorOfParameter = 55 ; - } -#Mean convective snowfall rate -'mcsr' = { - table2Version = 235 ; - indicatorOfParameter = 56 ; - } -#Mean large-scale snowfall rate -'mlssr' = { - table2Version = 235 ; - indicatorOfParameter = 57 ; - } -#Mean surface direct short-wave radiation flux -'msdrswrf' = { - table2Version = 235 ; - indicatorOfParameter = 58 ; - } -#Mean surface direct short-wave radiation flux, clear sky -'msdrswrfcs' = { - table2Version = 235 ; - indicatorOfParameter = 59 ; - } -#Mean surface diffuse short-wave radiation flux -'msdfswrf' = { - table2Version = 235 ; - indicatorOfParameter = 60 ; - } -#Mean surface diffuse short-wave radiation flux, clear sky -'msdfswrfcs' = { - table2Version = 235 ; - indicatorOfParameter = 61 ; - } -#Mean carbon dioxide net ecosystem exchange flux -'mcdneef' = { - table2Version = 235 ; - indicatorOfParameter = 62 ; - } -#Mean carbon dioxide gross primary production flux -'mcdgppf' = { - table2Version = 235 ; - indicatorOfParameter = 63 ; - } -#Mean carbon dioxide ecosystem respiration flux -'mcderf' = { - table2Version = 235 ; - indicatorOfParameter = 64 ; - } -#Mean rain rate -'mrr' = { - table2Version = 235 ; - indicatorOfParameter = 65 ; - } -#Mean convective rain rate -'mcrr' = { - table2Version = 235 ; - indicatorOfParameter = 66 ; - } -#Mean large-scale rain rate -'mlsrr' = { - table2Version = 235 ; - indicatorOfParameter = 67 ; - } -#Mean surface downward short-wave radiation flux, clear sky -'msdwswrfcs' = { - table2Version = 235 ; - indicatorOfParameter = 68 ; - } -#Mean surface downward long-wave radiation flux, clear sky -'msdwlwrfcs' = { - table2Version = 235 ; - indicatorOfParameter = 69 ; - } -#Mean potential evaporation rate -'mper' = { - table2Version = 235 ; - indicatorOfParameter = 70 ; - } -#Total precipitation rate -'tprate' = { - table2Version = 254 ; - indicatorOfParameter = 48 ; - } -#Ceiling -'ceil' = { - table2Version = 228 ; - indicatorOfParameter = 109 ; - } -#K index -'kx' = { - table2Version = 228 ; - indicatorOfParameter = 121 ; - } -#Total totals index -'totalx' = { - table2Version = 228 ; - indicatorOfParameter = 123 ; - } -#Stream function gradient -'strfgrd' = { - table2Version = 129 ; - indicatorOfParameter = 1 ; - } -#Velocity potential gradient -'vpotgrd' = { - table2Version = 129 ; - indicatorOfParameter = 2 ; - } -#Potential temperature gradient -'ptgrd' = { - table2Version = 129 ; - indicatorOfParameter = 3 ; - } -#Equivalent potential temperature gradient -'eqptgrd' = { - table2Version = 129 ; - indicatorOfParameter = 4 ; - } -#Saturated equivalent potential temperature gradient -'septgrd' = { - table2Version = 129 ; - indicatorOfParameter = 5 ; - } -#U component of divergent wind gradient -'udvwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 11 ; - } -#V component of divergent wind gradient -'vdvwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 12 ; - } -#U component of rotational wind gradient -'urtwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 13 ; - } -#V component of rotational wind gradient -'vrtwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 14 ; - } -#Unbalanced component of temperature gradient -'uctpgrd' = { - table2Version = 129 ; - indicatorOfParameter = 21 ; - } -#Unbalanced component of logarithm of surface pressure gradient -'uclngrd' = { - table2Version = 129 ; - indicatorOfParameter = 22 ; - } -#Unbalanced component of divergence gradient -'ucdvgrd' = { - table2Version = 129 ; - indicatorOfParameter = 23 ; - } -#Reserved for future unbalanced components -'p24.129' = { - table2Version = 129 ; - indicatorOfParameter = 24 ; - } -#Reserved for future unbalanced components -'p25.129' = { - table2Version = 129 ; - indicatorOfParameter = 25 ; - } -#Lake cover gradient -'clgrd' = { - table2Version = 129 ; - indicatorOfParameter = 26 ; - } -#Low vegetation cover gradient -'cvlgrd' = { - table2Version = 129 ; - indicatorOfParameter = 27 ; - } -#High vegetation cover gradient -'cvhgrd' = { - table2Version = 129 ; - indicatorOfParameter = 28 ; - } -#Type of low vegetation gradient -'tvlgrd' = { - table2Version = 129 ; - indicatorOfParameter = 29 ; - } -#Type of high vegetation gradient -'tvhgrd' = { - table2Version = 129 ; - indicatorOfParameter = 30 ; - } -#Sea-ice cover gradient -'sicgrd' = { - table2Version = 129 ; - indicatorOfParameter = 31 ; - } -#Snow albedo gradient -'asngrd' = { - table2Version = 129 ; - indicatorOfParameter = 32 ; - } -#Snow density gradient -'rsngrd' = { - table2Version = 129 ; - indicatorOfParameter = 33 ; - } -#Sea surface temperature gradient -'sstkgrd' = { - table2Version = 129 ; - indicatorOfParameter = 34 ; - } -#Ice surface temperature layer 1 gradient -'istl1grd' = { - table2Version = 129 ; - indicatorOfParameter = 35 ; - } -#Ice surface temperature layer 2 gradient -'istl2grd' = { - table2Version = 129 ; - indicatorOfParameter = 36 ; - } -#Ice surface temperature layer 3 gradient -'istl3grd' = { - table2Version = 129 ; - indicatorOfParameter = 37 ; - } -#Ice surface temperature layer 4 gradient -'istl4grd' = { - table2Version = 129 ; - indicatorOfParameter = 38 ; - } -#Volumetric soil water layer 1 gradient -'swvl1grd' = { - table2Version = 129 ; - indicatorOfParameter = 39 ; - } -#Volumetric soil water layer 2 gradient -'swvl2grd' = { - table2Version = 129 ; - indicatorOfParameter = 40 ; - } -#Volumetric soil water layer 3 gradient -'swvl3grd' = { - table2Version = 129 ; - indicatorOfParameter = 41 ; - } -#Volumetric soil water layer 4 gradient -'swvl4grd' = { - table2Version = 129 ; - indicatorOfParameter = 42 ; - } -#Soil type gradient -'sltgrd' = { - table2Version = 129 ; - indicatorOfParameter = 43 ; - } -#Snow evaporation gradient -'esgrd' = { - table2Version = 129 ; - indicatorOfParameter = 44 ; - } -#Snowmelt gradient -'smltgrd' = { - table2Version = 129 ; - indicatorOfParameter = 45 ; - } -#Solar duration gradient -'sdurgrd' = { - table2Version = 129 ; - indicatorOfParameter = 46 ; - } -#Direct solar radiation gradient -'dsrpgrd' = { - table2Version = 129 ; - indicatorOfParameter = 47 ; - } -#Magnitude of turbulent surface stress gradient -'magssgrd' = { - table2Version = 129 ; - indicatorOfParameter = 48 ; - } -#10 metre wind gust gradient -'fggrd10' = { - table2Version = 129 ; - indicatorOfParameter = 49 ; - } -#Large-scale precipitation fraction gradient -'lspfgrd' = { - table2Version = 129 ; - indicatorOfParameter = 50 ; - } -#Maximum 2 metre temperature gradient -'mx2t24grd' = { - table2Version = 129 ; - indicatorOfParameter = 51 ; - } -#Minimum 2 metre temperature gradient -'mn2t24grd' = { - table2Version = 129 ; - indicatorOfParameter = 52 ; - } -#Montgomery potential gradient -'montgrd' = { - table2Version = 129 ; - indicatorOfParameter = 53 ; - } -#Pressure gradient -'presgrd' = { - table2Version = 129 ; - indicatorOfParameter = 54 ; - } -#Mean 2 metre temperature in the last 24 hours gradient -'mean2t24grd' = { - table2Version = 129 ; - indicatorOfParameter = 55 ; - } -#Mean 2 metre dewpoint temperature in the last 24 hours gradient -'mn2d24grd' = { - table2Version = 129 ; - indicatorOfParameter = 56 ; - } -#Downward UV radiation at the surface gradient -'uvbgrd' = { - table2Version = 129 ; - indicatorOfParameter = 57 ; - } -#Photosynthetically active radiation at the surface gradient -'pargrd' = { - table2Version = 129 ; - indicatorOfParameter = 58 ; - } -#Convective available potential energy gradient -'capegrd' = { - table2Version = 129 ; - indicatorOfParameter = 59 ; - } -#Potential vorticity gradient -'pvgrd' = { - table2Version = 129 ; - indicatorOfParameter = 60 ; - } -#Total precipitation from observations gradient -'tpogrd' = { - table2Version = 129 ; - indicatorOfParameter = 61 ; - } -#Observation count gradient -'obctgrd' = { - table2Version = 129 ; - indicatorOfParameter = 62 ; - } -#Start time for skin temperature difference -'p63.129' = { - table2Version = 129 ; - indicatorOfParameter = 63 ; - } -#Finish time for skin temperature difference -'p64.129' = { - table2Version = 129 ; - indicatorOfParameter = 64 ; - } -#Skin temperature difference -'p65.129' = { - table2Version = 129 ; - indicatorOfParameter = 65 ; - } -#Leaf area index, low vegetation -'p66.129' = { - table2Version = 129 ; - indicatorOfParameter = 66 ; - } -#Leaf area index, high vegetation -'p67.129' = { - table2Version = 129 ; - indicatorOfParameter = 67 ; - } -#Minimum stomatal resistance, low vegetation -'p68.129' = { - table2Version = 129 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'p69.129' = { - table2Version = 129 ; - indicatorOfParameter = 69 ; - } -#Biome cover, low vegetation -'p70.129' = { - table2Version = 129 ; - indicatorOfParameter = 70 ; - } -#Biome cover, high vegetation -'p71.129' = { - table2Version = 129 ; - indicatorOfParameter = 71 ; - } -#Total column liquid water -'p78.129' = { - table2Version = 129 ; - indicatorOfParameter = 78 ; - } -#Total column ice water -'p79.129' = { - table2Version = 129 ; - indicatorOfParameter = 79 ; - } -#Experimental product -'p80.129' = { - table2Version = 129 ; - indicatorOfParameter = 80 ; - } -#Experimental product -'p81.129' = { - table2Version = 129 ; - indicatorOfParameter = 81 ; - } -#Experimental product -'p82.129' = { - table2Version = 129 ; - indicatorOfParameter = 82 ; - } -#Experimental product -'p83.129' = { - table2Version = 129 ; - indicatorOfParameter = 83 ; - } -#Experimental product -'p84.129' = { - table2Version = 129 ; - indicatorOfParameter = 84 ; - } -#Experimental product -'p85.129' = { - table2Version = 129 ; - indicatorOfParameter = 85 ; - } -#Experimental product -'p86.129' = { - table2Version = 129 ; - indicatorOfParameter = 86 ; - } -#Experimental product -'p87.129' = { - table2Version = 129 ; - indicatorOfParameter = 87 ; - } -#Experimental product -'p88.129' = { - table2Version = 129 ; - indicatorOfParameter = 88 ; - } -#Experimental product -'p89.129' = { - table2Version = 129 ; - indicatorOfParameter = 89 ; - } -#Experimental product -'p90.129' = { - table2Version = 129 ; - indicatorOfParameter = 90 ; - } -#Experimental product -'p91.129' = { - table2Version = 129 ; - indicatorOfParameter = 91 ; - } -#Experimental product -'p92.129' = { - table2Version = 129 ; - indicatorOfParameter = 92 ; - } -#Experimental product -'p93.129' = { - table2Version = 129 ; - indicatorOfParameter = 93 ; - } -#Experimental product -'p94.129' = { - table2Version = 129 ; - indicatorOfParameter = 94 ; - } -#Experimental product -'p95.129' = { - table2Version = 129 ; - indicatorOfParameter = 95 ; - } -#Experimental product -'p96.129' = { - table2Version = 129 ; - indicatorOfParameter = 96 ; - } -#Experimental product -'p97.129' = { - table2Version = 129 ; - indicatorOfParameter = 97 ; - } -#Experimental product -'p98.129' = { - table2Version = 129 ; - indicatorOfParameter = 98 ; - } -#Experimental product -'p99.129' = { - table2Version = 129 ; - indicatorOfParameter = 99 ; - } -#Experimental product -'p100.129' = { - table2Version = 129 ; - indicatorOfParameter = 100 ; - } -#Experimental product -'p101.129' = { - table2Version = 129 ; - indicatorOfParameter = 101 ; - } -#Experimental product -'p102.129' = { - table2Version = 129 ; - indicatorOfParameter = 102 ; - } -#Experimental product -'p103.129' = { - table2Version = 129 ; - indicatorOfParameter = 103 ; - } -#Experimental product -'p104.129' = { - table2Version = 129 ; - indicatorOfParameter = 104 ; - } -#Experimental product -'p105.129' = { - table2Version = 129 ; - indicatorOfParameter = 105 ; - } -#Experimental product -'p106.129' = { - table2Version = 129 ; - indicatorOfParameter = 106 ; - } -#Experimental product -'p107.129' = { - table2Version = 129 ; - indicatorOfParameter = 107 ; - } -#Experimental product -'p108.129' = { - table2Version = 129 ; - indicatorOfParameter = 108 ; - } -#Experimental product -'p109.129' = { - table2Version = 129 ; - indicatorOfParameter = 109 ; - } -#Experimental product -'p110.129' = { - table2Version = 129 ; - indicatorOfParameter = 110 ; - } -#Experimental product -'p111.129' = { - table2Version = 129 ; - indicatorOfParameter = 111 ; - } -#Experimental product -'p112.129' = { - table2Version = 129 ; - indicatorOfParameter = 112 ; - } -#Experimental product -'p113.129' = { - table2Version = 129 ; - indicatorOfParameter = 113 ; - } -#Experimental product -'p114.129' = { - table2Version = 129 ; - indicatorOfParameter = 114 ; - } -#Experimental product -'p115.129' = { - table2Version = 129 ; - indicatorOfParameter = 115 ; - } -#Experimental product -'p116.129' = { - table2Version = 129 ; - indicatorOfParameter = 116 ; - } -#Experimental product -'p117.129' = { - table2Version = 129 ; - indicatorOfParameter = 117 ; - } -#Experimental product -'p118.129' = { - table2Version = 129 ; - indicatorOfParameter = 118 ; - } -#Experimental product -'p119.129' = { - table2Version = 129 ; - indicatorOfParameter = 119 ; - } -#Experimental product -'p120.129' = { - table2Version = 129 ; - indicatorOfParameter = 120 ; - } -#Maximum temperature at 2 metres gradient -'mx2t6grd' = { - table2Version = 129 ; - indicatorOfParameter = 121 ; - } -#Minimum temperature at 2 metres gradient -'mn2t6grd' = { - table2Version = 129 ; - indicatorOfParameter = 122 ; - } -#10 metre wind gust in the last 6 hours gradient -'fg6grd10' = { - table2Version = 129 ; - indicatorOfParameter = 123 ; - } -#Vertically integrated total energy -'p125.129' = { - table2Version = 129 ; - indicatorOfParameter = 125 ; - } -#Generic parameter for sensitive area prediction -'p126.129' = { - table2Version = 129 ; - indicatorOfParameter = 126 ; - } -#Atmospheric tide gradient -'atgrd' = { - table2Version = 129 ; - indicatorOfParameter = 127 ; - } -#Budget values gradient -'bvgrd' = { - table2Version = 129 ; - indicatorOfParameter = 128 ; - } -#Geopotential gradient -'zgrd' = { - table2Version = 129 ; - indicatorOfParameter = 129 ; - } -#Temperature gradient -'tgrd' = { - table2Version = 129 ; - indicatorOfParameter = 130 ; - } -#U component of wind gradient -'ugrd' = { - table2Version = 129 ; - indicatorOfParameter = 131 ; - } -#V component of wind gradient -'vgrd' = { - table2Version = 129 ; - indicatorOfParameter = 132 ; - } -#Specific humidity gradient -'qgrd' = { - table2Version = 129 ; - indicatorOfParameter = 133 ; - } -#Surface pressure gradient -'spgrd' = { - table2Version = 129 ; - indicatorOfParameter = 134 ; - } -#vertical velocity (pressure) gradient -'wgrd' = { - table2Version = 129 ; - indicatorOfParameter = 135 ; - } -#Total column water gradient -'tcwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 136 ; - } -#Total column water vapour gradient -'tcwvgrd' = { - table2Version = 129 ; - indicatorOfParameter = 137 ; - } -#Vorticity (relative) gradient -'vogrd' = { - table2Version = 129 ; - indicatorOfParameter = 138 ; - } -#Soil temperature level 1 gradient -'stl1grd' = { - table2Version = 129 ; - indicatorOfParameter = 139 ; - } -#Soil wetness level 1 gradient -'swl1grd' = { - table2Version = 129 ; - indicatorOfParameter = 140 ; - } -#Snow depth gradient -'sdgrd' = { - table2Version = 129 ; - indicatorOfParameter = 141 ; - } -#Stratiform precipitation (Large-scale precipitation) gradient -'lspgrd' = { - table2Version = 129 ; - indicatorOfParameter = 142 ; - } -#Convective precipitation gradient -'cpgrd' = { - table2Version = 129 ; - indicatorOfParameter = 143 ; - } -#Snowfall (convective + stratiform) gradient -'sfgrd' = { - table2Version = 129 ; - indicatorOfParameter = 144 ; - } -#Boundary layer dissipation gradient -'bldgrd' = { - table2Version = 129 ; - indicatorOfParameter = 145 ; - } -#Surface sensible heat flux gradient -'sshfgrd' = { - table2Version = 129 ; - indicatorOfParameter = 146 ; - } -#Surface latent heat flux gradient -'slhfgrd' = { - table2Version = 129 ; - indicatorOfParameter = 147 ; - } -#Charnock gradient -'chnkgrd' = { - table2Version = 129 ; - indicatorOfParameter = 148 ; - } -#Surface net radiation gradient -'snrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 149 ; - } -#Top net radiation gradient -'tnrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 150 ; - } -#Mean sea level pressure gradient -'mslgrd' = { - table2Version = 129 ; - indicatorOfParameter = 151 ; - } -#Logarithm of surface pressure gradient -'lnspgrd' = { - table2Version = 129 ; - indicatorOfParameter = 152 ; - } -#Short-wave heating rate gradient -'swhrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 153 ; - } -#Long-wave heating rate gradient -'lwhrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 154 ; - } -#Divergence gradient -'dgrd' = { - table2Version = 129 ; - indicatorOfParameter = 155 ; - } -#Height gradient -'ghgrd' = { - table2Version = 129 ; - indicatorOfParameter = 156 ; - } -#Relative humidity gradient -'rgrd' = { - table2Version = 129 ; - indicatorOfParameter = 157 ; - } -#Tendency of surface pressure gradient -'tspgrd' = { - table2Version = 129 ; - indicatorOfParameter = 158 ; - } -#Boundary layer height gradient -'blhgrd' = { - table2Version = 129 ; - indicatorOfParameter = 159 ; - } -#Standard deviation of orography gradient -'sdorgrd' = { - table2Version = 129 ; - indicatorOfParameter = 160 ; - } -#Anisotropy of sub-gridscale orography gradient -'isorgrd' = { - table2Version = 129 ; - indicatorOfParameter = 161 ; - } -#Angle of sub-gridscale orography gradient -'anorgrd' = { - table2Version = 129 ; - indicatorOfParameter = 162 ; - } -#Slope of sub-gridscale orography gradient -'slorgrd' = { - table2Version = 129 ; - indicatorOfParameter = 163 ; - } -#Total cloud cover gradient -'tccgrd' = { - table2Version = 129 ; - indicatorOfParameter = 164 ; - } -#10 metre U wind component gradient -'ugrd10' = { - table2Version = 129 ; - indicatorOfParameter = 165 ; - } -#10 metre V wind component gradient -'vgrd10' = { - table2Version = 129 ; - indicatorOfParameter = 166 ; - } -#2 metre temperature gradient -'grd2t' = { - table2Version = 129 ; - indicatorOfParameter = 167 ; - } -#2 metre dewpoint temperature gradient -'grd2d' = { - table2Version = 129 ; - indicatorOfParameter = 168 ; - } -#Surface solar radiation downwards gradient -'ssrdgrd' = { - table2Version = 129 ; - indicatorOfParameter = 169 ; - } -#Soil temperature level 2 gradient -'stl2grd' = { - table2Version = 129 ; - indicatorOfParameter = 170 ; - } -#Soil wetness level 2 gradient -'swl2grd' = { - table2Version = 129 ; - indicatorOfParameter = 171 ; - } -#Land-sea mask gradient -'lsmgrd' = { - table2Version = 129 ; - indicatorOfParameter = 172 ; - } -#Surface roughness gradient -'srgrd' = { - table2Version = 129 ; - indicatorOfParameter = 173 ; - } -#Albedo gradient -'algrd' = { - table2Version = 129 ; - indicatorOfParameter = 174 ; - } -#Surface thermal radiation downwards gradient -'strdgrd' = { - table2Version = 129 ; - indicatorOfParameter = 175 ; - } -#Surface net solar radiation gradient -'ssrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 176 ; - } -#Surface net thermal radiation gradient -'strgrd' = { - table2Version = 129 ; - indicatorOfParameter = 177 ; - } -#Top net solar radiation gradient -'tsrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 178 ; - } -#Top net thermal radiation gradient -'ttrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 179 ; - } -#East-West surface stress gradient -'ewssgrd' = { - table2Version = 129 ; - indicatorOfParameter = 180 ; - } -#North-South surface stress gradient -'nsssgrd' = { - table2Version = 129 ; - indicatorOfParameter = 181 ; - } -#Evaporation gradient -'egrd' = { - table2Version = 129 ; - indicatorOfParameter = 182 ; - } -#Soil temperature level 3 gradient -'stl3grd' = { - table2Version = 129 ; - indicatorOfParameter = 183 ; - } -#Soil wetness level 3 gradient -'swl3grd' = { - table2Version = 129 ; - indicatorOfParameter = 184 ; - } -#Convective cloud cover gradient -'cccgrd' = { - table2Version = 129 ; - indicatorOfParameter = 185 ; - } -#Low cloud cover gradient -'lccgrd' = { - table2Version = 129 ; - indicatorOfParameter = 186 ; - } -#Medium cloud cover gradient -'mccgrd' = { - table2Version = 129 ; - indicatorOfParameter = 187 ; - } -#High cloud cover gradient -'hccgrd' = { - table2Version = 129 ; - indicatorOfParameter = 188 ; - } -#Sunshine duration gradient -'sundgrd' = { - table2Version = 129 ; - indicatorOfParameter = 189 ; - } -#East-West component of sub-gridscale orographic variance gradient -'ewovgrd' = { - table2Version = 129 ; - indicatorOfParameter = 190 ; - } -#North-South component of sub-gridscale orographic variance gradient -'nsovgrd' = { - table2Version = 129 ; - indicatorOfParameter = 191 ; - } -#North-West/South-East component of sub-gridscale orographic variance gradient -'nwovgrd' = { - table2Version = 129 ; - indicatorOfParameter = 192 ; - } -#North-East/South-West component of sub-gridscale orographic variance gradient -'neovgrd' = { - table2Version = 129 ; - indicatorOfParameter = 193 ; - } -#Brightness temperature gradient -'btmpgrd' = { - table2Version = 129 ; - indicatorOfParameter = 194 ; - } -#Longitudinal component of gravity wave stress gradient -'lgwsgrd' = { - table2Version = 129 ; - indicatorOfParameter = 195 ; - } -#Meridional component of gravity wave stress gradient -'mgwsgrd' = { - table2Version = 129 ; - indicatorOfParameter = 196 ; - } -#Gravity wave dissipation gradient -'gwdgrd' = { - table2Version = 129 ; - indicatorOfParameter = 197 ; - } -#Skin reservoir content gradient -'srcgrd' = { - table2Version = 129 ; - indicatorOfParameter = 198 ; - } -#Vegetation fraction gradient -'veggrd' = { - table2Version = 129 ; - indicatorOfParameter = 199 ; - } -#Variance of sub-gridscale orography gradient -'vsogrd' = { - table2Version = 129 ; - indicatorOfParameter = 200 ; - } -#Maximum temperature at 2 metres since previous post-processing gradient -'mx2tgrd' = { - table2Version = 129 ; - indicatorOfParameter = 201 ; - } -#Minimum temperature at 2 metres since previous post-processing gradient -'mn2tgrd' = { - table2Version = 129 ; - indicatorOfParameter = 202 ; - } -#Ozone mass mixing ratio gradient -'o3grd' = { - table2Version = 129 ; - indicatorOfParameter = 203 ; - } -#Precipitation analysis weights gradient -'pawgrd' = { - table2Version = 129 ; - indicatorOfParameter = 204 ; - } -#Runoff gradient -'rogrd' = { - table2Version = 129 ; - indicatorOfParameter = 205 ; - } -#Total column ozone gradient -'tco3grd' = { - table2Version = 129 ; - indicatorOfParameter = 206 ; - } -#10 metre wind speed gradient -'sigrd10' = { - table2Version = 129 ; - indicatorOfParameter = 207 ; - } -#Top net solar radiation, clear sky gradient -'tsrcgrd' = { - table2Version = 129 ; - indicatorOfParameter = 208 ; - } -#Top net thermal radiation, clear sky gradient -'ttrcgrd' = { - table2Version = 129 ; - indicatorOfParameter = 209 ; - } -#Surface net solar radiation, clear sky gradient -'ssrcgrd' = { - table2Version = 129 ; - indicatorOfParameter = 210 ; - } -#Surface net thermal radiation, clear sky gradient -'strcgrd' = { - table2Version = 129 ; - indicatorOfParameter = 211 ; - } -#TOA incident solar radiation gradient -'tisrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 212 ; - } -#Diabatic heating by radiation gradient -'dhrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 214 ; - } -#Diabatic heating by vertical diffusion gradient -'dhvdgrd' = { - table2Version = 129 ; - indicatorOfParameter = 215 ; - } -#Diabatic heating by cumulus convection gradient -'dhccgrd' = { - table2Version = 129 ; - indicatorOfParameter = 216 ; - } -#Diabatic heating large-scale condensation gradient -'dhlcgrd' = { - table2Version = 129 ; - indicatorOfParameter = 217 ; - } -#Vertical diffusion of zonal wind gradient -'vdzwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 218 ; - } -#Vertical diffusion of meridional wind gradient -'vdmwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 219 ; - } -#East-West gravity wave drag tendency gradient -'ewgdgrd' = { - table2Version = 129 ; - indicatorOfParameter = 220 ; - } -#North-South gravity wave drag tendency gradient -'nsgdgrd' = { - table2Version = 129 ; - indicatorOfParameter = 221 ; - } -#Convective tendency of zonal wind gradient -'ctzwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 222 ; - } -#Convective tendency of meridional wind gradient -'ctmwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 223 ; - } -#Vertical diffusion of humidity gradient -'vdhgrd' = { - table2Version = 129 ; - indicatorOfParameter = 224 ; - } -#Humidity tendency by cumulus convection gradient -'htccgrd' = { - table2Version = 129 ; - indicatorOfParameter = 225 ; - } -#Humidity tendency by large-scale condensation gradient -'htlcgrd' = { - table2Version = 129 ; - indicatorOfParameter = 226 ; - } -#Change from removal of negative humidity gradient -'crnhgrd' = { - table2Version = 129 ; - indicatorOfParameter = 227 ; - } -#Total precipitation gradient -'tpgrd' = { - table2Version = 129 ; - indicatorOfParameter = 228 ; - } -#Instantaneous X surface stress gradient -'iewsgrd' = { - table2Version = 129 ; - indicatorOfParameter = 229 ; - } -#Instantaneous Y surface stress gradient -'inssgrd' = { - table2Version = 129 ; - indicatorOfParameter = 230 ; - } -#Instantaneous surface heat flux gradient -'ishfgrd' = { - table2Version = 129 ; - indicatorOfParameter = 231 ; - } -#Instantaneous moisture flux gradient -'iegrd' = { - table2Version = 129 ; - indicatorOfParameter = 232 ; - } -#Apparent surface humidity gradient -'asqgrd' = { - table2Version = 129 ; - indicatorOfParameter = 233 ; - } -#Logarithm of surface roughness length for heat gradient -'lsrhgrd' = { - table2Version = 129 ; - indicatorOfParameter = 234 ; - } -#Skin temperature gradient -'sktgrd' = { - table2Version = 129 ; - indicatorOfParameter = 235 ; - } -#Soil temperature level 4 gradient -'stl4grd' = { - table2Version = 129 ; - indicatorOfParameter = 236 ; - } -#Soil wetness level 4 gradient -'swl4grd' = { - table2Version = 129 ; - indicatorOfParameter = 237 ; - } -#Temperature of snow layer gradient -'tsngrd' = { - table2Version = 129 ; - indicatorOfParameter = 238 ; - } -#Convective snowfall gradient -'csfgrd' = { - table2Version = 129 ; - indicatorOfParameter = 239 ; - } -#Large scale snowfall gradient -'lsfgrd' = { - table2Version = 129 ; - indicatorOfParameter = 240 ; - } -#Accumulated cloud fraction tendency gradient -'acfgrd' = { - table2Version = 129 ; - indicatorOfParameter = 241 ; - } -#Accumulated liquid water tendency gradient -'alwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 242 ; - } -#Forecast albedo gradient -'falgrd' = { - table2Version = 129 ; - indicatorOfParameter = 243 ; - } -#Forecast surface roughness gradient -'fsrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 244 ; - } -#Forecast logarithm of surface roughness for heat gradient -'flsrgrd' = { - table2Version = 129 ; - indicatorOfParameter = 245 ; - } -#Specific cloud liquid water content gradient -'clwcgrd' = { - table2Version = 129 ; - indicatorOfParameter = 246 ; - } -#Specific cloud ice water content gradient -'ciwcgrd' = { - table2Version = 129 ; - indicatorOfParameter = 247 ; - } -#Cloud cover gradient -'ccgrd' = { - table2Version = 129 ; - indicatorOfParameter = 248 ; - } -#Accumulated ice water tendency gradient -'aiwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 249 ; - } -#Ice age gradient -'icegrd' = { - table2Version = 129 ; - indicatorOfParameter = 250 ; - } -#Adiabatic tendency of temperature gradient -'attegrd' = { - table2Version = 129 ; - indicatorOfParameter = 251 ; - } -#Adiabatic tendency of humidity gradient -'athegrd' = { - table2Version = 129 ; - indicatorOfParameter = 252 ; - } -#Adiabatic tendency of zonal wind gradient -'atzegrd' = { - table2Version = 129 ; - indicatorOfParameter = 253 ; - } -#Adiabatic tendency of meridional wind gradient -'atmwgrd' = { - table2Version = 129 ; - indicatorOfParameter = 254 ; - } -#Indicates a missing value -'p255.129' = { - table2Version = 129 ; - indicatorOfParameter = 255 ; - } -#Top solar radiation upward -'tsru' = { - table2Version = 130 ; - indicatorOfParameter = 208 ; - } -#Top thermal radiation upward -'ttru' = { - table2Version = 130 ; - indicatorOfParameter = 209 ; - } -#Top solar radiation upward, clear sky -'tsuc' = { - table2Version = 130 ; - indicatorOfParameter = 210 ; - } -#Top thermal radiation upward, clear sky -'ttuc' = { - table2Version = 130 ; - indicatorOfParameter = 211 ; - } -#Cloud liquid water -'clw' = { - table2Version = 130 ; - indicatorOfParameter = 212 ; - } -#Cloud fraction -'cf' = { - table2Version = 130 ; - indicatorOfParameter = 213 ; - } -#Diabatic heating by radiation -'dhr' = { - table2Version = 130 ; - indicatorOfParameter = 214 ; - } -#Diabatic heating by vertical diffusion -'dhvd' = { - table2Version = 130 ; - indicatorOfParameter = 215 ; - } -#Diabatic heating by cumulus convection -'dhcc' = { - table2Version = 130 ; - indicatorOfParameter = 216 ; - } -#Diabatic heating by large-scale condensation -'dhlc' = { - table2Version = 130 ; - indicatorOfParameter = 217 ; - } -#Vertical diffusion of zonal wind -'vdzw' = { - table2Version = 130 ; - indicatorOfParameter = 218 ; - } -#Vertical diffusion of meridional wind -'vdmw' = { - table2Version = 130 ; - indicatorOfParameter = 219 ; - } -#East-West gravity wave drag -'ewgd' = { - table2Version = 130 ; - indicatorOfParameter = 220 ; - } -#North-South gravity wave drag -'nsgd' = { - table2Version = 130 ; - indicatorOfParameter = 221 ; - } -#Vertical diffusion of humidity -'vdh' = { - table2Version = 130 ; - indicatorOfParameter = 224 ; - } -#Humidity tendency by cumulus convection -'htcc' = { - table2Version = 130 ; - indicatorOfParameter = 225 ; - } -#Humidity tendency by large-scale condensation -'htlc' = { - table2Version = 130 ; - indicatorOfParameter = 226 ; - } -#Adiabatic tendency of temperature -'att' = { - table2Version = 130 ; - indicatorOfParameter = 228 ; - } -#Adiabatic tendency of humidity -'ath' = { - table2Version = 130 ; - indicatorOfParameter = 229 ; - } -#Adiabatic tendency of zonal wind -'atzw' = { - table2Version = 130 ; - indicatorOfParameter = 230 ; - } -#Adiabatic tendency of meridional wind -'atmwax' = { - table2Version = 130 ; - indicatorOfParameter = 231 ; - } -#Mean vertical velocity -'mvv' = { - table2Version = 130 ; - indicatorOfParameter = 232 ; - } -#2m temperature anomaly of at least +2K -'t2ag2' = { - table2Version = 131 ; - indicatorOfParameter = 1 ; - } -#2m temperature anomaly of at least +1K -'t2ag1' = { - table2Version = 131 ; - indicatorOfParameter = 2 ; - } -#2m temperature anomaly of at least 0K -'t2ag0' = { - table2Version = 131 ; - indicatorOfParameter = 3 ; - } -#2m temperature anomaly of at most -1K -'t2alm1' = { - table2Version = 131 ; - indicatorOfParameter = 4 ; - } -#2m temperature anomaly of at most -2K -'t2alm2' = { - table2Version = 131 ; - indicatorOfParameter = 5 ; - } -#Total precipitation anomaly of at least 20 mm -'tpag20' = { - table2Version = 131 ; - indicatorOfParameter = 6 ; - } -#Total precipitation anomaly of at least 10 mm -'tpag10' = { - table2Version = 131 ; - indicatorOfParameter = 7 ; - } -#Total precipitation anomaly of at least 0 mm -'tpag0' = { - table2Version = 131 ; - indicatorOfParameter = 8 ; - } -#Surface temperature anomaly of at least 0K -'stag0' = { - table2Version = 131 ; - indicatorOfParameter = 9 ; - } -#Mean sea level pressure anomaly of at least 0 Pa -'mslag0' = { - table2Version = 131 ; - indicatorOfParameter = 10 ; - } -#Height of 0 degree isotherm probability -'h0dip' = { - table2Version = 131 ; - indicatorOfParameter = 15 ; - } -#Height of snowfall limit probability -'hslp' = { - table2Version = 131 ; - indicatorOfParameter = 16 ; - } -#Showalter index probability -'saip' = { - table2Version = 131 ; - indicatorOfParameter = 17 ; - } -#Whiting index probability -'whip' = { - table2Version = 131 ; - indicatorOfParameter = 18 ; - } -#Temperature anomaly less than -2 K -'talm2' = { - table2Version = 131 ; - indicatorOfParameter = 20 ; - } -#Temperature anomaly of at least +2 K -'tag2' = { - table2Version = 131 ; - indicatorOfParameter = 21 ; - } -#Temperature anomaly less than -8 K -'talm8' = { - table2Version = 131 ; - indicatorOfParameter = 22 ; - } -#Temperature anomaly less than -4 K -'talm4' = { - table2Version = 131 ; - indicatorOfParameter = 23 ; - } -#Temperature anomaly greater than +4 K -'tag4' = { - table2Version = 131 ; - indicatorOfParameter = 24 ; - } -#Temperature anomaly greater than +8 K -'tag8' = { - table2Version = 131 ; - indicatorOfParameter = 25 ; - } -#10 metre wind gust probability -'g10p' = { - table2Version = 131 ; - indicatorOfParameter = 49 ; - } -#Convective available potential energy probability -'capep' = { - table2Version = 131 ; - indicatorOfParameter = 59 ; - } -#Total precipitation less than 0.1 mm -'tpl01' = { - table2Version = 131 ; - indicatorOfParameter = 64 ; - } -#Total precipitation rate less than 1 mm/day -'tprl1' = { - table2Version = 131 ; - indicatorOfParameter = 65 ; - } -#Total precipitation rate of at least 3 mm/day -'tprg3' = { - table2Version = 131 ; - indicatorOfParameter = 66 ; - } -#Total precipitation rate of at least 5 mm/day -'tprg5' = { - table2Version = 131 ; - indicatorOfParameter = 67 ; - } -#10 metre Wind speed of at least 10 m/s -'sp10g10' = { - table2Version = 131 ; - indicatorOfParameter = 68 ; - } -#10 metre Wind speed of at least 15 m/s -'sp10g15' = { - table2Version = 131 ; - indicatorOfParameter = 69 ; - } -#10 metre wind gust of at least 15 m/s -'fg10g15' = { - table2Version = 131 ; - indicatorOfParameter = 70 ; - } -#10 metre wind gust of at least 20 m/s -'fg10g20' = { - table2Version = 131 ; - indicatorOfParameter = 71 ; - } -#10 metre wind gust of at least 25 m/s -'fg10g25' = { - table2Version = 131 ; - indicatorOfParameter = 72 ; - } -#2 metre temperature less than 273.15 K -'t2l273' = { - table2Version = 131 ; - indicatorOfParameter = 73 ; - } -#Significant wave height of at least 2 m -'swhg2' = { - table2Version = 131 ; - indicatorOfParameter = 74 ; - } -#Significant wave height of at least 4 m -'swhg4' = { - table2Version = 131 ; - indicatorOfParameter = 75 ; - } -#Significant wave height of at least 6 m -'swhg6' = { - table2Version = 131 ; - indicatorOfParameter = 76 ; - } -#Significant wave height of at least 8 m -'swhg8' = { - table2Version = 131 ; - indicatorOfParameter = 77 ; - } -#Mean wave period of at least 8 s -'mwpg8' = { - table2Version = 131 ; - indicatorOfParameter = 78 ; - } -#Mean wave period of at least 10 s -'mwpg10' = { - table2Version = 131 ; - indicatorOfParameter = 79 ; - } -#Mean wave period of at least 12 s -'mwpg12' = { - table2Version = 131 ; - indicatorOfParameter = 80 ; - } -#Mean wave period of at least 15 s -'mwpg15' = { - table2Version = 131 ; - indicatorOfParameter = 81 ; - } -#Geopotential probability -'zp' = { - table2Version = 131 ; - indicatorOfParameter = 129 ; - } -#Temperature anomaly probability -'tap' = { - table2Version = 131 ; - indicatorOfParameter = 130 ; - } -#Soil temperature level 1 probability -'stl1p' = { - table2Version = 131 ; - indicatorOfParameter = 139 ; - } -#Snowfall (convective + stratiform) probability -'sfp' = { - table2Version = 131 ; - indicatorOfParameter = 144 ; - } -#Mean sea level pressure probability -'mslpp' = { - table2Version = 131 ; - indicatorOfParameter = 151 ; - } -#Total cloud cover probability -'tccp' = { - table2Version = 131 ; - indicatorOfParameter = 164 ; - } -#10 metre speed probability -'sp10' = { - table2Version = 131 ; - indicatorOfParameter = 165 ; - } -#2 metre temperature probability -'t2p' = { - table2Version = 131 ; - indicatorOfParameter = 167 ; - } -#Maximum 2 metre temperature probability -'mx2tp' = { - table2Version = 131 ; - indicatorOfParameter = 201 ; - } -#Minimum 2 metre temperature probability -'mn2tp' = { - table2Version = 131 ; - indicatorOfParameter = 202 ; - } -#Total precipitation probability -'tpp' = { - table2Version = 131 ; - indicatorOfParameter = 228 ; - } -#Significant wave height probability -'swhp' = { - table2Version = 131 ; - indicatorOfParameter = 229 ; - } -#Mean wave period probability -'mwpp' = { - table2Version = 131 ; - indicatorOfParameter = 232 ; - } -#Indicates a missing value -'p255.131' = { - table2Version = 131 ; - indicatorOfParameter = 255 ; - } -#10 metre wind gust index -'fg10i' = { - table2Version = 132 ; - indicatorOfParameter = 49 ; - } -#Snowfall index -'sfi' = { - table2Version = 132 ; - indicatorOfParameter = 144 ; - } -#10 metre speed index -'ws10i' = { - table2Version = 132 ; - indicatorOfParameter = 165 ; - } -#2 metre temperature index -'t2i' = { - table2Version = 132 ; - indicatorOfParameter = 167 ; - } -#Maximum temperature at 2 metres index -'mx2ti' = { - table2Version = 132 ; - indicatorOfParameter = 201 ; - } -#Minimum temperature at 2 metres index -'mn2ti' = { - table2Version = 132 ; - indicatorOfParameter = 202 ; - } -#Total precipitation index -'tpi' = { - table2Version = 132 ; - indicatorOfParameter = 228 ; - } -#2m temperature probability less than -10 C -'t2plm10' = { - table2Version = 133 ; - indicatorOfParameter = 1 ; - } -#2m temperature probability less than -5 C -'t2plm5' = { - table2Version = 133 ; - indicatorOfParameter = 2 ; - } -#2m temperature probability less than 0 C -'t2pl0' = { - table2Version = 133 ; - indicatorOfParameter = 3 ; - } -#2m temperature probability less than 5 C -'t2pl5' = { - table2Version = 133 ; - indicatorOfParameter = 4 ; - } -#2m temperature probability less than 10 C -'t2pl10' = { - table2Version = 133 ; - indicatorOfParameter = 5 ; - } -#2m temperature probability greater than 25 C -'t2pg25' = { - table2Version = 133 ; - indicatorOfParameter = 6 ; - } -#2m temperature probability greater than 30 C -'t2pg30' = { - table2Version = 133 ; - indicatorOfParameter = 7 ; - } -#2m temperature probability greater than 35 C -'t2pg35' = { - table2Version = 133 ; - indicatorOfParameter = 8 ; - } -#2m temperature probability greater than 40 C -'t2pg40' = { - table2Version = 133 ; - indicatorOfParameter = 9 ; - } -#2m temperature probability greater than 45 C -'t2pg45' = { - table2Version = 133 ; - indicatorOfParameter = 10 ; - } -#Minimum 2 metre temperature probability less than -10 C -'mn2tplm10' = { - table2Version = 133 ; - indicatorOfParameter = 11 ; - } -#Minimum 2 metre temperature probability less than -5 C -'mn2tplm5' = { - table2Version = 133 ; - indicatorOfParameter = 12 ; - } -#Minimum 2 metre temperature probability less than 0 C -'mn2tpl0' = { - table2Version = 133 ; - indicatorOfParameter = 13 ; - } -#Minimum 2 metre temperature probability less than 5 C -'mn2tpl5' = { - table2Version = 133 ; - indicatorOfParameter = 14 ; - } -#Minimum 2 metre temperature probability less than 10 C -'mn2tpl10' = { - table2Version = 133 ; - indicatorOfParameter = 15 ; - } -#Maximum 2 metre temperature probability greater than 25 C -'mx2tpg25' = { - table2Version = 133 ; - indicatorOfParameter = 16 ; - } -#Maximum 2 metre temperature probability greater than 30 C -'mx2tpg30' = { - table2Version = 133 ; - indicatorOfParameter = 17 ; - } -#Maximum 2 metre temperature probability greater than 35 C -'mx2tpg35' = { - table2Version = 133 ; - indicatorOfParameter = 18 ; - } -#Maximum 2 metre temperature probability greater than 40 C -'mx2tpg40' = { - table2Version = 133 ; - indicatorOfParameter = 19 ; - } -#Maximum 2 metre temperature probability greater than 45 C -'mx2tpg45' = { - table2Version = 133 ; - indicatorOfParameter = 20 ; - } -#10 metre wind speed probability of at least 10 m/s -'sp10g10' = { - table2Version = 133 ; - indicatorOfParameter = 21 ; - } -#10 metre wind speed probability of at least 15 m/s -'sp10g15' = { - table2Version = 133 ; - indicatorOfParameter = 22 ; - } -#10 metre wind speed probability of at least 20 m/s -'sp10g20' = { - table2Version = 133 ; - indicatorOfParameter = 23 ; - } -#10 metre wind speed probability of at least 35 m/s -'sp10g35' = { - table2Version = 133 ; - indicatorOfParameter = 24 ; - } -#10 metre wind speed probability of at least 50 m/s -'sp10g50' = { - table2Version = 133 ; - indicatorOfParameter = 25 ; - } -#10 metre wind gust probability of at least 20 m/s -'gp10g20' = { - table2Version = 133 ; - indicatorOfParameter = 26 ; - } -#10 metre wind gust probability of at least 35 m/s -'gp10g35' = { - table2Version = 133 ; - indicatorOfParameter = 27 ; - } -#10 metre wind gust probability of at least 50 m/s -'gp10g50' = { - table2Version = 133 ; - indicatorOfParameter = 28 ; - } -#10 metre wind gust probability of at least 75 m/s -'gp10g75' = { - table2Version = 133 ; - indicatorOfParameter = 29 ; - } -#10 metre wind gust probability of at least 100 m/s -'gp10g100' = { - table2Version = 133 ; - indicatorOfParameter = 30 ; - } -#Total precipitation probability of at least 1 mm -'tppg1' = { - table2Version = 133 ; - indicatorOfParameter = 31 ; - } -#Total precipitation probability of at least 5 mm -'tppg5' = { - table2Version = 133 ; - indicatorOfParameter = 32 ; - } -#Total precipitation probability of at least 10 mm -'tppg10' = { - table2Version = 133 ; - indicatorOfParameter = 33 ; - } -#Total precipitation probability of at least 20 mm -'tppg20' = { - table2Version = 133 ; - indicatorOfParameter = 34 ; - } -#Total precipitation probability of at least 40 mm -'tppg40' = { - table2Version = 133 ; - indicatorOfParameter = 35 ; - } -#Total precipitation probability of at least 60 mm -'tppg60' = { - table2Version = 133 ; - indicatorOfParameter = 36 ; - } -#Total precipitation probability of at least 80 mm -'tppg80' = { - table2Version = 133 ; - indicatorOfParameter = 37 ; - } -#Total precipitation probability of at least 100 mm -'tppg100' = { - table2Version = 133 ; - indicatorOfParameter = 38 ; - } -#Total precipitation probability of at least 150 mm -'tppg150' = { - table2Version = 133 ; - indicatorOfParameter = 39 ; - } -#Total precipitation probability of at least 200 mm -'tppg200' = { - table2Version = 133 ; - indicatorOfParameter = 40 ; - } -#Total precipitation probability of at least 300 mm -'tppg300' = { - table2Version = 133 ; - indicatorOfParameter = 41 ; - } -#Snowfall probability of at least 1 mm -'sfpg1' = { - table2Version = 133 ; - indicatorOfParameter = 42 ; - } -#Snowfall probability of at least 5 mm -'sfpg5' = { - table2Version = 133 ; - indicatorOfParameter = 43 ; - } -#Snowfall probability of at least 10 mm -'sfpg10' = { - table2Version = 133 ; - indicatorOfParameter = 44 ; - } -#Snowfall probability of at least 20 mm -'sfpg20' = { - table2Version = 133 ; - indicatorOfParameter = 45 ; - } -#Snowfall probability of at least 40 mm -'sfpg40' = { - table2Version = 133 ; - indicatorOfParameter = 46 ; - } -#Snowfall probability of at least 60 mm -'sfpg60' = { - table2Version = 133 ; - indicatorOfParameter = 47 ; - } -#Snowfall probability of at least 80 mm -'sfpg80' = { - table2Version = 133 ; - indicatorOfParameter = 48 ; - } -#Snowfall probability of at least 100 mm -'sfpg100' = { - table2Version = 133 ; - indicatorOfParameter = 49 ; - } -#Snowfall probability of at least 150 mm -'sfpg150' = { - table2Version = 133 ; - indicatorOfParameter = 50 ; - } -#Snowfall probability of at least 200 mm -'sfpg200' = { - table2Version = 133 ; - indicatorOfParameter = 51 ; - } -#Snowfall probability of at least 300 mm -'sfpg300' = { - table2Version = 133 ; - indicatorOfParameter = 52 ; - } -#Total Cloud Cover probability greater than 10% -'tccpg10' = { - table2Version = 133 ; - indicatorOfParameter = 53 ; - } -#Total Cloud Cover probability greater than 20% -'tccpg20' = { - table2Version = 133 ; - indicatorOfParameter = 54 ; - } -#Total Cloud Cover probability greater than 30% -'tccpg30' = { - table2Version = 133 ; - indicatorOfParameter = 55 ; - } -#Total Cloud Cover probability greater than 40% -'tccpg40' = { - table2Version = 133 ; - indicatorOfParameter = 56 ; - } -#Total Cloud Cover probability greater than 50% -'tccpg50' = { - table2Version = 133 ; - indicatorOfParameter = 57 ; - } -#Total Cloud Cover probability greater than 60% -'tccpg60' = { - table2Version = 133 ; - indicatorOfParameter = 58 ; - } -#Total Cloud Cover probability greater than 70% -'tccpg70' = { - table2Version = 133 ; - indicatorOfParameter = 59 ; - } -#Total Cloud Cover probability greater than 80% -'tccpg80' = { - table2Version = 133 ; - indicatorOfParameter = 60 ; - } -#Total Cloud Cover probability greater than 90% -'tccpg90' = { - table2Version = 133 ; - indicatorOfParameter = 61 ; - } -#Total Cloud Cover probability greater than 99% -'tccpg99' = { - table2Version = 133 ; - indicatorOfParameter = 62 ; - } -#High Cloud Cover probability greater than 10% -'hccpg10' = { - table2Version = 133 ; - indicatorOfParameter = 63 ; - } -#High Cloud Cover probability greater than 20% -'hccpg20' = { - table2Version = 133 ; - indicatorOfParameter = 64 ; - } -#High Cloud Cover probability greater than 30% -'hccpg30' = { - table2Version = 133 ; - indicatorOfParameter = 65 ; - } -#High Cloud Cover probability greater than 40% -'hccpg40' = { - table2Version = 133 ; - indicatorOfParameter = 66 ; - } -#High Cloud Cover probability greater than 50% -'hccpg50' = { - table2Version = 133 ; - indicatorOfParameter = 67 ; - } -#High Cloud Cover probability greater than 60% -'hccpg60' = { - table2Version = 133 ; - indicatorOfParameter = 68 ; - } -#High Cloud Cover probability greater than 70% -'hccpg70' = { - table2Version = 133 ; - indicatorOfParameter = 69 ; - } -#High Cloud Cover probability greater than 80% -'hccpg80' = { - table2Version = 133 ; - indicatorOfParameter = 70 ; - } -#High Cloud Cover probability greater than 90% -'hccpg90' = { - table2Version = 133 ; - indicatorOfParameter = 71 ; - } -#High Cloud Cover probability greater than 99% -'hccpg99' = { - table2Version = 133 ; - indicatorOfParameter = 72 ; - } -#Medium Cloud Cover probability greater than 10% -'mccpg10' = { - table2Version = 133 ; - indicatorOfParameter = 73 ; - } -#Medium Cloud Cover probability greater than 20% -'mccpg20' = { - table2Version = 133 ; - indicatorOfParameter = 74 ; - } -#Medium Cloud Cover probability greater than 30% -'mccpg30' = { - table2Version = 133 ; - indicatorOfParameter = 75 ; - } -#Medium Cloud Cover probability greater than 40% -'mccpg40' = { - table2Version = 133 ; - indicatorOfParameter = 76 ; - } -#Medium Cloud Cover probability greater than 50% -'mccpg50' = { - table2Version = 133 ; - indicatorOfParameter = 77 ; - } -#Medium Cloud Cover probability greater than 60% -'mccpg60' = { - table2Version = 133 ; - indicatorOfParameter = 78 ; - } -#Medium Cloud Cover probability greater than 70% -'mccpg70' = { - table2Version = 133 ; - indicatorOfParameter = 79 ; - } -#Medium Cloud Cover probability greater than 80% -'mccpg80' = { - table2Version = 133 ; - indicatorOfParameter = 80 ; - } -#Medium Cloud Cover probability greater than 90% -'mccpg90' = { - table2Version = 133 ; - indicatorOfParameter = 81 ; - } -#Medium Cloud Cover probability greater than 99% -'mccpg99' = { - table2Version = 133 ; - indicatorOfParameter = 82 ; - } -#Low Cloud Cover probability greater than 10% -'lccpg10' = { - table2Version = 133 ; - indicatorOfParameter = 83 ; - } -#Low Cloud Cover probability greater than 20% -'lccpg20' = { - table2Version = 133 ; - indicatorOfParameter = 84 ; - } -#Low Cloud Cover probability greater than 30% -'lccpg30' = { - table2Version = 133 ; - indicatorOfParameter = 85 ; - } -#Low Cloud Cover probability greater than 40% -'lccpg40' = { - table2Version = 133 ; - indicatorOfParameter = 86 ; - } -#Low Cloud Cover probability greater than 50% -'lccpg50' = { - table2Version = 133 ; - indicatorOfParameter = 87 ; - } -#Low Cloud Cover probability greater than 60% -'lccpg60' = { - table2Version = 133 ; - indicatorOfParameter = 88 ; - } -#Low Cloud Cover probability greater than 70% -'lccpg70' = { - table2Version = 133 ; - indicatorOfParameter = 89 ; - } -#Low Cloud Cover probability greater than 80% -'lccpg80' = { - table2Version = 133 ; - indicatorOfParameter = 90 ; - } -#Low Cloud Cover probability greater than 90% -'lccpg90' = { - table2Version = 133 ; - indicatorOfParameter = 91 ; - } -#Low Cloud Cover probability greater than 99% -'lccpg99' = { - table2Version = 133 ; - indicatorOfParameter = 92 ; - } -#Maximum of significant wave height -'maxswh' = { - table2Version = 140 ; - indicatorOfParameter = 200 ; - } -#Period corresponding to maximum individual wave height -'tmax' = { - table2Version = 140 ; - indicatorOfParameter = 217 ; - } -#Envelop-maximum individual wave height -'hmax' = { - table2Version = 140 ; - indicatorOfParameter = 218 ; - } -#Model bathymetry -'wmb' = { - table2Version = 140 ; - indicatorOfParameter = 219 ; - } -#Mean wave period based on first moment -'mp1' = { - table2Version = 140 ; - indicatorOfParameter = 220 ; - } -#Mean zero-crossing wave period -'mp2' = { - table2Version = 140 ; - indicatorOfParameter = 221 ; - } -#Wave spectral directional width -'wdw' = { - table2Version = 140 ; - indicatorOfParameter = 222 ; - } -#Mean wave period based on first moment for wind waves -'p1ww' = { - table2Version = 140 ; - indicatorOfParameter = 223 ; - } -#Mean wave period based on second moment for wind waves -'p2ww' = { - table2Version = 140 ; - indicatorOfParameter = 224 ; - } -#Wave spectral directional width for wind waves -'dwww' = { - table2Version = 140 ; - indicatorOfParameter = 225 ; - } -#Mean wave period based on first moment for swell -'p1ps' = { - table2Version = 140 ; - indicatorOfParameter = 226 ; - } -#Mean wave period based on second moment for swell -'p2ps' = { - table2Version = 140 ; - indicatorOfParameter = 227 ; - } -#Wave spectral directional width for swell -'dwps' = { - table2Version = 140 ; - indicatorOfParameter = 228 ; - } -#Significant height of combined wind waves and swell -'swh' = { - table2Version = 140 ; - indicatorOfParameter = 229 ; - } -#Mean wave direction -'mwd' = { - table2Version = 140 ; - indicatorOfParameter = 230 ; - } -#Peak wave period -'pp1d' = { - table2Version = 140 ; - indicatorOfParameter = 231 ; - } -#Mean wave period -'mwp' = { - table2Version = 140 ; - indicatorOfParameter = 232 ; - } -#Coefficient of drag with waves -'cdww' = { - table2Version = 140 ; - indicatorOfParameter = 233 ; - } -#Significant height of wind waves -'shww' = { - table2Version = 140 ; - indicatorOfParameter = 234 ; - } -#Mean direction of wind waves -'mdww' = { - table2Version = 140 ; - indicatorOfParameter = 235 ; - } -#Mean period of wind waves -'mpww' = { - table2Version = 140 ; - indicatorOfParameter = 236 ; - } -#Significant height of total swell -'shts' = { - table2Version = 140 ; - indicatorOfParameter = 237 ; - } -#Mean direction of total swell -'mdts' = { - table2Version = 140 ; - indicatorOfParameter = 238 ; - } -#Mean period of total swell -'mpts' = { - table2Version = 140 ; - indicatorOfParameter = 239 ; - } -#Standard deviation wave height -'sdhs' = { - table2Version = 140 ; - indicatorOfParameter = 240 ; - } -#Mean of 10 metre wind speed -'mu10' = { - table2Version = 140 ; - indicatorOfParameter = 241 ; - } -#Mean wind direction -'mdwi' = { - table2Version = 140 ; - indicatorOfParameter = 242 ; - } -#Standard deviation of 10 metre wind speed -'sdu' = { - table2Version = 140 ; - indicatorOfParameter = 243 ; - } -#Mean square slope of waves -'msqs' = { - table2Version = 140 ; - indicatorOfParameter = 244 ; - } -#10 metre wind speed -'wind' = { - table2Version = 140 ; - indicatorOfParameter = 245 ; - } -#Altimeter wave height -'awh' = { - table2Version = 140 ; - indicatorOfParameter = 246 ; - } -#Altimeter corrected wave height -'acwh' = { - table2Version = 140 ; - indicatorOfParameter = 247 ; - } -#Altimeter range relative correction -'arrc' = { - table2Version = 140 ; - indicatorOfParameter = 248 ; - } -#10 metre wind direction -'dwi' = { - table2Version = 140 ; - indicatorOfParameter = 249 ; - } -#2D wave spectra (multiple) -'d2sp' = { - table2Version = 140 ; - indicatorOfParameter = 250 ; - } -#2D wave spectra (single) -'d2fd' = { - table2Version = 140 ; - indicatorOfParameter = 251 ; - } -#Wave spectral kurtosis -'wsk' = { - table2Version = 140 ; - indicatorOfParameter = 252 ; - } -#Benjamin-Feir index -'bfi' = { - table2Version = 140 ; - indicatorOfParameter = 253 ; - } -#Wave spectral peakedness -'wsp' = { - table2Version = 140 ; - indicatorOfParameter = 254 ; - } -#Indicates a missing value -'p255.140' = { - table2Version = 140 ; - indicatorOfParameter = 255 ; - } -#Ocean potential temperature -'ocpt' = { - table2Version = 150 ; - indicatorOfParameter = 129 ; - } -#Ocean salinity -'ocs' = { - table2Version = 150 ; - indicatorOfParameter = 130 ; - } -#Ocean potential density -'ocpd' = { - table2Version = 150 ; - indicatorOfParameter = 131 ; - } -#Ocean U wind component -'p133.150' = { - table2Version = 150 ; - indicatorOfParameter = 133 ; - } -#Ocean V wind component -'p134.150' = { - table2Version = 150 ; - indicatorOfParameter = 134 ; - } -#Ocean W wind component -'ocw' = { - table2Version = 150 ; - indicatorOfParameter = 135 ; - } -#Richardson number -'rn' = { - table2Version = 150 ; - indicatorOfParameter = 137 ; - } -#U*V product -'uv' = { - table2Version = 150 ; - indicatorOfParameter = 139 ; - } -#U*T product -'ut' = { - table2Version = 150 ; - indicatorOfParameter = 140 ; - } -#V*T product -'vt' = { - table2Version = 150 ; - indicatorOfParameter = 141 ; - } -#U*U product -'uu' = { - table2Version = 150 ; - indicatorOfParameter = 142 ; - } -#V*V product -'vv' = { - table2Version = 150 ; - indicatorOfParameter = 143 ; - } -#UV - U~V~ -'p144.150' = { - table2Version = 150 ; - indicatorOfParameter = 144 ; - } -#UT - U~T~ -'p145.150' = { - table2Version = 150 ; - indicatorOfParameter = 145 ; - } -#VT - V~T~ -'p146.150' = { - table2Version = 150 ; - indicatorOfParameter = 146 ; - } -#UU - U~U~ -'p147.150' = { - table2Version = 150 ; - indicatorOfParameter = 147 ; - } -#VV - V~V~ -'p148.150' = { - table2Version = 150 ; - indicatorOfParameter = 148 ; - } -#Sea level -'sl' = { - table2Version = 150 ; - indicatorOfParameter = 152 ; - } -#Barotropic stream function -'p153.150' = { - table2Version = 150 ; - indicatorOfParameter = 153 ; - } -#Mixed layer depth -'mld' = { - table2Version = 150 ; - indicatorOfParameter = 154 ; - } -#Depth -'p155.150' = { - table2Version = 150 ; - indicatorOfParameter = 155 ; - } -#U stress -'p168.150' = { - table2Version = 150 ; - indicatorOfParameter = 168 ; - } -#V stress -'p169.150' = { - table2Version = 150 ; - indicatorOfParameter = 169 ; - } -#Turbulent kinetic energy input -'p170.150' = { - table2Version = 150 ; - indicatorOfParameter = 170 ; - } -#Net surface heat flux -'nsf' = { - table2Version = 150 ; - indicatorOfParameter = 171 ; - } -#Surface solar radiation -'p172.150' = { - table2Version = 150 ; - indicatorOfParameter = 172 ; - } -#P-E -'p173.150' = { - table2Version = 150 ; - indicatorOfParameter = 173 ; - } -#Diagnosed sea surface temperature error -'p180.150' = { - table2Version = 150 ; - indicatorOfParameter = 180 ; - } -#Heat flux correction -'p181.150' = { - table2Version = 150 ; - indicatorOfParameter = 181 ; - } -#Observed sea surface temperature -'p182.150' = { - table2Version = 150 ; - indicatorOfParameter = 182 ; - } -#Observed heat flux -'p183.150' = { - table2Version = 150 ; - indicatorOfParameter = 183 ; - } -#Indicates a missing value -'p255.150' = { - table2Version = 150 ; - indicatorOfParameter = 255 ; - } -#In situ Temperature -'p128.151' = { - table2Version = 151 ; - indicatorOfParameter = 128 ; - } -#Sea water potential temperature -'thetao' = { - table2Version = 151 ; - indicatorOfParameter = 129 ; - } -#Sea water practical salinity -'so' = { - table2Version = 151 ; - indicatorOfParameter = 130 ; - } -#Eastward surface sea water velocity -'uoe' = { - table2Version = 151 ; - indicatorOfParameter = 131 ; - } -#Northward surface sea water velocity -'von' = { - table2Version = 151 ; - indicatorOfParameter = 132 ; - } -#Upward sea water velocity -'wo' = { - table2Version = 151 ; - indicatorOfParameter = 133 ; - } -#Modulus of strain rate tensor -'mst' = { - table2Version = 151 ; - indicatorOfParameter = 134 ; - } -#Vertical viscosity -'vvs' = { - table2Version = 151 ; - indicatorOfParameter = 135 ; - } -#Vertical diffusivity -'vdf' = { - table2Version = 151 ; - indicatorOfParameter = 136 ; - } -#Bottom level Depth -'dep' = { - table2Version = 151 ; - indicatorOfParameter = 137 ; - } -#Sea water sigma theta -'sigmat' = { - table2Version = 151 ; - indicatorOfParameter = 138 ; - } -#Richardson number -'rn' = { - table2Version = 151 ; - indicatorOfParameter = 139 ; - } -#UV product -'uv' = { - table2Version = 151 ; - indicatorOfParameter = 140 ; - } -#UT product -'ut' = { - table2Version = 151 ; - indicatorOfParameter = 141 ; - } -#VT product -'vt' = { - table2Version = 151 ; - indicatorOfParameter = 142 ; - } -#UU product -'uu' = { - table2Version = 151 ; - indicatorOfParameter = 143 ; - } -#VV product -'vv' = { - table2Version = 151 ; - indicatorOfParameter = 144 ; - } -#Sea surface height -'zos' = { - table2Version = 151 ; - indicatorOfParameter = 145 ; - } -#Sea level previous timestep -'sl_1' = { - table2Version = 151 ; - indicatorOfParameter = 146 ; - } -#Ocean barotropic stream function -'stfbarot' = { - table2Version = 151 ; - indicatorOfParameter = 147 ; - } -#Mixed layer depth -'mld' = { - table2Version = 151 ; - indicatorOfParameter = 148 ; - } -#Bottom Pressure (equivalent height) -'btp' = { - table2Version = 151 ; - indicatorOfParameter = 149 ; - } -#Steric height -'sh' = { - table2Version = 151 ; - indicatorOfParameter = 150 ; - } -#Curl of Wind Stress -'crl' = { - table2Version = 151 ; - indicatorOfParameter = 151 ; - } -#Divergence of wind stress -'p152.151' = { - table2Version = 151 ; - indicatorOfParameter = 152 ; - } -#Surface downward eastward stress -'taueo' = { - table2Version = 151 ; - indicatorOfParameter = 153 ; - } -#Surface downward northward stress -'tauno' = { - table2Version = 151 ; - indicatorOfParameter = 154 ; - } -#Turbulent kinetic energy input -'tki' = { - table2Version = 151 ; - indicatorOfParameter = 155 ; - } -#Net surface heat flux -'nsf' = { - table2Version = 151 ; - indicatorOfParameter = 156 ; - } -#Absorbed solar radiation -'asr' = { - table2Version = 151 ; - indicatorOfParameter = 157 ; - } -#Precipitation - evaporation -'pme' = { - table2Version = 151 ; - indicatorOfParameter = 158 ; - } -#Specified sea surface temperature -'sst' = { - table2Version = 151 ; - indicatorOfParameter = 159 ; - } -#Specified surface heat flux -'shf' = { - table2Version = 151 ; - indicatorOfParameter = 160 ; - } -#Diagnosed sea surface temperature error -'dte' = { - table2Version = 151 ; - indicatorOfParameter = 161 ; - } -#Heat flux correction -'hfc' = { - table2Version = 151 ; - indicatorOfParameter = 162 ; - } -#Depth of 20C isotherm -'t20d' = { - table2Version = 151 ; - indicatorOfParameter = 163 ; - } -#Average potential temperature in the upper 300m -'tav300' = { - table2Version = 151 ; - indicatorOfParameter = 164 ; - } -#Vertically integrated zonal velocity (previous time step) -'uba1' = { - table2Version = 151 ; - indicatorOfParameter = 165 ; - } -#Vertically Integrated meridional velocity (previous time step) -'vba1' = { - table2Version = 151 ; - indicatorOfParameter = 166 ; - } -#Vertically integrated zonal volume transport -'ztr' = { - table2Version = 151 ; - indicatorOfParameter = 167 ; - } -#Vertically integrated meridional volume transport -'mtr' = { - table2Version = 151 ; - indicatorOfParameter = 168 ; - } -#Vertically integrated zonal heat transport -'zht' = { - table2Version = 151 ; - indicatorOfParameter = 169 ; - } -#Vertically integrated meridional heat transport -'mht' = { - table2Version = 151 ; - indicatorOfParameter = 170 ; - } -#U velocity maximum -'umax' = { - table2Version = 151 ; - indicatorOfParameter = 171 ; - } -#Depth of the velocity maximum -'dumax' = { - table2Version = 151 ; - indicatorOfParameter = 172 ; - } -#Salinity maximum -'smax' = { - table2Version = 151 ; - indicatorOfParameter = 173 ; - } -#Depth of salinity maximum -'dsmax' = { - table2Version = 151 ; - indicatorOfParameter = 174 ; - } -#Average sea water practical salinity in the upper 300m -'sav300' = { - table2Version = 151 ; - indicatorOfParameter = 175 ; - } -#Layer Thickness at scalar points -'ldp' = { - table2Version = 151 ; - indicatorOfParameter = 176 ; - } -#Layer Thickness at vector points -'ldu' = { - table2Version = 151 ; - indicatorOfParameter = 177 ; - } -#Potential temperature increment -'pti' = { - table2Version = 151 ; - indicatorOfParameter = 178 ; - } -#Potential temperature analysis error -'ptae' = { - table2Version = 151 ; - indicatorOfParameter = 179 ; - } -#Background potential temperature -'bpt' = { - table2Version = 151 ; - indicatorOfParameter = 180 ; - } -#Analysed potential temperature -'apt' = { - table2Version = 151 ; - indicatorOfParameter = 181 ; - } -#Potential temperature background error -'ptbe' = { - table2Version = 151 ; - indicatorOfParameter = 182 ; - } -#Analysed salinity -'as' = { - table2Version = 151 ; - indicatorOfParameter = 183 ; - } -#Salinity increment -'sali' = { - table2Version = 151 ; - indicatorOfParameter = 184 ; - } -#Estimated Bias in Temperature -'ebt' = { - table2Version = 151 ; - indicatorOfParameter = 185 ; - } -#Estimated Bias in Salinity -'ebs' = { - table2Version = 151 ; - indicatorOfParameter = 186 ; - } -#Zonal Velocity increment (from balance operator) -'uvi' = { - table2Version = 151 ; - indicatorOfParameter = 187 ; - } -#Meridional Velocity increment (from balance operator) -'vvi' = { - table2Version = 151 ; - indicatorOfParameter = 188 ; - } -#Salinity increment (from salinity data) -'subi' = { - table2Version = 151 ; - indicatorOfParameter = 190 ; - } -#Salinity analysis error -'sale' = { - table2Version = 151 ; - indicatorOfParameter = 191 ; - } -#Background Salinity -'bsal' = { - table2Version = 151 ; - indicatorOfParameter = 192 ; - } -#Salinity background error -'salbe' = { - table2Version = 151 ; - indicatorOfParameter = 194 ; - } -#Estimated temperature bias from assimilation -'ebta' = { - table2Version = 151 ; - indicatorOfParameter = 199 ; - } -#Estimated salinity bias from assimilation -'ebsa' = { - table2Version = 151 ; - indicatorOfParameter = 200 ; - } -#Temperature increment from relaxation term -'lti' = { - table2Version = 151 ; - indicatorOfParameter = 201 ; - } -#Salinity increment from relaxation term -'lsi' = { - table2Version = 151 ; - indicatorOfParameter = 202 ; - } -#Bias in the zonal pressure gradient (applied) -'bzpga' = { - table2Version = 151 ; - indicatorOfParameter = 203 ; - } -#Bias in the meridional pressure gradient (applied) -'bmpga' = { - table2Version = 151 ; - indicatorOfParameter = 204 ; - } -#Estimated temperature bias from relaxation -'ebtl' = { - table2Version = 151 ; - indicatorOfParameter = 205 ; - } -#Estimated salinity bias from relaxation -'ebsl' = { - table2Version = 151 ; - indicatorOfParameter = 206 ; - } -#First guess bias in temperature -'fgbt' = { - table2Version = 151 ; - indicatorOfParameter = 207 ; - } -#First guess bias in salinity -'fgbs' = { - table2Version = 151 ; - indicatorOfParameter = 208 ; - } -#Applied bias in pressure -'bpa' = { - table2Version = 151 ; - indicatorOfParameter = 209 ; - } -#FG bias in pressure -'fgbp' = { - table2Version = 151 ; - indicatorOfParameter = 210 ; - } -#Bias in temperature(applied) -'pta' = { - table2Version = 151 ; - indicatorOfParameter = 211 ; - } -#Bias in salinity (applied) -'psa' = { - table2Version = 151 ; - indicatorOfParameter = 212 ; - } -#Indicates a missing value -'p255.151' = { - table2Version = 151 ; - indicatorOfParameter = 255 ; - } -#10 metre wind gust during averaging time -'fgrea10' = { - table2Version = 160 ; - indicatorOfParameter = 49 ; - } -#vertical velocity (pressure) -'wrea' = { - table2Version = 160 ; - indicatorOfParameter = 135 ; - } -#Precipitable water content -'pwcrea' = { - table2Version = 160 ; - indicatorOfParameter = 137 ; - } -#Soil wetness level 1 -'swl1rea' = { - table2Version = 160 ; - indicatorOfParameter = 140 ; - } -#Snow depth -'sdrea' = { - table2Version = 160 ; - indicatorOfParameter = 141 ; - } -#Large-scale precipitation -'lsprea' = { - table2Version = 160 ; - indicatorOfParameter = 142 ; - } -#Convective precipitation -'cprea' = { - table2Version = 160 ; - indicatorOfParameter = 143 ; - } -#Snowfall -'sfrea' = { - table2Version = 160 ; - indicatorOfParameter = 144 ; - } -#Height -'ghrea' = { - table2Version = 160 ; - indicatorOfParameter = 156 ; - } -#Relative humidity -'rrea' = { - table2Version = 160 ; - indicatorOfParameter = 157 ; - } -#Soil wetness level 2 -'swl2rea' = { - table2Version = 160 ; - indicatorOfParameter = 171 ; - } -#East-West surface stress -'ewssrea' = { - table2Version = 160 ; - indicatorOfParameter = 180 ; - } -#North-South surface stress -'nsssrea' = { - table2Version = 160 ; - indicatorOfParameter = 181 ; - } -#Evaporation -'erea' = { - table2Version = 160 ; - indicatorOfParameter = 182 ; - } -#Soil wetness level 3 -'swl3rea' = { - table2Version = 160 ; - indicatorOfParameter = 184 ; - } -#Skin reservoir content -'srcrea' = { - table2Version = 160 ; - indicatorOfParameter = 198 ; - } -#Percentage of vegetation -'vegrea' = { - table2Version = 160 ; - indicatorOfParameter = 199 ; - } -#Maximum temperature at 2 metres during averaging time -'mx2trea' = { - table2Version = 160 ; - indicatorOfParameter = 201 ; - } -#Minimum temperature at 2 metres during averaging time -'mn2trea' = { - table2Version = 160 ; - indicatorOfParameter = 202 ; - } -#Runoff -'rorea' = { - table2Version = 160 ; - indicatorOfParameter = 205 ; - } -#Standard deviation of geopotential -'zzrea' = { - table2Version = 160 ; - indicatorOfParameter = 206 ; - } -#Covariance of temperature and geopotential -'tzrea' = { - table2Version = 160 ; - indicatorOfParameter = 207 ; - } -#Standard deviation of temperature -'ttrea' = { - table2Version = 160 ; - indicatorOfParameter = 208 ; - } -#Covariance of specific humidity and geopotential -'qzrea' = { - table2Version = 160 ; - indicatorOfParameter = 209 ; - } -#Covariance of specific humidity and temperature -'qtrea' = { - table2Version = 160 ; - indicatorOfParameter = 210 ; - } -#Standard deviation of specific humidity -'qqrea' = { - table2Version = 160 ; - indicatorOfParameter = 211 ; - } -#Covariance of U component and geopotential -'uzrea' = { - table2Version = 160 ; - indicatorOfParameter = 212 ; - } -#Covariance of U component and temperature -'utrea' = { - table2Version = 160 ; - indicatorOfParameter = 213 ; - } -#Covariance of U component and specific humidity -'uqrea' = { - table2Version = 160 ; - indicatorOfParameter = 214 ; - } -#Standard deviation of U velocity -'uurea' = { - table2Version = 160 ; - indicatorOfParameter = 215 ; - } -#Covariance of V component and geopotential -'vzrea' = { - table2Version = 160 ; - indicatorOfParameter = 216 ; - } -#Covariance of V component and temperature -'vtrea' = { - table2Version = 160 ; - indicatorOfParameter = 217 ; - } -#Covariance of V component and specific humidity -'vqrea' = { - table2Version = 160 ; - indicatorOfParameter = 218 ; - } -#Covariance of V component and U component -'vurea' = { - table2Version = 160 ; - indicatorOfParameter = 219 ; - } -#Standard deviation of V component -'vvrea' = { - table2Version = 160 ; - indicatorOfParameter = 220 ; - } -#Covariance of W component and geopotential -'wzrea' = { - table2Version = 160 ; - indicatorOfParameter = 221 ; - } -#Covariance of W component and temperature -'wtrea' = { - table2Version = 160 ; - indicatorOfParameter = 222 ; - } -#Covariance of W component and specific humidity -'wqrea' = { - table2Version = 160 ; - indicatorOfParameter = 223 ; - } -#Covariance of W component and U component -'wurea' = { - table2Version = 160 ; - indicatorOfParameter = 224 ; - } -#Covariance of W component and V component -'wvrea' = { - table2Version = 160 ; - indicatorOfParameter = 225 ; - } -#Standard deviation of vertical velocity -'wwrea' = { - table2Version = 160 ; - indicatorOfParameter = 226 ; - } -#Instantaneous surface heat flux -'ishfrea' = { - table2Version = 160 ; - indicatorOfParameter = 231 ; - } -#Convective snowfall -'csfrea' = { - table2Version = 160 ; - indicatorOfParameter = 239 ; - } -#Large scale snowfall -'lsfrea' = { - table2Version = 160 ; - indicatorOfParameter = 240 ; - } -#Cloud liquid water content -'clwcerrea' = { - table2Version = 160 ; - indicatorOfParameter = 241 ; - } -#Cloud cover -'ccrea' = { - table2Version = 160 ; - indicatorOfParameter = 242 ; - } -#Forecast albedo -'falrea' = { - table2Version = 160 ; - indicatorOfParameter = 243 ; - } -#10 metre wind speed -'wsrea10' = { - table2Version = 160 ; - indicatorOfParameter = 246 ; - } -#Momentum flux -'moflrea' = { - table2Version = 160 ; - indicatorOfParameter = 247 ; - } -#Gravity wave dissipation flux -'p249.160' = { - table2Version = 160 ; - indicatorOfParameter = 249 ; - } -#Heaviside beta function -'hsdrea' = { - table2Version = 160 ; - indicatorOfParameter = 254 ; - } -#Surface geopotential -'p51.162' = { - table2Version = 162 ; - indicatorOfParameter = 51 ; - } -#Vertical integral of mass of atmosphere -'p53.162' = { - table2Version = 162 ; - indicatorOfParameter = 53 ; - } -#Vertical integral of temperature -'p54.162' = { - table2Version = 162 ; - indicatorOfParameter = 54 ; - } -#Vertical integral of water vapour -'p55.162' = { - table2Version = 162 ; - indicatorOfParameter = 55 ; - } -#Vertical integral of cloud liquid water -'p56.162' = { - table2Version = 162 ; - indicatorOfParameter = 56 ; - } -#Vertical integral of cloud frozen water -'p57.162' = { - table2Version = 162 ; - indicatorOfParameter = 57 ; - } -#Vertical integral of ozone -'p58.162' = { - table2Version = 162 ; - indicatorOfParameter = 58 ; - } -#Total column vertically-integrated kinetic energy -'vike' = { - table2Version = 162 ; - indicatorOfParameter = 59 ; - } -#Total column vertically-integrated enthalpy -'vithe' = { - table2Version = 162 ; - indicatorOfParameter = 60 ; - } -#Total column vertically-integrated potential + internal energy -'vipie' = { - table2Version = 162 ; - indicatorOfParameter = 61 ; - } -#Vertical integral of potential+internal+latent energy -'vipile' = { - table2Version = 162 ; - indicatorOfParameter = 62 ; - } -#Total column vertically-integrated total energy -'vitoe' = { - table2Version = 162 ; - indicatorOfParameter = 63 ; - } -#Vertical integral of energy conversion -'viec' = { - table2Version = 162 ; - indicatorOfParameter = 64 ; - } -#Vertical integral of eastward mass flux -'vimae' = { - table2Version = 162 ; - indicatorOfParameter = 65 ; - } -#Vertical integral of northward mass flux -'viman' = { - table2Version = 162 ; - indicatorOfParameter = 66 ; - } -#Vertical integral of eastward kinetic energy flux -'vikee' = { - table2Version = 162 ; - indicatorOfParameter = 67 ; - } -#Vertical integral of northward kinetic energy flux -'viken' = { - table2Version = 162 ; - indicatorOfParameter = 68 ; - } -#Vertical integral of eastward heat flux -'vithee' = { - table2Version = 162 ; - indicatorOfParameter = 69 ; - } -#Vertical integral of northward heat flux -'vithen' = { - table2Version = 162 ; - indicatorOfParameter = 70 ; - } -#Vertical integral of eastward water vapour flux -'viwve' = { - table2Version = 162 ; - indicatorOfParameter = 71 ; - } -#Vertical integral of northward water vapour flux -'viwvn' = { - table2Version = 162 ; - indicatorOfParameter = 72 ; - } -#Vertical integral of eastward geopotential flux -'vige' = { - table2Version = 162 ; - indicatorOfParameter = 73 ; - } -#Vertical integral of northward geopotential flux -'vign' = { - table2Version = 162 ; - indicatorOfParameter = 74 ; - } -#Vertical integral of eastward total energy flux -'vitoee' = { - table2Version = 162 ; - indicatorOfParameter = 75 ; - } -#Vertical integral of northward total energy flux -'vitoen' = { - table2Version = 162 ; - indicatorOfParameter = 76 ; - } -#Vertical integral of eastward ozone flux -'vioze' = { - table2Version = 162 ; - indicatorOfParameter = 77 ; - } -#Vertical integral of northward ozone flux -'viozn' = { - table2Version = 162 ; - indicatorOfParameter = 78 ; - } -#Vertical integral of divergence of mass flux -'vimad' = { - table2Version = 162 ; - indicatorOfParameter = 81 ; - } -#Vertical integral of divergence of kinetic energy flux -'viked' = { - table2Version = 162 ; - indicatorOfParameter = 82 ; - } -#Vertical integral of divergence of thermal energy flux -'vithed' = { - table2Version = 162 ; - indicatorOfParameter = 83 ; - } -#Vertically integrated moisture divergence flux -'viwvd' = { - table2Version = 162 ; - indicatorOfParameter = 84 ; - } -#Vertical integral of divergence of geopotential flux -'vigd' = { - table2Version = 162 ; - indicatorOfParameter = 85 ; - } -#Vertical integral of divergence of total energy flux -'vitoed' = { - table2Version = 162 ; - indicatorOfParameter = 86 ; - } -#Vertical integral of divergence of ozone flux -'p87.162' = { - table2Version = 162 ; - indicatorOfParameter = 87 ; - } -#Time-integrated temperature tendency due to short-wave radiation -'srta' = { - table2Version = 162 ; - indicatorOfParameter = 100 ; - } -#Time-integrated temperature tendency due to long-wave radiation -'trta' = { - table2Version = 162 ; - indicatorOfParameter = 101 ; - } -#Time-integrated temperature tendency due to short wave radiation, clear sky -'srtca' = { - table2Version = 162 ; - indicatorOfParameter = 102 ; - } -#Time-integrated temperature tendency due to long-wave radiation, clear sky -'trtca' = { - table2Version = 162 ; - indicatorOfParameter = 103 ; - } -#Time-integrated updraught mass flux -'umfa' = { - table2Version = 162 ; - indicatorOfParameter = 104 ; - } -#Time-integrated downdraught mass flux -'dmfa' = { - table2Version = 162 ; - indicatorOfParameter = 105 ; - } -#Time-integrated updraught detrainment rate -'udra' = { - table2Version = 162 ; - indicatorOfParameter = 106 ; - } -#Time-integrated downdraught detrainment rate -'ddra' = { - table2Version = 162 ; - indicatorOfParameter = 107 ; - } -#Time-integrated total precipitation flux -'tpfa' = { - table2Version = 162 ; - indicatorOfParameter = 108 ; - } -#Time-integrated turbulent diffusion coefficient for heat -'tdcha' = { - table2Version = 162 ; - indicatorOfParameter = 109 ; - } -#Time-integrated temperature tendency due to parametrisations -'ttpha' = { - table2Version = 162 ; - indicatorOfParameter = 110 ; - } -#Time-integrated specific humidity tendency due to parametrisations -'qtpha' = { - table2Version = 162 ; - indicatorOfParameter = 111 ; - } -#Time-integrated eastward wind tendency due to parametrisations -'utpha' = { - table2Version = 162 ; - indicatorOfParameter = 112 ; - } -#Time-integrated northward wind tendency due to parametrisations -'vtpha' = { - table2Version = 162 ; - indicatorOfParameter = 113 ; - } -#Variance of geopotential -'p206.162' = { - table2Version = 162 ; - indicatorOfParameter = 206 ; - } -#Covariance of geopotential/temperature -'p207.162' = { - table2Version = 162 ; - indicatorOfParameter = 207 ; - } -#Variance of temperature -'p208.162' = { - table2Version = 162 ; - indicatorOfParameter = 208 ; - } -#Covariance of geopotential/specific humidity -'p209.162' = { - table2Version = 162 ; - indicatorOfParameter = 209 ; - } -#Covariance of temperature/specific humidity -'p210.162' = { - table2Version = 162 ; - indicatorOfParameter = 210 ; - } -#Variance of specific humidity -'p211.162' = { - table2Version = 162 ; - indicatorOfParameter = 211 ; - } -#Covariance of u component/geopotential -'p212.162' = { - table2Version = 162 ; - indicatorOfParameter = 212 ; - } -#Covariance of u component/temperature -'p213.162' = { - table2Version = 162 ; - indicatorOfParameter = 213 ; - } -#Covariance of u component/specific humidity -'p214.162' = { - table2Version = 162 ; - indicatorOfParameter = 214 ; - } -#Variance of u component -'p215.162' = { - table2Version = 162 ; - indicatorOfParameter = 215 ; - } -#Covariance of v component/geopotential -'p216.162' = { - table2Version = 162 ; - indicatorOfParameter = 216 ; - } -#Covariance of v component/temperature -'p217.162' = { - table2Version = 162 ; - indicatorOfParameter = 217 ; - } -#Covariance of v component/specific humidity -'p218.162' = { - table2Version = 162 ; - indicatorOfParameter = 218 ; - } -#Covariance of v component/u component -'p219.162' = { - table2Version = 162 ; - indicatorOfParameter = 219 ; - } -#Variance of v component -'p220.162' = { - table2Version = 162 ; - indicatorOfParameter = 220 ; - } -#Covariance of omega/geopotential -'p221.162' = { - table2Version = 162 ; - indicatorOfParameter = 221 ; - } -#Covariance of omega/temperature -'p222.162' = { - table2Version = 162 ; - indicatorOfParameter = 222 ; - } -#Covariance of omega/specific humidity -'p223.162' = { - table2Version = 162 ; - indicatorOfParameter = 223 ; - } -#Covariance of omega/u component -'p224.162' = { - table2Version = 162 ; - indicatorOfParameter = 224 ; - } -#Covariance of omega/v component -'p225.162' = { - table2Version = 162 ; - indicatorOfParameter = 225 ; - } -#Variance of omega -'p226.162' = { - table2Version = 162 ; - indicatorOfParameter = 226 ; - } -#Variance of surface pressure -'p227.162' = { - table2Version = 162 ; - indicatorOfParameter = 227 ; - } -#Variance of relative humidity -'p229.162' = { - table2Version = 162 ; - indicatorOfParameter = 229 ; - } -#Covariance of u component/ozone -'p230.162' = { - table2Version = 162 ; - indicatorOfParameter = 230 ; - } -#Covariance of v component/ozone -'p231.162' = { - table2Version = 162 ; - indicatorOfParameter = 231 ; - } -#Covariance of omega/ozone -'p232.162' = { - table2Version = 162 ; - indicatorOfParameter = 232 ; - } -#Variance of ozone -'p233.162' = { - table2Version = 162 ; - indicatorOfParameter = 233 ; - } -#Indicates a missing value -'p255.162' = { - table2Version = 162 ; - indicatorOfParameter = 255 ; - } -#Total soil moisture -'tsw' = { - table2Version = 170 ; - indicatorOfParameter = 149 ; - } -#Soil wetness level 2 -'swl2' = { - table2Version = 170 ; - indicatorOfParameter = 171 ; - } -#Top net thermal radiation -'ttr' = { - table2Version = 170 ; - indicatorOfParameter = 179 ; - } -#Stream function anomaly -'strfa' = { - table2Version = 171 ; - indicatorOfParameter = 1 ; - } -#Velocity potential anomaly -'vpota' = { - table2Version = 171 ; - indicatorOfParameter = 2 ; - } -#Potential temperature anomaly -'pta' = { - table2Version = 171 ; - indicatorOfParameter = 3 ; - } -#Equivalent potential temperature anomaly -'epta' = { - table2Version = 171 ; - indicatorOfParameter = 4 ; - } -#Saturated equivalent potential temperature anomaly -'septa' = { - table2Version = 171 ; - indicatorOfParameter = 5 ; - } -#U component of divergent wind anomaly -'udwa' = { - table2Version = 171 ; - indicatorOfParameter = 11 ; - } -#V component of divergent wind anomaly -'vdwa' = { - table2Version = 171 ; - indicatorOfParameter = 12 ; - } -#U component of rotational wind anomaly -'urwa' = { - table2Version = 171 ; - indicatorOfParameter = 13 ; - } -#V component of rotational wind anomaly -'vrwa' = { - table2Version = 171 ; - indicatorOfParameter = 14 ; - } -#Unbalanced component of temperature anomaly -'uctpa' = { - table2Version = 171 ; - indicatorOfParameter = 21 ; - } -#Unbalanced component of logarithm of surface pressure anomaly -'uclna' = { - table2Version = 171 ; - indicatorOfParameter = 22 ; - } -#Unbalanced component of divergence anomaly -'ucdva' = { - table2Version = 171 ; - indicatorOfParameter = 23 ; - } -#Lake cover anomaly -'cla' = { - table2Version = 171 ; - indicatorOfParameter = 26 ; - } -#Low vegetation cover anomaly -'cvla' = { - table2Version = 171 ; - indicatorOfParameter = 27 ; - } -#High vegetation cover anomaly -'cvha' = { - table2Version = 171 ; - indicatorOfParameter = 28 ; - } -#Type of low vegetation anomaly -'tvla' = { - table2Version = 171 ; - indicatorOfParameter = 29 ; - } -#Type of high vegetation anomaly -'tvha' = { - table2Version = 171 ; - indicatorOfParameter = 30 ; - } -#Sea-ice cover anomaly -'sica' = { - table2Version = 171 ; - indicatorOfParameter = 31 ; - } -#Snow albedo anomaly -'asna' = { - table2Version = 171 ; - indicatorOfParameter = 32 ; - } -#Snow density anomaly -'rsna' = { - table2Version = 171 ; - indicatorOfParameter = 33 ; - } -#Sea surface temperature anomaly -'ssta' = { - table2Version = 171 ; - indicatorOfParameter = 34 ; - } -#Ice surface temperature anomaly layer 1 -'istal1' = { - table2Version = 171 ; - indicatorOfParameter = 35 ; - } -#Ice surface temperature anomaly layer 2 -'istal2' = { - table2Version = 171 ; - indicatorOfParameter = 36 ; - } -#Ice surface temperature anomaly layer 3 -'istal3' = { - table2Version = 171 ; - indicatorOfParameter = 37 ; - } -#Ice surface temperature anomaly layer 4 -'istal4' = { - table2Version = 171 ; - indicatorOfParameter = 38 ; - } -#Volumetric soil water anomaly layer 1 -'swval1' = { - table2Version = 171 ; - indicatorOfParameter = 39 ; - } -#Volumetric soil water anomaly layer 2 -'swval2' = { - table2Version = 171 ; - indicatorOfParameter = 40 ; - } -#Volumetric soil water anomaly layer 3 -'swval3' = { - table2Version = 171 ; - indicatorOfParameter = 41 ; - } -#Volumetric soil water anomaly layer 4 -'swval4' = { - table2Version = 171 ; - indicatorOfParameter = 42 ; - } -#Soil type anomaly -'slta' = { - table2Version = 171 ; - indicatorOfParameter = 43 ; - } -#Snow evaporation anomaly -'esa' = { - table2Version = 171 ; - indicatorOfParameter = 44 ; - } -#Snowmelt anomaly -'smlta' = { - table2Version = 171 ; - indicatorOfParameter = 45 ; - } -#Solar duration anomaly -'sdura' = { - table2Version = 171 ; - indicatorOfParameter = 46 ; - } -#Direct solar radiation anomaly -'dsrpa' = { - table2Version = 171 ; - indicatorOfParameter = 47 ; - } -#Magnitude of turbulent surface stress anomaly -'magssa' = { - table2Version = 171 ; - indicatorOfParameter = 48 ; - } -#10 metre wind gust anomaly -'fga10' = { - table2Version = 171 ; - indicatorOfParameter = 49 ; - } -#Large-scale precipitation fraction anomaly -'lspfa' = { - table2Version = 171 ; - indicatorOfParameter = 50 ; - } -#Maximum 2 metre temperature in the last 24 hours anomaly -'mx2t24a' = { - table2Version = 171 ; - indicatorOfParameter = 51 ; - } -#Minimum 2 metre temperature in the last 24 hours anomaly -'mn2t24a' = { - table2Version = 171 ; - indicatorOfParameter = 52 ; - } -#Montgomery potential anomaly -'monta' = { - table2Version = 171 ; - indicatorOfParameter = 53 ; - } -#Pressure anomaly -'pa' = { - table2Version = 171 ; - indicatorOfParameter = 54 ; - } -#Mean 2 metre temperature in the last 24 hours anomaly -'mean2t24a' = { - table2Version = 171 ; - indicatorOfParameter = 55 ; - } -#Mean 2 metre dewpoint temperature in the last 24 hours anomaly -'mn2d24a' = { - table2Version = 171 ; - indicatorOfParameter = 56 ; - } -#Downward UV radiation at the surface anomaly -'uvba' = { - table2Version = 171 ; - indicatorOfParameter = 57 ; - } -#Photosynthetically active radiation at the surface anomaly -'para' = { - table2Version = 171 ; - indicatorOfParameter = 58 ; - } -#Convective available potential energy anomaly -'capea' = { - table2Version = 171 ; - indicatorOfParameter = 59 ; - } -#Potential vorticity anomaly -'pva' = { - table2Version = 171 ; - indicatorOfParameter = 60 ; - } -#Total precipitation from observations anomaly -'tpoa' = { - table2Version = 171 ; - indicatorOfParameter = 61 ; - } -#Observation count anomaly -'obcta' = { - table2Version = 171 ; - indicatorOfParameter = 62 ; - } -#Start time for skin temperature difference anomaly -'stsktda' = { - table2Version = 171 ; - indicatorOfParameter = 63 ; - } -#Finish time for skin temperature difference anomaly -'ftsktda' = { - table2Version = 171 ; - indicatorOfParameter = 64 ; - } -#Skin temperature difference anomaly -'sktda' = { - table2Version = 171 ; - indicatorOfParameter = 65 ; - } -#Total column liquid water anomaly -'tclwa' = { - table2Version = 171 ; - indicatorOfParameter = 78 ; - } -#Total column ice water anomaly -'tciwa' = { - table2Version = 171 ; - indicatorOfParameter = 79 ; - } -#Vertically integrated total energy anomaly -'vitea' = { - table2Version = 171 ; - indicatorOfParameter = 125 ; - } -#Generic parameter for sensitive area prediction -'p126.171' = { - table2Version = 171 ; - indicatorOfParameter = 126 ; - } -#Atmospheric tide anomaly -'ata' = { - table2Version = 171 ; - indicatorOfParameter = 127 ; - } -#Budget values anomaly -'bva' = { - table2Version = 171 ; - indicatorOfParameter = 128 ; - } -#Geopotential anomaly -'za' = { - table2Version = 171 ; - indicatorOfParameter = 129 ; - } -#Temperature anomaly -'ta' = { - table2Version = 171 ; - indicatorOfParameter = 130 ; - } -#U component of wind anomaly -'ua' = { - table2Version = 171 ; - indicatorOfParameter = 131 ; - } -#V component of wind anomaly -'va' = { - table2Version = 171 ; - indicatorOfParameter = 132 ; - } -#Specific humidity anomaly -'qa' = { - table2Version = 171 ; - indicatorOfParameter = 133 ; - } -#Surface pressure anomaly -'spa' = { - table2Version = 171 ; - indicatorOfParameter = 134 ; - } -#Vertical velocity (pressure) anomaly -'wa' = { - table2Version = 171 ; - indicatorOfParameter = 135 ; - } -#Total column water anomaly -'tcwa' = { - table2Version = 171 ; - indicatorOfParameter = 136 ; - } -#Total column water vapour anomaly -'tcwva' = { - table2Version = 171 ; - indicatorOfParameter = 137 ; - } -#Relative vorticity anomaly -'voa' = { - table2Version = 171 ; - indicatorOfParameter = 138 ; - } -#Soil temperature anomaly level 1 -'stal1' = { - table2Version = 171 ; - indicatorOfParameter = 139 ; - } -#Soil wetness anomaly level 1 -'swal1' = { - table2Version = 171 ; - indicatorOfParameter = 140 ; - } -#Snow depth anomaly -'sda' = { - table2Version = 171 ; - indicatorOfParameter = 141 ; - } -#Stratiform precipitation (Large-scale precipitation) anomaly -'lspa' = { - table2Version = 171 ; - indicatorOfParameter = 142 ; - } -#Convective precipitation anomaly -'cpa' = { - table2Version = 171 ; - indicatorOfParameter = 143 ; - } -#Snowfall (convective + stratiform) anomaly -'sfa' = { - table2Version = 171 ; - indicatorOfParameter = 144 ; - } -#Boundary layer dissipation anomaly -'blda' = { - table2Version = 171 ; - indicatorOfParameter = 145 ; - } -#Surface sensible heat flux anomaly -'sshfa' = { - table2Version = 171 ; - indicatorOfParameter = 146 ; - } -#Surface latent heat flux anomaly -'slhfa' = { - table2Version = 171 ; - indicatorOfParameter = 147 ; - } -#Charnock anomaly -'chnka' = { - table2Version = 171 ; - indicatorOfParameter = 148 ; - } -#Surface net radiation anomaly -'snra' = { - table2Version = 171 ; - indicatorOfParameter = 149 ; - } -#Top net radiation anomaly -'tnra' = { - table2Version = 171 ; - indicatorOfParameter = 150 ; - } -#Mean sea level pressure anomaly -'msla' = { - table2Version = 171 ; - indicatorOfParameter = 151 ; - } -#Logarithm of surface pressure anomaly -'lspa' = { - table2Version = 171 ; - indicatorOfParameter = 152 ; - } -#Short-wave heating rate anomaly -'swhra' = { - table2Version = 171 ; - indicatorOfParameter = 153 ; - } -#Long-wave heating rate anomaly -'lwhra' = { - table2Version = 171 ; - indicatorOfParameter = 154 ; - } -#Relative divergence anomaly -'da' = { - table2Version = 171 ; - indicatorOfParameter = 155 ; - } -#Height anomaly -'gha' = { - table2Version = 171 ; - indicatorOfParameter = 156 ; - } -#Relative humidity anomaly -'ra' = { - table2Version = 171 ; - indicatorOfParameter = 157 ; - } -#Tendency of surface pressure anomaly -'tspa' = { - table2Version = 171 ; - indicatorOfParameter = 158 ; - } -#Boundary layer height anomaly -'blha' = { - table2Version = 171 ; - indicatorOfParameter = 159 ; - } -#Standard deviation of orography anomaly -'sdora' = { - table2Version = 171 ; - indicatorOfParameter = 160 ; - } -#Anisotropy of sub-gridscale orography anomaly -'isora' = { - table2Version = 171 ; - indicatorOfParameter = 161 ; - } -#Angle of sub-gridscale orography anomaly -'anora' = { - table2Version = 171 ; - indicatorOfParameter = 162 ; - } -#Slope of sub-gridscale orography anomaly -'slora' = { - table2Version = 171 ; - indicatorOfParameter = 163 ; - } -#Total cloud cover anomaly -'tcca' = { - table2Version = 171 ; - indicatorOfParameter = 164 ; - } -#10 metre U wind component anomaly -'ua10' = { - table2Version = 171 ; - indicatorOfParameter = 165 ; - } -#10 metre V wind component anomaly -'va10' = { - table2Version = 171 ; - indicatorOfParameter = 166 ; - } -#2 metre temperature anomaly -'t2a' = { - table2Version = 171 ; - indicatorOfParameter = 167 ; - } -#2 metre dewpoint temperature anomaly -'d2a' = { - table2Version = 171 ; - indicatorOfParameter = 168 ; - } -#Surface solar radiation downwards anomaly -'ssrda' = { - table2Version = 171 ; - indicatorOfParameter = 169 ; - } -#Soil temperature anomaly level 2 -'stal2' = { - table2Version = 171 ; - indicatorOfParameter = 170 ; - } -#Soil wetness anomaly level 2 -'swal2' = { - table2Version = 171 ; - indicatorOfParameter = 171 ; - } -#Surface roughness anomaly -'sra' = { - table2Version = 171 ; - indicatorOfParameter = 173 ; - } -#Albedo anomaly -'ala' = { - table2Version = 171 ; - indicatorOfParameter = 174 ; - } -#Surface thermal radiation downwards anomaly -'strda' = { - table2Version = 171 ; - indicatorOfParameter = 175 ; - } -#Surface net solar radiation anomaly -'ssra' = { - table2Version = 171 ; - indicatorOfParameter = 176 ; - } -#Surface net thermal radiation anomaly -'stra' = { - table2Version = 171 ; - indicatorOfParameter = 177 ; - } -#Top net solar radiation anomaly -'tsra' = { - table2Version = 171 ; - indicatorOfParameter = 178 ; - } -#Top net thermal radiation anomaly -'ttra' = { - table2Version = 171 ; - indicatorOfParameter = 179 ; - } -#East-West surface stress anomaly -'eqssa' = { - table2Version = 171 ; - indicatorOfParameter = 180 ; - } -#North-South surface stress anomaly -'nsssa' = { - table2Version = 171 ; - indicatorOfParameter = 181 ; - } -#Evaporation anomaly -'ea' = { - table2Version = 171 ; - indicatorOfParameter = 182 ; - } -#Soil temperature anomaly level 3 -'stal3' = { - table2Version = 171 ; - indicatorOfParameter = 183 ; - } -#Soil wetness anomaly level 3 -'swal3' = { - table2Version = 171 ; - indicatorOfParameter = 184 ; - } -#Convective cloud cover anomaly -'ccca' = { - table2Version = 171 ; - indicatorOfParameter = 185 ; - } -#Low cloud cover anomaly -'lcca' = { - table2Version = 171 ; - indicatorOfParameter = 186 ; - } -#Medium cloud cover anomaly -'mcca' = { - table2Version = 171 ; - indicatorOfParameter = 187 ; - } -#High cloud cover anomaly -'hcca' = { - table2Version = 171 ; - indicatorOfParameter = 188 ; - } -#Sunshine duration anomaly -'sunda' = { - table2Version = 171 ; - indicatorOfParameter = 189 ; - } -#East-West component of sub-gridscale orographic variance anomaly -'ewova' = { - table2Version = 171 ; - indicatorOfParameter = 190 ; - } -#North-South component of sub-gridscale orographic variance anomaly -'nsova' = { - table2Version = 171 ; - indicatorOfParameter = 191 ; - } -#North-West/South-East component of sub-gridscale orographic variance anomaly -'nwova' = { - table2Version = 171 ; - indicatorOfParameter = 192 ; - } -#North-East/South-West component of sub-gridscale orographic variance anomaly -'neova' = { - table2Version = 171 ; - indicatorOfParameter = 193 ; - } -#Brightness temperature anomaly -'btmpa' = { - table2Version = 171 ; - indicatorOfParameter = 194 ; - } -#Longitudinal component of gravity wave stress anomaly -'lgwsa' = { - table2Version = 171 ; - indicatorOfParameter = 195 ; - } -#Meridional component of gravity wave stress anomaly -'mgwsa' = { - table2Version = 171 ; - indicatorOfParameter = 196 ; - } -#Gravity wave dissipation anomaly -'gwda' = { - table2Version = 171 ; - indicatorOfParameter = 197 ; - } -#Skin reservoir content anomaly -'srca' = { - table2Version = 171 ; - indicatorOfParameter = 198 ; - } -#Vegetation fraction anomaly -'vfa' = { - table2Version = 171 ; - indicatorOfParameter = 199 ; - } -#Variance of sub-gridscale orography anomaly -'vsoa' = { - table2Version = 171 ; - indicatorOfParameter = 200 ; - } -#Maximum temperature at 2 metres anomaly -'mx2ta' = { - table2Version = 171 ; - indicatorOfParameter = 201 ; - } -#Minimum temperature at 2 metres anomaly -'mn2ta' = { - table2Version = 171 ; - indicatorOfParameter = 202 ; - } -#Ozone mass mixing ratio anomaly -'o3a' = { - table2Version = 171 ; - indicatorOfParameter = 203 ; - } -#Precipitation analysis weights anomaly -'pawa' = { - table2Version = 171 ; - indicatorOfParameter = 204 ; - } -#Runoff anomaly -'roa' = { - table2Version = 171 ; - indicatorOfParameter = 205 ; - } -#Total column ozone anomaly -'tco3a' = { - table2Version = 171 ; - indicatorOfParameter = 206 ; - } -#10 metre wind speed anomaly -'ua10' = { - table2Version = 171 ; - indicatorOfParameter = 207 ; - } -#Top net solar radiation clear sky anomaly -'tsrca' = { - table2Version = 171 ; - indicatorOfParameter = 208 ; - } -#Top net thermal radiation clear sky anomaly -'ttrca' = { - table2Version = 171 ; - indicatorOfParameter = 209 ; - } -#Surface net solar radiation clear sky anomaly -'ssrca' = { - table2Version = 171 ; - indicatorOfParameter = 210 ; - } -#Surface net thermal radiation, clear sky anomaly -'strca' = { - table2Version = 171 ; - indicatorOfParameter = 211 ; - } -#Solar insolation anomaly -'sia' = { - table2Version = 171 ; - indicatorOfParameter = 212 ; - } -#Diabatic heating by radiation anomaly -'dhra' = { - table2Version = 171 ; - indicatorOfParameter = 214 ; - } -#Diabatic heating by vertical diffusion anomaly -'dhvda' = { - table2Version = 171 ; - indicatorOfParameter = 215 ; - } -#Diabatic heating by cumulus convection anomaly -'dhcca' = { - table2Version = 171 ; - indicatorOfParameter = 216 ; - } -#Diabatic heating by large-scale condensation anomaly -'dhlca' = { - table2Version = 171 ; - indicatorOfParameter = 217 ; - } -#Vertical diffusion of zonal wind anomaly -'vdzwa' = { - table2Version = 171 ; - indicatorOfParameter = 218 ; - } -#Vertical diffusion of meridional wind anomaly -'vdmwa' = { - table2Version = 171 ; - indicatorOfParameter = 219 ; - } -#East-West gravity wave drag tendency anomaly -'ewgda' = { - table2Version = 171 ; - indicatorOfParameter = 220 ; - } -#North-South gravity wave drag tendency anomaly -'nsgda' = { - table2Version = 171 ; - indicatorOfParameter = 221 ; - } -#Convective tendency of zonal wind anomaly -'ctzwa' = { - table2Version = 171 ; - indicatorOfParameter = 222 ; - } -#Convective tendency of meridional wind anomaly -'ctmwa' = { - table2Version = 171 ; - indicatorOfParameter = 223 ; - } -#Vertical diffusion of humidity anomaly -'vdha' = { - table2Version = 171 ; - indicatorOfParameter = 224 ; - } -#Humidity tendency by cumulus convection anomaly -'htcca' = { - table2Version = 171 ; - indicatorOfParameter = 225 ; - } -#Humidity tendency by large-scale condensation anomaly -'htlca' = { - table2Version = 171 ; - indicatorOfParameter = 226 ; - } -#Change from removal of negative humidity anomaly -'crnha' = { - table2Version = 171 ; - indicatorOfParameter = 227 ; - } -#Total precipitation anomaly -'tpa' = { - table2Version = 171 ; - indicatorOfParameter = 228 ; - } -#Instantaneous X surface stress anomaly -'iewsa' = { - table2Version = 171 ; - indicatorOfParameter = 229 ; - } -#Instantaneous Y surface stress anomaly -'inssa' = { - table2Version = 171 ; - indicatorOfParameter = 230 ; - } -#Instantaneous surface heat flux anomaly -'ishfa' = { - table2Version = 171 ; - indicatorOfParameter = 231 ; - } -#Instantaneous moisture flux anomaly -'iea' = { - table2Version = 171 ; - indicatorOfParameter = 232 ; - } -#Apparent surface humidity anomaly -'asqa' = { - table2Version = 171 ; - indicatorOfParameter = 233 ; - } -#Logarithm of surface roughness length for heat anomaly -'lsrha' = { - table2Version = 171 ; - indicatorOfParameter = 234 ; - } -#Skin temperature anomaly -'skta' = { - table2Version = 171 ; - indicatorOfParameter = 235 ; - } -#Soil temperature level 4 anomaly -'stal4' = { - table2Version = 171 ; - indicatorOfParameter = 236 ; - } -#Soil wetness level 4 anomaly -'swal4' = { - table2Version = 171 ; - indicatorOfParameter = 237 ; - } -#Temperature of snow layer anomaly -'tsna' = { - table2Version = 171 ; - indicatorOfParameter = 238 ; - } -#Convective snowfall anomaly -'csfa' = { - table2Version = 171 ; - indicatorOfParameter = 239 ; - } -#Large scale snowfall anomaly -'lsfa' = { - table2Version = 171 ; - indicatorOfParameter = 240 ; - } -#Accumulated cloud fraction tendency anomaly -'acfa' = { - table2Version = 171 ; - indicatorOfParameter = 241 ; - } -#Accumulated liquid water tendency anomaly -'alwa' = { - table2Version = 171 ; - indicatorOfParameter = 242 ; - } -#Forecast albedo anomaly -'fala' = { - table2Version = 171 ; - indicatorOfParameter = 243 ; - } -#Forecast surface roughness anomaly -'fsra' = { - table2Version = 171 ; - indicatorOfParameter = 244 ; - } -#Forecast logarithm of surface roughness for heat anomaly -'flsra' = { - table2Version = 171 ; - indicatorOfParameter = 245 ; - } -#Cloud liquid water content anomaly -'clwca' = { - table2Version = 171 ; - indicatorOfParameter = 246 ; - } -#Cloud ice water content anomaly -'ciwca' = { - table2Version = 171 ; - indicatorOfParameter = 247 ; - } -#Cloud cover anomaly -'cca' = { - table2Version = 171 ; - indicatorOfParameter = 248 ; - } -#Accumulated ice water tendency anomaly -'aiwa' = { - table2Version = 171 ; - indicatorOfParameter = 249 ; - } -#Ice age anomaly -'iaa' = { - table2Version = 171 ; - indicatorOfParameter = 250 ; - } -#Adiabatic tendency of temperature anomaly -'attea' = { - table2Version = 171 ; - indicatorOfParameter = 251 ; - } -#Adiabatic tendency of humidity anomaly -'athea' = { - table2Version = 171 ; - indicatorOfParameter = 252 ; - } -#Adiabatic tendency of zonal wind anomaly -'atzea' = { - table2Version = 171 ; - indicatorOfParameter = 253 ; - } -#Adiabatic tendency of meridional wind anomaly -'atmwa' = { - table2Version = 171 ; - indicatorOfParameter = 254 ; - } -#Indicates a missing value -'p255.171' = { - table2Version = 171 ; - indicatorOfParameter = 255 ; - } -#Snow evaporation -'esrate' = { - table2Version = 172 ; - indicatorOfParameter = 44 ; - } -#Snowmelt -'p45.172' = { - table2Version = 172 ; - indicatorOfParameter = 45 ; - } -#Magnitude of turbulent surface stress -'p48.172' = { - table2Version = 172 ; - indicatorOfParameter = 48 ; - } -#Mean large-scale precipitation fraction -'mlspfr' = { - table2Version = 172 ; - indicatorOfParameter = 50 ; - } -#Mean large-scale precipitation rate -'mlsprt' = { - table2Version = 172 ; - indicatorOfParameter = 142 ; - } -#Mean convective precipitation rate -'cprate' = { - table2Version = 172 ; - indicatorOfParameter = 143 ; - } -#Mean total snowfall rate -'mtsfr' = { - table2Version = 172 ; - indicatorOfParameter = 144 ; - } -#Boundary layer dissipation -'bldrate' = { - table2Version = 172 ; - indicatorOfParameter = 145 ; - } -#Mean surface sensible heat flux -'msshfl' = { - table2Version = 172 ; - indicatorOfParameter = 146 ; - } -#Mean surface latent heat flux -'mslhfl' = { - table2Version = 172 ; - indicatorOfParameter = 147 ; - } -#Time-mean surface net radiation flux (SW and LW) -'msnrf' = { - table2Version = 172 ; - indicatorOfParameter = 149 ; - } -#Mean short-wave heating rate -'mswhr' = { - table2Version = 172 ; - indicatorOfParameter = 153 ; - } -#Mean long-wave heating rate -'mlwhr' = { - table2Version = 172 ; - indicatorOfParameter = 154 ; - } -#Mean surface downward solar radiation flux -'msdsrf' = { - table2Version = 172 ; - indicatorOfParameter = 169 ; - } -#Mean surface downward thermal radiation flux -'msdtrf' = { - table2Version = 172 ; - indicatorOfParameter = 175 ; - } -#Mean surface net solar radiation flux -'msnsrf' = { - table2Version = 172 ; - indicatorOfParameter = 176 ; - } -#Mean surface net thermal radiation flux -'msntrf' = { - table2Version = 172 ; - indicatorOfParameter = 177 ; - } -#Mean top net solar radiation flux -'mtnsrf' = { - table2Version = 172 ; - indicatorOfParameter = 178 ; - } -#Mean top net thermal radiation flux -'mtntrf' = { - table2Version = 172 ; - indicatorOfParameter = 179 ; - } -#East-West surface stress rate of accumulation -'ewssra' = { - table2Version = 172 ; - indicatorOfParameter = 180 ; - } -#North-South surface stress rate of accumulation -'nsssra' = { - table2Version = 172 ; - indicatorOfParameter = 181 ; - } -#Evaporation -'erate' = { - table2Version = 172 ; - indicatorOfParameter = 182 ; - } -#Mean sunshine duration rate -'msdr' = { - table2Version = 172 ; - indicatorOfParameter = 189 ; - } -#Longitudinal component of gravity wave stress -'p195.172' = { - table2Version = 172 ; - indicatorOfParameter = 195 ; - } -#Meridional component of gravity wave stress -'p196.172' = { - table2Version = 172 ; - indicatorOfParameter = 196 ; - } -#Gravity wave dissipation -'gwdrate' = { - table2Version = 172 ; - indicatorOfParameter = 197 ; - } -#Mean runoff rate -'mrort' = { - table2Version = 172 ; - indicatorOfParameter = 205 ; - } -#Top net solar radiation, clear sky -'p208.172' = { - table2Version = 172 ; - indicatorOfParameter = 208 ; - } -#Top net thermal radiation, clear sky -'p209.172' = { - table2Version = 172 ; - indicatorOfParameter = 209 ; - } -#Surface net solar radiation, clear sky -'p210.172' = { - table2Version = 172 ; - indicatorOfParameter = 210 ; - } -#Surface net thermal radiation, clear sky -'p211.172' = { - table2Version = 172 ; - indicatorOfParameter = 211 ; - } -#Solar insolation rate of accumulation -'soira' = { - table2Version = 172 ; - indicatorOfParameter = 212 ; - } -#Mean total precipitation rate -'tprate' = { - table2Version = 172 ; - indicatorOfParameter = 228 ; - } -#Convective snowfall -'p239.172' = { - table2Version = 172 ; - indicatorOfParameter = 239 ; - } -#Large scale snowfall -'p240.172' = { - table2Version = 172 ; - indicatorOfParameter = 240 ; - } -#Indicates a missing value -'p255.172' = { - table2Version = 172 ; - indicatorOfParameter = 255 ; - } -#Snow evaporation anomaly -'p44.173' = { - table2Version = 173 ; - indicatorOfParameter = 44 ; - } -#Snowmelt anomaly -'p45.173' = { - table2Version = 173 ; - indicatorOfParameter = 45 ; - } -#Magnitude of turbulent surface stress anomaly -'p48.173' = { - table2Version = 173 ; - indicatorOfParameter = 48 ; - } -#Large-scale precipitation fraction anomaly -'p50.173' = { - table2Version = 173 ; - indicatorOfParameter = 50 ; - } -#Stratiform precipitation (Large-scale precipitation) anomalous rate of accumulation -'lspara' = { - table2Version = 173 ; - indicatorOfParameter = 142 ; - } -#Mean convective precipitation rate anomaly -'mcpra' = { - table2Version = 173 ; - indicatorOfParameter = 143 ; - } -#Snowfall (convective + stratiform) anomalous rate of accumulation -'sfara' = { - table2Version = 173 ; - indicatorOfParameter = 144 ; - } -#Boundary layer dissipation anomaly -'p145.173' = { - table2Version = 173 ; - indicatorOfParameter = 145 ; - } -#Surface sensible heat flux anomalous rate of accumulation -'sshfara' = { - table2Version = 173 ; - indicatorOfParameter = 146 ; - } -#Surface latent heat flux anomalous rate of accumulation -'slhfara' = { - table2Version = 173 ; - indicatorOfParameter = 147 ; - } -#Surface net radiation anomaly -'p149.173' = { - table2Version = 173 ; - indicatorOfParameter = 149 ; - } -#Short-wave heating rate anomaly -'p153.173' = { - table2Version = 173 ; - indicatorOfParameter = 153 ; - } -#Long-wave heating rate anomaly -'p154.173' = { - table2Version = 173 ; - indicatorOfParameter = 154 ; - } -#Surface solar radiation downwards anomalous rate of accumulation -'ssrdara' = { - table2Version = 173 ; - indicatorOfParameter = 169 ; - } -#Surface thermal radiation downwards anomalous rate of accumulation -'strdara' = { - table2Version = 173 ; - indicatorOfParameter = 175 ; - } -#Surface solar radiation anomalous rate of accumulation -'ssrara' = { - table2Version = 173 ; - indicatorOfParameter = 176 ; - } -#Surface thermal radiation anomalous rate of accumulation -'strara' = { - table2Version = 173 ; - indicatorOfParameter = 177 ; - } -#Top solar radiation anomalous rate of accumulation -'tsrara' = { - table2Version = 173 ; - indicatorOfParameter = 178 ; - } -#Top thermal radiation anomalous rate of accumulation -'ttrara' = { - table2Version = 173 ; - indicatorOfParameter = 179 ; - } -#East-West surface stress anomalous rate of accumulation -'ewssara' = { - table2Version = 173 ; - indicatorOfParameter = 180 ; - } -#North-South surface stress anomalous rate of accumulation -'nsssara' = { - table2Version = 173 ; - indicatorOfParameter = 181 ; - } -#Evaporation anomalous rate of accumulation -'evara' = { - table2Version = 173 ; - indicatorOfParameter = 182 ; - } -#Sunshine duration anomalous rate of accumulation -'sundara' = { - table2Version = 173 ; - indicatorOfParameter = 189 ; - } -#Longitudinal component of gravity wave stress anomaly -'p195.173' = { - table2Version = 173 ; - indicatorOfParameter = 195 ; - } -#Meridional component of gravity wave stress anomaly -'p196.173' = { - table2Version = 173 ; - indicatorOfParameter = 196 ; - } -#Gravity wave dissipation anomaly -'p197.173' = { - table2Version = 173 ; - indicatorOfParameter = 197 ; - } -#Runoff anomalous rate of accumulation -'roara' = { - table2Version = 173 ; - indicatorOfParameter = 205 ; - } -#Top net solar radiation, clear sky anomaly -'p208.173' = { - table2Version = 173 ; - indicatorOfParameter = 208 ; - } -#Top net thermal radiation, clear sky anomaly -'p209.173' = { - table2Version = 173 ; - indicatorOfParameter = 209 ; - } -#Surface net solar radiation, clear sky anomaly -'p210.173' = { - table2Version = 173 ; - indicatorOfParameter = 210 ; - } -#Surface net thermal radiation, clear sky anomaly -'p211.173' = { - table2Version = 173 ; - indicatorOfParameter = 211 ; - } -#Solar insolation anomalous rate of accumulation -'soiara' = { - table2Version = 173 ; - indicatorOfParameter = 212 ; - } -#Total precipitation anomalous rate of accumulation -'tpara' = { - table2Version = 173 ; - indicatorOfParameter = 228 ; - } -#Convective snowfall anomaly -'p239.173' = { - table2Version = 173 ; - indicatorOfParameter = 239 ; - } -#Large scale snowfall anomaly -'p240.173' = { - table2Version = 173 ; - indicatorOfParameter = 240 ; - } -#Indicates a missing value -'p255.173' = { - table2Version = 173 ; - indicatorOfParameter = 255 ; - } -#Total soil moisture -'p6.174' = { - table2Version = 174 ; - indicatorOfParameter = 6 ; - } -#Surface runoff -'sro' = { - table2Version = 174 ; - indicatorOfParameter = 8 ; - } -#Fraction of sea-ice in sea -'p31.174' = { - table2Version = 174 ; - indicatorOfParameter = 31 ; - } -#Open-sea surface temperature -'p34.174' = { - table2Version = 174 ; - indicatorOfParameter = 34 ; - } -#Volumetric soil water layer 1 -'p39.174' = { - table2Version = 174 ; - indicatorOfParameter = 39 ; - } -#Volumetric soil water layer 2 -'p40.174' = { - table2Version = 174 ; - indicatorOfParameter = 40 ; - } -#Volumetric soil water layer 3 -'p41.174' = { - table2Version = 174 ; - indicatorOfParameter = 41 ; - } -#Volumetric soil water layer 4 -'p42.174' = { - table2Version = 174 ; - indicatorOfParameter = 42 ; - } -#10 metre wind gust in the last 24 hours -'p49.174' = { - table2Version = 174 ; - indicatorOfParameter = 49 ; - } -#1.5m temperature - mean in the last 24 hours -'p55.174' = { - table2Version = 174 ; - indicatorOfParameter = 55 ; - } -#Net primary productivity -'p83.174' = { - table2Version = 174 ; - indicatorOfParameter = 83 ; - } -#10m U wind over land -'p85.174' = { - table2Version = 174 ; - indicatorOfParameter = 85 ; - } -#10m V wind over land -'p86.174' = { - table2Version = 174 ; - indicatorOfParameter = 86 ; - } -#1.5m temperature over land -'p87.174' = { - table2Version = 174 ; - indicatorOfParameter = 87 ; - } -#1.5m dewpoint temperature over land -'p88.174' = { - table2Version = 174 ; - indicatorOfParameter = 88 ; - } -#Top incoming solar radiation -'p89.174' = { - table2Version = 174 ; - indicatorOfParameter = 89 ; - } -#Top outgoing solar radiation -'p90.174' = { - table2Version = 174 ; - indicatorOfParameter = 90 ; - } -#Mean sea surface temperature -'p94.174' = { - table2Version = 174 ; - indicatorOfParameter = 94 ; - } -#1.5m specific humidity -'p95.174' = { - table2Version = 174 ; - indicatorOfParameter = 95 ; - } -#Sea-ice thickness -'sithick' = { - table2Version = 174 ; - indicatorOfParameter = 98 ; - } -#Liquid water potential temperature -'p99.174' = { - table2Version = 174 ; - indicatorOfParameter = 99 ; - } -#Ocean ice concentration -'p110.174' = { - table2Version = 174 ; - indicatorOfParameter = 110 ; - } -#Ocean mean ice depth -'p111.174' = { - table2Version = 174 ; - indicatorOfParameter = 111 ; - } -#Soil temperature layer 1 -'p139.174' = { - table2Version = 174 ; - indicatorOfParameter = 139 ; - } -#Average potential temperature in upper 293.4m -'p164.174' = { - table2Version = 174 ; - indicatorOfParameter = 164 ; - } -#1.5m temperature -'p167.174' = { - table2Version = 174 ; - indicatorOfParameter = 167 ; - } -#1.5m dewpoint temperature -'p168.174' = { - table2Version = 174 ; - indicatorOfParameter = 168 ; - } -#Soil temperature layer 2 -'p170.174' = { - table2Version = 174 ; - indicatorOfParameter = 170 ; - } -#Average salinity in upper 293.4m -'p175.174' = { - table2Version = 174 ; - indicatorOfParameter = 175 ; - } -#Soil temperature layer 3 -'p183.174' = { - table2Version = 174 ; - indicatorOfParameter = 183 ; - } -#1.5m temperature - maximum in the last 24 hours -'p201.174' = { - table2Version = 174 ; - indicatorOfParameter = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'p202.174' = { - table2Version = 174 ; - indicatorOfParameter = 202 ; - } -#Soil temperature layer 4 -'p236.174' = { - table2Version = 174 ; - indicatorOfParameter = 236 ; - } -#Indicates a missing value -'p255.174' = { - table2Version = 174 ; - indicatorOfParameter = 255 ; - } -#Total soil moisture -'p6.175' = { - table2Version = 175 ; - indicatorOfParameter = 6 ; - } -#Fraction of sea-ice in sea -'p31.175' = { - table2Version = 175 ; - indicatorOfParameter = 31 ; - } -#Open-sea surface temperature -'p34.175' = { - table2Version = 175 ; - indicatorOfParameter = 34 ; - } -#Volumetric soil water layer 1 -'p39.175' = { - table2Version = 175 ; - indicatorOfParameter = 39 ; - } -#Volumetric soil water layer 2 -'p40.175' = { - table2Version = 175 ; - indicatorOfParameter = 40 ; - } -#Volumetric soil water layer 3 -'p41.175' = { - table2Version = 175 ; - indicatorOfParameter = 41 ; - } -#Volumetric soil water layer 4 -'p42.175' = { - table2Version = 175 ; - indicatorOfParameter = 42 ; - } -#10m wind gust in the last 24 hours -'p49.175' = { - table2Version = 175 ; - indicatorOfParameter = 49 ; - } -#1.5m temperature - mean in the last 24 hours -'p55.175' = { - table2Version = 175 ; - indicatorOfParameter = 55 ; - } -#Net primary productivity -'p83.175' = { - table2Version = 175 ; - indicatorOfParameter = 83 ; - } -#10m U wind over land -'p85.175' = { - table2Version = 175 ; - indicatorOfParameter = 85 ; - } -#10m V wind over land -'p86.175' = { - table2Version = 175 ; - indicatorOfParameter = 86 ; - } -#1.5m temperature over land -'p87.175' = { - table2Version = 175 ; - indicatorOfParameter = 87 ; - } -#1.5m dewpoint temperature over land -'p88.175' = { - table2Version = 175 ; - indicatorOfParameter = 88 ; - } -#Top incoming solar radiation -'p89.175' = { - table2Version = 175 ; - indicatorOfParameter = 89 ; - } -#Top outgoing solar radiation -'p90.175' = { - table2Version = 175 ; - indicatorOfParameter = 90 ; - } -#Ocean ice concentration -'p110.175' = { - table2Version = 175 ; - indicatorOfParameter = 110 ; - } -#Ocean mean ice depth -'p111.175' = { - table2Version = 175 ; - indicatorOfParameter = 111 ; - } -#Soil temperature layer 1 -'p139.175' = { - table2Version = 175 ; - indicatorOfParameter = 139 ; - } -#Average potential temperature in upper 293.4m -'p164.175' = { - table2Version = 175 ; - indicatorOfParameter = 164 ; - } -#1.5m temperature -'p167.175' = { - table2Version = 175 ; - indicatorOfParameter = 167 ; - } -#1.5m dewpoint temperature -'p168.175' = { - table2Version = 175 ; - indicatorOfParameter = 168 ; - } -#Soil temperature layer 2 -'p170.175' = { - table2Version = 175 ; - indicatorOfParameter = 170 ; - } -#Average salinity in upper 293.4m -'p175.175' = { - table2Version = 175 ; - indicatorOfParameter = 175 ; - } -#Soil temperature layer 3 -'p183.175' = { - table2Version = 175 ; - indicatorOfParameter = 183 ; - } -#1.5m temperature - maximum in the last 24 hours -'p201.175' = { - table2Version = 175 ; - indicatorOfParameter = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'p202.175' = { - table2Version = 175 ; - indicatorOfParameter = 202 ; - } -#Soil temperature layer 4 -'p236.175' = { - table2Version = 175 ; - indicatorOfParameter = 236 ; - } -#Indicates a missing value -'p255.175' = { - table2Version = 175 ; - indicatorOfParameter = 255 ; - } -#Total soil wetness -'tsw' = { - table2Version = 180 ; - indicatorOfParameter = 149 ; - } -#Surface net solar radiation -'ssr' = { - table2Version = 180 ; - indicatorOfParameter = 176 ; - } -#Surface net thermal radiation -'str' = { - table2Version = 180 ; - indicatorOfParameter = 177 ; - } -#Top net solar radiation -'tsr' = { - table2Version = 180 ; - indicatorOfParameter = 178 ; - } -#Top net thermal radiation -'ttr' = { - table2Version = 180 ; - indicatorOfParameter = 179 ; - } -#Snow depth -'sdsien' = { - table2Version = 190 ; - indicatorOfParameter = 141 ; - } -#Field capacity -'cap' = { - table2Version = 190 ; - indicatorOfParameter = 170 ; - } -#Wilting point -'wiltsien' = { - table2Version = 190 ; - indicatorOfParameter = 171 ; - } -#Roughness length -'sr' = { - table2Version = 190 ; - indicatorOfParameter = 173 ; - } -#Total soil moisture -'tsm' = { - table2Version = 190 ; - indicatorOfParameter = 229 ; - } -#2 metre dewpoint temperature difference -'ddiff2' = { - table2Version = 200 ; - indicatorOfParameter = 168 ; - } -#downward shortwave radiant flux density -'p1.201' = { - table2Version = 201 ; - indicatorOfParameter = 1 ; - } -#upward shortwave radiant flux density -'p2.201' = { - table2Version = 201 ; - indicatorOfParameter = 2 ; - } -#downward longwave radiant flux density -'p3.201' = { - table2Version = 201 ; - indicatorOfParameter = 3 ; - } -#upward longwave radiant flux density -'p4.201' = { - table2Version = 201 ; - indicatorOfParameter = 4 ; - } -#downwd photosynthetic active radiant flux density -'apab_s' = { - table2Version = 201 ; - indicatorOfParameter = 5 ; - } -#net shortwave flux -'p6.201' = { - table2Version = 201 ; - indicatorOfParameter = 6 ; - } -#net longwave flux -'p7.201' = { - table2Version = 201 ; - indicatorOfParameter = 7 ; - } -#total net radiative flux density -'p8.201' = { - table2Version = 201 ; - indicatorOfParameter = 8 ; - } -#downw shortw radiant flux density, cloudfree part -'p9.201' = { - table2Version = 201 ; - indicatorOfParameter = 9 ; - } -#upw shortw radiant flux density, cloudy part -'p10.201' = { - table2Version = 201 ; - indicatorOfParameter = 10 ; - } -#downw longw radiant flux density, cloudfree part -'p11.201' = { - table2Version = 201 ; - indicatorOfParameter = 11 ; - } -#upw longw radiant flux density, cloudy part -'p12.201' = { - table2Version = 201 ; - indicatorOfParameter = 12 ; - } -#shortwave radiative heating rate -'sohr_rad' = { - table2Version = 201 ; - indicatorOfParameter = 13 ; - } -#longwave radiative heating rate -'thhr_rad' = { - table2Version = 201 ; - indicatorOfParameter = 14 ; - } -#total radiative heating rate -'p15.201' = { - table2Version = 201 ; - indicatorOfParameter = 15 ; - } -#soil heat flux, surface -'p16.201' = { - table2Version = 201 ; - indicatorOfParameter = 16 ; - } -#soil heat flux, bottom of layer -'p17.201' = { - table2Version = 201 ; - indicatorOfParameter = 17 ; - } -#fractional cloud cover -'clc' = { - table2Version = 201 ; - indicatorOfParameter = 29 ; - } -#cloud cover, grid scale -'p30.201' = { - table2Version = 201 ; - indicatorOfParameter = 30 ; - } -#specific cloud water content -'qc' = { - table2Version = 201 ; - indicatorOfParameter = 31 ; - } -#cloud water content, grid scale, vert integrated -'p32.201' = { - table2Version = 201 ; - indicatorOfParameter = 32 ; - } -#specific cloud ice content, grid scale -'qi' = { - table2Version = 201 ; - indicatorOfParameter = 33 ; - } -#cloud ice content, grid scale, vert integrated -'p34.201' = { - table2Version = 201 ; - indicatorOfParameter = 34 ; - } -#specific rainwater content, grid scale -'p35.201' = { - table2Version = 201 ; - indicatorOfParameter = 35 ; - } -#specific snow content, grid scale -'p36.201' = { - table2Version = 201 ; - indicatorOfParameter = 36 ; - } -#specific rainwater content, gs, vert. integrated -'p37.201' = { - table2Version = 201 ; - indicatorOfParameter = 37 ; - } -#specific snow content, gs, vert. integrated -'p38.201' = { - table2Version = 201 ; - indicatorOfParameter = 38 ; - } -#total column water -'twater' = { - table2Version = 201 ; - indicatorOfParameter = 41 ; - } -#vert. integral of divergence of tot. water content -'p42.201' = { - table2Version = 201 ; - indicatorOfParameter = 42 ; - } -#cloud covers CH_CM_CL (000...888) -'ch_cm_cl' = { - table2Version = 201 ; - indicatorOfParameter = 50 ; - } -#cloud cover CH (0..8) -'p51.201' = { - table2Version = 201 ; - indicatorOfParameter = 51 ; - } -#cloud cover CM (0..8) -'p52.201' = { - table2Version = 201 ; - indicatorOfParameter = 52 ; - } -#cloud cover CL (0..8) -'p53.201' = { - table2Version = 201 ; - indicatorOfParameter = 53 ; - } -#total cloud cover (0..8) -'p54.201' = { - table2Version = 201 ; - indicatorOfParameter = 54 ; - } -#fog (0..8) -'p55.201' = { - table2Version = 201 ; - indicatorOfParameter = 55 ; - } -#fog -'p56.201' = { - table2Version = 201 ; - indicatorOfParameter = 56 ; - } -#cloud cover, convective cirrus -'p60.201' = { - table2Version = 201 ; - indicatorOfParameter = 60 ; - } -#specific cloud water content, convective clouds -'p61.201' = { - table2Version = 201 ; - indicatorOfParameter = 61 ; - } -#cloud water content, conv clouds, vert integrated -'p62.201' = { - table2Version = 201 ; - indicatorOfParameter = 62 ; - } -#specific cloud ice content, convective clouds -'p63.201' = { - table2Version = 201 ; - indicatorOfParameter = 63 ; - } -#cloud ice content, conv clouds, vert integrated -'p64.201' = { - table2Version = 201 ; - indicatorOfParameter = 64 ; - } -#convective mass flux -'p65.201' = { - table2Version = 201 ; - indicatorOfParameter = 65 ; - } -#Updraft velocity, convection -'p66.201' = { - table2Version = 201 ; - indicatorOfParameter = 66 ; - } -#entrainment parameter, convection -'p67.201' = { - table2Version = 201 ; - indicatorOfParameter = 67 ; - } -#cloud base, convective clouds (above msl) -'hbas_con' = { - table2Version = 201 ; - indicatorOfParameter = 68 ; - } -#cloud top, convective clouds (above msl) -'htop_con' = { - table2Version = 201 ; - indicatorOfParameter = 69 ; - } -#convective layers (00...77) (BKE) -'p70.201' = { - table2Version = 201 ; - indicatorOfParameter = 70 ; - } -#KO-index -'p71.201' = { - table2Version = 201 ; - indicatorOfParameter = 71 ; - } -#convection base index -'bas_con' = { - table2Version = 201 ; - indicatorOfParameter = 72 ; - } -#convection top index -'top_con' = { - table2Version = 201 ; - indicatorOfParameter = 73 ; - } -#convective temperature tendency -'dt_con' = { - table2Version = 201 ; - indicatorOfParameter = 74 ; - } -#convective tendency of specific humidity -'dqv_con' = { - table2Version = 201 ; - indicatorOfParameter = 75 ; - } -#convective tendency of total heat -'p76.201' = { - table2Version = 201 ; - indicatorOfParameter = 76 ; - } -#convective tendency of total water -'p77.201' = { - table2Version = 201 ; - indicatorOfParameter = 77 ; - } -#convective momentum tendency (X-component) -'du_con' = { - table2Version = 201 ; - indicatorOfParameter = 78 ; - } -#convective momentum tendency (Y-component) -'dv_con' = { - table2Version = 201 ; - indicatorOfParameter = 79 ; - } -#convective vorticity tendency -'p80.201' = { - table2Version = 201 ; - indicatorOfParameter = 80 ; - } -#convective divergence tendency -'p81.201' = { - table2Version = 201 ; - indicatorOfParameter = 81 ; - } -#top of dry convection (above msl) -'htop_dc' = { - table2Version = 201 ; - indicatorOfParameter = 82 ; - } -#dry convection top index -'p83.201' = { - table2Version = 201 ; - indicatorOfParameter = 83 ; - } -#height of 0 degree Celsius isotherm above msl -'hzerocl' = { - table2Version = 201 ; - indicatorOfParameter = 84 ; - } -#height of snow-fall limit -'snowlmt' = { - table2Version = 201 ; - indicatorOfParameter = 85 ; - } -#spec. content of precip. particles -'qrs_gsp' = { - table2Version = 201 ; - indicatorOfParameter = 99 ; - } -#surface precipitation rate, rain, grid scale -'prr_gsp' = { - table2Version = 201 ; - indicatorOfParameter = 100 ; - } -#surface precipitation rate, snow, grid scale -'prs_gsp' = { - table2Version = 201 ; - indicatorOfParameter = 101 ; - } -#surface precipitation amount, rain, grid scale -'rain_gsp' = { - table2Version = 201 ; - indicatorOfParameter = 102 ; - } -#surface precipitation rate, rain, convective -'prr_con' = { - table2Version = 201 ; - indicatorOfParameter = 111 ; - } -#surface precipitation rate, snow, convective -'prs_con' = { - table2Version = 201 ; - indicatorOfParameter = 112 ; - } -#surface precipitation amount, rain, convective -'rain_con' = { - table2Version = 201 ; - indicatorOfParameter = 113 ; - } -#deviation of pressure from reference value -'pp' = { - table2Version = 201 ; - indicatorOfParameter = 139 ; - } -#coefficient of horizontal diffusion -'p150.201' = { - table2Version = 201 ; - indicatorOfParameter = 150 ; - } -#Maximum wind velocity -'vmax_10m' = { - table2Version = 201 ; - indicatorOfParameter = 187 ; - } -#water content of interception store -'w_i' = { - table2Version = 201 ; - indicatorOfParameter = 200 ; - } -#snow temperature -'t_snow' = { - table2Version = 201 ; - indicatorOfParameter = 203 ; - } -#ice surface temperature -'t_ice' = { - table2Version = 201 ; - indicatorOfParameter = 215 ; - } -#convective available potential energy -'cape_con' = { - table2Version = 201 ; - indicatorOfParameter = 241 ; - } -#Indicates a missing value -'p255.201' = { - table2Version = 201 ; - indicatorOfParameter = 255 ; - } -#Sea Salt Aerosol (0.03 - 0.5 um) Mixing Ratio -'aermr01' = { - table2Version = 210 ; - indicatorOfParameter = 1 ; - } -#Sea Salt Aerosol (0.5 - 5 um) Mixing Ratio -'aermr02' = { - table2Version = 210 ; - indicatorOfParameter = 2 ; - } -#Sea Salt Aerosol (5 - 20 um) Mixing Ratio -'aermr03' = { - table2Version = 210 ; - indicatorOfParameter = 3 ; - } -#Dust Aerosol (0.03 - 0.55 um) Mixing Ratio -'aermr04' = { - table2Version = 210 ; - indicatorOfParameter = 4 ; - } -#Dust Aerosol (0.55 - 0.9 um) Mixing Ratio -'aermr05' = { - table2Version = 210 ; - indicatorOfParameter = 5 ; - } -#Dust Aerosol (0.9 - 20 um) Mixing Ratio -'aermr06' = { - table2Version = 210 ; - indicatorOfParameter = 6 ; - } -#Hydrophilic Organic Matter Aerosol Mixing Ratio -'aermr07' = { - table2Version = 210 ; - indicatorOfParameter = 7 ; - } -#Hydrophobic Organic Matter Aerosol Mixing Ratio -'aermr08' = { - table2Version = 210 ; - indicatorOfParameter = 8 ; - } -#Hydrophilic Black Carbon Aerosol Mixing Ratio -'aermr09' = { - table2Version = 210 ; - indicatorOfParameter = 9 ; - } -#Hydrophobic Black Carbon Aerosol Mixing Ratio -'aermr10' = { - table2Version = 210 ; - indicatorOfParameter = 10 ; - } -#Sulphate Aerosol Mixing Ratio -'aermr11' = { - table2Version = 210 ; - indicatorOfParameter = 11 ; - } -#SO2 precursor mixing ratio -'aermr12' = { - table2Version = 210 ; - indicatorOfParameter = 12 ; - } -#Aerosol type 1 source/gain accumulated -'aergn01' = { - table2Version = 210 ; - indicatorOfParameter = 16 ; - } -#Aerosol type 2 source/gain accumulated -'aergn02' = { - table2Version = 210 ; - indicatorOfParameter = 17 ; - } -#Aerosol type 3 source/gain accumulated -'aergn03' = { - table2Version = 210 ; - indicatorOfParameter = 18 ; - } -#Aerosol type 4 source/gain accumulated -'aergn04' = { - table2Version = 210 ; - indicatorOfParameter = 19 ; - } -#Aerosol type 5 source/gain accumulated -'aergn05' = { - table2Version = 210 ; - indicatorOfParameter = 20 ; - } -#Aerosol type 6 source/gain accumulated -'aergn06' = { - table2Version = 210 ; - indicatorOfParameter = 21 ; - } -#Aerosol type 7 source/gain accumulated -'aergn07' = { - table2Version = 210 ; - indicatorOfParameter = 22 ; - } -#Aerosol type 8 source/gain accumulated -'aergn08' = { - table2Version = 210 ; - indicatorOfParameter = 23 ; - } -#Aerosol type 9 source/gain accumulated -'aergn09' = { - table2Version = 210 ; - indicatorOfParameter = 24 ; - } -#Aerosol type 10 source/gain accumulated -'aergn10' = { - table2Version = 210 ; - indicatorOfParameter = 25 ; - } -#Aerosol type 11 source/gain accumulated -'aergn11' = { - table2Version = 210 ; - indicatorOfParameter = 26 ; - } -#Aerosol type 12 source/gain accumulated -'aergn12' = { - table2Version = 210 ; - indicatorOfParameter = 27 ; - } -#Aerosol type 1 sink/loss accumulated -'aerls01' = { - table2Version = 210 ; - indicatorOfParameter = 31 ; - } -#Aerosol type 2 sink/loss accumulated -'aerls02' = { - table2Version = 210 ; - indicatorOfParameter = 32 ; - } -#Aerosol type 3 sink/loss accumulated -'aerls03' = { - table2Version = 210 ; - indicatorOfParameter = 33 ; - } -#Aerosol type 4 sink/loss accumulated -'aerls04' = { - table2Version = 210 ; - indicatorOfParameter = 34 ; - } -#Aerosol type 5 sink/loss accumulated -'aerls05' = { - table2Version = 210 ; - indicatorOfParameter = 35 ; - } -#Aerosol type 6 sink/loss accumulated -'aerls06' = { - table2Version = 210 ; - indicatorOfParameter = 36 ; - } -#Aerosol type 7 sink/loss accumulated -'aerls07' = { - table2Version = 210 ; - indicatorOfParameter = 37 ; - } -#Aerosol type 8 sink/loss accumulated -'aerls08' = { - table2Version = 210 ; - indicatorOfParameter = 38 ; - } -#Aerosol type 9 sink/loss accumulated -'aerls09' = { - table2Version = 210 ; - indicatorOfParameter = 39 ; - } -#Aerosol type 10 sink/loss accumulated -'aerls10' = { - table2Version = 210 ; - indicatorOfParameter = 40 ; - } -#Aerosol type 11 sink/loss accumulated -'aerls11' = { - table2Version = 210 ; - indicatorOfParameter = 41 ; - } -#Aerosol type 12 sink/loss accumulated -'aerls12' = { - table2Version = 210 ; - indicatorOfParameter = 42 ; - } -#Aerosol precursor mixing ratio -'aerpr' = { - table2Version = 210 ; - indicatorOfParameter = 46 ; - } -#Aerosol small mode mixing ratio -'aersm' = { - table2Version = 210 ; - indicatorOfParameter = 47 ; - } -#Aerosol large mode mixing ratio -'aerlg' = { - table2Version = 210 ; - indicatorOfParameter = 48 ; - } -#Aerosol precursor optical depth -'aodpr' = { - table2Version = 210 ; - indicatorOfParameter = 49 ; - } -#Aerosol small mode optical depth -'aodsm' = { - table2Version = 210 ; - indicatorOfParameter = 50 ; - } -#Aerosol large mode optical depth -'aodlg' = { - table2Version = 210 ; - indicatorOfParameter = 51 ; - } -#Dust emission potential -'aerdep' = { - table2Version = 210 ; - indicatorOfParameter = 52 ; - } -#Lifting threshold speed -'aerlts' = { - table2Version = 210 ; - indicatorOfParameter = 53 ; - } -#Soil clay content -'aerscc' = { - table2Version = 210 ; - indicatorOfParameter = 54 ; - } -#Carbon dioxide mass mixing ratio -'co2' = { - table2Version = 210 ; - indicatorOfParameter = 61 ; - } -#Methane -'ch4' = { - table2Version = 210 ; - indicatorOfParameter = 62 ; - } -#Nitrous oxide -'n2o' = { - table2Version = 210 ; - indicatorOfParameter = 63 ; - } -#CO2 column-mean molar fraction -'tcco2' = { - table2Version = 210 ; - indicatorOfParameter = 64 ; - } -#CH4 column-mean molar fraction -'tcch4' = { - table2Version = 210 ; - indicatorOfParameter = 65 ; - } -#Total column Nitrous oxide -'tcn2o' = { - table2Version = 210 ; - indicatorOfParameter = 66 ; - } -#Ocean flux of Carbon Dioxide -'co2of' = { - table2Version = 210 ; - indicatorOfParameter = 67 ; - } -#Natural biosphere flux of Carbon Dioxide -'co2nbf' = { - table2Version = 210 ; - indicatorOfParameter = 68 ; - } -#Anthropogenic emissions of Carbon Dioxide -'co2apf' = { - table2Version = 210 ; - indicatorOfParameter = 69 ; - } -#Methane Surface Fluxes -'ch4f' = { - table2Version = 210 ; - indicatorOfParameter = 70 ; - } -#Methane loss rate due to radical hydroxyl (OH) -'kch4' = { - table2Version = 210 ; - indicatorOfParameter = 71 ; - } -#Wildfire flux of Carbon Dioxide -'co2fire' = { - table2Version = 210 ; - indicatorOfParameter = 80 ; - } -#Wildfire flux of Carbon Monoxide -'cofire' = { - table2Version = 210 ; - indicatorOfParameter = 81 ; - } -#Wildfire flux of Methane -'ch4fire' = { - table2Version = 210 ; - indicatorOfParameter = 82 ; - } -#Wildfire flux of Non-Methane Hydro-Carbons -'nmhcfire' = { - table2Version = 210 ; - indicatorOfParameter = 83 ; - } -#Wildfire flux of Hydrogen -'h2fire' = { - table2Version = 210 ; - indicatorOfParameter = 84 ; - } -#Wildfire flux of Nitrogen Oxides NOx -'noxfire' = { - table2Version = 210 ; - indicatorOfParameter = 85 ; - } -#Wildfire flux of Nitrous Oxide -'n2ofire' = { - table2Version = 210 ; - indicatorOfParameter = 86 ; - } -#Wildfire flux of Particulate Matter PM2.5 -'pm2p5fire' = { - table2Version = 210 ; - indicatorOfParameter = 87 ; - } -#Wildfire flux of Total Particulate Matter -'tpmfire' = { - table2Version = 210 ; - indicatorOfParameter = 88 ; - } -#Wildfire flux of Total Carbon in Aerosols -'tcfire' = { - table2Version = 210 ; - indicatorOfParameter = 89 ; - } -#Wildfire flux of Organic Carbon -'ocfire' = { - table2Version = 210 ; - indicatorOfParameter = 90 ; - } -#Wildfire flux of Black Carbon -'bcfire' = { - table2Version = 210 ; - indicatorOfParameter = 91 ; - } -#Wildfire overall flux of burnt Carbon -'cfire' = { - table2Version = 210 ; - indicatorOfParameter = 92 ; - } -#Wildfire fraction of C4 plants -'c4ffire' = { - table2Version = 210 ; - indicatorOfParameter = 93 ; - } -#Wildfire vegetation map index -'vegfire' = { - table2Version = 210 ; - indicatorOfParameter = 94 ; - } -#Wildfire Combustion Completeness -'ccfire' = { - table2Version = 210 ; - indicatorOfParameter = 95 ; - } -#Wildfire Fuel Load: Carbon per unit area -'flfire' = { - table2Version = 210 ; - indicatorOfParameter = 96 ; - } -#Wildfire fraction of area observed -'offire' = { - table2Version = 210 ; - indicatorOfParameter = 97 ; - } -#Number of positive FRP pixels per grid cell -'nofrp' = { - table2Version = 210 ; - indicatorOfParameter = 98 ; - } -#Wildfire radiative power -'frpfire' = { - table2Version = 210 ; - indicatorOfParameter = 99 ; - } -#Wildfire combustion rate -'crfire' = { - table2Version = 210 ; - indicatorOfParameter = 100 ; - } -#Nitrogen dioxide mass mixing ratio -'no2' = { - table2Version = 210 ; - indicatorOfParameter = 121 ; - } -#Sulphur dioxide mass mixing ratio -'so2' = { - table2Version = 210 ; - indicatorOfParameter = 122 ; - } -#Carbon monoxide mass mixing ratio -'co' = { - table2Version = 210 ; - indicatorOfParameter = 123 ; - } -#Formaldehyde -'hcho' = { - table2Version = 210 ; - indicatorOfParameter = 124 ; - } -#Total column Nitrogen dioxide -'tcno2' = { - table2Version = 210 ; - indicatorOfParameter = 125 ; - } -#Total column Sulphur dioxide -'tcso2' = { - table2Version = 210 ; - indicatorOfParameter = 126 ; - } -#Total column Carbon monoxide -'tcco' = { - table2Version = 210 ; - indicatorOfParameter = 127 ; - } -#Total column Formaldehyde -'tchcho' = { - table2Version = 210 ; - indicatorOfParameter = 128 ; - } -#Nitrogen Oxides -'nox' = { - table2Version = 210 ; - indicatorOfParameter = 129 ; - } -#Total Column Nitrogen Oxides -'tcnox' = { - table2Version = 210 ; - indicatorOfParameter = 130 ; - } -#Reactive tracer 1 mass mixing ratio -'grg1' = { - table2Version = 210 ; - indicatorOfParameter = 131 ; - } -#Total column GRG tracer 1 -'tcgrg1' = { - table2Version = 210 ; - indicatorOfParameter = 132 ; - } -#Reactive tracer 2 mass mixing ratio -'grg2' = { - table2Version = 210 ; - indicatorOfParameter = 133 ; - } -#Total column GRG tracer 2 -'tcgrg2' = { - table2Version = 210 ; - indicatorOfParameter = 134 ; - } -#Reactive tracer 3 mass mixing ratio -'grg3' = { - table2Version = 210 ; - indicatorOfParameter = 135 ; - } -#Total column GRG tracer 3 -'tcgrg3' = { - table2Version = 210 ; - indicatorOfParameter = 136 ; - } -#Reactive tracer 4 mass mixing ratio -'grg4' = { - table2Version = 210 ; - indicatorOfParameter = 137 ; - } -#Total column GRG tracer 4 -'tcgrg4' = { - table2Version = 210 ; - indicatorOfParameter = 138 ; - } -#Reactive tracer 5 mass mixing ratio -'grg5' = { - table2Version = 210 ; - indicatorOfParameter = 139 ; - } -#Total column GRG tracer 5 -'tcgrg5' = { - table2Version = 210 ; - indicatorOfParameter = 140 ; - } -#Reactive tracer 6 mass mixing ratio -'grg6' = { - table2Version = 210 ; - indicatorOfParameter = 141 ; - } -#Total column GRG tracer 6 -'tcgrg6' = { - table2Version = 210 ; - indicatorOfParameter = 142 ; - } -#Reactive tracer 7 mass mixing ratio -'grg7' = { - table2Version = 210 ; - indicatorOfParameter = 143 ; - } -#Total column GRG tracer 7 -'tcgrg7' = { - table2Version = 210 ; - indicatorOfParameter = 144 ; - } -#Reactive tracer 8 mass mixing ratio -'grg8' = { - table2Version = 210 ; - indicatorOfParameter = 145 ; - } -#Total column GRG tracer 8 -'tcgrg8' = { - table2Version = 210 ; - indicatorOfParameter = 146 ; - } -#Reactive tracer 9 mass mixing ratio -'grg9' = { - table2Version = 210 ; - indicatorOfParameter = 147 ; - } -#Total column GRG tracer 9 -'tcgrg9' = { - table2Version = 210 ; - indicatorOfParameter = 148 ; - } -#Reactive tracer 10 mass mixing ratio -'grg10' = { - table2Version = 210 ; - indicatorOfParameter = 149 ; - } -#Total column GRG tracer 10 -'tcgrg10' = { - table2Version = 210 ; - indicatorOfParameter = 150 ; - } -#Surface flux Nitrogen oxides -'sfnox' = { - table2Version = 210 ; - indicatorOfParameter = 151 ; - } -#Surface flux Nitrogen dioxide -'sfno2' = { - table2Version = 210 ; - indicatorOfParameter = 152 ; - } -#Surface flux Sulphur dioxide -'sfso2' = { - table2Version = 210 ; - indicatorOfParameter = 153 ; - } -#Surface flux Carbon monoxide -'sfco2' = { - table2Version = 210 ; - indicatorOfParameter = 154 ; - } -#Surface flux Formaldehyde -'sfhcho' = { - table2Version = 210 ; - indicatorOfParameter = 155 ; - } -#Surface flux GEMS Ozone -'sfgo3' = { - table2Version = 210 ; - indicatorOfParameter = 156 ; - } -#Surface flux reactive tracer 1 -'sfgr1' = { - table2Version = 210 ; - indicatorOfParameter = 157 ; - } -#Surface flux reactive tracer 2 -'sfgr2' = { - table2Version = 210 ; - indicatorOfParameter = 158 ; - } -#Surface flux reactive tracer 3 -'sfgr3' = { - table2Version = 210 ; - indicatorOfParameter = 159 ; - } -#Surface flux reactive tracer 4 -'sfgr4' = { - table2Version = 210 ; - indicatorOfParameter = 160 ; - } -#Surface flux reactive tracer 5 -'sfgr5' = { - table2Version = 210 ; - indicatorOfParameter = 161 ; - } -#Surface flux reactive tracer 6 -'sfgr6' = { - table2Version = 210 ; - indicatorOfParameter = 162 ; - } -#Surface flux reactive tracer 7 -'sfgr7' = { - table2Version = 210 ; - indicatorOfParameter = 163 ; - } -#Surface flux reactive tracer 8 -'sfgr8' = { - table2Version = 210 ; - indicatorOfParameter = 164 ; - } -#Surface flux reactive tracer 9 -'sfgr9' = { - table2Version = 210 ; - indicatorOfParameter = 165 ; - } -#Surface flux reactive tracer 10 -'sfgr10' = { - table2Version = 210 ; - indicatorOfParameter = 166 ; - } -#Radon -'ra' = { - table2Version = 210 ; - indicatorOfParameter = 181 ; - } -#Sulphur Hexafluoride -'sf6' = { - table2Version = 210 ; - indicatorOfParameter = 182 ; - } -#Total column Radon -'tcra' = { - table2Version = 210 ; - indicatorOfParameter = 183 ; - } -#Total column Sulphur Hexafluoride -'tcsf6' = { - table2Version = 210 ; - indicatorOfParameter = 184 ; - } -#Anthropogenic Emissions of Sulphur Hexafluoride -'sf6apf' = { - table2Version = 210 ; - indicatorOfParameter = 185 ; - } -#Ozone mass mixing ratio (full chemistry scheme) -'go3' = { - table2Version = 210 ; - indicatorOfParameter = 203 ; - } -#GEMS Total column ozone -'gtco3' = { - table2Version = 210 ; - indicatorOfParameter = 206 ; - } -#Total Aerosol Optical Depth at 550nm -'aod550' = { - table2Version = 210 ; - indicatorOfParameter = 207 ; - } -#Sea Salt Aerosol Optical Depth at 550nm -'ssaod550' = { - table2Version = 210 ; - indicatorOfParameter = 208 ; - } -#Dust Aerosol Optical Depth at 550nm -'duaod550' = { - table2Version = 210 ; - indicatorOfParameter = 209 ; - } -#Organic Matter Aerosol Optical Depth at 550nm -'omaod550' = { - table2Version = 210 ; - indicatorOfParameter = 210 ; - } -#Black Carbon Aerosol Optical Depth at 550nm -'bcaod550' = { - table2Version = 210 ; - indicatorOfParameter = 211 ; - } -#Sulphate Aerosol Optical Depth at 550nm -'suaod550' = { - table2Version = 210 ; - indicatorOfParameter = 212 ; - } -#Total Aerosol Optical Depth at 469nm -'aod469' = { - table2Version = 210 ; - indicatorOfParameter = 213 ; - } -#Total Aerosol Optical Depth at 670nm -'aod670' = { - table2Version = 210 ; - indicatorOfParameter = 214 ; - } -#Total Aerosol Optical Depth at 865nm -'aod865' = { - table2Version = 210 ; - indicatorOfParameter = 215 ; - } -#Total Aerosol Optical Depth at 1240nm -'aod1240' = { - table2Version = 210 ; - indicatorOfParameter = 216 ; - } -#Sea Salt Aerosol (0.03 - 0.5 um) Mixing Ratio -'aermr01diff' = { - table2Version = 211 ; - indicatorOfParameter = 1 ; - } -#Sea Salt Aerosol (0.5 - 5 um) Mixing Ratio -'aermr02diff' = { - table2Version = 211 ; - indicatorOfParameter = 2 ; - } -#Sea Salt Aerosol (5 - 20 um) Mixing Ratio -'aermr03diff' = { - table2Version = 211 ; - indicatorOfParameter = 3 ; - } -#Dust Aerosol (0.03 - 0.55 um) Mixing Ratio -'aermr04diff' = { - table2Version = 211 ; - indicatorOfParameter = 4 ; - } -#Dust Aerosol (0.55 - 0.9 um) Mixing Ratio -'aermr05diff' = { - table2Version = 211 ; - indicatorOfParameter = 5 ; - } -#Dust Aerosol (0.9 - 20 um) Mixing Ratio -'aermr06diff' = { - table2Version = 211 ; - indicatorOfParameter = 6 ; - } -#Hydrophilic Organic Matter Aerosol Mixing Ratio -'aermr07diff' = { - table2Version = 211 ; +#100 metre V wind component anomaly +'va100' = { + table2Version = 171 ; indicatorOfParameter = 7 ; } -#Hydrophobic Organic Matter Aerosol Mixing Ratio -'aermr08diff' = { - table2Version = 211 ; - indicatorOfParameter = 8 ; - } -#Hydrophilic Black Carbon Aerosol Mixing Ratio -'aermr09diff' = { - table2Version = 211 ; - indicatorOfParameter = 9 ; - } -#Hydrophobic Black Carbon Aerosol Mixing Ratio -'aermr10diff' = { - table2Version = 211 ; - indicatorOfParameter = 10 ; - } -#Sulphate Aerosol Mixing Ratio -'aermr11diff' = { - table2Version = 211 ; - indicatorOfParameter = 11 ; - } -#Aerosol type 12 mixing ratio -'aermr12diff' = { - table2Version = 211 ; - indicatorOfParameter = 12 ; - } -#Aerosol type 1 source/gain accumulated -'aergn01diff' = { - table2Version = 211 ; - indicatorOfParameter = 16 ; - } -#Aerosol type 2 source/gain accumulated -'aergn02diff' = { - table2Version = 211 ; - indicatorOfParameter = 17 ; - } -#Aerosol type 3 source/gain accumulated -'aergn03diff' = { - table2Version = 211 ; - indicatorOfParameter = 18 ; - } -#Aerosol type 4 source/gain accumulated -'aergn04diff' = { - table2Version = 211 ; - indicatorOfParameter = 19 ; - } -#Aerosol type 5 source/gain accumulated -'aergn05diff' = { - table2Version = 211 ; - indicatorOfParameter = 20 ; - } -#Aerosol type 6 source/gain accumulated -'aergn06diff' = { - table2Version = 211 ; - indicatorOfParameter = 21 ; - } -#Aerosol type 7 source/gain accumulated -'aergn07diff' = { - table2Version = 211 ; - indicatorOfParameter = 22 ; - } -#Aerosol type 8 source/gain accumulated -'aergn08diff' = { - table2Version = 211 ; - indicatorOfParameter = 23 ; - } -#Aerosol type 9 source/gain accumulated -'aergn09diff' = { - table2Version = 211 ; - indicatorOfParameter = 24 ; - } -#Aerosol type 10 source/gain accumulated -'aergn10diff' = { - table2Version = 211 ; - indicatorOfParameter = 25 ; - } -#Aerosol type 11 source/gain accumulated -'aergn11diff' = { - table2Version = 211 ; - indicatorOfParameter = 26 ; - } -#Aerosol type 12 source/gain accumulated -'aergn12diff' = { - table2Version = 211 ; - indicatorOfParameter = 27 ; - } -#Aerosol type 1 sink/loss accumulated -'aerls01diff' = { - table2Version = 211 ; - indicatorOfParameter = 31 ; - } -#Aerosol type 2 sink/loss accumulated -'aerls02diff' = { - table2Version = 211 ; - indicatorOfParameter = 32 ; - } -#Aerosol type 3 sink/loss accumulated -'aerls03diff' = { - table2Version = 211 ; - indicatorOfParameter = 33 ; - } -#Aerosol type 4 sink/loss accumulated -'aerls04diff' = { - table2Version = 211 ; - indicatorOfParameter = 34 ; - } -#Aerosol type 5 sink/loss accumulated -'aerls05diff' = { - table2Version = 211 ; - indicatorOfParameter = 35 ; - } -#Aerosol type 6 sink/loss accumulated -'aerls06diff' = { - table2Version = 211 ; - indicatorOfParameter = 36 ; - } -#Aerosol type 7 sink/loss accumulated -'aerls07diff' = { - table2Version = 211 ; - indicatorOfParameter = 37 ; - } -#Aerosol type 8 sink/loss accumulated -'aerls08diff' = { - table2Version = 211 ; - indicatorOfParameter = 38 ; - } -#Aerosol type 9 sink/loss accumulated -'aerls09diff' = { - table2Version = 211 ; - indicatorOfParameter = 39 ; - } -#Aerosol type 10 sink/loss accumulated -'aerls10diff' = { - table2Version = 211 ; - indicatorOfParameter = 40 ; - } -#Aerosol type 11 sink/loss accumulated -'aerls11diff' = { - table2Version = 211 ; - indicatorOfParameter = 41 ; - } -#Aerosol type 12 sink/loss accumulated -'aerls12diff' = { - table2Version = 211 ; - indicatorOfParameter = 42 ; - } -#Aerosol precursor mixing ratio -'aerprdiff' = { - table2Version = 211 ; - indicatorOfParameter = 46 ; - } -#Aerosol small mode mixing ratio -'aersmdiff' = { - table2Version = 211 ; - indicatorOfParameter = 47 ; - } -#Aerosol large mode mixing ratio -'aerlgdiff' = { - table2Version = 211 ; - indicatorOfParameter = 48 ; - } -#Aerosol precursor optical depth -'aodprdiff' = { - table2Version = 211 ; - indicatorOfParameter = 49 ; - } -#Aerosol small mode optical depth -'aodsmdiff' = { - table2Version = 211 ; - indicatorOfParameter = 50 ; - } -#Aerosol large mode optical depth -'aodlgdiff' = { - table2Version = 211 ; - indicatorOfParameter = 51 ; - } -#Dust emission potential -'aerdepdiff' = { - table2Version = 211 ; - indicatorOfParameter = 52 ; - } -#Lifting threshold speed -'aerltsdiff' = { - table2Version = 211 ; - indicatorOfParameter = 53 ; - } -#Soil clay content -'aersccdiff' = { - table2Version = 211 ; - indicatorOfParameter = 54 ; - } -#Carbon Dioxide -'co2diff' = { - table2Version = 211 ; - indicatorOfParameter = 61 ; - } -#Methane -'ch4diff' = { - table2Version = 211 ; - indicatorOfParameter = 62 ; - } -#Nitrous oxide -'n2odiff' = { - table2Version = 211 ; - indicatorOfParameter = 63 ; - } -#Total column Carbon Dioxide -'tcco2diff' = { - table2Version = 211 ; - indicatorOfParameter = 64 ; - } -#Total column Methane -'tcch4diff' = { - table2Version = 211 ; - indicatorOfParameter = 65 ; - } -#Total column Nitrous oxide -'tcn2odiff' = { - table2Version = 211 ; - indicatorOfParameter = 66 ; - } -#Ocean flux of Carbon Dioxide -'co2ofdiff' = { - table2Version = 211 ; - indicatorOfParameter = 67 ; - } -#Natural biosphere flux of Carbon Dioxide -'co2nbfdiff' = { - table2Version = 211 ; - indicatorOfParameter = 68 ; - } -#Anthropogenic emissions of Carbon Dioxide -'co2apfdiff' = { - table2Version = 211 ; - indicatorOfParameter = 69 ; - } -#Methane Surface Fluxes -'ch4fdiff' = { - table2Version = 211 ; - indicatorOfParameter = 70 ; - } -#Methane loss rate due to radical hydroxyl (OH) -'kch4diff' = { - table2Version = 211 ; - indicatorOfParameter = 71 ; - } -#Wildfire flux of Carbon Dioxide -'co2firediff' = { - table2Version = 211 ; - indicatorOfParameter = 80 ; - } -#Wildfire flux of Carbon Monoxide -'cofirediff' = { - table2Version = 211 ; - indicatorOfParameter = 81 ; - } -#Wildfire flux of Methane -'ch4firediff' = { - table2Version = 211 ; - indicatorOfParameter = 82 ; - } -#Wildfire flux of Non-Methane Hydro-Carbons -'nmhcfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 83 ; - } -#Wildfire flux of Hydrogen -'h2firediff' = { - table2Version = 211 ; - indicatorOfParameter = 84 ; - } -#Wildfire flux of Nitrogen Oxides NOx -'noxfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 85 ; - } -#Wildfire flux of Nitrous Oxide -'n2ofirediff' = { - table2Version = 211 ; - indicatorOfParameter = 86 ; - } -#Wildfire flux of Particulate Matter PM2.5 -'pm2p5firediff' = { - table2Version = 211 ; - indicatorOfParameter = 87 ; - } -#Wildfire flux of Total Particulate Matter -'tpmfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 88 ; - } -#Wildfire flux of Total Carbon in Aerosols -'tcfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 89 ; - } -#Wildfire flux of Organic Carbon -'ocfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 90 ; - } -#Wildfire flux of Black Carbon -'bcfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 91 ; - } -#Wildfire overall flux of burnt Carbon -'cfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 92 ; - } -#Wildfire fraction of C4 plants -'c4ffirediff' = { - table2Version = 211 ; - indicatorOfParameter = 93 ; - } -#Wildfire vegetation map index -'vegfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 94 ; - } -#Wildfire Combustion Completeness -'ccfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 95 ; - } -#Wildfire Fuel Load: Carbon per unit area -'flfirediff' = { - table2Version = 211 ; +#2 metre specific humidity +'sh2' = { + table2Version = 174 ; indicatorOfParameter = 96 ; } -#Wildfire fraction of area observed -'offirediff' = { - table2Version = 211 ; - indicatorOfParameter = 97 ; - } -#Wildfire observed area -'oafirediff' = { - table2Version = 211 ; - indicatorOfParameter = 98 ; - } -#Wildfire radiative power -'frpfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 99 ; - } -#Wildfire combustion rate -'crfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 100 ; - } -#Nitrogen dioxide mass mixing ratio difference -'no2diff' = { - table2Version = 211 ; - indicatorOfParameter = 121 ; - } -#Sulphur dioxide mass mixing ratio difference -'so2diff' = { - table2Version = 211 ; - indicatorOfParameter = 122 ; - } -#Carbon monoxide mass mixing ratio difference -'codiff' = { - table2Version = 211 ; - indicatorOfParameter = 123 ; - } -#Formaldehyde -'hchodiff' = { - table2Version = 211 ; - indicatorOfParameter = 124 ; - } -#Total column Nitrogen dioxide -'tcno2diff' = { - table2Version = 211 ; - indicatorOfParameter = 125 ; - } -#Total column Sulphur dioxide -'tcso2diff' = { - table2Version = 211 ; - indicatorOfParameter = 126 ; - } -#Total column Carbon monoxide -'tccodiff' = { - table2Version = 211 ; - indicatorOfParameter = 127 ; - } -#Total column Formaldehyde -'tchchodiff' = { - table2Version = 211 ; - indicatorOfParameter = 128 ; - } -#Nitrogen Oxides -'noxdiff' = { - table2Version = 211 ; - indicatorOfParameter = 129 ; - } -#Total Column Nitrogen Oxides -'tcnoxdiff' = { - table2Version = 211 ; - indicatorOfParameter = 130 ; - } -#Reactive tracer 1 mass mixing ratio -'grg1diff' = { - table2Version = 211 ; - indicatorOfParameter = 131 ; - } -#Total column GRG tracer 1 -'tcgrg1diff' = { - table2Version = 211 ; - indicatorOfParameter = 132 ; - } -#Reactive tracer 2 mass mixing ratio -'grg2diff' = { - table2Version = 211 ; - indicatorOfParameter = 133 ; - } -#Total column GRG tracer 2 -'tcgrg2diff' = { - table2Version = 211 ; - indicatorOfParameter = 134 ; - } -#Reactive tracer 3 mass mixing ratio -'grg3diff' = { - table2Version = 211 ; - indicatorOfParameter = 135 ; - } -#Total column GRG tracer 3 -'tcgrg3diff' = { - table2Version = 211 ; - indicatorOfParameter = 136 ; - } -#Reactive tracer 4 mass mixing ratio -'grg4diff' = { - table2Version = 211 ; - indicatorOfParameter = 137 ; - } -#Total column GRG tracer 4 -'tcgrg4diff' = { - table2Version = 211 ; - indicatorOfParameter = 138 ; - } -#Reactive tracer 5 mass mixing ratio -'grg5diff' = { - table2Version = 211 ; - indicatorOfParameter = 139 ; - } -#Total column GRG tracer 5 -'tcgrg5diff' = { - table2Version = 211 ; - indicatorOfParameter = 140 ; - } -#Reactive tracer 6 mass mixing ratio -'grg6diff' = { - table2Version = 211 ; - indicatorOfParameter = 141 ; - } -#Total column GRG tracer 6 -'tcgrg6diff' = { - table2Version = 211 ; - indicatorOfParameter = 142 ; - } -#Reactive tracer 7 mass mixing ratio -'grg7diff' = { - table2Version = 211 ; - indicatorOfParameter = 143 ; - } -#Total column GRG tracer 7 -'tcgrg7diff' = { - table2Version = 211 ; - indicatorOfParameter = 144 ; - } -#Reactive tracer 8 mass mixing ratio -'grg8diff' = { - table2Version = 211 ; - indicatorOfParameter = 145 ; - } -#Total column GRG tracer 8 -'tcgrg8diff' = { - table2Version = 211 ; - indicatorOfParameter = 146 ; - } -#Reactive tracer 9 mass mixing ratio -'grg9diff' = { - table2Version = 211 ; - indicatorOfParameter = 147 ; - } -#Total column GRG tracer 9 -'tcgrg9diff' = { - table2Version = 211 ; - indicatorOfParameter = 148 ; - } -#Reactive tracer 10 mass mixing ratio -'grg10diff' = { - table2Version = 211 ; - indicatorOfParameter = 149 ; - } -#Total column GRG tracer 10 -'tcgrg10diff' = { - table2Version = 211 ; - indicatorOfParameter = 150 ; - } -#Surface flux Nitrogen oxides -'sfnoxdiff' = { - table2Version = 211 ; - indicatorOfParameter = 151 ; - } -#Surface flux Nitrogen dioxide -'sfno2diff' = { - table2Version = 211 ; - indicatorOfParameter = 152 ; - } -#Surface flux Sulphur dioxide -'sfso2diff' = { - table2Version = 211 ; - indicatorOfParameter = 153 ; - } -#Surface flux Carbon monoxide -'sfco2diff' = { - table2Version = 211 ; - indicatorOfParameter = 154 ; - } -#Surface flux Formaldehyde -'sfhchodiff' = { - table2Version = 211 ; - indicatorOfParameter = 155 ; - } -#Surface flux GEMS Ozone -'sfgo3diff' = { - table2Version = 211 ; - indicatorOfParameter = 156 ; - } -#Surface flux reactive tracer 1 -'sfgr1diff' = { - table2Version = 211 ; - indicatorOfParameter = 157 ; - } -#Surface flux reactive tracer 2 -'sfgr2diff' = { - table2Version = 211 ; - indicatorOfParameter = 158 ; - } -#Surface flux reactive tracer 3 -'sfgr3diff' = { - table2Version = 211 ; - indicatorOfParameter = 159 ; - } -#Surface flux reactive tracer 4 -'sfgr4diff' = { - table2Version = 211 ; - indicatorOfParameter = 160 ; - } -#Surface flux reactive tracer 5 -'sfgr5diff' = { - table2Version = 211 ; - indicatorOfParameter = 161 ; - } -#Surface flux reactive tracer 6 -'sfgr6diff' = { - table2Version = 211 ; - indicatorOfParameter = 162 ; - } -#Surface flux reactive tracer 7 -'sfgr7diff' = { - table2Version = 211 ; - indicatorOfParameter = 163 ; - } -#Surface flux reactive tracer 8 -'sfgr8diff' = { - table2Version = 211 ; - indicatorOfParameter = 164 ; - } -#Surface flux reactive tracer 9 -'sfgr9diff' = { - table2Version = 211 ; - indicatorOfParameter = 165 ; - } -#Surface flux reactive tracer 10 -'sfgr10diff' = { - table2Version = 211 ; - indicatorOfParameter = 166 ; - } -#Radon -'radiff' = { - table2Version = 211 ; - indicatorOfParameter = 181 ; - } -#Sulphur Hexafluoride -'sf6diff' = { - table2Version = 211 ; - indicatorOfParameter = 182 ; - } -#Total column Radon -'tcradiff' = { - table2Version = 211 ; - indicatorOfParameter = 183 ; - } -#Total column Sulphur Hexafluoride -'tcsf6diff' = { - table2Version = 211 ; - indicatorOfParameter = 184 ; - } -#Anthropogenic Emissions of Sulphur Hexafluoride -'sf6apfdiff' = { - table2Version = 211 ; - indicatorOfParameter = 185 ; - } -#Ozone mass mixing ratio difference (full chemistry scheme) -'go3diff' = { - table2Version = 211 ; - indicatorOfParameter = 203 ; - } -#GEMS Total column ozone -'gtco3diff' = { - table2Version = 211 ; - indicatorOfParameter = 206 ; - } -#Total Aerosol Optical Depth at 550nm -'aod550diff' = { - table2Version = 211 ; - indicatorOfParameter = 207 ; - } -#Sea Salt Aerosol Optical Depth at 550nm -'ssaod550diff' = { - table2Version = 211 ; - indicatorOfParameter = 208 ; - } -#Dust Aerosol Optical Depth at 550nm -'duaod550diff' = { - table2Version = 211 ; - indicatorOfParameter = 209 ; - } -#Organic Matter Aerosol Optical Depth at 550nm -'omaod550diff' = { - table2Version = 211 ; - indicatorOfParameter = 210 ; - } -#Black Carbon Aerosol Optical Depth at 550nm -'bcaod550diff' = { - table2Version = 211 ; - indicatorOfParameter = 211 ; - } -#Sulphate Aerosol Optical Depth at 550nm -'suaod550diff' = { - table2Version = 211 ; - indicatorOfParameter = 212 ; - } -#Total Aerosol Optical Depth at 469nm -'aod469diff' = { - table2Version = 211 ; - indicatorOfParameter = 213 ; - } -#Total Aerosol Optical Depth at 670nm -'aod670diff' = { - table2Version = 211 ; - indicatorOfParameter = 214 ; - } -#Total Aerosol Optical Depth at 865nm -'aod865diff' = { - table2Version = 211 ; - indicatorOfParameter = 215 ; - } -#Total Aerosol Optical Depth at 1240nm -'aod1240diff' = { - table2Version = 211 ; - indicatorOfParameter = 216 ; - } -#Total precipitation observation count -'tpoc' = { - table2Version = 220 ; - indicatorOfParameter = 228 ; - } -#Convective inhibition -'cin' = { - table2Version = 228 ; - indicatorOfParameter = 1 ; - } -#Orography -'orog' = { - table2Version = 228 ; - indicatorOfParameter = 2 ; - } -#Friction velocity -'zust' = { - table2Version = 228 ; - indicatorOfParameter = 3 ; - } -#Mean 2 metre temperature -'mean2t' = { - table2Version = 228 ; - indicatorOfParameter = 4 ; - } -#Mean of 10 metre wind speed -'mean10ws' = { - table2Version = 228 ; - indicatorOfParameter = 5 ; - } -#Mean total cloud cover -'meantcc' = { - table2Version = 228 ; - indicatorOfParameter = 6 ; - } -#Lake total depth -'dl' = { - table2Version = 228 ; - indicatorOfParameter = 7 ; - } -#Lake mix-layer temperature -'lmlt' = { - table2Version = 228 ; - indicatorOfParameter = 8 ; - } -#Lake mix-layer depth -'lmld' = { - table2Version = 228 ; - indicatorOfParameter = 9 ; - } -#Lake bottom temperature -'lblt' = { - table2Version = 228 ; - indicatorOfParameter = 10 ; - } -#Lake total layer temperature -'ltlt' = { - table2Version = 228 ; - indicatorOfParameter = 11 ; - } -#Lake shape factor -'lshf' = { - table2Version = 228 ; - indicatorOfParameter = 12 ; - } -#Lake ice surface temperature -'lict' = { - table2Version = 228 ; - indicatorOfParameter = 13 ; - } -#Lake ice total depth -'licd' = { - table2Version = 228 ; - indicatorOfParameter = 14 ; - } -#Minimum vertical gradient of refractivity inside trapping layer -'dndzn' = { - table2Version = 228 ; - indicatorOfParameter = 15 ; - } -#Mean vertical gradient of refractivity inside trapping layer -'dndza' = { - table2Version = 228 ; - indicatorOfParameter = 16 ; - } -#Duct base height -'dctb' = { - table2Version = 228 ; - indicatorOfParameter = 17 ; - } -#Trapping layer base height -'tplb' = { - table2Version = 228 ; - indicatorOfParameter = 18 ; - } -#Trapping layer top height -'tplt' = { - table2Version = 228 ; - indicatorOfParameter = 19 ; - } -#Soil moisture -'sm' = { - table2Version = 228 ; - indicatorOfParameter = 39 ; - } -#10 metre u-component of neutral wind -'u10n' = { - table2Version = 228 ; - indicatorOfParameter = 131 ; - } -#10 metre v-component of neutral wind -'v10n' = { - table2Version = 228 ; - indicatorOfParameter = 132 ; - } -#Soil temperature -'st' = { - table2Version = 228 ; - indicatorOfParameter = 139 ; - } -#Snow depth water equivalent -'sd' = { - table2Version = 228 ; - indicatorOfParameter = 141 ; - } -#Snowfall water equivalent -'sf' = { - table2Version = 228 ; - indicatorOfParameter = 144 ; - } -#Total Cloud Cover -'tcc' = { - table2Version = 228 ; - indicatorOfParameter = 164 ; - } -#Field capacity -'cap' = { - table2Version = 228 ; - indicatorOfParameter = 170 ; - } -#Wilting point -'wilt' = { +#Maximum 10 metre wind gust in the last 3 hours +'fg310' = { table2Version = 228 ; - indicatorOfParameter = 171 ; + indicatorOfParameter = 28 ; } -#Total Precipitation -'tp' = { +#2 metre relative humidity with respect to water +'rhw2' = { table2Version = 228 ; - indicatorOfParameter = 228 ; - } -#Snow evaporation (variable resolution) -'esvar' = { - table2Version = 230 ; - indicatorOfParameter = 44 ; - } -#Snowmelt (variable resolution) -'smltvar' = { - table2Version = 230 ; - indicatorOfParameter = 45 ; - } -#Solar duration (variable resolution) -'sdurvar' = { - table2Version = 230 ; - indicatorOfParameter = 46 ; - } -#Downward UV radiation at the surface (variable resolution) -'uvbvar' = { - table2Version = 230 ; - indicatorOfParameter = 57 ; - } -#Photosynthetically active radiation at the surface (variable resolution) -'parvar' = { - table2Version = 230 ; - indicatorOfParameter = 58 ; - } -#Stratiform precipitation (Large-scale precipitation) (variable resolution) -'lspvar' = { - table2Version = 230 ; - indicatorOfParameter = 142 ; - } -#Convective precipitation (variable resolution) -'cpvar' = { - table2Version = 230 ; - indicatorOfParameter = 143 ; - } -#Snowfall (convective + stratiform) (variable resolution) -'sfvar' = { - table2Version = 230 ; - indicatorOfParameter = 144 ; - } -#Boundary layer dissipation (variable resolution) -'bldvar' = { - table2Version = 230 ; - indicatorOfParameter = 145 ; - } -#Surface sensible heat flux (variable resolution) -'sshfvar' = { - table2Version = 230 ; - indicatorOfParameter = 146 ; - } -#Surface latent heat flux (variable resolution) -'slhfvar' = { - table2Version = 230 ; - indicatorOfParameter = 147 ; - } -#Surface solar radiation downwards (variable resolution) -'ssrdvar' = { - table2Version = 230 ; - indicatorOfParameter = 169 ; - } -#Surface thermal radiation downwards (variable resolution) -'strdvar' = { - table2Version = 230 ; - indicatorOfParameter = 175 ; + indicatorOfParameter = 37 ; } -#Surface net solar radiation (variable resolution) -'ssrvar' = { - table2Version = 230 ; - indicatorOfParameter = 176 ; +#200 metre U wind component +'u200' = { + table2Version = 228 ; + indicatorOfParameter = 239 ; } -#Surface net thermal radiation (variable resolution) -'strvar' = { - table2Version = 230 ; - indicatorOfParameter = 177 ; +#200 metre V wind component +'v200' = { + table2Version = 228 ; + indicatorOfParameter = 240 ; } -#Top net solar radiation (variable resolution) -'tsrvar' = { - table2Version = 230 ; - indicatorOfParameter = 178 ; +#200 metre wind speed +'si200' = { + table2Version = 228 ; + indicatorOfParameter = 241 ; } -#Top net thermal radiation (variable resolution) -'ttrvar' = { - table2Version = 230 ; - indicatorOfParameter = 179 ; +#100 metre wind speed +'si100' = { + table2Version = 228 ; + indicatorOfParameter = 249 ; } -#East-West surface stress (variable resolution) -'ewssvar' = { - table2Version = 230 ; - indicatorOfParameter = 180 ; +#10 metre wind gust gradient +'fggrd10' = { + table2Version = 129 ; + indicatorOfParameter = 49 ; } -#North-South surface stress (variable resolution) -'nsssvar' = { - table2Version = 230 ; - indicatorOfParameter = 181 ; +#10 metre wind gust in the last 6 hours gradient +'fg6grd10' = { + table2Version = 129 ; + indicatorOfParameter = 123 ; } -#Evaporation (variable resolution) -'evar' = { - table2Version = 230 ; - indicatorOfParameter = 182 ; +#10 metre U wind component gradient +'ugrd10' = { + table2Version = 129 ; + indicatorOfParameter = 165 ; } -#Sunshine duration (variable resolution) -'sundvar' = { - table2Version = 230 ; - indicatorOfParameter = 189 ; +#10 metre V wind component gradient +'vgrd10' = { + table2Version = 129 ; + indicatorOfParameter = 166 ; } -#Longitudinal component of gravity wave stress (variable resolution) -'lgwsvar' = { - table2Version = 230 ; - indicatorOfParameter = 195 ; +#2 metre temperature gradient +'grd2t' = { + table2Version = 129 ; + indicatorOfParameter = 167 ; } -#Meridional component of gravity wave stress (variable resolution) -'mgwsvar' = { - table2Version = 230 ; - indicatorOfParameter = 196 ; +#2 metre dewpoint temperature gradient +'grd2d' = { + table2Version = 129 ; + indicatorOfParameter = 168 ; } -#Gravity wave dissipation (variable resolution) -'gwdvar' = { - table2Version = 230 ; - indicatorOfParameter = 197 ; +#10 metre wind speed gradient +'sigrd10' = { + table2Version = 129 ; + indicatorOfParameter = 207 ; } -#Skin reservoir content (variable resolution) -'srcvar' = { - table2Version = 230 ; - indicatorOfParameter = 198 ; +#2m temperature anomaly of at least +2K +'t2ag2' = { + table2Version = 131 ; + indicatorOfParameter = 1 ; } -#Runoff (variable resolution) -'rovar' = { - table2Version = 230 ; - indicatorOfParameter = 205 ; +#2m temperature anomaly of at least +1K +'t2ag1' = { + table2Version = 131 ; + indicatorOfParameter = 2 ; } -#Top net solar radiation, clear sky (variable resolution) -'tsrcvar' = { - table2Version = 230 ; - indicatorOfParameter = 208 ; +#2m temperature anomaly of at least 0K +'t2ag0' = { + table2Version = 131 ; + indicatorOfParameter = 3 ; } -#Top net thermal radiation, clear sky (variable resolution) -'ttrcvar' = { - table2Version = 230 ; - indicatorOfParameter = 209 ; +#2m temperature anomaly of at most -1K +'t2alm1' = { + table2Version = 131 ; + indicatorOfParameter = 4 ; } -#Surface net solar radiation, clear sky (variable resolution) -'ssrcvar' = { - table2Version = 230 ; - indicatorOfParameter = 210 ; +#2m temperature anomaly of at most -2K +'t2alm2' = { + table2Version = 131 ; + indicatorOfParameter = 5 ; } -#Surface net thermal radiation, clear sky (variable resolution) -'strcvar' = { - table2Version = 230 ; - indicatorOfParameter = 211 ; +#10 metre wind gust probability +'g10p' = { + table2Version = 131 ; + indicatorOfParameter = 49 ; } -#TOA incident solar radiation (variable resolution) -'tisrvar' = { - table2Version = 230 ; - indicatorOfParameter = 212 ; +#10 metre Wind speed of at least 10 m/s +'sp10g10' = { + table2Version = 131 ; + indicatorOfParameter = 68 ; } -#Surface temperature significance -'sts' = { - table2Version = 234 ; - indicatorOfParameter = 139 ; +#10 metre Wind speed of at least 15 m/s +'sp10g15' = { + table2Version = 131 ; + indicatorOfParameter = 69 ; } -#Mean sea level pressure significance -'msls' = { - table2Version = 234 ; - indicatorOfParameter = 151 ; +#10 metre wind gust of at least 15 m/s +'fg10g15' = { + table2Version = 131 ; + indicatorOfParameter = 70 ; } -#2 metre temperature significance -'t2s' = { - table2Version = 234 ; - indicatorOfParameter = 167 ; +#10 metre wind gust of at least 20 m/s +'fg10g20' = { + table2Version = 131 ; + indicatorOfParameter = 71 ; } -#Total precipitation significance -'tps' = { - table2Version = 234 ; - indicatorOfParameter = 228 ; +#10 metre wind gust of at least 25 m/s +'fg10g25' = { + table2Version = 131 ; + indicatorOfParameter = 72 ; } -#U-component surface stokes drift -'ust' = { - table2Version = 140 ; - indicatorOfParameter = 215 ; +#2 metre temperature less than 273.15 K +'t2l273' = { + table2Version = 131 ; + indicatorOfParameter = 73 ; } -#V-component surface stokes drift -'vst' = { - table2Version = 140 ; - indicatorOfParameter = 216 ; +#10 metre speed probability +'sp10' = { + table2Version = 131 ; + indicatorOfParameter = 165 ; } -#Wildfire radiative power maximum -'maxfrpfire' = { - table2Version = 210 ; - indicatorOfParameter = 101 ; +#2 metre temperature probability +'t2p' = { + table2Version = 131 ; + indicatorOfParameter = 167 ; } -#Wildfire flux of Sulfur Dioxide -'so2fire' = { - table2Version = 210 ; - indicatorOfParameter = 102 ; +#2m temperature probability less than -10 C +'t2plm10' = { + table2Version = 133 ; + indicatorOfParameter = 1 ; } -#Wildfire Flux of Methanol (CH3OH) -'ch3ohfire' = { - table2Version = 210 ; - indicatorOfParameter = 103 ; +#2m temperature probability less than -5 C +'t2plm5' = { + table2Version = 133 ; + indicatorOfParameter = 2 ; } -#Wildfire Flux of Ethanol (C2H5OH) -'c2h5ohfire' = { - table2Version = 210 ; - indicatorOfParameter = 104 ; +#2m temperature probability less than 0 C +'t2pl0' = { + table2Version = 133 ; + indicatorOfParameter = 3 ; } -#Wildfire Flux of Propane (C3H8) -'c3h8fire' = { - table2Version = 210 ; - indicatorOfParameter = 105 ; +#2m temperature probability less than 5 C +'t2pl5' = { + table2Version = 133 ; + indicatorOfParameter = 4 ; } -#Wildfire Flux of Ethene (C2H4) -'c2h4fire' = { - table2Version = 210 ; - indicatorOfParameter = 106 ; +#2m temperature probability less than 10 C +'t2pl10' = { + table2Version = 133 ; + indicatorOfParameter = 5 ; } -#Wildfire Flux of Propene (C3H6) -'c3h6fire' = { - table2Version = 210 ; - indicatorOfParameter = 107 ; +#2m temperature probability greater than 25 C +'t2pg25' = { + table2Version = 133 ; + indicatorOfParameter = 6 ; } -#Wildfire Flux of Isoprene (C5H8) -'c5h8fire' = { - table2Version = 210 ; - indicatorOfParameter = 108 ; +#2m temperature probability greater than 30 C +'t2pg30' = { + table2Version = 133 ; + indicatorOfParameter = 7 ; } -#Wildfire Flux of Terpenes (C5H8)n -'terpenesfire' = { - table2Version = 210 ; - indicatorOfParameter = 109 ; +#2m temperature probability greater than 35 C +'t2pg35' = { + table2Version = 133 ; + indicatorOfParameter = 8 ; } -#Wildfire Flux of Toluene_lump (C7H8+ C6H6 + C8H10) -'toluenefire' = { - table2Version = 210 ; - indicatorOfParameter = 110 ; +#2m temperature probability greater than 40 C +'t2pg40' = { + table2Version = 133 ; + indicatorOfParameter = 9 ; } -#Wildfire Flux of Higher Alkenes (CnH2n, C>=4) -'hialkenesfire' = { - table2Version = 210 ; - indicatorOfParameter = 111 ; +#2m temperature probability greater than 45 C +'t2pg45' = { + table2Version = 133 ; + indicatorOfParameter = 10 ; } -#Wildfire Flux of Higher Alkanes (CnH2n+2, C>=4) -'hialkanesfire' = { - table2Version = 210 ; - indicatorOfParameter = 112 ; +#10 metre wind speed probability of at least 10 m/s +'sp10g10' = { + table2Version = 133 ; + indicatorOfParameter = 21 ; } -#Wildfire Flux of Formaldehyde (CH2O) -'ch2ofire' = { - table2Version = 210 ; - indicatorOfParameter = 113 ; +#10 metre wind speed probability of at least 15 m/s +'sp10g15' = { + table2Version = 133 ; + indicatorOfParameter = 22 ; } -#Wildfire Flux of Acetaldehyde (C2H4O) -'c2h4ofire' = { - table2Version = 210 ; - indicatorOfParameter = 114 ; +#10 metre wind speed probability of at least 20 m/s +'sp10g20' = { + table2Version = 133 ; + indicatorOfParameter = 23 ; } -#Wildfire Flux of Acetone (C3H6O) -'c3h6ofire' = { - table2Version = 210 ; - indicatorOfParameter = 115 ; +#10 metre wind speed probability of at least 35 m/s +'sp10g35' = { + table2Version = 133 ; + indicatorOfParameter = 24 ; } -#Wildfire Flux of Ammonia (NH3) -'nh3fire' = { - table2Version = 210 ; - indicatorOfParameter = 116 ; +#10 metre wind speed probability of at least 50 m/s +'sp10g50' = { + table2Version = 133 ; + indicatorOfParameter = 25 ; } -#Wildfire Flux of Dimethyl Sulfide (DMS) (C2H6S) -'c2h6sfire' = { - table2Version = 210 ; - indicatorOfParameter = 117 ; +#10 metre wind gust probability of at least 20 m/s +'gp10g20' = { + table2Version = 133 ; + indicatorOfParameter = 26 ; } -#Wildfire radiative power maximum -'maxfrpfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 101 ; +#10 metre wind gust probability of at least 35 m/s +'gp10g35' = { + table2Version = 133 ; + indicatorOfParameter = 27 ; } -#Wildfire flux of Sulfur Dioxide -'so2firediff' = { - table2Version = 211 ; - indicatorOfParameter = 102 ; +#10 metre wind gust probability of at least 50 m/s +'gp10g50' = { + table2Version = 133 ; + indicatorOfParameter = 28 ; } -#Wildfire Flux of Methanol (CH3OH) -'ch3ohfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 103 ; +#10 metre wind gust probability of at least 75 m/s +'gp10g75' = { + table2Version = 133 ; + indicatorOfParameter = 29 ; } -#Wildfire Flux of Ethanol (C2H5OH) -'c2h5ohfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 104 ; +#10 metre wind gust probability of at least 100 m/s +'gp10g100' = { + table2Version = 133 ; + indicatorOfParameter = 30 ; } -#Wildfire Flux of Propane (C3H8) -'c3h8firediff' = { - table2Version = 211 ; - indicatorOfParameter = 105 ; +#2D wave spectra (multiple) +'d2sp' = { + table2Version = 140 ; + indicatorOfParameter = 250 ; } -#Wildfire Flux of Ethene (C2H4) -'c2h4firediff' = { - table2Version = 211 ; - indicatorOfParameter = 106 ; +#2D wave spectra (single) +'d2fd' = { + table2Version = 140 ; + indicatorOfParameter = 251 ; } -#Wildfire Flux of Propene (C3H6) -'c3h6firediff' = { - table2Version = 211 ; - indicatorOfParameter = 107 ; +#Eastward surface sea water velocity +'uoe' = { + table2Version = 151 ; + indicatorOfParameter = 131 ; } -#Wildfire Flux of Isoprene (C5H8) -'c5h8firediff' = { - table2Version = 211 ; - indicatorOfParameter = 108 ; +#Northward surface sea water velocity +'von' = { + table2Version = 151 ; + indicatorOfParameter = 132 ; } -#Wildfire Flux of Terpenes (C5H8)n -'terpenesfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 109 ; +#10 metre wind gust during averaging time +'fgrea10' = { + table2Version = 160 ; + indicatorOfParameter = 49 ; } -#Wildfire Flux of Toluene_lump (C7H8+ C6H6 + C8H10) -'toluenefirediff' = { - table2Version = 211 ; - indicatorOfParameter = 110 ; +#10 metre wind speed +'wsrea10' = { + table2Version = 160 ; + indicatorOfParameter = 246 ; } -#Wildfire Flux of Higher Alkenes (CnH2n, C>=4) -'hialkenesfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 111 ; +#10 metre wind gust anomaly +'fga10' = { + table2Version = 171 ; + indicatorOfParameter = 49 ; } -#Wildfire Flux of Higher Alkanes (CnH2n+2, C>=4) -'hialkanesfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 112 ; +#10 metre U wind component anomaly +'ua10' = { + table2Version = 171 ; + indicatorOfParameter = 165 ; } -#Wildfire Flux of Formaldehyde (CH2O) -'ch2ofirediff' = { - table2Version = 211 ; - indicatorOfParameter = 113 ; +#10 metre V wind component anomaly +'va10' = { + table2Version = 171 ; + indicatorOfParameter = 166 ; } -#Wildfire Flux of Acetaldehyde (C2H4O) -'c2h4ofirediff' = { - table2Version = 211 ; - indicatorOfParameter = 114 ; +#2 metre temperature anomaly +'t2a' = { + table2Version = 171 ; + indicatorOfParameter = 167 ; } -#Wildfire Flux of Acetone (C3H6O) -'c3h6ofirediff' = { - table2Version = 211 ; - indicatorOfParameter = 115 ; +#2 metre dewpoint temperature anomaly +'d2a' = { + table2Version = 171 ; + indicatorOfParameter = 168 ; } -#Wildfire Flux of Ammonia (NH3) -'nh3firediff' = { - table2Version = 211 ; - indicatorOfParameter = 116 ; +#10 metre wind speed anomaly +'sia10' = { + table2Version = 171 ; + indicatorOfParameter = 207 ; } -#Wildfire Flux of Dimethyl Sulfide (DMS) (C2H6S) -'c2h6sfirediff' = { - table2Version = 211 ; - indicatorOfParameter = 117 ; +#2 metre dewpoint temperature difference +'ddiff2' = { + table2Version = 200 ; + indicatorOfParameter = 168 ; } -#V-tendency from non-orographic wave drag -'vtnowd' = { +#Mean 2 metre temperature +'mean2t' = { table2Version = 228 ; - indicatorOfParameter = 134 ; + indicatorOfParameter = 4 ; } -#U-tendency from non-orographic wave drag -'utnowd' = { +#Mean of 10 metre wind speed +'mean10ws' = { table2Version = 228 ; - indicatorOfParameter = 136 ; + indicatorOfParameter = 5 ; + } +#2 metre temperature significance +'t2s' = { + table2Version = 234 ; + indicatorOfParameter = 167 ; } #100 metre U wind component 'u100' = { @@ -18013,14 +508,4 @@ 'v100' = { table2Version = 228 ; indicatorOfParameter = 247 ; - } -#ASCAT first soil moisture CDF matching parameter -'ascat_sm_cdfa' = { - table2Version = 228 ; - indicatorOfParameter = 253 ; - } -#ASCAT second soil moisture CDF matching parameter -'ascat_sm_cdfb' = { - table2Version = 228 ; - indicatorOfParameter = 254 ; } diff --git a/definitions/grib1/localConcepts/rjtd/cfVarName.def b/definitions/grib1/localConcepts/rjtd/cfVarName.def index a41399122..7629e7475 100644 --- a/definitions/grib1/localConcepts/rjtd/cfVarName.def +++ b/definitions/grib1/localConcepts/rjtd/cfVarName.def @@ -1,120 +1,9 @@ # Automatically generated by ./create_def.pl, do not edit -#Stream function -'strf' = { - table2Version = 200 ; - indicatorOfParameter = 35 ; - } -#Velocity potential -'vp' = { - table2Version = 200 ; - indicatorOfParameter = 36 ; - } -#Potential temperature -'pt' = { - table2Version = 200 ; - indicatorOfParameter = 13 ; - } -#Wind speed -'ws' = { - table2Version = 200 ; - indicatorOfParameter = 32 ; - } #Sea ice area fraction -'ci' = { +'siconc' = { table2Version = 200 ; indicatorOfParameter = 91 ; } -#Montgomery potential -'mont' = { - table2Version = 200 ; - indicatorOfParameter = 37 ; - } -#Pressure -'pres' = { - table2Version = 200 ; - indicatorOfParameter = 1 ; - } -#Potential vorticity -'pv' = { - table2Version = 200 ; - indicatorOfParameter = 4 ; - } -#Total column cloud liquid water -'tclw' = { - table2Version = 200 ; - indicatorOfParameter = 227 ; - } -#Total column cloud ice water -'tciw' = { - table2Version = 200 ; - indicatorOfParameter = 58 ; - } -#Geopotential -'z' = { - table2Version = 200 ; - indicatorOfParameter = 6 ; - } -#Temperature -'t' = { - table2Version = 200 ; - indicatorOfParameter = 11 ; - } -#U component of wind -'u' = { - table2Version = 200 ; - indicatorOfParameter = 33 ; - } -#V component of wind -'v' = { - table2Version = 200 ; - indicatorOfParameter = 34 ; - } -#Specific humidity -'q' = { - table2Version = 200 ; - indicatorOfParameter = 51 ; - } -#Surface pressure -'sp' = { - table2Version = 200 ; - indicatorOfParameter = 1 ; - indicatorOfTypeOfLevel = 1 ; - } -#Vertical velocity -'w' = { - table2Version = 200 ; - indicatorOfParameter = 39 ; - } -#Total column vertically-integrated water vapour -'tcwv' = { - table2Version = 200 ; - indicatorOfParameter = 54 ; - } -#Vorticity (relative) -'vo' = { - table2Version = 200 ; - indicatorOfParameter = 43 ; - } -#Mean sea level pressure -'msl' = { - table2Version = 200 ; - indicatorOfParameter = 2 ; - } -#Divergence -'d' = { - table2Version = 200 ; - indicatorOfParameter = 44 ; - } -#Geopotential height -'gh' = { - table2Version = 200 ; - indicatorOfParameter = 7 ; - } -#Relative humidity -'r' = { - table2Version = 200 ; - indicatorOfParameter = 52 ; - } #10 metre U wind component 'u10' = { table2Version = 200 ; @@ -136,71 +25,6 @@ indicatorOfTypeOfLevel = 105 ; level = 2 ; } -#Land-sea mask -'lsm' = { - table2Version = 200 ; - indicatorOfParameter = 81 ; - } -#Surface roughness (climatological) -'sr' = { - table2Version = 200 ; - indicatorOfParameter = 83 ; - } -#Brightness temperature -'btmp' = { - table2Version = 200 ; - indicatorOfParameter = 118 ; - } -#Specific cloud ice water content -'ciwc' = { - table2Version = 200 ; - indicatorOfParameter = 229 ; - } -#Snow depth -'sde' = { - table2Version = 200 ; - indicatorOfParameter = 66 ; - } -#Convective cloud cover -'ccc' = { - table2Version = 200 ; - indicatorOfParameter = 72 ; - } -#Low cloud cover -'lcc' = { - table2Version = 200 ; - indicatorOfParameter = 73 ; - } -#Medium cloud cover -'mcc' = { - table2Version = 200 ; - indicatorOfParameter = 74 ; - } -#High cloud cover -'hcc' = { - table2Version = 200 ; - indicatorOfParameter = 75 ; - } -#Large scale snow -'lssf' = { - table2Version = 200 ; - indicatorOfParameter = 79 ; - } -#Latent heat flux -'lhf' = { - table2Version = 200 ; - indicatorOfParameter = 121 ; - } -#Sensible heat flux -'shf' = { - table2Version = 200 ; - indicatorOfParameter = 122 ; - } -#Boundary layer dissipation -'bld' = { - table2Version = 200 ; - indicatorOfParameter = 123 ; - } #2 metre specific humidity 'sh2' = { table2Version = 200 ; @@ -208,745 +32,10 @@ indicatorOfTypeOfLevel = 105 ; level = 2 ; } -#Convective snow -'snoc' = { - table2Version = 200 ; - indicatorOfParameter = 78 ; - } -#Maximum wind speed -'maxgust' = { - table2Version = 200 ; - indicatorOfParameter = 219 ; - } -#Downward short-wave radiation flux -'dswrf' = { - table2Version = 200 ; - indicatorOfParameter = 204 ; - } -#Upward short-wave radiation flux -'uswrf' = { - table2Version = 200 ; - indicatorOfParameter = 211 ; - } -#Downward long-wave radiation flux -'dlwrf' = { - table2Version = 200 ; - indicatorOfParameter = 205 ; - } -#Upward long-wave radiation flux -'ulwrf' = { - table2Version = 200 ; - indicatorOfParameter = 212 ; - } -#Cloud water -'cwat' = { - table2Version = 200 ; - indicatorOfParameter = 76 ; - } -#Cloud work function -'cwork' = { - table2Version = 200 ; - indicatorOfParameter = 146 ; - } -#Total column integrated ozone -'tcioz' = { - table2Version = 200 ; - indicatorOfParameter = 10 ; - } -#Ground heat flux -'gflux' = { - table2Version = 200 ; - indicatorOfParameter = 155 ; - } #2 metre relative humidity 'r2' = { table2Version = 200 ; indicatorOfParameter = 52 ; indicatorOfTypeOfLevel = 105 ; level = 2 ; - } -#Clear Sky Downward Solar Flux -'csdsf' = { - table2Version = 200 ; - indicatorOfParameter = 161 ; - } -#Clear Sky Upward Solar Flux -'csusf' = { - table2Version = 200 ; - indicatorOfParameter = 160 ; - } -#Clear Sky Upward Long Wave Flux -'csulf' = { - table2Version = 200 ; - indicatorOfParameter = 162 ; - } -#Clear Sky Downward Long Wave Flux -'csdlf' = { - table2Version = 200 ; - indicatorOfParameter = 163 ; - } -#Forecast albedo -'al' = { - table2Version = 200 ; - indicatorOfParameter = 84 ; - } -#Mean evaporation -'evpsfc' = { - table2Version = 200 ; - indicatorOfParameter = 57 ; - } -#Mean total precipitation -'tpratsfc' = { - table2Version = 200 ; - indicatorOfParameter = 61 ; - } -#Mean large scale precipitation -'lpratsfc' = { - table2Version = 200 ; - indicatorOfParameter = 62 ; - } -#Mean convective precipitation -'cpratsfc' = { - table2Version = 200 ; - indicatorOfParameter = 63 ; - } -#Mean snowfall rate water equivalent -'srweqsfc' = { - table2Version = 200 ; - indicatorOfParameter = 64 ; - } -#Mean surface water runoff -'rofsfc' = { - table2Version = 200 ; - indicatorOfParameter = 90 ; - } -#Square of Brunt-Vaisala frequency -'bvf2tht' = { - table2Version = 200 ; - indicatorOfParameter = 132 ; - } -#Adiabatic zonal acceleration -'aduahbl' = { - table2Version = 200 ; - indicatorOfParameter = 151 ; - } -#Adiabatic meridional acceleration -'advaprs' = { - table2Version = 200 ; - indicatorOfParameter = 165 ; - } -#Mean frequency of deep convection -'frcvsfc' = { - table2Version = 200 ; - indicatorOfParameter = 170 ; - } -#Mean frequency of shallow convection -'frcvssfc' = { - table2Version = 200 ; - indicatorOfParameter = 171 ; - } -#Mean frequency of stratocumulus parameterisation -'frscsfc' = { - table2Version = 200 ; - indicatorOfParameter = 172 ; - } -#Gravity wave zonal acceleration -'gwduahbl' = { - table2Version = 200 ; - indicatorOfParameter = 173 ; - } -#Gravity wave meridional acceleration -'gwdvahbl' = { - table2Version = 200 ; - indicatorOfParameter = 174 ; - } -#Mean evapotranspiration -'ltrssfc' = { - table2Version = 200 ; - indicatorOfParameter = 202 ; - } -#Adiabatic heating rate -'adhrhbl' = { - table2Version = 200 ; - indicatorOfParameter = 222 ; - } -#Moisture storage on canopy -'mscsfc' = { - table2Version = 200 ; - indicatorOfParameter = 223 ; - } -#Moisture storage on ground or cover -'msgsfc' = { - table2Version = 200 ; - indicatorOfParameter = 224 ; - } -#Mass concentration of condensed water in soil -'smcugl' = { - table2Version = 200 ; - indicatorOfParameter = 226 ; - } -#Upward mass flux at cloud base -'mflxbhbl' = { - table2Version = 200 ; - indicatorOfParameter = 230 ; - } -#Upward mass flux -'mfluxhbl' = { - table2Version = 200 ; - indicatorOfParameter = 231 ; - } -#Adiabatic moistening rate -'admrhbl' = { - table2Version = 200 ; - indicatorOfParameter = 236 ; - } -#Ozone mixing ratio -'ozonehbl' = { - table2Version = 200 ; - indicatorOfParameter = 237 ; - } -#Convective zonal acceleration -'cnvuahbl' = { - table2Version = 200 ; - indicatorOfParameter = 239 ; - } -#Mean zonal momentum flux by long gravity wave -'fglusfc' = { - table2Version = 200 ; - indicatorOfParameter = 147 ; - } -#Mean meridional momentum flux by long gravity wave -'fglvsfc' = { - table2Version = 200 ; - indicatorOfParameter = 148 ; - } -#Mean meridional momentum flux by short gravity wave -'fgsvsfc' = { - table2Version = 200 ; - indicatorOfParameter = 154 ; - } -#Mean zonal momentum flux by short gravity wave -'fgsusfc' = { - table2Version = 200 ; - indicatorOfParameter = 159 ; - } -#Convective meridional acceleration -'cnvvahbl' = { - table2Version = 200 ; - indicatorOfParameter = 240 ; - } -#Large scale condensation heating rate -'lrghrhbl' = { - table2Version = 200 ; - indicatorOfParameter = 241 ; - } -#Convective heating rate -'cnvhrhbl' = { - table2Version = 200 ; - indicatorOfParameter = 242 ; - } -#Convective moistening rate -'cnvmrhbl' = { - table2Version = 200 ; - indicatorOfParameter = 243 ; - } -#Vertical diffusion heating rate -'vdfhrhbl' = { - table2Version = 200 ; - indicatorOfParameter = 246 ; - } -#Vertical diffusion zonal acceleration -'vdfuahbl' = { - table2Version = 200 ; - indicatorOfParameter = 247 ; - } -#Vertical diffusion meridional acceleration -'vdfvahbl' = { - table2Version = 200 ; - indicatorOfParameter = 248 ; - } -#Vertical diffusion moistening rate -'vdfmrhbl' = { - table2Version = 200 ; - indicatorOfParameter = 249 ; - } -#Solar radiative heating rate -'swhrhbl' = { - table2Version = 200 ; - indicatorOfParameter = 250 ; - } -#Long wave radiative heating rate -'lwhrhbl' = { - table2Version = 200 ; - indicatorOfParameter = 251 ; - } -#Large scale moistening rate -'lrgmrhbl' = { - table2Version = 200 ; - indicatorOfParameter = 253 ; - } -#Type of vegetation -'tovg' = { - table2Version = 200 ; - indicatorOfParameter = 252 ; - } -#Virtual temperature -'vtmp' = { - table2Version = 200 ; - indicatorOfParameter = 12 ; - } -#Vertical velocity -'omg2' = { - table2Version = 200 ; - indicatorOfParameter = 40 ; - } -#Interception loss -'pitp' = { - table2Version = 200 ; - indicatorOfParameter = 203 ; - } -#Soil wetness of surface -'ussl' = { - table2Version = 200 ; - indicatorOfParameter = 225 ; - } -#Temperature at canopy -'ctmp' = { - table2Version = 200 ; - indicatorOfParameter = 144 ; - } -#Ground/surface cover temperature -'tgsc' = { - table2Version = 200 ; - indicatorOfParameter = 145 ; - } -#Pressure tendency -'ptend' = { - table2Version = 200 ; - indicatorOfParameter = 3 ; - } -#ICAO Standard Atmosphere reference height -'icaht' = { - table2Version = 200 ; - indicatorOfParameter = 5 ; - } -#Geometrical height -'h' = { - table2Version = 200 ; - indicatorOfParameter = 8 ; - } -#Standard deviation of height -'hstdv' = { - table2Version = 200 ; - indicatorOfParameter = 9 ; - } -#Pseudo-adiabatic potential temperature -'papt' = { - table2Version = 200 ; - indicatorOfParameter = 14 ; - } -#Maximum temperature -'tmax' = { - table2Version = 200 ; - indicatorOfParameter = 15 ; - } -#Minimum temperature -'tmin' = { - table2Version = 200 ; - indicatorOfParameter = 16 ; - } -#Dew point temperature -'dpt' = { - table2Version = 200 ; - indicatorOfParameter = 17 ; - } -#Dew point depression (or deficit) -'depr' = { - table2Version = 200 ; - indicatorOfParameter = 18 ; - } -#Lapse rate -'lapr' = { - table2Version = 200 ; - indicatorOfParameter = 19 ; - } -#Visibility -'vis' = { - table2Version = 200 ; - indicatorOfParameter = 20 ; - } -#Radar spectra (1) -'rdsp1' = { - table2Version = 200 ; - indicatorOfParameter = 21 ; - } -#Radar spectra (2) -'rdsp2' = { - table2Version = 200 ; - indicatorOfParameter = 22 ; - } -#Radar spectra (3) -'rdsp3' = { - table2Version = 200 ; - indicatorOfParameter = 23 ; - } -#Parcel lifted index (to 500 hPa) -'pli' = { - table2Version = 200 ; - indicatorOfParameter = 24 ; - } -#Temperature anomaly -'ta' = { - table2Version = 200 ; - indicatorOfParameter = 25 ; - } -#Pressure anomaly -'presa' = { - table2Version = 200 ; - indicatorOfParameter = 26 ; - } -#Geopotential height anomaly -'gpa' = { - table2Version = 200 ; - indicatorOfParameter = 27 ; - } -#Wave spectra (1) -'wvsp1' = { - table2Version = 200 ; - indicatorOfParameter = 28 ; - } -#Wave spectra (2) -'wvsp2' = { - table2Version = 200 ; - indicatorOfParameter = 29 ; - } -#Wave spectra (3) -'wvsp3' = { - table2Version = 200 ; - indicatorOfParameter = 30 ; - } -#Wind direction -'wdir' = { - table2Version = 200 ; - indicatorOfParameter = 31 ; - } -#Sigma coordinate vertical velocity -'sgcvv' = { - table2Version = 200 ; - indicatorOfParameter = 38 ; - } -#Absolute vorticity -'absv' = { - table2Version = 200 ; - indicatorOfParameter = 41 ; - } -#Absolute divergence -'absd' = { - table2Version = 200 ; - indicatorOfParameter = 42 ; - } -#Vertical u-component shear -'vucsh' = { - table2Version = 200 ; - indicatorOfParameter = 45 ; - } -#Vertical v-component shear -'vvcsh' = { - table2Version = 200 ; - indicatorOfParameter = 46 ; - } -#Direction of current -'dirc' = { - table2Version = 200 ; - indicatorOfParameter = 47 ; - } -#Speed of current -'spc' = { - table2Version = 200 ; - indicatorOfParameter = 48 ; - } -#Humidity mixing ratio -'mixr' = { - table2Version = 200 ; - indicatorOfParameter = 53 ; - } -#Vapour pressure -'vp' = { - table2Version = 200 ; - indicatorOfParameter = 55 ; - } -#Saturation deficit -'satd' = { - table2Version = 200 ; - indicatorOfParameter = 56 ; - } -#Precipitation rate -'prate' = { - table2Version = 200 ; - indicatorOfParameter = 59 ; - } -#Thunderstorm probability -'tstm' = { - table2Version = 200 ; - indicatorOfParameter = 60 ; - } -#Mixed layer depth -'mld' = { - table2Version = 200 ; - indicatorOfParameter = 67 ; - } -#Transient thermocline depth -'tthdp' = { - table2Version = 200 ; - indicatorOfParameter = 68 ; - } -#Main thermocline depth -'mthd' = { - table2Version = 200 ; - indicatorOfParameter = 69 ; - } -#Main thermocline anomaly -'mtha' = { - table2Version = 200 ; - indicatorOfParameter = 70 ; - } -#Best lifted index (to 500 hPa) -'bli' = { - table2Version = 200 ; - indicatorOfParameter = 77 ; - } -#Water temperature -'wtmp' = { - table2Version = 200 ; - indicatorOfParameter = 80 ; - } -#Deviation of sea-level from mean -'dslm' = { - table2Version = 200 ; - indicatorOfParameter = 82 ; - } -#Soil moisture content -'ssw' = { - table2Version = 200 ; - indicatorOfParameter = 86 ; - } -#Salinity -'s' = { - table2Version = 200 ; - indicatorOfParameter = 88 ; - } -#Density -'den' = { - table2Version = 200 ; - indicatorOfParameter = 89 ; - } -#Ice thickness -'icetk' = { - table2Version = 200 ; - indicatorOfParameter = 92 ; - } -#Direction of ice drift -'diced' = { - table2Version = 200 ; - indicatorOfParameter = 93 ; - } -#Speed of ice drift -'siced' = { - table2Version = 200 ; - indicatorOfParameter = 94 ; - } -#U-component of ice drift -'uice' = { - table2Version = 200 ; - indicatorOfParameter = 95 ; - } -#V-component of ice drift -'vice' = { - table2Version = 200 ; - indicatorOfParameter = 96 ; - } -#Ice growth rate -'iceg' = { - table2Version = 200 ; - indicatorOfParameter = 97 ; - } -#Ice divergence -'iced' = { - table2Version = 200 ; - indicatorOfParameter = 98 ; - } -#Snowmelt -'snom' = { - table2Version = 200 ; - indicatorOfParameter = 99 ; - } -#Signific.height,combined wind waves+swell -'swh' = { - table2Version = 200 ; - indicatorOfParameter = 100 ; - } -#Mean direction of wind waves -'mdww' = { - table2Version = 200 ; - indicatorOfParameter = 101 ; - } -#Significant height of wind waves -'shww' = { - table2Version = 200 ; - indicatorOfParameter = 102 ; - } -#Mean period of wind waves -'mpww' = { - table2Version = 200 ; - indicatorOfParameter = 103 ; - } -#Direction of swell waves -'swdir' = { - table2Version = 200 ; - indicatorOfParameter = 104 ; - } -#Significant height of swell waves -'swell' = { - table2Version = 200 ; - indicatorOfParameter = 105 ; - } -#Mean period of swell waves -'swper' = { - table2Version = 200 ; - indicatorOfParameter = 106 ; - } -#Primary wave direction -'mdps' = { - table2Version = 200 ; - indicatorOfParameter = 107 ; - } -#Primary wave mean period -'mpps' = { - table2Version = 200 ; - indicatorOfParameter = 108 ; - } -#Secondary wave direction -'dirsw' = { - table2Version = 200 ; - indicatorOfParameter = 109 ; - } -#Secondary wave mean period -'swp' = { - table2Version = 200 ; - indicatorOfParameter = 110 ; - } -#Net short-wave radiation flux (surface) -'nswrs' = { - table2Version = 200 ; - indicatorOfParameter = 111 ; - } -#Net long-wave radiation flux (surface) -'nlwrs' = { - table2Version = 200 ; - indicatorOfParameter = 112 ; - } -#Net short-wave radiation flux(atmosph.top) -'nswrt' = { - table2Version = 200 ; - indicatorOfParameter = 113 ; - } -#Net long-wave radiation flux(atmosph.top) -'nlwrt' = { - table2Version = 200 ; - indicatorOfParameter = 114 ; - } -#Long wave radiation flux -'lwavr' = { - table2Version = 200 ; - indicatorOfParameter = 115 ; - } -#Short wave radiation flux -'swavr' = { - table2Version = 200 ; - indicatorOfParameter = 116 ; - } -#Global radiation flux -'grad' = { - table2Version = 200 ; - indicatorOfParameter = 117 ; - } -#Radiance (with respect to wave number) -'lwrad' = { - table2Version = 200 ; - indicatorOfParameter = 119 ; - } -#Radiance (with respect to wave length) -'swrad' = { - table2Version = 200 ; - indicatorOfParameter = 120 ; - } -#Momentum flux, u-component -'uflx' = { - table2Version = 200 ; - indicatorOfParameter = 124 ; - } -#Momentum flux, v-component -'vflx' = { - table2Version = 200 ; - indicatorOfParameter = 125 ; - } -#Wind mixing energy -'wmixe' = { - table2Version = 200 ; - indicatorOfParameter = 126 ; - } -#Image data -'imgd' = { - table2Version = 200 ; - indicatorOfParameter = 127 ; - } -#Cloud liquid water -'clw' = { - table2Version = 200 ; - indicatorOfParameter = 228 ; - } -#Percentage of vegetation -'vegrea' = { - table2Version = 200 ; - indicatorOfParameter = 87 ; - } -#Vertical integral of eastward heat flux -'vithee' = { - table2Version = 200 ; - indicatorOfParameter = 190 ; - } -#Vertical integral of northward heat flux -'vithen' = { - table2Version = 200 ; - indicatorOfParameter = 191 ; - } -#Vertical integral of eastward water vapour flux -'viwve' = { - table2Version = 200 ; - indicatorOfParameter = 157 ; - } -#Vertical integral of northward water vapour flux -'viwvn' = { - table2Version = 200 ; - indicatorOfParameter = 152 ; - } -#specific cloud water content -'qc' = { - table2Version = 200 ; - indicatorOfParameter = 221 ; - } -#Soil temperature -'st' = { - table2Version = 200 ; - indicatorOfParameter = 85 ; - } -#Snow depth water equivalent -'sd' = { - table2Version = 200 ; - indicatorOfParameter = 65 ; - } -#Total Cloud Cover -'tcc' = { - table2Version = 200 ; - indicatorOfParameter = 71 ; } diff --git a/definitions/grib1/section.1.def b/definitions/grib1/section.1.def index 1c3edb5ac..c2dd5c5e0 100644 --- a/definitions/grib1/section.1.def +++ b/definitions/grib1/section.1.def @@ -158,8 +158,11 @@ concept paramId (paramIdECMF,"paramId.def",conceptsDir2,conceptsDir1): long_type concept cfNameECMF(defaultName,"cfName.def",conceptsMasterDir,conceptsLocalDirECMF) : no_copy,read_only; concept cfName(cfNameECMF,"cfName.def",conceptsDir2,conceptsDir1) : dump,no_copy,read_only; -concept cfVarNameECMF(defaultName,"cfVarName.def",conceptsMasterDir,conceptsLocalDirECMF) : no_copy,read_only; -concept cfVarName(cfVarNameECMF,"cfVarName.def",conceptsDir2,conceptsDir1) : dump,no_copy,read_only; +#concept cfVarNameECMF(defaultName,"cfVarName.def",conceptsMasterDir,conceptsLocalDirECMF) : no_copy,read_only; +#concept cfVarName(cfVarNameECMF,"cfVarName.def",conceptsDir2,conceptsDir1) : dump,no_copy,read_only; +# See ECC-1886 +meta defaultCfVarName cf_var_name(shortName) : hidden, read_only; +concept cfVarName(defaultCfVarName,"cfVarName.def",conceptsDir2,conceptsDir1) : dump,no_copy,read_only; concept unitsECMF(defaultName,"units.def",conceptsMasterDir,conceptsLocalDirECMF) : no_copy,read_only; concept units(unitsECMF,"units.def",conceptsDir2,conceptsDir1) : dump,no_copy,read_only; diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index f2a45ec97..892a27e9b 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -1,210 +1,4 @@ # Automatically generated by ./create_def.pl, do not edit -#Total precipitation of at least 1 mm -'tpg1' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 1 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 5 mm -'tpg5' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 5 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 10 mm -'tpg10' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 10 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 20 mm -'tpg20' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 20 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 40 mm -'tpg40' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 40 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 60 mm -'tpg60' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 60 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 80 mm -'tpg80' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 80 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 100 mm -'tpg100' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 100 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 150 mm -'tpg150' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 150 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 200 mm -'tpg200' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 200 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 300 mm -'tpg300' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 3 ; - scaleFactorOfLowerLimit = -2 ; - probabilityType = 3 ; - } -#Stream function -'strf' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 4 ; - } -#Velocity potential -'vp' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 5 ; - } -#Potential temperature -'pt' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 2 ; - } -#Wind speed -'ws' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - } -#Surface photosynthetically active radiation, clear sky -'parcs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 60 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Unbalanced component of temperature -'uctp' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 28 ; - } -#Unbalanced component of logarithm of surface pressure -'ucln' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 31 ; - } -#Unbalanced component of divergence -'ucdv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 45 ; - } -#Low vegetation cover -'cvl' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 53 ; - } -#High vegetation cover -'cvh' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 54 ; - } -#Type of low vegetation -'tvl' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 57 ; - } -#Type of high vegetation -'tvh' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 58 ; - } #Sea ice area fraction 'siconc' = { discipline = 10 ; @@ -212,42 +6,6 @@ parameterNumber = 0 ; typeOfFirstFixedSurface = 1 ; } -#Snow density -'rsn' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 61 ; - } -#Sea surface temperature -'sst' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 1 ; - } -#Soil type -'slt' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - } -#Direct solar radiation -'dsrp' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 54 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#Magnitude of turbulent surface stress -'magss' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 58 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } #Maximum 10 metre wind gust since previous post-processing 'fg10' = { discipline = 0 ; @@ -258,109 +16,6 @@ scaleFactorOfFirstFixedSurface = 0 ; typeOfStatisticalProcessing = 2 ; } -#Large-scale precipitation fraction -'lspf' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 36 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Montgomery potential -'mont' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 6 ; - } -#Pressure -'pres' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - } -#Downward UV radiation at the surface -'uvb' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 12 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Photosynthetically active radiation at the surface -'par' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 10 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Convective available potential energy -'cape' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Potential vorticity -'pv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 14 ; - } -#Leaf area index, low vegetation -'lai_lv' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 55 ; - } -#Leaf area index, high vegetation -'lai_hv' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 56 ; - } -#Standard deviation of filtered subgrid orography (climatological) -'sdfor' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 38 ; - typeOfGeneratingProcess = 9 ; - } -#Specific rain water content -'crwc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 85 ; - } -#Specific snow water content -'cswc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 86 ; - } -#Eta-coordinate vertical velocity -'etadot' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 32 ; - } -#Total column cloud liquid water -'tclw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 69 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Total column cloud ice water -'tciw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 70 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } #Maximum temperature at 2 metres in the last 6 hours 'mx2t6' = { discipline = 0 ; @@ -385,10988 +40,392 @@ typeOfStatisticalProcessing = 3 ; lengthOfTimeRange = 6 ; } -#Surface emissivity -'emis' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 62 ; - typeOfFirstFixedSurface = 1 ; - } -#Geopotential -'z' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 4 ; - } -#Temperature -'t' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - } -#U component of wind -'u' = { +#10 metre U wind component +'u10' = { discipline = 0 ; parameterCategory = 2 ; parameterNumber = 2 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; } -#V component of wind -'v' = { +#10 metre V wind component +'v10' = { discipline = 0 ; parameterCategory = 2 ; parameterNumber = 3 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; } -#Specific humidity -'q' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 0 ; - } -#Surface pressure -'sp' = { +#2 metre temperature +'t2m' = { discipline = 0 ; - parameterCategory = 3 ; + parameterCategory = 0 ; parameterNumber = 0 ; - typeOfFirstFixedSurface = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; } -#Vertical velocity -'w' = { +#2 metre dewpoint temperature +'d2m' = { discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 8 ; + parameterCategory = 0 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; } -#Total column water -'tcw' = { +#Maximum temperature at 2 metres since previous post-processing +'mx2t' = { discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 51 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; + parameterCategory = 0 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; } -#Total column vertically-integrated water vapour -'tcwv' = { +#Minimum temperature at 2 metres since previous post-processing +'mn2t' = { discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 64 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; + parameterCategory = 0 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 3 ; } -#Vorticity (relative) -'vo' = { +#10 metre wind speed +'si10' = { discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 12 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; } -#Boundary layer dissipation -'bld' = { +#10 metre wind gust of at least 10 m/s +'fgg1010' = { discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 20 ; - typeOfStatisticalProcessing = 1 ; - } -#Surface sensible heat flux -'sshf' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Surface latent heat flux -'slhf' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 10 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Charnock -'chnk' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 76 ; - } -#Surface net radiation (SW and LW) -'snr' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Top net radiation (SW and LW) -'tnr' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Mean sea level pressure -'msl' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 101 ; - } -#Divergence -'d' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 13 ; - } -#Geopotential height -'gh' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 5 ; - } -#Relative humidity -'r' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - } -#Boundary layer height -'blh' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 18 ; - } -#Standard deviation of sub-gridscale orography -'sdor' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 20 ; - } -#Anisotropy of sub-gridscale orography -'isor' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 24 ; - } -#Angle of sub-gridscale orography -'anor' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 21 ; - } -#Slope of sub-gridscale orography -'slor' = { - discipline = 0 ; - parameterCategory = 3 ; parameterNumber = 22 ; - } -#10 metre U wind component -'u10' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 2 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#10 metre V wind component -'v10' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 3 ; + productDefinitionTemplateNumber = 9 ; typeOfFirstFixedSurface = 103 ; scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; + scaledValueOfLowerLimit = 10 ; + scaleFactorOfLowerLimit = 0 ; + probabilityType = 3 ; } -#2 metre temperature -'t2m' = { +#2 metre specific humidity +'sh2' = { discipline = 0 ; - parameterCategory = 0 ; + parameterCategory = 1 ; parameterNumber = 0 ; typeOfFirstFixedSurface = 103 ; + typeOfSecondFixedSurface = 255 ; scaledValueOfFirstFixedSurface = 2 ; scaleFactorOfFirstFixedSurface = 0 ; } -#2 metre dewpoint temperature -'d2m' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Surface short-wave (solar) radiation downwards -'ssrd' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 7 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Land-sea mask -'lsm' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 1 ; - } -#Surface roughness (climatological) -'sr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfGeneratingProcess = 9 ; - } -#Surface long-wave (thermal) radiation downwards -'strd' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Surface net short-wave (solar) radiation -'ssr' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Surface net long-wave (thermal) radiation -'str' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Top net short-wave (solar) radiation -'tsr' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 9 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Top net long-wave (thermal) radiation -'ttr' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated eastward turbulent surface stress -'ewss' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 62 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated northward turbulent surface stress -'nsss' = { +#Maximum 10 metre wind gust in the last 3 hours +'fg310' = { discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 63 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Sunshine duration -'sund' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 24 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Brightness temperature -'btmp' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 4 ; - } -#Eastward gravity wave surface stress -'lgws' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 16 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Northward gravity wave surface stress -'mgws' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Gravity wave dissipation -'gwd' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 23 ; - typeOfStatisticalProcessing = 1 ; - } -#Maximum temperature at 2 metres since previous post-processing -'mx2t' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; + parameterNumber = 22 ; typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; + scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; + indicatorOfUnitForTimeRange = 1 ; typeOfStatisticalProcessing = 2 ; + lengthOfTimeRange = 3 ; } -#Minimum temperature at 2 metres since previous post-processing -'mn2t' = { +#2 metre relative humidity with respect to water +'rhw2' = { discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; + parameterCategory = 1 ; + parameterNumber = 93 ; typeOfFirstFixedSurface = 103 ; scaledValueOfFirstFixedSurface = 2 ; scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 3 ; - } -#Ozone mass mixing ratio -'o3' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 1 ; } -#10 metre wind speed -'si10' = { +#200 metre U wind component +'u200' = { discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 1 ; + parameterNumber = 2 ; typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; + scaledValueOfFirstFixedSurface = 200 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Top net short-wave (solar) radiation, clear sky -'tsrc' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Top net long-wave (thermal) radiation, clear sky -'ttrc' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Surface net short-wave (solar) radiation, clear sky -'ssrc' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Surface net long-wave (thermal) radiation, clear sky -'strc' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#TOA incident short-wave (solar) radiation -'tisr' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 7 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Vertically integrated moisture divergence -'vimd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 165 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Instantaneous eastward turbulent surface stress -'iews' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 62 ; - typeOfFirstFixedSurface = 1 ; - } -#Instantaneous northward turbulent surface stress -'inss' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 63 ; - typeOfFirstFixedSurface = 1 ; - } -#Instantaneous surface sensible heat flux -'ishf' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 1 ; - } -#Instantaneous moisture flux -'ie' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 79 ; - typeOfFirstFixedSurface = 1 ; - } -#Logarithm of surface roughness length for heat (climatological) -'lsrh' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 54 ; - typeOfFirstFixedSurface = 1 ; - typeOfGeneratingProcess = 9 ; - } -#Skin temperature -'skt' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 1 ; - } -#Temperature of snow layer -'tsn' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 28 ; - } -#Forecast surface roughness -'fsr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - } -#Forecast logarithm of surface roughness for heat -'flsr' = { +#200 metre V wind component +'v200' = { discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 54 ; - typeOfFirstFixedSurface = 1 ; - } -#Specific cloud liquid water content -'clwc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 83 ; - } -#Specific cloud ice water content -'ciwc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 84 ; - } -#Fraction of cloud cover -'cc' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 32 ; - } -#Large-scale precipitation -'lsp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 54 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Snow depth -'sde' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 11 ; - } -#Low cloud cover -'lcc' = { - discipline = 0 ; - parameterCategory = 6 ; parameterNumber = 3 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 200 ; + scaleFactorOfFirstFixedSurface = 0 ; } -#Medium cloud cover -'mcc' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 4 ; - } -#High cloud cover -'hcc' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 5 ; - } -#Total precipitation of at least 25 mm -'tpg25' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 25 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Total precipitation of at least 50 mm -'tpg50' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - scaledValueOfLowerLimit = 50 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#10 metre wind gust of at least 10 m/s -'fgg1010' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - scaledValueOfLowerLimit = 10 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Probability of temperature standardized anomaly greater than 1 standard deviation -'ptsa_gt_1stdev' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - productDefinitionTemplateNumber = 9 ; - typeOfStatisticalProcessing = 10 ; - scaledValueOfLowerLimit = 1 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Probability of temperature standardized anomaly greater than 1.5 standard deviation -'ptsa_gt_1p5stdev' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - productDefinitionTemplateNumber = 9 ; - typeOfStatisticalProcessing = 10 ; - scaledValueOfLowerLimit = 15 ; - scaleFactorOfLowerLimit = 1 ; - probabilityType = 3 ; - } -#Probability of temperature standardized anomaly greater than 2 standard deviation -'ptsa_gt_2stdev' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - productDefinitionTemplateNumber = 9 ; - typeOfStatisticalProcessing = 10 ; - scaledValueOfLowerLimit = 2 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Probability of temperature standardized anomaly less than -1 standard deviation -'ptsa_lt_1stdev' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - productDefinitionTemplateNumber = 9 ; - typeOfStatisticalProcessing = 10 ; - scaledValueOfLowerLimit = -1 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 0 ; - } -#Probability of temperature standardized anomaly less than -1.5 standard deviation -'ptsa_lt_1p5stdev' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - productDefinitionTemplateNumber = 9 ; - typeOfStatisticalProcessing = 10 ; - scaledValueOfLowerLimit = -15 ; - scaleFactorOfLowerLimit = 1 ; - probabilityType = 0 ; - } -#Probability of temperature standardized anomaly less than -2 standard deviation -'ptsa_lt_2stdev' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - productDefinitionTemplateNumber = 9 ; - typeOfStatisticalProcessing = 10 ; - scaledValueOfLowerLimit = -2 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 0 ; - } -#Wave induced mean sea level correction -'weta' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 87 ; - } -#Ratio of wave angular and frequency width -'wraf' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 80 ; - } -#Number of events in freak waves statistics -'wnslc' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 89 ; - } -#U-component of atmospheric surface momentum flux -'utaua' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 1 ; - } -#V-component of atmospheric surface momentum flux -'vtaua' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 1 ; - } -#U-component of surface momentum flux into ocean -'utauo' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 90 ; - typeOfFirstFixedSurface = 1 ; - } -#V-component of surface momentum flux into ocean -'vtauo' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 91 ; - typeOfFirstFixedSurface = 1 ; - } -#Wave turbulent energy flux into ocean -'wphio' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 92 ; - } -#Wave directional width of first swell partition -'wdw1' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 56 ; - } -#Wave frequency width of first swell partition -'wfw1' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 59 ; - } -#Wave directional width of second swell partition -'wdw2' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 57 ; - } -#Wave frequency width of second swell partition -'wfw2' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 60 ; - } -#Wave directional width of third swell partition -'wdw3' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 58 ; - } -#Wave frequency width of third swell partition -'wfw3' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 61 ; - } -#Wave energy flux magnitude -'wefxm' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 78 ; - } -#Wave energy flux mean direction -'wefxd' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 79 ; - } -#Significant wave height of all waves with periods within the inclusive range from 10 to 12 seconds -'h1012' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - typeOfWavePeriodInterval = 7 ; - scaleFactorOfLowerWavePeriodLimit = 0 ; - scaledValueOfLowerWavePeriodLimit = 10 ; - scaleFactorOfUpperWavePeriodLimit = 0 ; - scaledValueOfUpperWavePeriodLimit = 12 ; - } -#Significant wave height of all waves with periods within the inclusive range from 12 to 14 seconds -'h1214' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - typeOfWavePeriodInterval = 7 ; - scaleFactorOfLowerWavePeriodLimit = 0 ; - scaledValueOfLowerWavePeriodLimit = 12 ; - scaleFactorOfUpperWavePeriodLimit = 0 ; - scaledValueOfUpperWavePeriodLimit = 14 ; - } -#Significant wave height of all waves with periods within the inclusive range from 14 to 17 seconds -'h1417' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - typeOfWavePeriodInterval = 7 ; - scaleFactorOfLowerWavePeriodLimit = 0 ; - scaledValueOfLowerWavePeriodLimit = 14 ; - scaleFactorOfUpperWavePeriodLimit = 0 ; - scaledValueOfUpperWavePeriodLimit = 17 ; - } -#Significant wave height of all waves with periods within the inclusive range from 17 to 21 seconds -'h1721' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - typeOfWavePeriodInterval = 7 ; - scaleFactorOfLowerWavePeriodLimit = 0 ; - scaledValueOfLowerWavePeriodLimit = 17 ; - scaleFactorOfUpperWavePeriodLimit = 0 ; - scaledValueOfUpperWavePeriodLimit = 21 ; - } -#Significant wave height of all waves with periods within the inclusive range from 21 to 25 seconds -'h2125' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - typeOfWavePeriodInterval = 7 ; - scaleFactorOfLowerWavePeriodLimit = 0 ; - scaledValueOfLowerWavePeriodLimit = 21 ; - scaleFactorOfUpperWavePeriodLimit = 0 ; - scaledValueOfUpperWavePeriodLimit = 25 ; - } -#Significant wave height of all waves with periods within the inclusive range from 25 to 30 seconds -'h2530' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - typeOfWavePeriodInterval = 7 ; - scaleFactorOfLowerWavePeriodLimit = 0 ; - scaledValueOfLowerWavePeriodLimit = 25 ; - scaleFactorOfUpperWavePeriodLimit = 0 ; - scaledValueOfUpperWavePeriodLimit = 30 ; - } -#Significant wave height of all waves with period larger than 10s -'sh10' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - typeOfWavePeriodInterval = 3 ; - scaleFactorOfLowerWavePeriodLimit = 0 ; - scaledValueOfLowerWavePeriodLimit = 10 ; - } -#Significant wave height of first swell partition -'swh1' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 47 ; - } -#Mean wave direction of first swell partition -'mwd1' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 53 ; - } -#Mean wave period of first swell partition -'mwp1' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 50 ; - } -#Significant wave height of second swell partition -'swh2' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 48 ; - } -#Mean wave direction of second swell partition -'mwd2' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 54 ; - } -#Mean wave period of second swell partition -'mwp2' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 51 ; - } -#Significant wave height of third swell partition -'swh3' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 49 ; - } -#Mean wave direction of third swell partition -'mwd3' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 55 ; - } -#Mean wave period of third swell partition -'mwp3' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 52 ; - } -#Time domain maximum individual crest height -'tdcmax' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 94 ; - } -#Time domain maximum individual wave height -'tdhmax' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 95 ; - } -#Space time maximum individual crest height -'stcmax' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 96 ; - } -#Space time maximum individual wave height -'sthmax' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 97 ; - } -#Wave Spectral Skewness -'wss' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 77 ; - } -#Free convective velocity over the oceans -'wstar' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 81 ; - } -#Air density over the oceans -'rhoao' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 82 ; - } -#Normalized energy flux into waves -'phiaw' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 83 ; - } -#Normalized energy flux into ocean -'phioc' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 85 ; - } -#Normalized stress into ocean -'tauoc' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 84 ; - } -#Time-mean mean zero-crossing wave period -'avg_mp2' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 28 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean significant height of combined wind waves and swell -'avg_swh' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean peak wave period -'avg_pp1d' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 34 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean mean wave period -'avg_mwp' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 15 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean sea water temperature in the upper 300 m -'mswt300m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 15 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 300 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Total column vertically-integrated water enthalpy -'viwe' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#2 metre specific humidity -'sh2' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 103 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Particulate matter d <= 1 um -'pm1' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 0 ; - scaleFactorOfSecondSize = missing() ; - scaledValueOfFirstSize = 1 ; - scaleFactorOfFirstSize = 6 ; - typeOfSizeInterval = 5 ; - aerosolType = 62026 ; - scaledValueOfSecondSize = missing() ; - is_aerosol = 1 ; - } -#Particulate matter d <= 2.5 um -'pm2p5' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 0 ; - scaleFactorOfSecondSize = missing() ; - scaledValueOfFirstSize = 25 ; - scaleFactorOfFirstSize = 7 ; - typeOfSizeInterval = 5 ; - aerosolType = 62026 ; - scaledValueOfSecondSize = missing() ; - is_aerosol = 1 ; - } -#Particulate matter d <= 10 um -'pm10' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 0 ; - scaleFactorOfSecondSize = missing() ; - scaledValueOfFirstSize = 10 ; - scaleFactorOfFirstSize = 6 ; - typeOfSizeInterval = 5 ; - aerosolType = 62026 ; - scaledValueOfSecondSize = missing() ; - is_aerosol = 1 ; - } -#Volcanic sulfur dioxide mass mixing ratio -'VSO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 8 ; - is_chemical_srcsink = 1 ; - sourceSinkChemicalPhysicalProcess = 7 ; - } -#UV visible albedo for diffuse radiation (climatological) -'aluvd_p' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 55 ; - typeOfGeneratingProcess = 9 ; - } -#UV visible albedo for direct radiation (climatological) -'aluvp_p' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 56 ; - typeOfGeneratingProcess = 9 ; - } -#UV visible albedo for direct radiation, geometric component (climatological) -'aluvpg_p' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 57 ; - typeOfGeneratingProcess = 9 ; - } -#UV visible albedo for direct radiation, isotropic component (climatological) -'aluvpi_p' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 58 ; - typeOfGeneratingProcess = 9 ; - } -#UV visible albedo for direct radiation, volumetric component (climatological) -'aluvpv_p' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 59 ; - typeOfGeneratingProcess = 9 ; - } -#Ammonium aerosol mass mixing ratio -'aermr18' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - aerosolType = 62003 ; - is_aerosol = 1 ; - } -#Nitrate aerosol optical depth at 550 nm -'niaod550' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 102 ; - scaleFactorOfFirstWavelength = 8 ; - typeOfSizeInterval = 255 ; - aerosolType = 62004 ; - scaledValueOfFirstWavelength = 55 ; - typeOfWavelengthInterval = 11 ; - is_aerosol_optical = 1 ; - } -#Ammonium aerosol optical depth at 550 nm -'amaod550' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 102 ; - scaleFactorOfFirstWavelength = 8 ; - typeOfSizeInterval = 255 ; - aerosolType = 62003 ; - scaledValueOfFirstWavelength = 55 ; - typeOfWavelengthInterval = 11 ; - is_aerosol_optical = 1 ; - } -#Biogenic secondary organic aerosol mass mixing ratio -'aermr19' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - aerosolType = 62032 ; - is_aerosol = 1 ; - } -#Anthropogenic secondary organic aerosol mass mixing ratio -'aermr20' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - aerosolType = 62033 ; - is_aerosol = 1 ; - } -#Near IR albedo for diffuse radiation (climatological) -'alnid_p' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 9 ; - typeOfGeneratingProcess = 9 ; - } -#Near IR albedo for direct radiation (climatological) -'alnip_p' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 10 ; - typeOfGeneratingProcess = 9 ; - } -#Near IR albedo for direct radiation, geometric component (climatological) -'alnipg_p' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 11 ; - typeOfGeneratingProcess = 9 ; - } -#Near IR albedo for direct radiation, isotropic component (climatological) -'alnipi_p' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 12 ; - typeOfGeneratingProcess = 9 ; - } -#Near IR albedo for direct radiation, volumetric component (climatological) -'alnipv_p' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 13 ; - typeOfGeneratingProcess = 9 ; - } -#Volcanic sulfur dioxide mass mixing ratio increment -'VSO2diff' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 8 ; - typeOfGeneratingProcess = 20 ; - is_chemical_srcsink = 1 ; - sourceSinkChemicalPhysicalProcess = 7 ; - } -#Ammonium aerosol mass mixing ratio -'aermr18diff' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - aerosolType = 62003 ; - typeOfGeneratingProcess = 20 ; - is_aerosol = 1 ; - } -#Biogenic secondary organic aerosol mass mixing ratio increment -'aermr19diff' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - aerosolType = 62032 ; - typeOfGeneratingProcess = 20 ; - is_aerosol = 1 ; - } -#Anthropogenic secondary organic aerosol mass mixing ratio increment -'aermr20diff' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - aerosolType = 62033 ; - typeOfGeneratingProcess = 20 ; - is_aerosol = 1 ; - } -#Dry deposition of ammonium aerosol -'aerddpam' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - aerosolType = 62003 ; - is_aerosol = 1 ; - } -#Sedimentation of ammonium aerosol -'aersdmam' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 11 ; - aerosolType = 62003 ; - is_aerosol = 1 ; - } -#Wet deposition of ammonium aerosol by large-scale precipitation -'aerwdlam' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 9 ; - aerosolType = 62003 ; - is_aerosol = 1 ; - } -#Wet deposition of ammonium aerosol by convective precipitation -'aerwdcam' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 10 ; - aerosolType = 62003 ; - is_aerosol = 1 ; - } -#Vertically integrated mass of ammonium aerosol -'aermssam' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - aerosolType = 62003 ; - is_aerosol = 1 ; - } -#Dry deposition of biogenic secondary organic aerosol -'aerddpsoab' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 12 ; - aerosolType = 62032 ; - is_aerosol = 1 ; - } -#Sedimentation of biogenic secondary organic aerosol -'aersdmsoab' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 11 ; - aerosolType = 62032 ; - is_aerosol = 1 ; - } -#Wet deposition of biogenic secondary organic aerosol by large-scale precipitation -'aerwdlsoab' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 9 ; - aerosolType = 62032 ; - is_aerosol = 1 ; - } -#Wet deposition of biogenic secondary organic aerosol by convective precipitation -'aerwdcsoab' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 10 ; - aerosolType = 62032 ; - is_aerosol = 1 ; - } -#Vertically integrated mass of biogenic secondary organic aerosol -'aermsssoab' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - aerosolType = 62032 ; - is_aerosol = 1 ; - } -#Dry deposition of anthropogenic secondary organic aerosol -'aerddpsoaa' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 12 ; - aerosolType = 62033 ; - is_aerosol = 1 ; - } -#Sedimentation of anthropogenic secondary organic aerosol -'aersdmsoaa' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 11 ; - aerosolType = 62033 ; - is_aerosol = 1 ; - } -#Wet deposition of anthropogenic secondary organic aerosol by large-scale precipitation -'aerwdlsoaa' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 9 ; - aerosolType = 62033 ; - is_aerosol = 1 ; - } -#Wet deposition of anthropogenic secondary organic aerosol by convective precipitation -'aerwdcsoaa' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 10 ; - aerosolType = 62033 ; - is_aerosol = 1 ; - } -#Vertically integrated mass of anthropogenic secondary organic aerosol -'aermsssoaa' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - aerosolType = 62033 ; - is_aerosol = 1 ; - } -#Secondary organic aerosol optical depth at 550 nm -'soaod550' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 102 ; - scaleFactorOfFirstWavelength = 9 ; - aerosolType = 62012 ; - scaledValueOfFirstWavelength = 550 ; - scaledValueOfSecondWavelength = missing() ; - typeOfWavelengthInterval = 11 ; - scaleFactorOfSecondWavelength = missing() ; - is_aerosol_optical = 1 ; - } -#Ammonia mass mixing ratio -'nh3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 9 ; - is_chemical = 1 ; - } -#Nitrogen monoxide mass mixing ratio -'no' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 11 ; - is_chemical = 1 ; - } -#Aromatic peroxy radical mass mixing ratio -'AROO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 60029 ; - is_chemical = 1 ; - } -#Ethyne mass mixing ratio -'C2H2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 10010 ; - is_chemical = 1 ; - } -#Acetonitrile mass mixing ratio -'CH3CN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 10007 ; - is_chemical = 1 ; - } -#Methyl peroxy nitrate mass mixing ratio -'CH3O2NO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 10055 ; - is_chemical = 1 ; - } -#Hydrogen cyanide mass mixing ratio -'HCN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 10006 ; - is_chemical = 1 ; - } -#Hydroperoxy aldehydes type 1 mass mixing ratio -'HPALD1' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 60058 ; - is_chemical = 1 ; - } -#Hydroperoxy aldehydes type 2 mass mixing ratio -'HPALD' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 60059 ; - is_chemical = 1 ; - } -#Isoprene peroxy type B mass mixing ratio -'ISOPBO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 60056 ; - is_chemical = 1 ; - } -#Isoprene peroxy type D mass mixing ratio -'ISOPDO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 60057 ; - is_chemical = 1 ; - } -#Column integrated mass density of Volcanic sulfur dioxide -'tc_VSO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 8 ; - is_chemical_srcsink = 1 ; - sourceSinkChemicalPhysicalProcess = 7 ; - } -#Column integrated mass density of Aromatic peroxy radical -'tc_AROO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 60029 ; - is_chemical = 1 ; - } -#Column integrated mass density of Ethyne -'tc_C2H2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 10010 ; - is_chemical = 1 ; - } -#Column integrated mass density of Acetonitrile -'tc_CH3CN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 10007 ; - is_chemical = 1 ; - } -#Column integrated mass density of Methyl peroxy nitrate -'tc_CH3O2NO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 10055 ; - is_chemical = 1 ; - } -#Column integrated mass density of Hydrogen cyanide -'tc_HCN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 10006 ; - is_chemical = 1 ; - } -#Column integrated mass density of Hydroperoxy aldehydes type 1 -'tc_HPALD1' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 60058 ; - is_chemical = 1 ; - } -#Column integrated mass density of Hydroperoxy aldehydes type 2 -'tc_HPALD2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 60059 ; - is_chemical = 1 ; - } -#Column integrated mass density of Isoprene peroxy type B -'tc_ISOPBO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 60056 ; - is_chemical = 1 ; - } -#Column integrated mass density of Isoprene peroxy type D -'tc_ISOPDO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 60057 ; - is_chemical = 1 ; - } -#Atmosphere emission mass flux of Volcanic sulfur dioxide -'e_VSO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 8 ; - is_chemical_srcsink = 1 ; - sourceSinkChemicalPhysicalProcess = 7 ; - } -#Atmosphere emission mass flux of Aromatic peroxy radical -'e_AROO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 60029 ; - is_chemical = 1 ; - } -#Atmosphere emission mass flux of Ethyne -'e_C2H2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 10010 ; - is_chemical = 1 ; - } -#Atmosphere emission mass flux of Acetonitrile -'e_CH3CN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 10007 ; - is_chemical = 1 ; - } -#Atmosphere emission mass flux of Methyl peroxy nitrate -'e_CH3O2NO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 10055 ; - is_chemical = 1 ; - } -#Atmosphere emission mass flux of Hydrogen cyanide -'e_HCN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 10006 ; - is_chemical = 1 ; - } -#Atmosphere emission mass flux of Hydroperoxy aldehydes type 1 -'e_HPALD1' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 60058 ; - is_chemical = 1 ; - } -#Atmosphere emission mass flux of Hydroperoxy aldehydes type 2 -'e_HPALD2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 60059 ; - is_chemical = 1 ; - } -#Atmosphere emission mass flux of Isoprene peroxy type B -'e_ISOPBO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 60056 ; - is_chemical = 1 ; - } -#Atmosphere emission mass flux of Isoprene peroxy type D -'e_ISOPDO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 60057 ; - is_chemical = 1 ; - } -#Dry deposition velocity of Volcanic sulfur dioxide -'dv_VSO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 8 ; - is_chemical_srcsink = 1 ; - sourceSinkChemicalPhysicalProcess = 7 ; - } -#Dry deposition velocity of Aromatic peroxy radical -'dv_AROO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 60029 ; - is_chemical = 1 ; - } -#Dry deposition velocity of Ethyne -'dv_C2H2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 10010 ; - is_chemical = 1 ; - } -#Dry deposition velocity of Acetonitrile -'dv_CH3CN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 10007 ; - is_chemical = 1 ; - } -#Dry deposition velocity of Methyl peroxy nitrate -'dv_CH3O2NO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 10055 ; - is_chemical = 1 ; - } -#Dry deposition velocity of Hydrogen cyanide -'dv_HCN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 10006 ; - is_chemical = 1 ; - } -#Dry deposition velocity of Hydroperoxy aldehydes type 1 -'dv_HPALD1' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 60058 ; - is_chemical = 1 ; - } -#Dry deposition velocity of Hydroperoxy aldehydes type 2 -'dv_HPALD2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 60059 ; - is_chemical = 1 ; - } -#Dry deposition velocity of Isoprene peroxy type B -'dv_ISOPBO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 60056 ; - is_chemical = 1 ; - } -#Dry deposition velocity of Isoprene peroxy type D -'dv_ISOPDO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 60057 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Ozone -'acc_dry_depm_O3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 0 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Hydrogen peroxide -'acc_dry_depm_H2O2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 19 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Carbon monoxide -'acc_dry_depm_CO' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 4 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Nitric acid -'acc_dry_depm_HNO3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 17 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Methyl peroxide -'acc_dry_depm_CH3OOH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10002 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Formaldehyde -'acc_dry_depm_HCHO' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 7 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Aldehydes -'acc_dry_depm_ALD2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 60018 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Peroxyacetyl nitrate -'acc_dry_depm_PAN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10013 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Peroxides -'acc_dry_depm_ROOH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 60019 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Organic nitrates -'acc_dry_depm_ONIT' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 60020 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Isoprene -'acc_dry_depm_C5H8' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10017 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Sulphur dioxide -'acc_dry_depm_SO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 8 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Ammonia -'acc_dry_depm_NH3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 9 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Sulfate -'acc_dry_depm_SO4' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 22 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Ammonium -'acc_dry_depm_NH4' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Methyl glyoxal -'acc_dry_depm_CH3COCHO' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10025 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Nitrogen monoxide -'acc_dry_depm_NO' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 11 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Hydroperoxy radical -'acc_dry_depm_HO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 14 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Methylperoxy radical -'acc_dry_depm_CH3O2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10001 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Nitrogen dioxide -'acc_dry_depm_NO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 5 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Nitrate radical -'acc_dry_depm_NO3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 13 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Dinitrogen pentoxide -'acc_dry_depm_N2O5' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 15 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Pernitric acid -'acc_dry_depm_HO2NO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 18 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Methanol -'acc_dry_depm_CH3OH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10004 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Formic acid -'acc_dry_depm_HCOOH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10005 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Methacrylic acid -'acc_dry_depm_MCOOH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10027 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Ethane -'acc_dry_depm_C2H6' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10008 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Ethanol -'acc_dry_depm_C2H5OH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10011 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Methacrolein -'acc_dry_depm_ISPD' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10028 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Acetone -'acc_dry_depm_CH3COCH3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10029 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Nitrous acid -'acc_dry_depm_HONO' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 16 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Glycolaldehyde -'acc_dry_depm_GLYALD' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10033 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Glyoxal -'acc_dry_depm_GLY' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10038 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Hydroxyacetone -'acc_dry_depm_HYAC' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10041 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of all hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 -'acc_dry_depm_ISOPOOH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 60032 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Acetonitrile -'acc_dry_depm_CH3CN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10007 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Hydrogen cyanide -'acc_dry_depm_HCN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 10006 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Ozone -'acc_wet_depm_O3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 0 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Hydrogen peroxide -'acc_wet_depm_H2O2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 19 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Nitric acid -'acc_wet_depm_HNO3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 17 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Methyl peroxide -'acc_wet_depm_CH3OOH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10002 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Formaldehyde -'acc_wet_depm_HCHO' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 7 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Aldehydes -'acc_wet_depm_ALD2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 60018 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Peroxyacetyl nitrate -'acc_wet_depm_PAN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10013 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Peroxides -'acc_wet_depm_ROOH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 60019 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Organic nitrates -'acc_wet_depm_ONIT' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 60020 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Isoprene -'acc_wet_depm_C5H8' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10017 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Sulphur dioxide -'acc_wet_depm_SO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 8 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Ammonia -'acc_wet_depm_NH3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 9 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Sulfate -'acc_wet_depm_SO4' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 22 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Ammonium -'acc_wet_depm_NH4' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Methane sulfonic acid -'acc_wet_depm_MSA' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10024 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Methyl glyoxal -'acc_wet_depm_CH3COCHO' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10025 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Carbon monoxide -'acc_wet_depm_CO' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 4 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Lead -'acc_wet_depm_Pb' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 30296 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Nitrogen monoxide -'acc_wet_depm_NO' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 11 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Hydroperoxy radical -'acc_wet_depm_HO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 14 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Methylperoxy radical -'acc_wet_depm_CH3O2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10001 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Nitrogen dioxide -'acc_wet_depm_NO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 5 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Nitrate radical -'acc_wet_depm_NO3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 13 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Dinitrogen pentoxide -'acc_wet_depm_N2O5' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 15 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Pernitric acid -'acc_wet_depm_HO2NO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 18 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Methanol -'acc_wet_depm_CH3OH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10004 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Formic acid -'acc_wet_depm_HCOOH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10005 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Methacrylic acid -'acc_wet_depm_MCOOH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10027 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Ethane -'acc_wet_depm_C2H6' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10008 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Ethanol -'acc_wet_depm_C2H5OH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10011 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Methacrolein -'acc_wet_depm_ISPD' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10028 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Acetone -'acc_wet_depm_CH3COCH3' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10029 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Chlorine nitrate -'acc_wet_depm_CLONO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 30 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Hypochlorous acid -'acc_wet_depm_HOCL' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 29 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Hydrogen bromide -'acc_wet_depm_HBR' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 35 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Hypobromous acid -'acc_wet_depm_HOBR' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 36 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Nitrous acid -'acc_wet_depm_HONO' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 16 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Toluene and less reactive aromatics -'acc_wet_depm_TOL' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10022 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Xylene and more reactive aromatics -'acc_wet_depm_XYL' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10023 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Glycolaldehyde -'acc_wet_depm_GLYALD' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10033 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Glyoxal -'acc_wet_depm_GLY' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10038 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Hydroxyacetone -'acc_wet_depm_HYAC' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10041 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of all hydroxy-peroxides products of the reaction of hydroxy-isoprene adducts with O2 -'acc_wet_depm_ISOPOOH' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 60032 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Bromine nitrate -'acc_wet_depm_BRONO2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 37 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Hydrogen chloride -'acc_wet_depm_HCL' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 20001 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Acetonitrile -'acc_wet_depm_CH3CN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10007 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Hydrogen cyanide -'acc_wet_depm_HCN' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10006 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Hydroperoxy aldehydes type 1 -'acc_wet_depm_HPALD1' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10058 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Hydroperoxy aldehydes type 2 -'acc_wet_depm_HPALD2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 10059 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#-10 degrees C isothermal level (atm) -'degm10l' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 20 ; - scaledValueOfFirstFixedSurface = 26315 ; - scaleFactorOfFirstFixedSurface = 2 ; - } -#Total sky direct short-wave (solar) radiation at surface -'fdir' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 13 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Surface direct short-wave radiation, clear sky -'cdir' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 61 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Cloud base height -'cbh' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 2 ; - } -#0 degrees C isothermal level (atm) -'deg0l' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 20 ; - scaledValueOfFirstFixedSurface = 27315 ; - scaleFactorOfFirstFixedSurface = 2 ; - } -#Maximum 10 metre wind gust in the last 3 hours -'fg310' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 2 ; - lengthOfTimeRange = 3 ; - } -#Instantaneous 10 metre wind gust -'i10fg' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Relative humidity with respect to water -'rhw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 93 ; - } -#Relative humidity with respect to ice -'rhi' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 94 ; - } -#Snow albedo -'asn' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 19 ; - } -#Fraction of convective precipitation cover -'fcpc' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 37 ; - } -#Maximum CAPE in the last 6 hours -'mxcape6' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 2 ; - lengthOfTimeRange = 6 ; - } -#Maximum CAPES in the last 6 hours -'mxcapes6' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 2 ; - lengthOfTimeRange = 6 ; - } -#2 metre relative humidity with respect to water -'rhw2' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 93 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Liquid water content in snow pack -'lwcs' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 23 ; - } -#Convective available potential energy shear -'capes' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Tropopause pressure -'trpp' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 7 ; - typeOfSecondFixedSurface = 255 ; - } -#Height of convective cloud top -'hcct' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 27 ; - } -#Height of zero-degree wet-bulb temperature -'hwbt0' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 44 ; - } -#Height of one-degree wet-bulb temperature -'hwbt1' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 45 ; - } -#Instantaneous total lightning flash density -'litoti' = { - discipline = 0 ; - parameterCategory = 17 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Averaged total lightning flash density in the last hour -'litota1' = { - discipline = 0 ; - parameterCategory = 17 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 1 ; - } -#Instantaneous cloud-to-ground lightning flash density -'licgi' = { - discipline = 0 ; - parameterCategory = 17 ; - parameterNumber = 2 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Averaged cloud-to-ground lightning flash density in the last hour -'licga1' = { - discipline = 0 ; - parameterCategory = 17 ; - parameterNumber = 2 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 1 ; - } -#Unbalanced component of specific humidity -'ucq' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 118 ; - } -#Unbalanced component of specific cloud liquid water content -'ucclwc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 119 ; - } -#Unbalanced component of specific cloud ice water content -'ucciwc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 120 ; - } -#Averaged total lightning flash density in the last 3 hours -'litota3' = { - discipline = 0 ; - parameterCategory = 17 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 3 ; - } -#Averaged total lightning flash density in the last 6 hours -'litota6' = { - discipline = 0 ; - parameterCategory = 17 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 6 ; - } -#Averaged cloud-to-ground lightning flash density in the last 3 hours -'licga3' = { - discipline = 0 ; - parameterCategory = 17 ; - parameterNumber = 2 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 3 ; - } -#Averaged cloud-to-ground lightning flash density in the last 6 hours -'licga6' = { - discipline = 0 ; - parameterCategory = 17 ; - parameterNumber = 2 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 6 ; - } -#Soil moisture top 20 cm -'sm20' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 2 ; - scaleFactorOfSecondFixedSurface = 1 ; - } -#Soil moisture top 100 cm -'sm100' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 1 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Total column supercooled liquid water -'tcslw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 167 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Total column rain water -'tcrw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 45 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Total column snow water -'tcsw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Ice temperature -'ist' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 6 ; - } -#Soil temperature top 20 cm -'st20' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 2 ; - scaleFactorOfSecondFixedSurface = 1 ; - } -#Soil temperature top 100 cm -'st100' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 1 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Atmosphere emission mass flux of Methane from Wetlands -'e_WLCH4' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 2 ; - is_chemical_srcsink = 1 ; - sourceSinkChemicalPhysicalProcess = 10 ; - } -#Accumulated mass emission of methane from Wetlands -'acc_e_WLCH4' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 2 ; - typeOfStatisticalProcessing = 1 ; - is_chemical_srcsink = 1 ; - sourceSinkChemicalPhysicalProcess = 10 ; - } -#Surface short-wave (solar) radiation downward clear-sky -'ssrdc' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Surface long-wave (thermal) radiation downward clear-sky -'strdc' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Convective precipitation -'cp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 37 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Water runoff and drainage -'ro' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 33 ; - } -#Instantaneous large-scale surface precipitation fraction -'ilspf' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 36 ; - typeOfFirstFixedSurface = 1 ; - } -#Convective rain rate -'crr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 76 ; - typeOfFirstFixedSurface = 1 ; - } -#Large scale rain rate -'lsrr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 77 ; - typeOfFirstFixedSurface = 1 ; - } -#Convective snowfall rate water equivalent -'csfr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 55 ; - typeOfFirstFixedSurface = 1 ; - } -#Large scale snowfall rate water equivalent -'lssfr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 56 ; - typeOfFirstFixedSurface = 1 ; - } -#Maximum total precipitation rate since previous post-processing -'mxtpr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 2 ; - } -#Minimum total precipitation rate since previous post-processing -'mntpr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 3 ; - } -#Mixed-layer CAPE in the lowest 50 hPa -'mlcape50' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 18 ; - scaledValueOfFirstFixedSurface = 5000 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Mixed-layer CIN in the lowest 50 hPa -'mlcin50' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 7 ; - typeOfFirstFixedSurface = 18 ; - scaledValueOfFirstFixedSurface = 5000 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Mixed-layer CAPE in the lowest 100 hPa -'mlcape100' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 18 ; - scaledValueOfFirstFixedSurface = 10000 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Mixed-layer CIN in the lowest 100 hPa -'mlcin100' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 7 ; - typeOfFirstFixedSurface = 18 ; - scaledValueOfFirstFixedSurface = 10000 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Most-unstable CAPE -'mucape' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 17 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - } -#Most-unstable CIN -'mucin' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 7 ; - typeOfFirstFixedSurface = 17 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - } -#Departure level of the most unstable parcel expressed as Pressure -'mudlp' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 17 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - } -#200 metre U wind component -'u200' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 2 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 200 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#200 metre V wind component -'v200' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 200 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#200 metre wind speed -'si200' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 200 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#100 metre wind speed -'si100' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 100 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Urban cover -'cur' = { - discipline = 2 ; - parameterCategory = 6 ; - parameterNumber = 0 ; - } -#Road Cover -'cro' = { - discipline = 2 ; - parameterCategory = 6 ; - parameterNumber = 1 ; - } -#Building cover -'cbu' = { - discipline = 2 ; - parameterCategory = 6 ; - parameterNumber = 2 ; - } -#Building height -'bldh' = { - discipline = 2 ; - parameterCategory = 6 ; - parameterNumber = 3 ; - } -#Vertical-to-horizontal area ratio -'hwr' = { - discipline = 2 ; - parameterCategory = 6 ; - parameterNumber = 4 ; - } -#Standard deviation of building height -'bhstd' = { - discipline = 2 ; - parameterCategory = 6 ; - parameterNumber = 5 ; - } -#Wetland cover -'cwe' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 45 ; - } -#Wetland type -'twe' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 46 ; - } -#Irrigation cover -'cirr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 47 ; - } -#C4 crop cover -'c4cr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 48 ; - } -#C4 grass cover -'c4gr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 49 ; - } -#Accumulated freezing rain water equivalent -'fzrawe' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 67 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Runoff water equivalent (surface plus subsurface) -'rowe' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 42 ; - typeOfStatisticalProcessing = 1 ; - } -#Snow evaporation water equivalent -'eswe' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 148 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Potential evaporation rate -'pevr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 143 ; - typeOfFirstFixedSurface = 1 ; - } -#Potential evaporation -'peva' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 143 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Tile fraction -'tifr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 36 ; - } -#Tile percentage -'tipe' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 37 ; - } -#Forecast logarithm of surface roughness length for moisture -'flsrm' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 55 ; - typeOfFirstFixedSurface = 1 ; - } -#Surface runoff rate -'surfror' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 51 ; - typeOfFirstFixedSurface = 1 ; - } -#Surface runoff -'surfro' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 51 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Sub-surface runoff rate -'ssurfror' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 1 ; - } -#Sub-surface runoff -'ssurfro' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Reflectance in 0.4 micron channel -'rfl04' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 30 ; - } -#Vertical divergence -'vdiv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 59 ; - } -#Drag thermal coefficient -'dtc' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 60 ; - typeOfFirstFixedSurface = 1 ; - } -#Drag evaporation coefficient -'dec' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 61 ; - typeOfFirstFixedSurface = 1 ; - } -#Pressure departure from hydrostatic state -'pdhs' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 46 ; - } -#Surface net radiation flux (SW and LW) -'snrf' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 1 ; - } -#Top net radiation flux (SW and LW) -'tnrf' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 8 ; - } -#Time-mean top net radiation flux (SW and LW) -'mtnrf' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Global irradiance on tilted surfaces -'gits' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 47 ; - } -#Eady growth rate -'eagr' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 22 ; - } -#Tropical cyclones track density -'tdtc' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 4 ; - } -#Canopy air temperature -'cant' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 63 ; - } -#Soil wetness index (total layer) -'swit' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 30 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 151 ; - } -#Soil wetness index (root zone) -'swir' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 30 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 167 ; - } -#Soil wetness index (layer) -'swil' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 30 ; - typeOfFirstFixedSurface = 151 ; - typeOfSecondFixedSurface = 151 ; - } -#Distance downward from roof surface -'ddrf' = { - discipline = 2 ; - parameterCategory = 6 ; - parameterNumber = 6 ; - } -#Distance inward from outer wall surface -'diws' = { - discipline = 2 ; - parameterCategory = 6 ; - parameterNumber = 7 ; - } -#Distance downward from road surface -'ddrd' = { - discipline = 2 ; - parameterCategory = 6 ; - parameterNumber = 8 ; - } -#Renewable power capacity -'rpc' = { - discipline = 20 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Renewable power production rate -'rppr' = { - discipline = 20 ; - parameterCategory = 3 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Renewable power production -'rpp' = { - discipline = 20 ; - parameterCategory = 3 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Wind power capacity -'wpc' = { - discipline = 20 ; - parameterCategory = 3 ; - parameterNumber = 2 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Wind power production rate -'wppr' = { - discipline = 20 ; - parameterCategory = 3 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Wind power production -'wpp' = { - discipline = 20 ; - parameterCategory = 3 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Solar photovoltaic (PV) power capacity -'pvpc' = { - discipline = 20 ; - parameterCategory = 3 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Solar photovoltaic (PV) power production rate -'pvppr' = { - discipline = 20 ; - parameterCategory = 3 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Solar photovoltaic (PV) power production -'pvpp' = { - discipline = 20 ; - parameterCategory = 3 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Graupel (snow pellets) precipitation -'tgrp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 75 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total lightning flash density -'litotint' = { - discipline = 0 ; - parameterCategory = 17 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Maximum total column integrated graupel (snow pellets) -'maxtcg' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 74 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 2 ; - } -#Minimum visibility -'minvis' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 0 ; - typeOfStatisticalProcessing = 3 ; - } -#Geometric height of theta level above ground -'hthg' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 34 ; - typeOfFirstFixedSurface = 107 ; - } -#Pressure at cloud base -'pcdb' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 2 ; - } -#Geometric height of adiabatic condensation level above ground -'hacg' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 34 ; - typeOfFirstFixedSurface = 5 ; - } -#Geometric height of free convection level above ground -'hfcg' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 34 ; - typeOfFirstFixedSurface = 14 ; - } -#Geometric height of neutral buoyancy level above ground -'hnbg' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 34 ; - typeOfFirstFixedSurface = 16 ; - } -#Geometric height of atmospheric isothermal level above ground -'haig' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 34 ; - typeOfFirstFixedSurface = 20 ; - } -#Roof temperature -'rft' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 185 ; - } -#Wall temperature -'wlt' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 186 ; - } -#Road temperature -'rdt' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 187 ; - } -#Snow depth water equivalent on roof -'sdrf' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 60 ; - typeOfFirstFixedSurface = 185 ; - } -#Snow depth water equivalent on road -'sdrd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 60 ; - typeOfFirstFixedSurface = 187 ; - } -#Urban canyon temperature -'urct' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 187 ; - typeOfSecondFixedSurface = 185 ; - } -#Urban canyon specific humidity -'urcq' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 187 ; - typeOfSecondFixedSurface = 185 ; - } -#Convective snowfall water equivalent -'csfwe' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 55 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Large-scale snowfall water equivalent -'lsfwe' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 56 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Lake surface temperature -'lslt' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - } -#Surface bulk Richardson number -'sbrn' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 16 ; - typeOfFirstFixedSurface = 1 ; - } -#Time-maximum 2 metre relative humidity -'mx2r' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - } -#Time-minimum 2 metre relative humidity -'mn2r' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 3 ; - } -#Surface roughness for heat -'srhe' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 47 ; - typeOfFirstFixedSurface = 1 ; - } -#Surface roughness for moisture -'srmo' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 48 ; - typeOfFirstFixedSurface = 1 ; - } -#Burned area -'fba' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 3 ; - } -#Burning area -'bia' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 20 ; - } -#Burnable area -'baa' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 21 ; - } -#Un-burnable area -'ubaa' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 22 ; - } -#Fuel load -'fuell' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 23 ; - } -#Combustion completeness -'combc' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 24 ; - } -#Fuel moisture content -'fuelmc' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 25 ; - } -#Live leaf fuel load -'llfl' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 27 ; - } -#Live wood fuel load -'lwfl' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 28 ; - } -#Dead leaf fuel load -'dlfl' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 29 ; - } -#Dead wood fuel load -'dwfl' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 30 ; - } -#Live fuel moisture content -'lfmc' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 31 ; - } -#Fine dead leaf moisture content -'fdlmc' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 32 ; - } -#Dense dead leaf moisture content -'ddlmc' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 33 ; - } -#Fine dead wood moisture content -'fdwmc' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 34 ; - } -#Dense dead wood moisture content -'ddwmc' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 35 ; - } -#Time-integrated total column vertically-integrated eastward geopotential flux -'tvige' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 40 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated northward geopotential flux -'tvign' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 41 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated divergence of water geopotential flux -'tviwgd' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 42 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated divergence of geopotential flux -'tvigd' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 43 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated eastward enthalpy flux -'tviee' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated northward enthalpy flux -'tvien' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated eastward kinetic energy flux -'tvikee' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated northward kinetic energy flux -'tviken' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 10 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated eastward total energy flux -'tvitee' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated northward total energy flux -'tviten' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 12 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated divergence of enthalpy flux -'tvied' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 13 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated divergence of kinetic energy flux -'tviked' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 16 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated divergence of total energy flux -'tvited' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total column vertically-integrated divergence of water enthalpy flux -'tviwed' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated divergence of mass flux -'tvimd' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 35 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated eastward mass flux -'tvime' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 36 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated northward mass flux -'tvimn' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 37 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated divergence of water vapour flux -'tviwvd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 160 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated divergence of cloud liquid water flux -'tviclwd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 161 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated divergence of cloud ice water flux -'tviciwd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 162 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated divergence of rain flux -'tvird' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 163 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated divergence of snow flux -'tvisd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 164 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated eastward water vapour flux -'tviwve' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 150 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated northward water vapour flux -'tviwvn' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 151 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated eastward cloud liquid water flux -'tviclwe' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 152 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated northward cloud liquid water flux -'tviclwn' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 153 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated eastward cloud ice water flux -'tviciwe' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 154 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated northward cloud ice water flux -'tviciwn' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 155 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated eastward rain flux -'tvire' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 156 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated northward rain flux -'tvirn' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 157 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated eastward snow flux -'tvise' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 158 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integrated, vertically integrated northward snow flux -'tvisn' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 159 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 1 ; - } -#Mean temperature tendency due to short-wave radiation -'mttswr' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 22 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean temperature tendency due to long-wave radiation -'mttlwr' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 23 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean temperature tendency due to short-wave radiation, clear sky -'mttswrcs' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 24 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean temperature tendency due to long-wave radiation, clear sky -'mttlwrcs' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean temperature tendency due to parametrisations -'mttpm' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 26 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean specific humidity tendency due to parametrisations -'mqtpm' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 108 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean eastward wind tendency due to parametrisations -'mutpm' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 39 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean northward wind tendency due to parametrisations -'mvtpm' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 40 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean updraught mass flux -'mumf' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 27 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean downdraught mass flux -'mdmf' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 28 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean updraught detrainment rate -'mudr' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 29 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean downdraught detrainment rate -'mddr' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 30 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean total precipitation flux -'mtpf' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean turbulent diffusion coefficient for heat -'mtdch' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 20 ; - typeOfStatisticalProcessing = 0 ; - } -#Time integral of rain flux -'tirf' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 65 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integral of surface eastward momentum flux -'tisemf' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integral of surface northward momentum flux -'tisnmf' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integral of surface latent heat evaporation flux -'tislhef' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 30 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#Mean surface runoff rate -'msror' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 51 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean sub-surface runoff rate -'mssror' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface photosynthetically active radiation flux, clear sky -'msparfcs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 60 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean snow evaporation rate -'mser' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 148 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean snowmelt rate -'msmr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 41 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean magnitude of turbulent surface stress -'mmtss' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 58 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean large-scale precipitation fraction -'mlspf' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 36 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface downward UV radiation flux -'msdwuvrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 12 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface photosynthetically active radiation flux -'msparf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 10 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean large-scale precipitation rate -'mlspr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 54 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean convective precipitation rate -'mcpr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 37 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean snowfall rate -'msr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 53 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean boundary layer dissipation -'mbld' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 20 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface sensible heat flux -'msshf' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface latent heat flux -'mslhf' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 10 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface downward short-wave radiation flux -'msdwswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 7 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface downward long-wave radiation flux -'msdwlwrf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface net short-wave radiation flux -'msnswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 9 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface net long-wave radiation flux -'msnlwrf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean top net short-wave radiation flux -'mtnswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 9 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean top net long-wave radiation flux -'mtnlwrf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean eastward turbulent surface stress -'metss' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 62 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean northward turbulent surface stress -'mntss' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 63 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean evaporation rate -'mer' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 79 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Sunshine duration fraction -'sdf' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 51 ; - typeOfFirstFixedSurface = 1 ; - } -#Mean eastward gravity wave surface stress -'megwss' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 16 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean northward gravity wave surface stress -'mngwss' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean gravity wave dissipation -'mgwd' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 23 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean runoff rate -'mror' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 42 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean top net short-wave radiation flux, clear sky -'mtnswrfcs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean top net long-wave radiation flux, clear sky -'mtnlwrfcs' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface net short-wave radiation flux, clear sky -'msnswrfcs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface net long-wave radiation flux, clear sky -'msnlwrfcs' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean top downward short-wave radiation flux -'mtdwswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 7 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean vertically integrated moisture divergence -'mvimd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 165 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean total precipitation rate -'mtpr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean convective snowfall rate -'mcsr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 55 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean large-scale snowfall rate -'mlssr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 56 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface direct short-wave radiation flux -'msdrswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 13 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface direct short-wave radiation flux, clear sky -'msdrswrfcs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 61 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface downward short-wave radiation flux, clear sky -'msdwswrfcs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean surface downward long-wave radiation flux, clear sky -'msdwlwrfcs' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean potential evaporation rate -'mper' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 143 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time integral of surface latent heat sublimation flux -'tislhsf' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 31 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#Time integral of evapotranspiration flux -'tietrf' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 39 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-mean evapotranspiration flux -'metrf' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 39 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time integral of potential evapotranspiration rate -'tipet' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 40 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-mean potential evapotranspiration rate -'mpet' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 40 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean volumetric soil moisture -'mvsw' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean snow depth water equivalent -'msd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 60 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean skin temperature -'mskt' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean snow density -'avg_rsn' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 61 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean low vegetation cover -'avg_cvl' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 53 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean high vegetation cover -'avg_cvh' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 54 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice area fraction -'avg_ci' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea surface temperature -'avg_sst' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean leaf area index, low vegetation -'avg_lai_lv' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 55 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean leaf area index, high vegetation -'avg_lai_hv' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 56 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean total column liquid water -'avg_tclw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 69 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean total column cloud ice water -'avg_tciw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 70 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean 2 metre specific humidity -'avg_2sh' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 103 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean lake mix-layer temperature -'avg_lmlt' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 166 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean lake mix-layer depth -'avg_lmld' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 166 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean 2 metre relative humidity -'avg_2r' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean fraction of snow cover -'avg_fscov' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 121 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean soil temperature -'avg_sot' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 18 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean wind speed -'avg_ws' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean pressure -'avg_pres' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean potential vorticity -'avg_pv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 14 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean specific rain water content -'avg_crwc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 85 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean specific snow water content -'avg_cswc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 86 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean eta-coordinate vertical velocity -'avg_etadot' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 32 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean soil moisture top 20 cm -'avg_sm20' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 2 ; - scaleFactorOfSecondFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean soil moisture top 100 cm -'avg_sm100' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 1 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean soil temperature top 20 cm -'avg_st20' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 2 ; - scaleFactorOfSecondFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean soil temperature top 100 cm -'avg_st100' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 1 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean most-unstable CAPE -'avg_mucape' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 17 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean volumetric soil moisture top 20 cm -'avg_vsw20' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 2 ; - scaleFactorOfSecondFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean volumetric soil moisture top 100 cm -'avg_vsw100' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 1 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean geopotential -'avg_z' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 4 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean temperature -'avg_t' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean U component of wind -'avg_u' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 2 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean V component of wind -'avg_v' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 3 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean specific humidity -'avg_q' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean surface pressure -'avg_sp' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean vertical velocity -'avg_w' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean total column water -'avg_tcw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 51 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean total column vertically-integrated water vapour -'avg_tcwv' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 64 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean vorticity (relative) -'avg_vo' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 12 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean mean sea level pressure -'avg_msl' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 101 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean divergence -'avg_d' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 13 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean relative humidity -'avg_r' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean boundary layer height -'avg_blh' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 18 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean 10 metre U wind component -'avg_10u' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 2 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean 10 metre V wind component -'avg_10v' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean 2 metre dewpoint temperature -'avg_2d' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean ozone mass mixing ratio -'avg_o3' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean temperature of snow layer -'avg_tsn' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 28 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean forecast surface roughness -'avg_fsr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean forecast logarithm of surface roughness for heat -'avg_flsr' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 54 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean specific cloud liquid water content -'avg_clwc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 83 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean specific cloud ice water content -'avg_ciwc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 84 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean fraction of cloud cover -'avg_cc' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 32 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean K index -'avg_kx' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 2 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean total totals index -'avg_totalx' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 4 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean clear air turbulence (CAT) -'avg_cat' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 29 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean discharge from rivers or streams -'avg_dis' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 7 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean soil wetness index (total layer) -'avg_swit' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 30 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 151 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean soil wetness index (root zone) -'avg_swir' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 30 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 167 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean soil wetness index(layer) -'avg_swil' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 30 ; - typeOfFirstFixedSurface = 151 ; - typeOfSecondFixedSurface = 151 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean floodplain depth -'avg_flddep' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 17 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean floodplain flooded fraction -'avg_fldffr' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 18 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean floodplain flooded area -'avg_fldfar' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 19 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean river fraction -'avg_rivfr' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 20 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean river area -'avg_rivar' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 21 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean fraction of river coverage plus river related flooding -'avg_rivcffr' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean area of river coverage plus river related flooding -'avg_rivcfar' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 23 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-maximum volumetric soil moisture -'max_vsw' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - typeOfStatisticalProcessing = 2 ; - } -#Time-maximum most-unstable CAPE -'max_mucape' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 17 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - typeOfStatisticalProcessing = 2 ; - } -#Time-minimum volumetric soil moisture -'min_vsw' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - typeOfStatisticalProcessing = 3 ; - } -#Time-minimum most-unstable CAPE -'min_mucape' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 17 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - typeOfStatisticalProcessing = 3 ; - } -#Time-standard-deviation volumetric soil moisture -'std_vsw' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - typeOfStatisticalProcessing = 6 ; - } -#Time-standard-deviation most-unstable CAPE -'std_mucape' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 17 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - typeOfStatisticalProcessing = 6 ; - } -#Cross sectional area of flow in channel -'chcross' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 13 ; - } -#Side flow into river channel -'chside' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 10 ; - } -#Discharge from rivers or streams -'dis' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 7 ; - } -#River storage of water -'rivsto' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 11 ; - } -#Floodplain storage of water -'fldsto' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 12 ; - } -#Water fraction -'fldfrc' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 2 ; - } -#Days since last observation -'dslr' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 3 ; - } -#Frost index -'frost' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 24 ; - } -#Depth of water on soil surface -'woss' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 13 ; - } -#Upstream accumulated precipitation -'tpups' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 14 ; - } -#Upstream accumulated snow melt -'smups' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 15 ; - } -#Snow depth at elevation bands -'sd_elev' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 25 ; - } -#Groundwater upper storage -'gwus' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 8 ; - } -#Groundwater lower storage -'gwls' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 9 ; - } -#Lake depth -'lakdph' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 15 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 162 ; - } -#River depth -'rivdph' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 16 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 162 ; - } -#River outflow of water -'rivout' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 17 ; - } -#Floodplain outflow of water -'fldout' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 18 ; - } -#Floodpath outflow of water -'pthflw' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 19 ; - } -#Floodplain depth -'flddep' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 17 ; - } -#Floodplain flooded fraction -'fldffr' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 18 ; - } -#Floodplain flooded area -'fldfar' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 19 ; - } -#River fraction -'rivfr' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 20 ; - } -#River area -'rivar' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 21 ; - } -#Fraction of river coverage plus river related flooding -'rivcffr' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - } -#Area of river coverage plus river related flooding -'rivcfar' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 23 ; - } -#Latitude -'lat' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 1 ; - } -#Longitude -'lon' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 2 ; - } -#Latitude on T grid -'tlat' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 1 ; - gridDefinitionTemplateNumber = 101 ; - numberOfGridInReference = 1 ; - } -#Longitude on T grid -'tlon' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 2 ; - gridDefinitionTemplateNumber = 101 ; - numberOfGridInReference = 1 ; - } -#Latitude on U grid -'ulat' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 1 ; - gridDefinitionTemplateNumber = 101 ; - numberOfGridInReference = 2 ; - } -#Longitude on U grid -'ulon' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 2 ; - gridDefinitionTemplateNumber = 101 ; - numberOfGridInReference = 2 ; - } -#Latitude on V grid -'vlat' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 1 ; - gridDefinitionTemplateNumber = 101 ; - numberOfGridInReference = 3 ; - } -#Longitude on V grid -'vlon' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 2 ; - gridDefinitionTemplateNumber = 101 ; - numberOfGridInReference = 3 ; - } -#Latitude on W grid -'wlat' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 1 ; - gridDefinitionTemplateNumber = 101 ; - numberOfGridInReference = 4 ; - } -#Longitude on W grid -'wlon' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 2 ; - gridDefinitionTemplateNumber = 101 ; - numberOfGridInReference = 4 ; - } -#Latitude on F grid -'flat' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 1 ; - gridDefinitionTemplateNumber = 101 ; - numberOfGridInReference = 5 ; - } -#Longitude on F grid -'flon' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 2 ; - gridDefinitionTemplateNumber = 101 ; - numberOfGridInReference = 5 ; - } -#Total column graupel -'tcolg' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 74 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Latent heat net flux -'lhtfl' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 10 ; - } -#Heat index -'heatx' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 12 ; - } -#Wind chill factor -'wcf' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 13 ; - } -#Minimum dew point depression -'mindpd' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 14 ; - } -#Snow phase change heat flux -'snohf' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 16 ; - } -#Vapor pressure -'vapp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 4 ; - } -#Large scale precipitation (non-convective) -'ncpcp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 9 ; - } -#Snowfall rate water equivalent -'srweq' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 12 ; - } -#Convective snow -'snoc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 14 ; - } -#Large scale snow -'snol' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 15 ; - } -#Snow age -'snoag' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 17 ; - } -#Absolute humidity -'absh' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 18 ; - } -#Precipitation type -'ptype' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 19 ; - } -#Integrated liquid water -'iliqw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 20 ; - } -#Condensate -'tcond' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 21 ; - } -#Cloud mixing ratio -'clwmr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 22 ; - } -#Ice water mixing ratio -'icmr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 23 ; - } -#Rain mixing ratio -'rwmr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 24 ; - } -#Snow mixing ratio -'snmr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 25 ; - } -#Horizontal moisture convergence -'mconv' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 26 ; - } -#Maximum relative humidity -'maxrh' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 27 ; - } -#Maximum absolute humidity -'maxah' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 28 ; - } -#Total snowfall -'asnow' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 57 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Precipitable water category -'pwcat' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 30 ; - } -#Hail -'hail' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 31 ; - } -#Graupel (snow pellets) -'grle' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 32 ; - } -#Categorical rain -'crain' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 33 ; - } -#Categorical freezing rain -'cfrzr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 34 ; - } -#Categorical ice pellets -'cicep' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 35 ; - } -#Categorical snow -'csnow' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 36 ; - } -#Convective precipitation rate -'cprat' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 37 ; - } -#Horizontal moisture divergence -'mdiv' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 38 ; - } -#Percent frozen precipitation -'cpofp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 39 ; - } -#Potential evaporation -'pevap' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 40 ; - } -#Snow cover -'snowc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 42 ; - } -#Rain fraction of total cloud water -'frain' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 43 ; - } -#Rime factor -'rime' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 44 ; - } -#Total column integrated rain -'tcolr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 45 ; - } -#Total column integrated snow -'tcols' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 46 ; - } -#Large scale water precipitation (non-convective) -'lswp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 47 ; - } -#Convective water precipitation -'cwp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 48 ; - } -#Total water precipitation -'twatp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 49 ; - } -#Total snow precipitation -'tsnowp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 66 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Total column water (Vertically integrated total water (vapour + cloud water/ice)) -'tcwat' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 51 ; - } -#Total precipitation rate -'tprate' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 1 ; - } -#Total snowfall rate water equivalent -'tsrwe' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 53 ; - } -#Large scale precipitation rate -'lsprate' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 54 ; - } -#Total snowfall rate -'tsrate' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 57 ; - } -#Convective snowfall rate -'csrate' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 58 ; - } -#Large scale snowfall rate -'lssrate' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 59 ; - } -#Water equivalent of accumulated snow depth (deprecated) -'sdwe' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 13 ; - } -#Rain precipitation rate -'rprate' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 65 ; - } -#Snow precipitation rate -'sprate' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 66 ; - } -#Freezing rain precipitation rate -'fprate' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 67 ; - } -#Ice pellets precipitation rate -'iprate' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 68 ; - } -#Maximum wind speed -'maxgust' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 21 ; - } -#Wind speed (gust) -'gust' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - } -#u-component of wind (gust) -'ugust' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 23 ; - } -#v-component of wind (gust) -'vgust' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 24 ; - } -#Vertical speed shear -'vwsh' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 25 ; - } -#Horizontal momentum flux -'mflx' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 26 ; - } -#U-component storm motion -'ustm' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 27 ; - } -#V-component storm motion -'vstm' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 28 ; - } -#Drag coefficient -'cd' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 29 ; - } -#Frictional velocity -'fricv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 30 ; - } -#Pressure reduced to MSL -'prmsl' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 1 ; - } -#Altimeter setting -'alts' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 11 ; - } -#Thickness -'thick' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 12 ; - } -#Pressure altitude -'presalt' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 13 ; - } -#Density altitude -'denalt' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 14 ; - } -#5-wave geopotential height -'wavh5' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 15 ; - } -#Zonal flux of gravity wave stress -'u-gwd' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 16 ; - } -#Meridional flux of gravity wave stress -'v-gwd' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 17 ; - } -#5-wave geopotential height anomaly -'wava5' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - } -#Net short-wave radiation flux (top of atmosphere) -'nswrt' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 1 ; - } -#Downward short-wave radiation flux -'dswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 7 ; - } -#Upward short-wave radiation flux -'uswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 8 ; - } -#Net short wave radiation flux -'nswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 9 ; - } -#Photosynthetically active radiation -'photar' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 10 ; - } -#Net short-wave radiation flux, clear sky -'nswrfcs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 11 ; - } -#Downward UV radiation -'dwuvr' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 12 ; - } -#UV index (under clear sky) -'uviucs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 50 ; - } -#UV index -'uvi' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 51 ; - } -#Net long wave radiation flux (surface) -'nlwrs' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 0 ; - } -#Net long wave radiation flux (top of atmosphere) -'nlwrt' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 1 ; - } -#Downward long-wave radiation flux -'dlwrf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 3 ; - } -#Upward long-wave radiation flux -'ulwrf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 4 ; - } -#Net long wave radiation flux -'nlwrf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 5 ; - } -#Net long-wave radiation flux, clear sky -'nlwrcs' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 6 ; - } -#Cloud Ice -'cice' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 0 ; - } -#Cloud water -'cwat' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 6 ; - } -#Cloud amount -'cdca' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 7 ; - } -#Cloud type -'cdct' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 8 ; - } -#Thunderstorm maximum tops -'tmaxt' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 9 ; - } -#Thunderstorm coverage -'thunc' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 10 ; - } -#Cloud top -'cdct' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 12 ; - } -#Ceiling -'ceil' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 13 ; - } -#Non-convective cloud cover -'cdlyr' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 14 ; - } -#Cloud work function -'cwork' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 15 ; - } -#Convective cloud efficiency -'cuefi' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 16 ; - } -#Total condensate -'tcond' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 17 ; - } -#Total column-integrated cloud water -'tcolw' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 18 ; - } -#Total column-integrated cloud ice -'tcoli' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 19 ; - } -#Total column-integrated condensate -'tcolc' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 20 ; - } -#Ice fraction of total condensate -'fice' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 21 ; - } -#Cloud ice mixing ratio -'cdcimr' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 23 ; - } -#Sunshine -'suns' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 24 ; - } -#Horizontal extent of cumulonimbus (CB) -'p260120' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 25 ; - } -#K index -'kx' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 2 ; - } -#KO index -'kox' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 3 ; - } -#Total totals index -'totalx' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 4 ; - } -#Sweat index -'sx' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 5 ; - } -#Storm relative helicity -'hlcy' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 8 ; - } -#Energy helicity index -'ehlx' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 9 ; - } -#Surface lifted index -'lftx' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 10 ; - } -#Best (4-layer) lifted index -'lftx4' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 11 ; - } -#Aerosol type -'aerot' = { - discipline = 0 ; - parameterCategory = 13 ; - parameterNumber = 0 ; - } -#Total ozone -'tozne' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 0 ; - } -#Total column integrated ozone -'tcioz' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 2 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Base spectrum width -'bswid' = { - discipline = 0 ; - parameterCategory = 15 ; - parameterNumber = 0 ; - } -#Base reflectivity -'bref' = { - discipline = 0 ; - parameterCategory = 15 ; - parameterNumber = 1 ; - } -#Base radial velocity -'brvel' = { - discipline = 0 ; - parameterCategory = 15 ; - parameterNumber = 2 ; - } -#Vertically-integrated liquid -'veril' = { - discipline = 0 ; - parameterCategory = 15 ; - parameterNumber = 3 ; - } -#Layer-maximum base reflectivity -'lmaxbr' = { - discipline = 0 ; - parameterCategory = 15 ; - parameterNumber = 4 ; - } -#Precipitation -'prec' = { - discipline = 0 ; - parameterCategory = 15 ; - parameterNumber = 5 ; - } -#Air concentration of Caesium 137 -'acces' = { - discipline = 0 ; - parameterCategory = 18 ; - parameterNumber = 0 ; - } -#Air concentration of Iodine 131 -'aciod' = { - discipline = 0 ; - parameterCategory = 18 ; - parameterNumber = 1 ; - } -#Air concentration of radioactive pollutant -'acradp' = { - discipline = 0 ; - parameterCategory = 18 ; - parameterNumber = 2 ; - } -#Ground deposition of Caesium 137 -'gdces' = { - discipline = 0 ; - parameterCategory = 18 ; - parameterNumber = 3 ; - } -#Ground deposition of Iodine 131 -'gdiod' = { - discipline = 0 ; - parameterCategory = 18 ; - parameterNumber = 4 ; - } -#Ground deposition of radioactive pollutant -'gdradp' = { - discipline = 0 ; - parameterCategory = 18 ; - parameterNumber = 5 ; - } -#Time-integrated air concentration of caesium pollutant -'tiaccp' = { - discipline = 0 ; - parameterCategory = 18 ; - parameterNumber = 6 ; - } -#Time-integrated air concentration of iodine pollutant -'tiacip' = { - discipline = 0 ; - parameterCategory = 18 ; - parameterNumber = 7 ; - } -#Time-integrated air concentration of radioactive pollutant -'tiacrp' = { - discipline = 0 ; - parameterCategory = 18 ; - parameterNumber = 8 ; - } -#Volcanic ash -'volash' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 4 ; - } -#Icing top -'icit' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 5 ; - } -#Icing base -'icib' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 6 ; - } -#Icing -'ici' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 7 ; - } -#Turbulence top -'turbt' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 8 ; - } -#Turbulence base -'turbb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 9 ; - } -#Turbulence -'turb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 10 ; - } -#Turbulent kinetic energy -'tke' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 11 ; - } -#Planetary boundary layer regime -'pblreg' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 12 ; - } -#Contrail intensity -'conti' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 13 ; - } -#Contrail engine type -'contet' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 14 ; - } -#Contrail top -'contt' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 15 ; - } -#Contrail base -'contb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 16 ; - } -#Maximum snow albedo -'mxsalb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 17 ; - } -#Snow free albedo -'snfalb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 18 ; - } -#Icing -'p260151' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 20 ; - } -#In-cloud turbulence -'p260164' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 21 ; - } -#Relative clear air turbulence (RCAT) -'rcat' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 22 ; - } -#Supercooled large droplet probability (see Note 4) -'p260166' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 23 ; - } -#Arbitrary text string -'var190m0' = { - discipline = 0 ; - parameterCategory = 190 ; - parameterNumber = 0 ; - } -#Seconds prior to initial reference time (defined in Section 1) -'tsec' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 0 ; - } -#Flash flood guidance (Encoded as an accumulation over a floating subinterval of time between the ref -'ffldg' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - } -#Flash flood runoff (Encoded as an accumulation over a floating subinterval of time) -'ffldro' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 1 ; - } -#Remotely sensed snow cover -'rssc' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 2 ; - } -#Elevation of snow covered terrain -'esct' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - } -#Snow water equivalent percent of normal -'swepon' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 4 ; - } -#Baseflow-groundwater runoff -'bgrun' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 5 ; - } -#Storm surface runoff -'ssrun' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 6 ; - } -#Conditional percent precipitation amount fractile for an overall period (Encoded as an accumulation) -'cppop' = { - discipline = 1 ; - parameterCategory = 1 ; - parameterNumber = 0 ; - } -#Percent precipitation in a sub-period of an overall period (Encoded as per cent accumulation over th -'pposp' = { - discipline = 1 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - } -#Probability of 0.01 inch of precipitation (POP) -'pop' = { - discipline = 1 ; - parameterCategory = 1 ; - parameterNumber = 2 ; - } -#Vegetation -'veg' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 4 ; - } -#Water runoff -'watr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 5 ; - } -#Evapotranspiration -'evapt' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 6 ; - } -#Model terrain height -'mterh' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 7 ; - } -#Land use -'landu' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 8 ; - } -#Ground heat flux -'gflux' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 10 ; - } -#Moisture availability -'mstav' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 11 ; - } -#Exchange coefficient -'sfexc' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 12 ; - } -#Plant canopy surface water -'cnwat' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 13 ; - } -#Blackadar mixing length scale -'bmixl' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 14 ; - } -#Canopy conductance -'ccond' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 15 ; - } -#Minimal stomatal resistance -'rsmin' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 16 ; - } -#Solar parameter in canopy conductance -'rcs' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 18 ; - } -#Temperature parameter in canopy conductance -'rct' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 19 ; - } -#Soil moisture parameter in canopy conductance -'rcsol' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 20 ; - } -#Humidity parameter in canopy conductance -'rcq' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 21 ; - } -#Column-integrated soil water -'cisoilw' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 23 ; - } -#Heat flux -'hflux' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 24 ; - } -#Volumetric soil moisture -'vsw' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - } -#Volumetric wilting point -'vwiltm' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 27 ; - } -#Number of soil layers in root zone -'rlyrs' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 6 ; - } -#Liquid volumetric soil moisture (non-frozen) -'liqvsm' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 10 ; - } -#Volumetric transpiration stress-onset (soil moisture) -'voltso' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 11 ; - } -#Transpiration stress-onset (soil moisture) -'transo' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 12 ; - } -#Volumetric direct evaporation cease (soil moisture) -'voldec' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 13 ; - } -#Direct evaporation cease (soil moisture) -'direc' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 14 ; - } -#Soil porosity -'soilp' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 15 ; - } -#Volumetric saturation of soil moisture -'vsosm' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 16 ; - } -#Saturation of soil moisture -'satosm' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 17 ; - } -#Estimated precipitation -'estp' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 0 ; - } -#Instantaneous rain rate -'irrate' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - } -#Cloud top height -'ctoph' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 2 ; - } -#Cloud top height quality indicator -'ctophqi' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 3 ; - } -#Estimated u component of wind -'estu' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 4 ; - } -#Estimated v component of wind -'estv' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 5 ; - } -#Number of pixels used -'npixu' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 6 ; - } -#Solar zenith angle -'solza' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 7 ; - } -#Relative azimuth angle -'raza' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 8 ; - } -#Reflectance in 0.6 micron channel -'rfl06' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 9 ; - } -#Reflectance in 0.8 micron channel -'rfl08' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 10 ; - } -#Reflectance in 1.6 micron channel -'rfl16' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 11 ; - } -#Reflectance in 3.9 micron channel -'rfl39' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 12 ; - } -#Atmospheric divergence -'atmdiv' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 13 ; - } -#Direction of wind waves -'wvdir' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 4 ; - } -#Primary wave direction -'dirpw' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 10 ; - } -#Primary wave mean period -'perpw' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 11 ; - } -#Secondary wave mean period -'persw' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 13 ; - } -#Current direction -'dirc' = { - discipline = 10 ; - parameterCategory = 1 ; - parameterNumber = 0 ; - } -#Current speed -'spc' = { - discipline = 10 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - } -#Geometric vertical velocity -'wz' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 9 ; - } -#Seconds prior to initial reference time (defined in Section 1) -'tsec' = { - discipline = 10 ; - parameterCategory = 191 ; - parameterNumber = 0 ; - } -#2 metre relative humidity -'r2' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Apparent temperature -'aptmp' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 21 ; - } -#Haines Index -'hindex' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 2 ; - } -#Cloud cover -'ccl' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 22 ; - } -#Evaporation -'eva' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 79 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#10 metre wind direction -'wdir10' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Direct short wave radiation flux -'dirswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 13 ; - } -#Diffuse short wave radiation flux -'difswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - } -#Fraction of snow cover -'fscov' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 121 ; - } -#Clear air turbulence (CAT) -'cat' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 29 ; - } -#Mountain wave turbulence (eddy dissipation rate) -'mwt' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 28 ; - } -#Specific rain water content (convective) -'crwc_conv' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 144 ; - } -#Specific snow water content (convective) -'cswc_conv' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 145 ; - } -#Glacier mask -'glm' = { - discipline = 2 ; - parameterCategory = 5 ; - parameterNumber = 0 ; - } -#Precipitation type (most severe) in the last 1 hour -'ptype_sev1h' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 19 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 100 ; - lengthOfTimeRange = 1 ; - } -#Precipitation type (most severe) in the last 3 hours -'ptype_sev3h' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 19 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 100 ; - lengthOfTimeRange = 3 ; - } -#Precipitation type (most frequent) in the last 1 hour -'ptype_freq1h' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 19 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 101 ; - lengthOfTimeRange = 1 ; - } -#Precipitation type (most frequent) in the last 3 hours -'ptype_freq3h' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 19 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 101 ; - lengthOfTimeRange = 3 ; - } -#Precipitation type (most severe) in the last 6 hours -'ptype_sev6h' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 19 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 100 ; - lengthOfTimeRange = 6 ; - } -#Precipitation type (most frequent) in the last 6 hours -'ptype_freq6h' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 19 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 101 ; - lengthOfTimeRange = 6 ; - } -#Soil temperature -'sot' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 18 ; - } -#Downward short-wave radiation flux, clear sky -'dswrf_cs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 52 ; - } -#Upward short-wave radiation flux, clear sky -'uswrf_cs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 53 ; - } -#Downward long-wave radiation flux, clear sky -'dlwrf_cs' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 8 ; - } -#Soil heat flux -'sohf' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 26 ; - } -#Percolation rate -'percr' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 16 ; - } -#Soil depth -'sod' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 27 ; - } -#Soil moisture -'som' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - } -#Leaf Area Index -'lai' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 28 ; - typeOfFirstFixedSurface = 1 ; - } -#Accumulated surface upward short-wave radiation flux, clear sky -'auswrf_cs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 53 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Percolation -'perc' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 16 ; - typeOfFirstFixedSurface = 177 ; - typeOfStatisticalProcessing = 1 ; - } -#Evapotranspiration rate -'et' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 39 ; - } -#Potential evapotranspiration rate -'pet' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 40 ; - } -#Water runoff and drainage rate -'rod' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 42 ; - } -#Snow melt rate -'smr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 41 ; - } -#Forecast albedo -'al' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 1 ; - } -#Cloudy brightness temperature -'clbt' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 14 ; - } -#Clear-sky brightness temperature -'csbt' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 15 ; - } -#Cloudy reflectance -'cdrfl' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 31 ; - } -#Clear reflectance -'crrfl' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 32 ; - } -#Scaled radiance -'p260530' = { - discipline = 3 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - } -#Scaled albedo -'p260531' = { - discipline = 3 ; - parameterCategory = 0 ; - parameterNumber = 1 ; - } -#Scaled brightness temperature -'p260532' = { - discipline = 3 ; - parameterCategory = 0 ; - parameterNumber = 2 ; - } -#Scaled precipitable water -'p260533' = { - discipline = 3 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - } -#Scaled lifted index -'p260534' = { - discipline = 3 ; - parameterCategory = 0 ; - parameterNumber = 4 ; - } -#Scaled cloud top pressure -'p260535' = { - discipline = 3 ; - parameterCategory = 0 ; - parameterNumber = 5 ; - } -#Scaled skin temperature -'p260536' = { - discipline = 3 ; - parameterCategory = 0 ; - parameterNumber = 6 ; - } -#Cloud mask -'p260537' = { - discipline = 3 ; - parameterCategory = 0 ; - parameterNumber = 7 ; - } -#Pixel scene type -'p260538' = { - discipline = 3 ; - parameterCategory = 0 ; - parameterNumber = 8 ; - } -#Fire detection indicator -'p260539' = { - discipline = 3 ; - parameterCategory = 0 ; - parameterNumber = 9 ; - } -#Forest fire weather index (as defined by the Canadian Forest Service) -'fwinx' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 5 ; - } -#Fine fuel moisture code (as defined by the Canadian Forest Service) -'ffmcode' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 6 ; - } -#Duff moisture code (as defined by the Canadian Forest Service) -'dufmcode' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 7 ; - } -#Drought code (as defined by the Canadian Forest Service) -'drtcode' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 8 ; - } -#Initial fire spread index (as defined by the Canadian Forest Service) -'infsinx' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 9 ; - } -#Fire buildup index (as defined by the Canadian Forest Service) -'fbupinx' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 10 ; - } -#Fire daily severity rating (as defined by the Canadian Forest Service) -'fdsrte' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 11 ; - } -#Cloudy radiance (with respect to wave number) -'p260550' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 16 ; - } -#Clear-sky radiance (with respect to wave number) -'p260551' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 17 ; - } -#Wind speed -'p260552' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 19 ; - } -#Aerosol optical thickness at 0.635 um -'p260553' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 20 ; - } -#Aerosol optical thickness at 0.810 um -'p260554' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 21 ; - } -#Aerosol optical thickness at 1.640 um -'p260555' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 22 ; - } -#Angstrom coefficient -'p260556' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 23 ; - } -#Keetch-Byram drought index -'kbdi' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 12 ; - } -#Drought factor (as defined by the Australian forest service) -'drtmrk' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 13 ; - } -#Rate of spread (as defined by the Australian forest service) -'rosmrk' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - } -#Fire danger index (as defined by the Australian forest service) -'fdimrk' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 15 ; - } -#Spread component (as defined by the U.S Forest Service National Fire-Danger Rating System) -'scnfdr' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 16 ; - } -#Burning index (as defined by the U.S Forest Service National Fire-Danger Rating System) -'buinfdr' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 17 ; - } -#Ignition component (as defined by the U.S Forest Service National Fire-Danger Rating System) -'icnfdr' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 18 ; - } -#Energy release component (as defined by the U.S Forest Service National Fire-Danger Rating System) -'ercnfdr' = { - discipline = 2 ; - parameterCategory = 4 ; - parameterNumber = 19 ; - } -#Volumetric soil ice -'vsi' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 38 ; - } -#Time integral of total solid precipitation flux -'titspf' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 128 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#10 metre eastward wind gust since previous post-processing -'efg10' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 23 ; - typeOfFirstFixedSurface = 103 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - } -#10 metre northward wind gust since previous post-processing -'nfg10' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 24 ; - typeOfFirstFixedSurface = 103 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - } -#Fog -'fog' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 50 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - } -#Time-integrated eastward turbulent surface stress due to orographic form drag -'etssofd' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 64 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated northward turbulent surface stress due to orographic form drag -'ntssofd' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 65 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated eastward turbulent surface stress due to surface roughness -'etsssr' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 66 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated northward turbulent surface stress due to surface roughness -'ntsssr' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 67 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Saturation specific humidity with respect to water -'sqw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 168 ; - } -#Total column integrated saturation specific humidity with respect to water -'tcsqw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 169 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Standardised Precipitation Index (SPI) -'spi' = { - discipline = 0 ; - parameterCategory = 22 ; - parameterNumber = 0 ; - } -#Standardised Precipitation Evapotranspiration Index (SPEI) -'spei' = { - discipline = 0 ; - parameterCategory = 22 ; - parameterNumber = 1 ; - } -#Standardised Streamflow Index (SSFI) -'ssfi' = { - discipline = 0 ; - parameterCategory = 22 ; - parameterNumber = 2 ; - } -#Standardised Reservoir Supply Index (SRSI) -'srsi' = { - discipline = 0 ; - parameterCategory = 22 ; - parameterNumber = 3 ; - } -#Standardised Water-level Index (SWI) -'swi' = { - discipline = 0 ; - parameterCategory = 22 ; - parameterNumber = 4 ; - } -#Standardised Snowmelt and Rain Index (SMRI) -'smri' = { - discipline = 0 ; - parameterCategory = 22 ; - parameterNumber = 5 ; - } -#Streamflow Drought Index (SDI) -'sdi' = { - discipline = 0 ; - parameterCategory = 22 ; - parameterNumber = 6 ; - } -#Volumetric soil moisture top 20 cm -'vsw20' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 2 ; - scaleFactorOfSecondFixedSurface = 1 ; - } -#Volumetric soil moisture top 100 cm -'vsw100' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 1 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Universal thermal climate index -'utci' = { - discipline = 20 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - } -#Mean radiant temperature -'mrt' = { - discipline = 20 ; - parameterCategory = 0 ; - parameterNumber = 1 ; - } -#Fraction of Malaria cases -'mal_cases_frac' = { - discipline = 20 ; - parameterCategory = 1 ; - parameterNumber = 0 ; - } -#Malaria circumsporozoite protein ratio -'mal_prot_ratio' = { - discipline = 20 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - } -#Plasmodium falciparum entomological inoculation rate -'mal_innoc_rate' = { - discipline = 20 ; - parameterCategory = 1 ; - parameterNumber = 2 ; - } -#Human bite rate by anopheles vectors -'mal_hbite_rate' = { - discipline = 20 ; - parameterCategory = 1 ; - parameterNumber = 3 ; - } -#Malaria immunity ratio -'mal_immun_ratio' = { - discipline = 20 ; - parameterCategory = 1 ; - parameterNumber = 4 ; - } -#Falciparum parasite ratio -'mal_infect_ratio' = { - discipline = 20 ; - parameterCategory = 1 ; - parameterNumber = 5 ; - } -#Detectable falciparum parasite ratio (after day 10) -'mal_infect_d10_ratio' = { - discipline = 20 ; - parameterCategory = 1 ; - parameterNumber = 6 ; - } -#Anopheles vector to host ratio -'mal_host_ratio' = { - discipline = 20 ; - parameterCategory = 1 ; - parameterNumber = 7 ; - } -#Anopheles vector density -'mal_vect_dens' = { - discipline = 20 ; - parameterCategory = 1 ; - parameterNumber = 8 ; - } -#Fraction of malarial vector reproductive habitat -'mal_hab_frac' = { - discipline = 20 ; - parameterCategory = 1 ; - parameterNumber = 9 ; - } -#Population density -'pop_dens' = { - discipline = 20 ; - parameterCategory = 2 ; - parameterNumber = 0 ; - } -#Wet bulb globe temperature -'wbgt' = { - discipline = 20 ; - parameterCategory = 0 ; - parameterNumber = 2 ; - } -#Globe temperature -'gt' = { - discipline = 20 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - } -#Humidex -'hmdx' = { - discipline = 20 ; - parameterCategory = 0 ; - parameterNumber = 4 ; - } -#Effective temperature -'efft' = { - discipline = 20 ; - parameterCategory = 0 ; - parameterNumber = 5 ; - } -#Normal effective temperature -'nefft' = { - discipline = 20 ; - parameterCategory = 0 ; - parameterNumber = 6 ; - } -#Standard effective temperature -'sefft' = { - discipline = 20 ; - parameterCategory = 0 ; - parameterNumber = 7 ; - } -#Physiological equivalent temperature -'peqt' = { - discipline = 20 ; - parameterCategory = 0 ; - parameterNumber = 8 ; - } -#Saturation water vapour pressure -'swvp' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 32 ; - } -#Wet-bulb potential temperature -'wbpt' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 32 ; - } -#Sea ice thickness -'sithick' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - } -#Sea ice area fraction -'siconc' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Eastward sea ice velocity -'siue' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Northward sea ice velocity -'sivn' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice albedo -'sialb' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice surface temperature -'sitemptop' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice growth -'sigrowth' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice volume per unit area -'sivol' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 15 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Snow volume over sea ice per unit area -'snvol' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 16 ; - typeOfFirstFixedSurface = 173 ; - typeOfSecondFixedSurface = 175 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Vertically averaged sea ice temperature -'vasit' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Snow temperature over sea ice -'sntemp' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 13 ; - typeOfFirstFixedSurface = 173 ; - typeOfSecondFixedSurface = 175 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice temperature at the sea ice and snow interface -'sisntemp' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 175 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Underside ice temperature -'usitemp' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 176 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice heat content -'sihc' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Snow heat content over sea ice -'snhc' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 173 ; - typeOfSecondFixedSurface = 175 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice freeboard thickness -'sifbr' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = 0 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Sea ice melt pond fraction -'sipf' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 20 ; - typeOfFirstFixedSurface = 188 ; - typeOfSecondFixedSurface = 189 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice melt pond depth -'sipd' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 188 ; - typeOfSecondFixedSurface = 189 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice melt pond volume per unit area -'sipvol' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 188 ; - typeOfSecondFixedSurface = 189 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice fraction tendency due to parameterization -'bckinsic' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 23 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#X-component of sea ice velocity -'six' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 24 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Y-component of sea ice velocity -'siy' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 25 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice temperature -'sit' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - } -#Sea surface practical salinity -'sos' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 3 ; - } -#Sea surface temperature -'tos' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Depth of 14 C isotherm -'t14d' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 20 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 28715 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Depth of 17 C isotherm -'t17d' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 20 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 29015 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Depth of 20 C isotherm -'t20d' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 20 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 29315 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Depth of 26 C isotherm -'t26d' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 20 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 29915 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Depth of 28 C isotherm -'t28d' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 20 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 30115 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Barotropic stream function -'stfbarot' = { - discipline = 10 ; - parameterCategory = 191 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 5 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Surface downward heat flux -'hfds' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 4 ; - } -#Northward surface stress -'tauvon' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 6 ; - } -#Eastward surface stress -'tauuoe' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 5 ; - } -#Y-component of surface stress -'tauvo' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#X-component of surface stress -'tauuo' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 7 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Ocean mixed layer depth defined by sigma theta 0.01 kg m-3 -'mlotst010' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 169 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 1 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Ocean mixed layer depth defined by sigma theta 0.03 kg m-3 -'mlotst030' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 169 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 3 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Ocean mixed layer depth defined by sigma theta 0.125 kg m-3 -'mlotst125' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 169 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 125 ; - scaleFactorOfFirstFixedSurface = 3 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Ocean mixed layer depth defined by temperature 0.2 C -'mlott02' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 170 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 1 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Ocean mixed layer depth defined by temperature 0.5 C -'mlott05' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 170 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 5 ; - scaleFactorOfFirstFixedSurface = 1 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Average sea water practical salinity in the upper 300 m -'sc300m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 300 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Average sea water practical salinity in the upper 700 m -'sc700m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 700 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Total column average sea water practical salinity -'scbtm' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 9 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Vertically-integrated heat content in the upper 300 m -'hc300m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 300 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Vertically-integrated heat content in the upper 700 m -'hc700m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 700 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Total column of heat content -'hcbtm' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 9 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea surface height -'zos' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 1 ; - } -#Steric change in sea surface height -'stheig' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Halosteric change in sea surface height -'hstheig' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 10 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Thermosteric change in sea surface height -'tstheig' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 9 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Thermocline depth -'thcline' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Bottom pressure equivalent height -'btp' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 29 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 9 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Net surface upward water flux -'swfup' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 13 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Fresh water flux into sea water (from rivers) -'fw2sw' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 30 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Virtual salt flux into sea water -'vsf2sw' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 32 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Heat flux correction -'hfcorr' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Fresh water flux correction -'fwcorr' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 31 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Virtual salt flux correction -'vsfcorr' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 33 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Turbocline depth (kz=5e-4) -'turbocl' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 171 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 5 ; - scaleFactorOfFirstFixedSurface = 4 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Y-component of surface sea water velocity -'svy' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#X-component of surface sea water velocity -'svx' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 16 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Northward surface sea water velocity -'svn' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 15 ; - } -#Eastward surface sea water velocity -'sve' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 14 ; - } -#Heat Content surface to 26C isotherm -'hct26' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 20 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 29915 ; - scaleFactorOfSecondFixedSurface = 2 ; - } -#Sea surface height tendency due to parameterization -'bckineta' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea surface height with inverse barometer correction -'zosib' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 20 ; - } -#Average sea water potential temperature in the upper 300m -'pt300m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 300 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Sea surface salinity -'sss' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 21 ; - } -#Vertically integrated sea water practical salinity in the upper 300 m -'sc300v' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 50 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 300 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Vertically integrated sea water practical salinity in the upper 700 m -'sc700v' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 50 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 700 ; - scaleFactorOfSecondFixedSurface = 0 ; - } -#Total column vertically integrated sea water practical salinity -'scbtv' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 50 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 9 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea water practical salinity -'so' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Sea water potential temperature -'thetao' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Sea water sigma theta -'sigmat' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 20 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Y-component of sea water velocity -'voy' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 26 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#X-component of sea water velocity -'uox' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 25 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Northward sea water velocity -'von' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 24 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Eastward sea water velocity -'uoe' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 23 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Upward sea water velocity -'wo' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 27 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea water potential temperature tendency due to newtonian relaxation -'thetaodmp' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 34 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Sea water salinity tendency due to newtonian relaxation -'sodmp' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 35 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Sea water temperature tendency due to parameterization -'bckint' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 36 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Sea water salinity tendency due to parameterization -'bckins' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 37 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Eastward sea water velocity tendency due to parameterization -'bckine' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 38 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Northward sea water velocity tendency due to parameterization -'bckinn' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 39 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Sea water temperature tendency due to direct bias correction -'tdbiascorr' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 40 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Sea water salinity tendency due to direct bias correction -'sdbiascorr' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 41 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Sea water salinity -'salo' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - } -#Net short wave radiation rate at sea surface -'ssr_sea' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 9 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Wind stress at sea surface -'wst_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 49 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Wind speed at 10m above sea surface -'ws10_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 102 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Neutral drag coefficient at 10m above sea surface -'nd10_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 29 ; - typeOfFirstFixedSurface = 102 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Total precipitation rate at sea surface -'tprate_sea' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Snow precipitation rate at sea surface -'snrate_sea' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 66 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Eastward of wind stress over sea ice -'ewst_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 50 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Northward of wind stress over sea ice -'nwst_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 51 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#U-component of wind stress over sea ice -'uwst_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#V-component of wind stress over sea ice -'vwst_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 53 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Time-mean sea ice thickness -'avg_sithick' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice area fraction -'avg_siconc' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean eastward sea ice velocity -'avg_siue' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean northward sea ice velocity -'avg_sivn' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice albedo -'avg_sialb' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice surface temperature -'avg_sitemptop' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice growth -'avg_sigrowth' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice volume per unit area -'avg_sivol' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 15 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean snow volume over sea ice per unit area -'avg_snvol' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 16 ; - typeOfFirstFixedSurface = 173 ; - typeOfSecondFixedSurface = 175 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean vertically averaged sea ice temperature -'avg_vasit' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean snow temperature over sea ice -'avg_sntemp' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 13 ; - typeOfFirstFixedSurface = 173 ; - typeOfSecondFixedSurface = 175 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice temperature at the sea ice and snow interface -'avg_sisntemp' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 175 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean underside ice temperature -'avg_usitemp' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 176 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice heat content -'avg_sihc' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean snow heat content over sea ice -'avg_snhc' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 173 ; - typeOfSecondFixedSurface = 175 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice freeboard thickness -'avg_sifbr' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = 0 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice melt pond fraction -'avg_sipf' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 20 ; - typeOfFirstFixedSurface = 188 ; - typeOfSecondFixedSurface = 189 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice melt pond depth -'avg_sipd' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 188 ; - typeOfSecondFixedSurface = 189 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice melt pond volume per unit area -'avg_sipvol' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 188 ; - typeOfSecondFixedSurface = 189 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice fraction tendency due to parameterization -'avg_bckinsic' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 23 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean X-component of sea ice velocity -'avg_six' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 24 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean Y-component of sea ice velocity -'avg_siy' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 25 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea ice temperature -'avg_sit' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 8 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea surface practical salinity -'avg_sos' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 3 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea surface temperature -'avg_tos' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean depth of 14 C isotherm -'avg_t14d' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 20 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 28715 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean depth of 17 C isotherm -'avg_t17d' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 20 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 29015 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean depth of 20 C isotherm -'avg_t20d' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 20 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 29315 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean depth of 26 C isotherm -'avg_t26d' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 20 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 29915 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean depth of 28 C isotherm -'avg_t28d' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 20 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 30115 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean barotropic stream function -'avg_stfbarot' = { - discipline = 10 ; - parameterCategory = 191 ; - parameterNumber = 4 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 5 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean surface downward heat flux -'avg_hfds' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 4 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean northward surface stress -'avg_tauvon' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 6 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean eastward surface stress -'avg_tauuoe' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 5 ; - typeOfStatisticalProcessing = 0 ; - } -#Time mean Y-component of surface stress -'avg_tauvo' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 8 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean X-component of surface stress -'avg_tauuo' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 7 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean ocean mixed layer depth defined by sigma theta 0.01 kg m-3 -'avg_mlotst010' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 169 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 1 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean ocean mixed layer depth defined by sigma theta 0.03 kg m-3 -'avg_mlotst030' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 169 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 3 ; - scaleFactorOfFirstFixedSurface = 2 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean ocean mixed layer depth defined by sigma theta 0.125 kg m-3 -'avg_mlotst125' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 169 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 125 ; - scaleFactorOfFirstFixedSurface = 3 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean ocean mixed layer depth defined by temperature 0.2 C -'avg_mlott02' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 170 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 1 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean ocean mixed layer depth defined by temperature 0.5 C -'avg_mlott05' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 170 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 5 ; - scaleFactorOfFirstFixedSurface = 1 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean average sea water practical salinity in the upper 300 m -'avg_sc300m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 300 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean average sea water practical salinity in the upper 700 m -'avg_sc700m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 700 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean total column average sea water practical salinity -'avg_scbtm' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 9 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean vertically-integrated heat content in the upper 300 m -'avg_hc300m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 300 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean vertically-integrated heat content in the upper 700 m -'avg_hc700m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 700 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean total column heat content -'avg_hcbtm' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 9 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea surface height -'avg_zos' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean steric change in sea surface height -'avg_stheig' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 11 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean halosteric change in sea surface height -'avg_hstheig' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 10 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean thermosteric change in sea surface height -'avg_tstheig' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 9 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean thermocline depth -'avg_thcline' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean bottom pressure equivalent height -'avg_btp' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 29 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 9 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean net surface upward water flux -'avg_swfup' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 13 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean fresh water flux into sea water (from rivers) -'avg_fw2sw' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 30 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean virtual salt flux into sea water -'avg_vsf2sw' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 32 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean heat flux correction -'avg_hfcorr' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean fresh water flux correction -'avg_fwcorr' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 31 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean virtual salt flux correction -'avg_vsfcorr' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 33 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean turbocline depth (kz=5e-4) -'avg_turbocl' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 14 ; - typeOfFirstFixedSurface = 171 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 5 ; - scaleFactorOfFirstFixedSurface = 4 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean Y-component of surface sea water velocity -'avg_svy' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 17 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean X-component of surface sea water velocity -'avg_svx' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 16 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean northward surface sea water velocity -'avg_svn' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 15 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean eastward surface sea water velocity -'avg_sve' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 14 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean heat content surface to 26C isotherm -'avg_hct26' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 20 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 29915 ; - scaleFactorOfSecondFixedSurface = 2 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea surface height tendency due to parameterization -'avg_bckineta' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea surface height with inverse barometer correction -'avg_zosib' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 20 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean average sea water potential temperature in the upper 300m -'avg_pt300m' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 300 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea surface salinity -'avg_sss' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 21 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean vertically integrated sea water practical salinity in the upper 300 m -'avg_sc300v' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 50 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 300 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean vertically integrated sea water practical salinity in the upper 700 m -'avg_sc700v' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 50 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 160 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 700 ; - scaleFactorOfSecondFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean total column vertically integrated sea water practical salinity -'avg_scbtv' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 50 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 9 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea water practical salinity -'avg_so' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea water potential temperature -'avg_thetao' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 18 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea water sigma theta -'avg_sigmat' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 20 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean Y-component of sea water velocity -'avg_voy' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 26 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean X-component of sea water velocity -'avg_uox' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 25 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean northward sea water velocity -'avg_von' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 24 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean eastward sea water velocity -'avg_uoe' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 23 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean upward sea water velocity -'avg_wo' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 27 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea water potential temperature tendency due to newtonian relaxation -'avg_thetaodmp' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 34 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea water salinity tendency due to newtonian relaxation -'avg_sodmp' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 35 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea water temperature tendency due to parameterization -'avg_bckint' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 36 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea water salinity tendency due to parameterization -'avg_bckins' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 37 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean eastward sea water velocity tendency due to parameterization -'avg_bckine' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 38 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean northward sea water velocity tendency due to parameterization -'avg_bckinn' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 39 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea water temperature tendency due to direct bias correction -'avg_tdbiascorr' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 40 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea water salinity tendency due to direct bias correction -'avg_sdbiascorr' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 41 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean sea water salinity -'avg_salo' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean net short wave radiation rate at sea surface -'avg_ssr_sea' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 9 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean wind stress at sea surface -'avg_wst_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 49 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean wind speed at 10m above sea surface -'avg_10ws_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 102 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean neutral drag coefficient at 10m above sea surface -'avg_10nd_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 29 ; - typeOfFirstFixedSurface = 102 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean total precipitation rate at sea surface -'avg_tprate_sea' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean snow precipitation rate at sea surface -'avg_snrate_sea' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 66 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean eastward of wind stress over sea ice -'avg_ewst_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 50 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean northward of wind stress over sea ice -'avg_nwst_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 51 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean U-component of wind stress over sea ice -'avg_uwst_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean V-component of wind stress over sea ice -'avg_vwst_sea' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 53 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-accumulated net short wave radiation at sea surface -'acc_ssr_sea' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 9 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 1 ; - } -#Time-accumulated total precipitation at sea surface -'tp_sea' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 1 ; - } -#Time-accumulated snow precipitation at sea surface -'sn_sea' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 66 ; - typeOfFirstFixedSurface = 160 ; - typeOfSecondFixedSurface = 255 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 1 ; - } -#Virtual temperature -'vtmp' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 1 ; - } -#Mass density -'mdens' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 0 ; - } -#Total column vertically-integrated mass density -'tc_mdens' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Mass mixing ratio -'mass_mixrat' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - } -#Emission mass flux -'emi_mflx' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 255 ; - } -#Dry deposition velocity -'drydep_vel' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - } -#Wet deposition mass flux -'wetdep_mflx' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - } -#Dry deposition mass flux -'drydep_mflx' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - } -#Sedimentation mass flux -'sed_mflx' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 11 ; - } -#Volume mixing ratio -'vol_mixrat' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 52 ; - } -#Wet deposition mass flux by large-scale precipitation -'wetdep_mflx_lsp' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 9 ; - } -#Wet deposition mass flux by convective precipitation -'wetdep_mflx_cp' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 10 ; - } -#Emission mass flux from natural sources -'emi_mflx_natsrc' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 6 ; - } -#Emission mass flux from anthropogenic sources -'emi_mflx_antsrc' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 4 ; - } -#Emission mass flux from elevated anthropogenic sources -'emi_mflx_elevantsrc' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 12 ; - } -#Emission mass flux from surface anthropogenic sources -'emi_mflx_sfcantsrc' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 13 ; - } -#Emission from aviation -'emi_mflx_aviation' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 1 ; - } -#Emission mass flux from agriculture livestock -'emi_mflx_agriliv' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 14 ; - } -#Emission mass flux from agriculture soils -'emi_mflx_agrisol' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 15 ; - } -#Emission mass flux from agricultural waste burning -'emi_mflx_agriwasburn' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 16 ; - } -#Emission mass flux from residential, commercial and other combustion -'emi_mflx_rescomb' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 18 ; - } -#Emission mass flux from power generation -'emi_mflx_powgen' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 19 ; - } -#Emission mass flux from fugitives -'emi_mflx_fug' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 21 ; - } -#Emission mass flux from industrial process -'emi_mflx_indproc' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 22 ; - } -#Emission mass flux from solvents -'emi_mflx_solv' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 23 ; - } -#Emission mass flux from ships -'emi_mflx_shp' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 24 ; - } -#Emission mass flux from wastes (solid and water) -'emi_mflx_wastes' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 25 ; - } -#Emission mass flux from off-road transportation -'emi_mflx_offrdtrans' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 27 ; - } -#Emission mass flux from road transportation -'emi_mflx_rdtrans' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 26 ; - } -#Emission mass flux from super power stations -'emi_mflx_suppowstn' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 20 ; - } -#Emission mass flux from volcanoes -'emi_mflx_vol' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 7 ; - } -#Emission mass flux from wetlands -'emi_mflx_wetl' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 10 ; - } -#Net ecosystem exchange flux -'neef' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 59 ; - } -#Mean net ecosystem exchange flux -'mneef' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 59 ; - typeOfStatisticalProcessing = 0 ; - } -#Accumulated net ecosystem exchange flux -'aneef' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 59 ; - typeOfStatisticalProcessing = 1 ; - } -#Gross primary production flux -'gppf' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 60 ; - } -#Mean gross primary production flux -'mgppf' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 60 ; - typeOfStatisticalProcessing = 0 ; - } -#Accumulated gross primary production flux -'agppf' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 60 ; - typeOfStatisticalProcessing = 1 ; - } -#Ecosystem respiration flux -'erf' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 61 ; - } -#Mean ecosystem respiration flux -'merf' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 61 ; - typeOfStatisticalProcessing = 0 ; - } -#Accumulated ecosystem respiration flux -'aerf' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 61 ; - typeOfStatisticalProcessing = 1 ; - } -#Emission mass flux from bio fuel -'emi_mflx_biofuel' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 8 ; - } -#Emission mass flux from fossil fuel -'emi_mflx_fossilfuel' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 9 ; - } -#Emission mass flux from other -'emi_mflx_other' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 0 ; - } -#Emission mass flux from oceans -'emi_mflx_ocean' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 11 ; - } -#Accumulated wet deposition mass flux -'acc_wetdep_mflx' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - typeOfStatisticalProcessing = 1 ; - } -#Accumulated dry deposition mass flux -'acc_drydep_mflx' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - typeOfStatisticalProcessing = 1 ; - } -#Aerosol number density -'aer_ndens' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 59 ; - } -#Mass mixing ratio from volcanoes -'mass_mixrat_vol' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - sourceSinkChemicalPhysicalProcess = 7 ; - } -#Total column vertically-integrated mass density from volcanoes -'tc_mdens_vol' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - sourceSinkChemicalPhysicalProcess = 7 ; - } -#Dry deposition velocity from volcanoes -'drydep_vel_vol' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - sourceSinkChemicalPhysicalProcess = 7 ; - } -#Aerosol optical depth -'aod' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 102 ; - } -#Single scattering albedo -'ssa' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 103 ; - } -#Asymmetry Factor -'asymf' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 104 ; - } -#Aerosol backscatter from top of atmosphere -'aerbscattoa' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 107 ; - typeOfFirstFixedSurface = 8 ; - } -#Aerosol backscatter from ground -'aerbscatgnd' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 108 ; - typeOfFirstFixedSurface = 1 ; - } -#Aerosol extinction coefficient -'aerext' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 105 ; - } -#Pressure tendency -'ptend' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 2 ; - } -#ICAO Standard Atmosphere reference height -'icaht' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 3 ; - } -#Geometrical height -'h' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 6 ; - } -#Standard deviation of height -'hstdv' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 7 ; - } -#Virtual potential temperature -'vptmp' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 15 ; - } -#Pseudo-adiabatic potential temperature -'papt' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - } -#Maximum temperature -'tmax' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 4 ; - } -#Minimum temperature -'tmin' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 5 ; - } -#Dew point temperature -'dpt' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 6 ; - } -#Lapse rate -'lapr' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 8 ; - } -#Visibility -'vis' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 0 ; - } -#Radar spectra (1) -'rdsp1' = { - discipline = 0 ; - parameterCategory = 15 ; - parameterNumber = 6 ; - } -#Radar spectra (2) -'rdsp2' = { - discipline = 0 ; - parameterCategory = 15 ; - parameterNumber = 7 ; - } -#Radar spectra (3) -'rdsp3' = { - discipline = 0 ; - parameterCategory = 15 ; - parameterNumber = 8 ; - } -#Parcel lifted index (to 500 hPa) -'pli' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 0 ; - } -#Temperature anomaly -'ta' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 9 ; - } -#Pressure anomaly -'presa' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 8 ; - } -#Geopotential height anomaly -'gpa' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 9 ; - } -#Wave spectra (1) -'wvsp1' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - } -#Wave spectra (2) -'wvsp2' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 1 ; - } -#Wave spectra (3) -'wvsp3' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 2 ; - } -#Wind direction -'wdir' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 0 ; - } -#Sigma coordinate vertical velocity -'sgcvv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 7 ; - } -#Absolute vorticity -'absv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 10 ; - } -#Absolute divergence -'absd' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 11 ; - } -#Vertical u-component shear -'vucsh' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 15 ; - } -#Vertical v-component shear -'vvcsh' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 16 ; - } -#Precipitable water -'pwat' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 3 ; - } -#Saturation deficit -'satd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 5 ; - } -#Precipitation rate -'prate' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 7 ; - } -#Thunderstorm probability -'tstm' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 2 ; - } -#Convective precipitation (water) -'acpcp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 10 ; - } -#Mixed layer depth -'mld' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 3 ; - } -#Transient thermocline depth -'tthdp' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 2 ; - } -#Main thermocline anomaly -'mtha' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 1 ; - } -#Best lifted index (to 500 hPa) -'bli' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 1 ; - } -#Soil moisture content -'ssw' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - } -#Salinity -'s' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 3 ; - } -#Density -'den' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 10 ; - } -#Direction of ice drift -'diced' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 2 ; - } -#Speed of ice drift -'siced' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 3 ; - } -#Ice divergence -'iced' = { - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 7 ; - } -#Snowmelt -'snom' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 41 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Direction of swell waves -'swdir' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 7 ; - } -#Secondary wave direction -'dirsw' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 12 ; - } -#Net short-wave radiation flux (surface) -'nswrs' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 0 ; - } -#Global radiation flux -'grad' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 3 ; - } -#Radiance (with respect to wave number) -'lwrad' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 5 ; - } -#Radiance (with respect to wave length) -'swrad' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 6 ; - } -#Wind mixing energy -'wmixe' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 19 ; - } -#10 metre wind gust of at least 15 m/s -'fg10g15' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - scaledValueOfLowerLimit = 15 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#10 metre wind gust of at least 20 m/s -'fg10g20' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - productDefinitionTemplateNumber = 9 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - scaledValueOfLowerLimit = 20 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Period corresponding to maximum individual wave height -'tmax' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 23 ; - } -#Envelop-maximum individual wave height -'hmax' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 93 ; - } -#Model bathymetry -'wmb' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 7 ; - } -#Mean wave period based on first moment -'mp1' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - } -#Mean zero-crossing wave period -'mp2' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 28 ; - } -#Wave spectral directional width -'wdw' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 31 ; - } -#Mean wave period based on first moment for wind waves -'p1ww' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 26 ; - } -#Mean wave period based on second moment for wind waves -'p2ww' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 29 ; - } -#Wave spectral directional width for wind waves -'dwww' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 32 ; - } -#Mean wave period based on first moment for swell -'p1ps' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 27 ; - } -#Mean wave period based on second moment for swell -'p2ps' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 30 ; - } -#Wave spectral directional width for swell -'dwps' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 33 ; - } -#Significant height of combined wind waves and swell -'swh' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - } -#Mean wave direction -'mwd' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 14 ; - } -#Peak wave period -'pp1d' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 34 ; - } -#Mean wave period -'mwp' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 15 ; - } -#Coefficient of drag with waves -'cdww' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 16 ; - } -#Significant height of wind waves -'shww' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 5 ; - } -#Mean direction of wind waves -'mdww' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 75 ; - } -#Mean period of wind waves -'mpww' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 6 ; - } -#Significant height of total swell -'shts' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 8 ; - } -#Mean direction of total swell -'mdts' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 74 ; - } -#Mean period of total swell -'mpts' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 9 ; - } -#Mean square slope of waves -'msqs' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 20 ; - } -#10 metre wind speed -'wind' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 40 ; - typeOfFirstFixedSurface = 102 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#Altimeter wave height -'awh' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 37 ; - } -#Altimeter corrected wave height -'acwh' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 38 ; - } -#Altimeter range relative correction -'arrc' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 39 ; - } -#10 metre wind direction -'dwi' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 41 ; - typeOfFirstFixedSurface = 102 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - } -#2D wave spectra (single) -'d2fd' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 86 ; - } -#Wave spectral kurtosis -'wsk' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 43 ; - } -#Benjamin-Feir index -'bfi' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 44 ; - } -#Wave spectral peakedness -'wsp' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 98 ; - } -#Skin reservoir content -'srcrea' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 50 ; - } -#Vertical integral of mass of atmosphere -'vima' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 39 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Total column vertically-integrated kinetic energy -'vike' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Total column vertically-integrated enthalpy -'vithe' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Total column vertically-integrated potential + internal energy -'vipie' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Vertical integral of potential+internal+latent energy -'vipile' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 21 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Total column vertically-integrated total energy -'vitoe' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 2 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Vertical integral of eastward heat flux -'vithee' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 19 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Vertical integral of northward heat flux -'vithen' = { - discipline = 0 ; - parameterCategory = 21 ; - parameterNumber = 20 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Vertical integral of eastward water vapour flux -'viwve' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 150 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Vertical integral of northward water vapour flux -'viwvn' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 151 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Vertically integrated moisture divergence flux -'viwvd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 165 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Time-integrated temperature tendency due to short-wave radiation -'srta' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 22 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated temperature tendency due to long-wave radiation -'trta' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 23 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated temperature tendency due to short wave radiation, clear sky -'srtca' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 24 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated temperature tendency due to long-wave radiation, clear sky -'trtca' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated updraught mass flux -'umfa' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 27 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated downdraught mass flux -'dmfa' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 28 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated updraught detrainment rate -'udra' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 29 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated downdraught detrainment rate -'ddra' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 30 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated total precipitation flux -'tpfa' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-integrated turbulent diffusion coefficient for heat -'tdcha' = { +#200 metre wind speed +'si200' = { discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 20 ; - typeOfStatisticalProcessing = 1 ; + parameterCategory = 2 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 200 ; + scaleFactorOfFirstFixedSurface = 0 ; } -#Time-integrated temperature tendency due to parametrisations -'ttpha' = { +#100 metre wind speed +'si100' = { discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 26 ; - typeOfStatisticalProcessing = 1 ; + parameterCategory = 2 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 100 ; + scaleFactorOfFirstFixedSurface = 0 ; } -#Time-integrated specific humidity tendency due to parametrisations -'qtpha' = { +#Time-maximum 2 metre relative humidity +'mx2r' = { discipline = 0 ; parameterCategory = 1 ; - parameterNumber = 108 ; - typeOfStatisticalProcessing = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; } -#Time-integrated eastward wind tendency due to parametrisations -'utpha' = { +#Time-minimum 2 metre relative humidity +'mn2r' = { discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 39 ; - typeOfStatisticalProcessing = 1 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 3 ; } -#Time-integrated northward wind tendency due to parametrisations -'vtpha' = { - discipline = 0 ; +#Time-mean sea ice area fraction +'avg_ci' = { + discipline = 10 ; parameterCategory = 2 ; - parameterNumber = 40 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-mean surface net radiation flux (SW and LW) -'msnrf' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; + parameterNumber = 0 ; typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } -#Surface runoff -'sro' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 34 ; - } -#Nitrogen dioxide mass mixing ratio -'no2' = { - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 5 ; - is_chemical = 1 ; - } -#Sulphur dioxide mass mixing ratio -'so2' = { +#Time-mean 2 metre specific humidity +'avg_2sh' = { discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 8 ; - is_chemical = 1 ; + parameterCategory = 1 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 103 ; + typeOfSecondFixedSurface = 255 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; } -#Carbon monoxide mass mixing ratio -'co' = { +#Time-mean 2 metre relative humidity +'avg_2r' = { discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 4 ; - is_chemical = 1 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; } -#Ozone mass mixing ratio (full chemistry scheme) -'go3' = { +#Time-mean 10 metre U wind component +'avg_10u' = { discipline = 0 ; - parameterCategory = 20 ; + parameterCategory = 2 ; parameterNumber = 2 ; - constituentType = 0 ; - is_chemical = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; } -#Nitrogen dioxide mass mixing ratio difference -'no2diff' = { +#Time-mean 10 metre V wind component +'avg_10v' = { discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 5 ; - typeOfGeneratingProcess = 20 ; - is_chemical = 1 ; + parameterCategory = 2 ; + parameterNumber = 3 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; } -#Sulphur dioxide mass mixing ratio difference -'so2diff' = { +#Time-mean 2 metre dewpoint temperature +'avg_2d' = { discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 8 ; - typeOfGeneratingProcess = 20 ; - is_chemical = 1 ; + parameterCategory = 0 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; } -#Carbon monoxide mass mixing ratio difference -'codiff' = { +#5-wave geopotential height +'wavh5' = { discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 4 ; - typeOfGeneratingProcess = 20 ; - is_chemical = 1 ; + parameterCategory = 3 ; + parameterNumber = 15 ; } -#Ozone mass mixing ratio difference (full chemistry scheme) -'go3diff' = { +#5-wave geopotential height anomaly +'wava5' = { discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 0 ; - typeOfGeneratingProcess = 20 ; - is_chemical = 1 ; + parameterCategory = 3 ; + parameterNumber = 19 ; } -#Convective inhibition -'cin' = { +#Best (4-layer) lifted index +'lftx4' = { discipline = 0 ; parameterCategory = 7 ; - parameterNumber = 7 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; + parameterNumber = 11 ; } -#Orography -'orog' = { +#2 metre relative humidity +'r2' = { discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 1 ; - } -#Friction velocity -'zust' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 17 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; } -#Mean 2 metre temperature -'mean2t' = { +#10 metre wind direction +'wdir10' = { discipline = 0 ; - parameterCategory = 0 ; + parameterCategory = 2 ; parameterNumber = 0 ; typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; + scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; } -#Mean of 10 metre wind speed -'mean10ws' = { +#10 metre eastward wind gust since previous post-processing +'efg10' = { discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 1 ; + parameterNumber = 23 ; typeOfFirstFixedSurface = 103 ; + typeOfSecondFixedSurface = 255 ; scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 0 ; + typeOfStatisticalProcessing = 2 ; } -#Lake total depth -'dl' = { - discipline = 1 ; +#10 metre northward wind gust since previous post-processing +'nfg10' = { + discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 162 ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; + parameterNumber = 24 ; + typeOfFirstFixedSurface = 103 ; + typeOfSecondFixedSurface = 255 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; } -#Lake mix-layer temperature -'lmlt' = { - discipline = 1 ; +#Wind speed at 10m above sea surface +'ws10_sea' = { + discipline = 0 ; parameterCategory = 2 ; parameterNumber = 1 ; - typeOfFirstFixedSurface = 166 ; + typeOfFirstFixedSurface = 102 ; typeOfSecondFixedSurface = 255 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = missing() ; + scaleFactorOfSecondFixedSurface = missing() ; } -#Lake mix-layer depth -'lmld' = { - discipline = 1 ; +#Neutral drag coefficient at 10m above sea surface +'nd10_sea' = { + discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 166 ; + parameterNumber = 29 ; + typeOfFirstFixedSurface = 102 ; typeOfSecondFixedSurface = 255 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; + scaledValueOfSecondFixedSurface = missing() ; + scaleFactorOfSecondFixedSurface = missing() ; } -#Lake bottom temperature -'lblt' = { - discipline = 1 ; +#Time-mean wind speed at 10m above sea surface +'avg_10ws_sea' = { + discipline = 0 ; parameterCategory = 2 ; parameterNumber = 1 ; - typeOfFirstFixedSurface = 162 ; + typeOfFirstFixedSurface = 102 ; typeOfSecondFixedSurface = 255 ; - } -#Lake total layer temperature -'ltlt' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 162 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; scaledValueOfSecondFixedSurface = missing() ; scaleFactorOfSecondFixedSurface = missing() ; + typeOfStatisticalProcessing = 0 ; } -#Lake shape factor -'lshf' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 10 ; - } -#Lake ice surface temperature -'lict' = { - discipline = 1 ; +#Time-mean neutral drag coefficient at 10m above sea surface +'avg_10nd_sea' = { + discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 6 ; - typeOfFirstFixedSurface = 174 ; + parameterNumber = 29 ; + typeOfFirstFixedSurface = 102 ; typeOfSecondFixedSurface = 255 ; - } -#Lake ice total depth -'licd' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 5 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; scaledValueOfSecondFixedSurface = missing() ; scaleFactorOfSecondFixedSurface = missing() ; + typeOfStatisticalProcessing = 0 ; } -#Minimum vertical gradient of refractivity inside trapping layer -'dndzn' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 45 ; - } -#Mean vertical gradient of refractivity inside trapping layer -'dndza' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 44 ; - } -#Duct base height -'dctb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 41 ; - } -#Trapping layer base height -'tplb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 42 ; - } -#Trapping layer top height -'tplt' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 43 ; - } -#10 metre u-component of neutral wind -'u10n' = { +#10 metre wind gust of at least 15 m/s +'fg10g15' = { discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 56 ; + parameterNumber = 22 ; + productDefinitionTemplateNumber = 9 ; typeOfFirstFixedSurface = 103 ; scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; + scaledValueOfLowerLimit = 15 ; + scaleFactorOfLowerLimit = 0 ; + probabilityType = 3 ; } -#10 metre v-component of neutral wind -'v10n' = { +#10 metre wind gust of at least 20 m/s +'fg10g20' = { discipline = 0 ; parameterCategory = 2 ; - parameterNumber = 57 ; + parameterNumber = 22 ; + productDefinitionTemplateNumber = 9 ; typeOfFirstFixedSurface = 103 ; scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; + scaledValueOfLowerLimit = 20 ; + scaleFactorOfLowerLimit = 0 ; + probabilityType = 3 ; } -#Snow depth water equivalent -'sd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 60 ; - } -#Snowfall water equivalent -'sf' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 53 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; +#2D wave spectra (single) +'d2fd' = { + discipline = 10 ; + parameterCategory = 0 ; + parameterNumber = 86 ; } -#Total Cloud Cover -'tcc' = { +#Mean 2 metre temperature +'mean2t' = { discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Field capacity -'cap' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 12 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; - scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 2 ; - scaleFactorOfSecondFixedSurface = 1 ; - } -#Wilting point -'wilt' = { - discipline = 2 ; parameterCategory = 0 ; - parameterNumber = 26 ; - typeOfFirstFixedSurface = 106 ; - typeOfSecondFixedSurface = 106 ; - scaledValueOfFirstFixedSurface = 0 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; scaleFactorOfFirstFixedSurface = 0 ; - scaledValueOfSecondFixedSurface = 2 ; - scaleFactorOfSecondFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; } -#Total Precipitation -'tp' = { +#Mean of 10 metre wind speed +'mean10ws' = { discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 52 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#U-component surface stokes drift -'ust' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 21 ; - } -#V-component surface stokes drift -'vst' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 22 ; + parameterCategory = 2 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 0 ; } #100 metre U wind component 'u100' = { diff --git a/definitions/grib2/localConcepts/ecmf/cfVarName.def b/definitions/grib2/localConcepts/ecmf/cfVarName.def index 1ddf27ad0..c878bb952 100644 --- a/definitions/grib2/localConcepts/ecmf/cfVarName.def +++ b/definitions/grib2/localConcepts/ecmf/cfVarName.def @@ -1,21754 +1,357 @@ # Automatically generated by ./create_def.pl, do not edit -#Equivalent potential temperature -'eqpt' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 4 ; - } -#Saturated equivalent potential temperature -'sept' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 5 ; - } -#Soil sand fraction -'ssfr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 6 ; - } -#Soil clay fraction -'scfr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 7 ; - } -#Surface runoff -'sro' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 202 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Sub-surface runoff -'ssro' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 204 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#U component of divergent wind -'udvw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 11 ; - } -#V component of divergent wind -'vdvw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 12 ; - } -#U component of rotational wind -'urtw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 13 ; - } -#V component of rotational wind -'vrtw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 14 ; - } -#UV visible albedo for direct radiation (climatological) -'aluvp' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 193 ; - typeOfGeneratingProcess = 9 ; - } -#UV visible albedo for diffuse radiation (climatological) -'aluvd' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 192 ; - typeOfGeneratingProcess = 9 ; - } -#Near IR albedo for direct radiation (climatological) -'alnip' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 193 ; - typeOfGeneratingProcess = 9 ; - } -#Near IR albedo for diffuse radiation (climatological) -'alnid' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 192 ; - typeOfGeneratingProcess = 9 ; - } -#Clear sky surface UV -'uvcs' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 19 ; - } -#Reserved for future unbalanced components -'p24.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 24 ; - } -#Reserved for future unbalanced components -'p25.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 25 ; - } -#Lake cover -'cl' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 26 ; - } -#Snow albedo -'asn' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 192 ; - } -#Ice temperature layer 1 -'istl1' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 35 ; - } -#Ice temperature layer 2 -'istl2' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 36 ; - } -#Ice temperature layer 3 -'istl3' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 37 ; - } -#Ice temperature layer 4 -'istl4' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 38 ; - } -#Volumetric soil water layer 1 -'swvl1' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 39 ; - } -#Volumetric soil water layer 2 -'swvl2' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 40 ; - } -#Volumetric soil water layer 3 -'swvl3' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 41 ; - } -#Volumetric soil water layer 4 -'swvl4' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 42 ; - } -#Snow evaporation -'es' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 197 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Snowmelt -'smlt' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 203 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Solar duration -'sdur' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 46 ; - } -#Maximum temperature at 2 metres in the last 24 hours -'mx2t24' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 2 ; - lengthOfTimeRange = 24 ; - } -#Minimum temperature at 2 metres in the last 24 hours -'mn2t24' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 3 ; - lengthOfTimeRange = 24 ; - } -#Observation count -'obct' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 62 ; - } -#Start time for skin temperature difference -'stsktd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 63 ; - } -#Finish time for skin temperature difference -'ftsktd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 64 ; - } -#Skin temperature difference -'sktd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 65 ; - } -#Minimum stomatal resistance, low vegetation -'msr_lv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'msr_hv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 69 ; - } -#Biome cover, low vegetation -'bc_lv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 70 ; - } -#Biome cover, high vegetation -'bc_hv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 71 ; - } -#Instantaneous surface solar radiation downwards -'issrd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 72 ; - } -#Instantaneous surface thermal radiation downwards -'istrd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 73 ; - } -#Experimental product -'p80.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 80 ; - } -#Experimental product -'p81.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 81 ; - } -#Experimental product -'p82.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 82 ; - } -#Experimental product -'p83.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 83 ; - } -#Experimental product -'p84.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 84 ; - } -#Experimental product -'p85.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 85 ; - } -#Experimental product -'p86.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 86 ; - } -#Experimental product -'p87.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 87 ; - } -#Experimental product -'p88.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 88 ; - } -#Experimental product -'p89.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 89 ; - } -#Experimental product -'p90.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 90 ; - } -#Experimental product -'p91.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 91 ; - } -#Experimental product -'p92.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 92 ; - } -#Experimental product -'p93.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 93 ; - } -#Experimental product -'p94.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 94 ; - } -#Experimental product -'p95.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 95 ; - } -#Experimental product -'p96.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 96 ; - } -#Experimental product -'p97.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 97 ; - } -#Experimental product -'p98.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 98 ; - } -#Experimental product -'p99.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 99 ; - } -#Experimental product -'p100.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 100 ; - } -#Experimental product -'p101.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 101 ; - } -#Experimental product -'p102.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 102 ; - } -#Experimental product -'p103.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 103 ; - } -#Experimental product -'p104.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 104 ; - } -#Experimental product -'p105.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 105 ; - } -#Experimental product -'p106.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 106 ; - } -#Experimental product -'p107.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 107 ; - } -#Experimental product -'p108.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 108 ; - } -#Experimental product -'p109.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 109 ; - } -#Experimental product -'p110.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 110 ; - } -#Experimental product -'p111.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 111 ; - } -#Experimental product -'p112.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 112 ; - } -#Experimental product -'p113.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 113 ; - } -#Experimental product -'p114.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 114 ; - } -#Experimental product -'p115.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 115 ; - } -#Experimental product -'p116.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 116 ; - } -#Experimental product -'p117.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 117 ; - } -#Experimental product -'p118.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 118 ; - } -#Experimental product -'p119.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 119 ; - } -#Experimental product -'p120.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 120 ; - } -#Maximum 10 metre wind gust in the last 6 hours -'p10fg6' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 123 ; - } -#Vertically integrated total energy -'vite' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 125 ; - } -#Generic parameter for sensitive area prediction -'p126.128' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 126 ; - } -#Atmospheric tide -'at' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 127 ; - } -#Budget values -'bv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 128 ; - } -#Soil temperature level 1 -'stl1' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 139 ; - } -#Soil wetness level 1 -'swl1' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 140 ; - } -#Snow depth -'sd' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 254 ; - } -#Large-scale precipitation -'lsp' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 196 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Convective precipitation -'cp' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 195 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Snowfall -'sf' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 198 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Logarithm of surface pressure -'lnsp' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 25 ; - typeOfFirstFixedSurface = 105 ; - } -#Short-wave heating rate -'swhr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 153 ; - } -#Long-wave heating rate -'lwhr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 154 ; - } -#Tendency of surface pressure -'tsp' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 158 ; - } -#Total cloud cover -'tcc' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 192 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Soil temperature level 2 -'stl2' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 170 ; - } -#Soil wetness level 2 -'swl2' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 171 ; - } -#Albedo (climatological) -'al' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 193 ; - typeOfGeneratingProcess = 9 ; - } -#Evaporation -'e' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 199 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Soil temperature level 3 -'stl3' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 183 ; - } -#Soil wetness level 3 -'swl3' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 184 ; - } -#Convective cloud cover -'ccc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 185 ; - } -#Low cloud cover -'lcc' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 193 ; - } -#Medium cloud cover -'mcc' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 194 ; - } -#High cloud cover -'hcc' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 195 ; - } -#East-West component of sub-gridscale orographic variance -'ewov' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 190 ; - } -#North-South component of sub-gridscale orographic variance -'nsov' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 191 ; - } -#North-West/South-East component of sub-gridscale orographic variance -'nwov' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 192 ; - } -#North-East/South-West component of sub-gridscale orographic variance -'neov' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 193 ; - } -#Skin reservoir content -'src' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 205 ; - } -#Vegetation fraction -'veg' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 199 ; - } -#Variance of sub-gridscale orography -'vso' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 200 ; - } -#Precipitation analysis weights -'paw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 204 ; - } -#Runoff -'ro' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 201 ; - typeOfStatisticalProcessing = 1 ; - } -#Total column ozone -'tco3' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 192 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Diabatic heating by radiation -'dhr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 214 ; - } -#Diabatic heating by vertical diffusion -'dhvd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 215 ; - } -#Diabatic heating by cumulus convection -'dhcc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 216 ; - } -#Diabatic heating large-scale condensation -'dhlc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 217 ; - } -#Vertical diffusion of zonal wind -'vdzw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 218 ; - } -#Vertical diffusion of meridional wind -'vdmw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 219 ; - } -#East-West gravity wave drag tendency -'ewgd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 220 ; - } -#North-South gravity wave drag tendency -'nsgd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 221 ; - } -#Convective tendency of zonal wind -'ctzw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 222 ; - } -#Convective tendency of meridional wind -'ctmw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 223 ; - } -#Vertical diffusion of humidity -'vdh' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 224 ; - } -#Humidity tendency by cumulus convection -'htcc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 225 ; - } -#Humidity tendency by large-scale condensation -'htlc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 226 ; - } -#Tendency due to removal of negative humidity -'crnh' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 227 ; - } -#Total precipitation -'tp' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 193 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#Apparent surface humidity -'asq' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 233 ; - } -#Soil temperature level 4 -'stl4' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 236 ; - } -#Soil wetness level 4 -'swl4' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 237 ; - } -#Convective snowfall -'csf' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 201 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Large-scale snowfall -'lsf' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 202 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Accumulated cloud fraction tendency -'acf' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 241 ; - } -#Accumulated liquid water tendency -'alw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 242 ; - } -#Forecast albedo -'fal' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 193 ; - } -#Accumulated ice water tendency -'aiw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 249 ; - } -#Ice age -'ice' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 250 ; - } -#Adiabatic tendency of temperature -'atte' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 251 ; - } -#Adiabatic tendency of humidity -'athe' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 252 ; - } -#Adiabatic tendency of zonal wind -'atze' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 253 ; - } -#Adiabatic tendency of meridional wind -'atmw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 254 ; - } -#Stream function difference -'strfdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 1 ; - } -#Velocity potential difference -'vpotdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 2 ; - } -#Potential temperature difference -'ptdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 3 ; - } -#Equivalent potential temperature difference -'eqptdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 4 ; - } -#Saturated equivalent potential temperature difference -'septdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 5 ; - } -#U component of divergent wind difference -'udvwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 11 ; - } -#V component of divergent wind difference -'vdvwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 12 ; - } -#U component of rotational wind difference -'urtwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 13 ; - } -#V component of rotational wind difference -'vrtwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 14 ; - } -#Unbalanced component of temperature difference -'uctpdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 21 ; - } -#Unbalanced component of logarithm of surface pressure difference -'uclndiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 22 ; - } -#Unbalanced component of divergence difference -'ucdvdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 23 ; - } -#Reserved for future unbalanced components -'p24.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 24 ; - } -#Reserved for future unbalanced components -'p25.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 25 ; - } -#Lake cover difference -'cldiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 26 ; - } -#Low vegetation cover difference -'cvldiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 27 ; - } -#High vegetation cover difference -'cvhdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 28 ; - } -#Type of low vegetation difference -'tvldiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 29 ; - } -#Type of high vegetation difference -'tvhdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 30 ; - } -#Sea-ice cover difference -'sicdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 31 ; - } -#Snow albedo difference -'asndiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 32 ; - } -#Snow density difference -'rsndiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 33 ; - } -#Sea surface temperature difference -'sstdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 34 ; - } -#Ice surface temperature layer 1 difference -'istl1diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 35 ; - } -#Ice surface temperature layer 2 difference -'istl2diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 36 ; - } -#Ice surface temperature layer 3 difference -'istl3diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 37 ; - } -#Ice surface temperature layer 4 difference -'istl4diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 38 ; - } -#Volumetric soil water layer 1 difference -'swvl1diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 39 ; - } -#Volumetric soil water layer 2 difference -'swvl2diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 40 ; - } -#Volumetric soil water layer 3 difference -'swvl3diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 41 ; - } -#Volumetric soil water layer 4 difference -'swvl4diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 42 ; - } -#Soil type difference -'sltdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 43 ; - } -#Snow evaporation difference -'esdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 44 ; - } -#Snowmelt difference -'smltdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 45 ; - } -#Solar duration difference -'sdurdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 46 ; - } -#Direct solar radiation difference -'dsrpdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 47 ; - } -#Magnitude of turbulent surface stress difference -'magssdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 48 ; - } -#10 metre wind gust difference -'fgdiff10' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 49 ; - } -#Large-scale precipitation fraction difference -'lspfdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 50 ; - } -#Maximum 2 metre temperature difference -'mx2t24diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 51 ; - } -#Minimum 2 metre temperature difference -'mn2t24diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 52 ; - } -#Montgomery potential difference -'montdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 53 ; - } -#Pressure difference -'presdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 54 ; - } -#Mean 2 metre temperature in the last 24 hours difference -'mean2t24diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 55 ; - } -#Mean 2 metre dewpoint temperature in the last 24 hours difference -'mn2d24diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 56 ; - } -#Downward UV radiation at the surface difference -'uvbdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 57 ; - } -#Photosynthetically active radiation at the surface difference -'pardiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 58 ; - } -#Convective available potential energy difference -'capediff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 59 ; - } -#Potential vorticity difference -'pvdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 60 ; - } -#Total precipitation from observations difference -'tpodiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 61 ; - } -#Observation count difference -'obctdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 62 ; - } -#Start time for skin temperature difference -'p63.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 63 ; - } -#Finish time for skin temperature difference -'p64.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 64 ; - } -#Skin temperature difference -'p65.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 65 ; - } -#Leaf area index, low vegetation -'p66.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 66 ; - } -#Leaf area index, high vegetation -'p67.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 67 ; - } -#Minimum stomatal resistance, low vegetation -'p68.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'p69.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 69 ; - } -#Biome cover, low vegetation -'p70.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 70 ; - } -#Biome cover, high vegetation -'p71.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 71 ; - } -#Total column liquid water -'p78.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 78 ; - } -#Total column ice water -'p79.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 79 ; - } -#Experimental product -'p80.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 80 ; - } -#Experimental product -'p81.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 81 ; - } -#Experimental product -'p82.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 82 ; - } -#Experimental product -'p83.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 83 ; - } -#Experimental product -'p84.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 84 ; - } -#Experimental product -'p85.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 85 ; - } -#Experimental product -'p86.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 86 ; - } -#Experimental product -'p87.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 87 ; - } -#Experimental product -'p88.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 88 ; - } -#Experimental product -'p89.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 89 ; - } -#Experimental product -'p90.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 90 ; - } -#Experimental product -'p91.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 91 ; - } -#Experimental product -'p92.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 92 ; - } -#Experimental product -'p93.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 93 ; - } -#Experimental product -'p94.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 94 ; - } -#Experimental product -'p95.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 95 ; - } -#Experimental product -'p96.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 96 ; - } -#Experimental product -'p97.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 97 ; - } -#Experimental product -'p98.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 98 ; - } -#Experimental product -'p99.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 99 ; - } -#Experimental product -'p100.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 100 ; - } -#Experimental product -'p101.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 101 ; - } -#Experimental product -'p102.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 102 ; - } -#Experimental product -'p103.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 103 ; - } -#Experimental product -'p104.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 104 ; - } -#Experimental product -'p105.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 105 ; - } -#Experimental product -'p106.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 106 ; - } -#Experimental product -'p107.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 107 ; - } -#Experimental product -'p108.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 108 ; - } -#Experimental product -'p109.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 109 ; - } -#Experimental product -'p110.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 110 ; - } -#Experimental product -'p111.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 111 ; - } -#Experimental product -'p112.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 112 ; - } -#Experimental product -'p113.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 113 ; - } -#Experimental product -'p114.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 114 ; - } -#Experimental product -'p115.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 115 ; - } -#Experimental product -'p116.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 116 ; - } -#Experimental product -'p117.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 117 ; - } -#Experimental product -'p118.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 118 ; - } -#Experimental product -'p119.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 119 ; - } -#Experimental product -'p120.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 120 ; - } -#Maximum temperature at 2 metres difference -'mx2t6diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 121 ; - } -#Minimum temperature at 2 metres difference -'mn2t6diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 122 ; - } -#10 metre wind gust in the last 6 hours difference -'fg6diff10' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 123 ; - } -#Vertically integrated total energy -'p125.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 125 ; - } -#Generic parameter for sensitive area prediction -'p126.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 126 ; - } -#Atmospheric tide difference -'atdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 127 ; - } -#Budget values difference -'bvdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 128 ; - } -#Geopotential difference -'zdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 129 ; - } -#Temperature difference -'tdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 130 ; - } -#U component of wind difference -'udiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 131 ; - } -#V component of wind difference -'vdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 132 ; - } -#Specific humidity difference -'qdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 133 ; - } -#Surface pressure difference -'spdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 134 ; - } -#Vertical velocity (pressure) difference -'wdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 135 ; - } -#Total column water difference -'tcwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 136 ; - } -#Total column water vapour difference -'tcwvdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 137 ; - } -#Vorticity (relative) difference -'vodiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 138 ; - } -#Soil temperature level 1 difference -'stl1diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 139 ; - } -#Soil wetness level 1 difference -'swl1diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 140 ; - } -#Snow depth difference -'sddiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 141 ; - } -#Stratiform precipitation (Large-scale precipitation) difference -'lspdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 142 ; - } -#Convective precipitation difference -'cpdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 143 ; - } -#Snowfall (convective + stratiform) difference -'sfdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 144 ; - } -#Boundary layer dissipation difference -'blddiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 145 ; - } -#Surface sensible heat flux difference -'sshfdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 146 ; - } -#Surface latent heat flux difference -'slhfdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 147 ; - } -#Charnock difference -'chnkdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 148 ; - } -#Surface net radiation difference -'snrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 149 ; - } -#Top net radiation difference -'tnrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 150 ; - } -#Mean sea level pressure difference -'msldiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 151 ; - } -#Logarithm of surface pressure difference -'lnspdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 152 ; - } -#Short-wave heating rate difference -'swhrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 153 ; - } -#Long-wave heating rate difference -'lwhrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 154 ; - } -#Divergence difference -'ddiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 155 ; - } -#Height difference -'ghdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 156 ; - } -#Relative humidity difference -'rdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 157 ; - } -#Tendency of surface pressure difference -'tspdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 158 ; - } -#Boundary layer height difference -'blhdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 159 ; - } -#Standard deviation of orography difference -'sdordiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 160 ; - } -#Anisotropy of sub-gridscale orography difference -'isordiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 161 ; - } -#Angle of sub-gridscale orography difference -'anordiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 162 ; - } -#Slope of sub-gridscale orography difference -'slordiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 163 ; - } -#Total cloud cover difference -'tccdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 164 ; - } -#10 metre U wind component difference -'udiff10' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 165 ; - } -#10 metre V wind component difference -'vdiff10' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 166 ; - } -#2 metre temperature difference -'difft2' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 167 ; - } -#Surface solar radiation downwards difference -'ssrddiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 169 ; - } -#Soil temperature level 2 difference -'stl2diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 170 ; - } -#Soil wetness level 2 difference -'swl2diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 171 ; - } -#Land-sea mask difference -'lsmdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 172 ; - } -#Surface roughness difference -'srdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 173 ; - } -#Albedo difference -'aldiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 174 ; - } -#Surface thermal radiation downwards difference -'strddiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 175 ; - } -#Surface net solar radiation difference -'ssrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 176 ; - } -#Surface net thermal radiation difference -'strdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 177 ; - } -#Top net solar radiation difference -'tsrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 178 ; - } -#Top net thermal radiation difference -'ttrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 179 ; - } -#East-West surface stress difference -'ewssdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 180 ; - } -#North-South surface stress difference -'nsssdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 181 ; - } -#Evaporation difference -'ediff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 182 ; - } -#Soil temperature level 3 difference -'stl3diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 183 ; - } -#Soil wetness level 3 difference -'swl3diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 184 ; - } -#Convective cloud cover difference -'cccdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 185 ; - } -#Low cloud cover difference -'lccdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 186 ; - } -#Medium cloud cover difference -'mccdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 187 ; - } -#High cloud cover difference -'hccdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 188 ; - } -#Sunshine duration difference -'sunddiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 189 ; - } -#East-West component of sub-gridscale orographic variance difference -'ewovdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 190 ; - } -#North-South component of sub-gridscale orographic variance difference -'nsovdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 191 ; - } -#North-West/South-East component of sub-gridscale orographic variance difference -'nwovdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 192 ; - } -#North-East/South-West component of sub-gridscale orographic variance difference -'neovdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 193 ; - } -#Brightness temperature difference -'btmpdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 194 ; - } -#Longitudinal component of gravity wave stress difference -'lgwsdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 195 ; - } -#Meridional component of gravity wave stress difference -'mgwsdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 196 ; - } -#Gravity wave dissipation difference -'gwddiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 197 ; - } -#Skin reservoir content difference -'srcdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 198 ; - } -#Vegetation fraction difference -'vegdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 199 ; - } -#Variance of sub-gridscale orography difference -'vsodiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 200 ; - } -#Maximum temperature at 2 metres since previous post-processing difference -'mx2tdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 201 ; - } -#Minimum temperature at 2 metres since previous post-processing difference -'mn2tdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 202 ; - } -#Ozone mass mixing ratio difference -'o3diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 203 ; - } -#Precipitation analysis weights difference -'pawdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 204 ; - } -#Runoff difference -'rodiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 205 ; - } -#Total column ozone difference -'tco3diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 206 ; - } -#10 metre wind speed difference -'sidiff10' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 207 ; - } -#Top net solar radiation, clear sky difference -'tsrcdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 208 ; - } -#Top net thermal radiation, clear sky difference -'ttrcdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 209 ; - } -#Surface net solar radiation, clear sky difference -'ssrcdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 210 ; - } -#Surface net thermal radiation, clear sky difference -'strcdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 211 ; - } -#TOA incident solar radiation difference -'tisrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 212 ; - } -#Diabatic heating by radiation difference -'dhrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 214 ; - } -#Diabatic heating by vertical diffusion difference -'dhvddiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 215 ; - } -#Diabatic heating by cumulus convection difference -'dhccdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 216 ; - } -#Diabatic heating large-scale condensation difference -'dhlcdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 217 ; - } -#Vertical diffusion of zonal wind difference -'vdzwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 218 ; - } -#Vertical diffusion of meridional wind difference -'vdmwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 219 ; - } -#East-West gravity wave drag tendency difference -'ewgddiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 220 ; - } -#North-South gravity wave drag tendency difference -'nsgddiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 221 ; - } -#Convective tendency of zonal wind difference -'ctzwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 222 ; - } -#Convective tendency of meridional wind difference -'ctmwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 223 ; - } -#Vertical diffusion of humidity difference -'vdhdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 224 ; - } -#Humidity tendency by cumulus convection difference -'htccdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 225 ; - } -#Humidity tendency by large-scale condensation difference -'htlcdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 226 ; - } -#Change from removal of negative humidity difference -'crnhdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 227 ; - } -#Total precipitation difference -'tpdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 228 ; - } -#Instantaneous X surface stress difference -'iewsdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 229 ; - } -#Instantaneous Y surface stress difference -'inssdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 230 ; - } -#Instantaneous surface heat flux difference -'ishfdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 231 ; - } -#Instantaneous moisture flux difference -'iediff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 232 ; - } -#Apparent surface humidity difference -'asqdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 233 ; - } -#Logarithm of surface roughness length for heat difference -'lsrhdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 234 ; - } -#Skin temperature difference -'sktdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 235 ; - } -#Soil temperature level 4 difference -'stl4diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 236 ; - } -#Soil wetness level 4 difference -'swl4diff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 237 ; - } -#Temperature of snow layer difference -'tsndiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 238 ; - } -#Convective snowfall difference -'csfdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 239 ; - } -#Large scale snowfall difference -'lsfdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 240 ; - } -#Accumulated cloud fraction tendency difference -'acfdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 241 ; - } -#Accumulated liquid water tendency difference -'alwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 242 ; - } -#Forecast albedo difference -'faldiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 243 ; - } -#Forecast surface roughness difference -'fsrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 244 ; - } -#Forecast logarithm of surface roughness for heat difference -'flsrdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 245 ; - } -#Specific cloud liquid water content difference -'clwcdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 246 ; - } -#Specific cloud ice water content difference -'ciwcdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 247 ; - } -#Cloud cover difference -'ccdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 248 ; - } -#Accumulated ice water tendency difference -'aiwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 249 ; - } -#Ice age difference -'icediff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 250 ; - } -#Adiabatic tendency of temperature difference -'attediff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 251 ; - } -#Adiabatic tendency of humidity difference -'athediff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 252 ; - } -#Adiabatic tendency of zonal wind difference -'atzediff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 253 ; - } -#Adiabatic tendency of meridional wind difference -'atmwdiff' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 254 ; - } -#Indicates a missing value -'p255.200' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 255 ; - } -#Reserved -'p193.151' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 193 ; - } -#U-tendency from dynamics -'utendd' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 114 ; - } -#V-tendency from dynamics -'vtendd' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 115 ; - } -#T-tendency from dynamics -'ttendd' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 116 ; - } -#q-tendency from dynamics -'qtendd' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 117 ; - } -#T-tendency from radiation -'ttendr' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 118 ; - } -#U-tendency from turbulent diffusion + subgrid orography -'utendts' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 119 ; - } -#V-tendency from turbulent diffusion + subgrid orography -'vtendts' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 120 ; - } -#T-tendency from turbulent diffusion + subgrid orography -'ttendts' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 121 ; - } -#q-tendency from turbulent diffusion -'qtendt' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 122 ; - } -#U-tendency from subgrid orography -'utends' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 123 ; - } -#V-tendency from subgrid orography -'vtends' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 124 ; - } -#T-tendency from subgrid orography -'ttends' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 125 ; - } -#U-tendency from convection (deep+shallow) -'utendcds' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 126 ; - } -#V-tendency from convection (deep+shallow) -'vtendcds' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 127 ; - } -#T-tendency from convection (deep+shallow) -'ttendcds' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 128 ; - } -#q-tendency from convection (deep+shallow) -'qtendcds' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 129 ; - } -#Liquid Precipitation flux from convection -'lpc' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 130 ; - } -#Ice Precipitation flux from convection -'ipc' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 131 ; - } -#T-tendency from cloud scheme -'ttendcs' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 132 ; - } -#q-tendency from cloud scheme -'qtendcs' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 133 ; - } -#ql-tendency from cloud scheme -'qltendcs' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 134 ; - } -#qi-tendency from cloud scheme -'qitendcs' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 135 ; - } -#Liquid Precip flux from cloud scheme (stratiform) -'lpcs' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 136 ; - } -#Ice Precip flux from cloud scheme (stratiform) -'ipcs' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 137 ; - } -#U-tendency from shallow convection -'utendcs' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 138 ; - } -#V-tendency from shallow convection -'vtendcs' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 139 ; - } -#T-tendency from shallow convection -'ttendsc' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 140 ; - } -#q-tendency from shallow convection -'qtendsc' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 141 ; - } -#100 metre U wind component anomaly -'ua100' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 6 ; - } -#100 metre V wind component anomaly -'va100' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 7 ; - } -#Maximum temperature at 2 metres in the last 6 hours anomaly -'mx2t6a' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 121 ; - } -#Minimum temperature at 2 metres in the last 6 hours anomaly -'mn2t6a' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 122 ; - } -#Mean surface runoff rate -'msror' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 202 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean sub-surface runoff rate -'mssror' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 204 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Volcanic ash aerosol mixing ratio -'aermr13' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 13 ; - } -#Volcanic sulphate aerosol mixing ratio -'aermr14' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 14 ; - } -#Volcanic SO2 precursor mixing ratio -'aermr15' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 15 ; - } -#SO4 aerosol precursor mass mixing ratio -'aerpr03' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 28 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 1 -'aerwv01' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 29 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 2 -'aerwv02' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 30 ; - } -#DMS surface emission -'emdms' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 43 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 3 -'aerwv03' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 44 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 4 -'aerwv04' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 45 ; - } -#Experimental product -'p55.210' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 55 ; - } -#Experimental product -'p56.210' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 56 ; - } -#Mixing ration of organic carbon aerosol, nucleation mode -'ocnuc' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 57 ; - } -#Monoterpene precursor mixing ratio -'monot' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 58 ; - } -#Secondary organic precursor mixing ratio -'soapr' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 59 ; - } -#Injection height (from IS4FIRES) -'injh' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 60 ; - } -#Wildfire viewing angle of observation -'vafire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 79 ; - } -#Wildfire Flux of Ethane (C2H6) -'c2h6fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 118 ; - } -#Mean height of maximum injection -'mami' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 119 ; - } -#Plume top height above surface -'apt' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 120 ; - } -#Wildfire day-time radiative power -'frpdayfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 167 ; - } -#Wildfire night-time radiative power -'frpngtfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 169 ; - } -#Wildfire day-time inverse variance of radiative power -'frpdayivar' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 177 ; - } -#Wildfire night-time inverse variance of radiative power -'frpngtivar' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 179 ; - } -#UV visible albedo for direct radiation, isotropic component (climatological) -'aluvpi' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 195 ; - typeOfGeneratingProcess = 9 ; - } -#UV visible albedo for direct radiation, volumetric component (climatological) -'aluvpv' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 196 ; - typeOfGeneratingProcess = 9 ; - } -#UV visible albedo for direct radiation, geometric component (climatological) -'aluvpg' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 194 ; - typeOfGeneratingProcess = 9 ; - } -#Near IR albedo for direct radiation, isotropic component (climatological) -'alnipi' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 195 ; - typeOfGeneratingProcess = 9 ; - } -#Near IR albedo for direct radiation, volumetric component (climatological) -'alnipv' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 196 ; - typeOfGeneratingProcess = 9 ; - } -#Near IR albedo for direct radiation, geometric component (climatological) -'alnipg' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 194 ; - typeOfGeneratingProcess = 9 ; - } -#Total aerosol optical depth at 340 nm -'aod340' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 217 ; - } -#Total aerosol optical depth at 355 nm -'aod355' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 218 ; - } -#Total aerosol optical depth at 380 nm -'aod380' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 219 ; - } -#Total aerosol optical depth at 400 nm -'aod400' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 220 ; - } -#Total aerosol optical depth at 440 nm -'aod440' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 221 ; - } -#Total aerosol optical depth at 500 nm -'aod500' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 222 ; - } -#Total aerosol optical depth at 532 nm -'aod532' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 223 ; - } -#Total aerosol optical depth at 645 nm -'aod645' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 224 ; - } -#Total aerosol optical depth at 800 nm -'aod800' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 225 ; - } -#Total aerosol optical depth at 858 nm -'aod858' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 226 ; - } -#Total aerosol optical depth at 1020 nm -'aod1020' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 227 ; - } -#Total aerosol optical depth at 1064 nm -'aod1064' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 228 ; - } -#Total aerosol optical depth at 1640 nm -'aod1640' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 229 ; - } -#Total aerosol optical depth at 2130 nm -'aod2130' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 230 ; - } -#Wildfire Flux of Toluene (C7H8) -'c7h8fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 231 ; - } -#Wildfire Flux of Benzene (C6H6) -'c6h6fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 232 ; - } -#Wildfire Flux of Xylene (C8H10) -'c8h10fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 233 ; - } -#Wildfire Flux of Butenes (C4H8) -'c4h8fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 234 ; - } -#Wildfire Flux of Pentenes (C5H10) -'c5h10fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 235 ; - } -#Wildfire Flux of Hexene (C6H12) -'c6h12fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 236 ; - } -#Wildfire Flux of Octene (C8H16) -'c8h16fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 237 ; - } -#Wildfire Flux of Butanes (C4H10) -'c4h10fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 238 ; - } -#Wildfire Flux of Pentanes (C5H12) -'c5h12fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 239 ; - } -#Wildfire Flux of Hexanes (C6H14) -'c6h14fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 240 ; - } -#Wildfire Flux of Heptane (C7H16) -'c7h16fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 241 ; - } -#Plume bottom height above surface -'apb' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 242 ; - } -#Volcanic sulphate aerosol optical depth at 550 nm -'vsuaod550' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 243 ; - } -#Volcanic ash optical depth at 550 nm -'vashaod550' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 244 ; - } -#Profile of total aerosol dry extinction coefficient -'taedec550' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 245 ; - } -#Profile of total aerosol dry absorption coefficient -'taedab550' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 246 ; - } -#Nitrate fine mode aerosol mass mixing ratio -'aermr16' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - aerosolType = 65534 ; - is_aerosol = 1 ; - } -#Nitrate coarse mode aerosol mass mixing ratio -'aermr17' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - aerosolType = 65533 ; - is_aerosol = 1 ; - } -#Aerosol type 13 mass mixing ratio -'aermr13diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 13 ; - } -#Aerosol type 14 mass mixing ratio -'aermr14diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 14 ; - } -#Aerosol type 15 mass mixing ratio -'aermr15diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 15 ; - } -#SO4 aerosol precursor mass mixing ratio -'aerpr03diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 28 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 1 -'aerwv01diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 29 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 2 -'aerwv02diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 30 ; - } -#DMS surface emission -'emdmsdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 43 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 3 -'aerwv03diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 44 ; - } -#Water vapour mixing ratio for hydrophilic aerosols in mode 4 -'aerwv04diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 45 ; - } -#Experimental product -'p55.211' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 55 ; - } -#Experimental product -'p56.211' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 56 ; - } -#Water vapour (chemistry) difference -'h2odiff' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 1 ; - typeOfGeneratingProcess = 20 ; - is_chemical = 1 ; - } -#Altitude of emitter -'alediff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 119 ; - } -#Altitude of plume top -'aptdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 120 ; - } -#Nitrate fine mode aerosol mass mixing ratio -'aermr16diff' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - aerosolType = 65534 ; - typeOfGeneratingProcess = 20 ; - is_aerosol = 1 ; - } -#Nitrate coarse mode aerosol mass mixing ratio -'aermr17diff' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - aerosolType = 65533 ; - typeOfGeneratingProcess = 20 ; - is_aerosol = 1 ; - } -#Experimental product -'p1.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 1 ; - } -#Experimental product -'p2.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 2 ; - } -#Experimental product -'p3.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 3 ; - } -#Experimental product -'p4.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 4 ; - } -#Experimental product -'p5.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 5 ; - } -#Experimental product -'p6.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 6 ; - } -#Experimental product -'p7.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 7 ; - } -#Experimental product -'p8.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 8 ; - } -#Experimental product -'p9.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 9 ; - } -#Experimental product -'p10.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 10 ; - } -#Experimental product -'p11.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 11 ; - } -#Experimental product -'p12.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 12 ; - } -#Experimental product -'p13.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 13 ; - } -#Experimental product -'p14.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 14 ; - } -#Experimental product -'p15.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 15 ; - } -#Experimental product -'p16.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 16 ; - } -#Experimental product -'p17.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 17 ; - } -#Experimental product -'p18.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 18 ; - } -#Experimental product -'p19.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 19 ; - } -#Experimental product -'p20.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 20 ; - } -#Experimental product -'p21.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 21 ; - } -#Experimental product -'p22.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 22 ; - } -#Experimental product -'p23.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 23 ; - } -#Experimental product -'p24.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 24 ; - } -#Experimental product -'p25.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 25 ; - } -#Experimental product -'p26.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 26 ; - } -#Experimental product -'p27.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 27 ; - } -#Experimental product -'p28.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 28 ; - } -#Experimental product -'p29.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 29 ; - } -#Experimental product -'p30.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 30 ; - } -#Experimental product -'p31.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 31 ; - } -#Experimental product -'p32.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 32 ; - } -#Experimental product -'p33.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 33 ; - } -#Experimental product -'p34.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 34 ; - } -#Experimental product -'p35.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 35 ; - } -#Experimental product -'p36.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 36 ; - } -#Experimental product -'p37.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 37 ; - } -#Experimental product -'p38.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 38 ; - } -#Experimental product -'p39.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 39 ; - } -#Experimental product -'p40.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 40 ; - } -#Experimental product -'p41.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 41 ; - } -#Experimental product -'p42.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 42 ; - } -#Experimental product -'p43.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 43 ; - } -#Experimental product -'p44.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 44 ; - } -#Experimental product -'p45.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 45 ; - } -#Experimental product -'p46.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 46 ; - } -#Experimental product -'p47.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 47 ; - } -#Experimental product -'p48.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 48 ; - } -#Experimental product -'p49.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 49 ; - } -#Experimental product -'p50.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 50 ; - } -#Experimental product -'p51.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 51 ; - } -#Experimental product -'p52.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 52 ; - } -#Experimental product -'p53.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 53 ; - } -#Experimental product -'p54.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 54 ; - } -#Experimental product -'p55.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 55 ; - } -#Experimental product -'p56.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 56 ; - } -#Experimental product -'p57.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 57 ; - } -#Experimental product -'p58.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 58 ; - } -#Experimental product -'p59.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 59 ; - } -#Experimental product -'p60.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 60 ; - } -#Experimental product -'p61.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 61 ; - } -#Experimental product -'p62.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 62 ; - } -#Experimental product -'p63.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 63 ; - } -#Experimental product -'p64.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 64 ; - } -#Experimental product -'p65.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 65 ; - } -#Experimental product -'p66.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 66 ; - } -#Experimental product -'p67.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 67 ; - } -#Experimental product -'p68.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 68 ; - } -#Experimental product -'p69.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 69 ; - } -#Experimental product -'p70.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 70 ; - } -#Experimental product -'p71.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 71 ; - } -#Experimental product -'p72.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 72 ; - } -#Experimental product -'p73.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 73 ; - } -#Experimental product -'p74.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 74 ; - } -#Experimental product -'p75.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 75 ; - } -#Experimental product -'p76.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 76 ; - } -#Experimental product -'p77.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 77 ; - } -#Experimental product -'p78.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 78 ; - } -#Experimental product -'p79.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 79 ; - } -#Experimental product -'p80.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 80 ; - } -#Experimental product -'p81.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 81 ; - } -#Experimental product -'p82.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 82 ; - } -#Experimental product -'p83.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 83 ; - } -#Experimental product -'p84.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 84 ; - } -#Experimental product -'p85.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 85 ; - } -#Experimental product -'p86.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 86 ; - } -#Experimental product -'p87.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 87 ; - } -#Experimental product -'p88.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 88 ; - } -#Experimental product -'p89.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 89 ; - } -#Experimental product -'p90.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 90 ; - } -#Experimental product -'p91.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 91 ; - } -#Experimental product -'p92.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 92 ; - } -#Experimental product -'p93.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 93 ; - } -#Experimental product -'p94.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 94 ; - } -#Experimental product -'p95.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 95 ; - } -#Experimental product -'p96.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 96 ; - } -#Experimental product -'p97.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 97 ; - } -#Experimental product -'p98.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 98 ; - } -#Experimental product -'p99.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 99 ; - } -#Experimental product -'p100.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 100 ; - } -#Experimental product -'p101.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 101 ; - } -#Experimental product -'p102.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 102 ; - } -#Experimental product -'p103.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 103 ; - } -#Experimental product -'p104.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 104 ; - } -#Experimental product -'p105.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 105 ; - } -#Experimental product -'p106.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 106 ; - } -#Experimental product -'p107.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 107 ; - } -#Experimental product -'p108.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 108 ; - } -#Experimental product -'p109.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 109 ; - } -#Experimental product -'p110.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 110 ; - } -#Experimental product -'p111.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 111 ; - } -#Experimental product -'p112.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 112 ; - } -#Experimental product -'p113.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 113 ; - } -#Experimental product -'p114.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 114 ; - } -#Experimental product -'p115.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 115 ; - } -#Experimental product -'p116.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 116 ; - } -#Experimental product -'p117.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 117 ; - } -#Experimental product -'p118.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 118 ; - } -#Experimental product -'p119.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 119 ; - } -#Experimental product -'p120.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 120 ; - } -#Experimental product -'p121.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 121 ; - } -#Experimental product -'p122.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 122 ; - } -#Experimental product -'p123.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 123 ; - } -#Experimental product -'p124.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 124 ; - } -#Experimental product -'p125.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 125 ; - } -#Experimental product -'p126.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 126 ; - } -#Experimental product -'p127.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 127 ; - } -#Experimental product -'p128.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 128 ; - } -#Experimental product -'p129.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 129 ; - } -#Experimental product -'p130.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 130 ; - } -#Experimental product -'p131.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 131 ; - } -#Experimental product -'p132.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 132 ; - } -#Experimental product -'p133.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 133 ; - } -#Experimental product -'p134.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 134 ; - } -#Experimental product -'p135.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 135 ; - } -#Experimental product -'p136.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 136 ; - } -#Experimental product -'p137.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 137 ; - } -#Experimental product -'p138.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 138 ; - } -#Experimental product -'p139.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 139 ; - } -#Experimental product -'p140.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 140 ; - } -#Experimental product -'p141.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 141 ; - } -#Experimental product -'p142.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 142 ; - } -#Experimental product -'p143.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 143 ; - } -#Experimental product -'p144.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 144 ; - } -#Experimental product -'p145.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 145 ; - } -#Experimental product -'p146.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 146 ; - } -#Experimental product -'p147.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 147 ; - } -#Experimental product -'p148.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 148 ; - } -#Experimental product -'p149.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 149 ; - } -#Experimental product -'p150.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 150 ; - } -#Experimental product -'p151.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 151 ; - } -#Experimental product -'p152.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 152 ; - } -#Experimental product -'p153.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 153 ; - } -#Experimental product -'p154.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 154 ; - } -#Experimental product -'p155.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 155 ; - } -#Experimental product -'p156.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 156 ; - } -#Experimental product -'p157.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 157 ; - } -#Experimental product -'p158.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 158 ; - } -#Experimental product -'p159.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 159 ; - } -#Experimental product -'p160.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 160 ; - } -#Experimental product -'p161.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 161 ; - } -#Experimental product -'p162.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 162 ; - } -#Experimental product -'p163.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 163 ; - } -#Experimental product -'p164.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 164 ; - } -#Experimental product -'p165.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 165 ; - } -#Experimental product -'p166.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 166 ; - } -#Experimental product -'p167.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 167 ; - } -#Experimental product -'p168.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 168 ; - } -#Experimental product -'p169.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 169 ; - } -#Experimental product -'p170.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 170 ; - } -#Experimental product -'p171.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 171 ; - } -#Experimental product -'p172.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 172 ; - } -#Experimental product -'p173.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 173 ; - } -#Experimental product -'p174.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 174 ; - } -#Experimental product -'p175.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 175 ; - } -#Experimental product -'p176.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 176 ; - } -#Experimental product -'p177.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 177 ; - } -#Experimental product -'p178.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 178 ; - } -#Experimental product -'p179.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 179 ; - } -#Experimental product -'p180.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 180 ; - } -#Experimental product -'p181.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 181 ; - } -#Experimental product -'p182.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 182 ; - } -#Experimental product -'p183.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 183 ; - } -#Experimental product -'p184.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 184 ; - } -#Experimental product -'p185.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 185 ; - } -#Experimental product -'p186.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 186 ; - } -#Experimental product -'p187.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 187 ; - } -#Experimental product -'p188.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 188 ; - } -#Experimental product -'p189.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 189 ; - } -#Experimental product -'p190.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 190 ; - } -#Experimental product -'p191.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 191 ; - } -#Experimental product -'p192.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 192 ; - } -#Experimental product -'p193.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 193 ; - } -#Experimental product -'p194.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 194 ; - } -#Experimental product -'p195.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 195 ; - } -#Experimental product -'p196.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 196 ; - } -#Experimental product -'p197.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 197 ; - } -#Experimental product -'p198.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 198 ; - } -#Experimental product -'p199.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 199 ; - } -#Experimental product -'p200.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 200 ; - } -#Experimental product -'p201.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 201 ; - } -#Experimental product -'p202.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 202 ; - } -#Experimental product -'p203.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 203 ; - } -#Experimental product -'p204.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 204 ; - } -#Experimental product -'p205.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 205 ; - } -#Experimental product -'p206.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 206 ; - } -#Experimental product -'p207.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 207 ; - } -#Experimental product -'p208.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 208 ; - } -#Experimental product -'p209.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 209 ; - } -#Experimental product -'p210.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 210 ; - } -#Experimental product -'p211.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 211 ; - } -#Experimental product -'p212.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 212 ; - } -#Experimental product -'p213.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 213 ; - } -#Experimental product -'p214.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 214 ; - } -#Experimental product -'p215.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 215 ; - } -#Experimental product -'p216.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 216 ; - } -#Experimental product -'p217.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 217 ; - } -#Experimental product -'p218.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 218 ; - } -#Experimental product -'p219.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 219 ; - } -#Experimental product -'p220.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 220 ; - } -#Experimental product -'p221.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 221 ; - } -#Experimental product -'p222.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 222 ; - } -#Experimental product -'p223.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 223 ; - } -#Experimental product -'p224.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 224 ; - } -#Experimental product -'p225.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 225 ; - } -#Experimental product -'p226.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 226 ; - } -#Experimental product -'p227.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 227 ; - } -#Experimental product -'p228.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 228 ; - } -#Experimental product -'p229.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 229 ; - } -#Experimental product -'p230.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 230 ; - } -#Experimental product -'p231.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 231 ; - } -#Experimental product -'p232.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 232 ; - } -#Experimental product -'p233.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 233 ; - } -#Experimental product -'p234.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 234 ; - } -#Experimental product -'p235.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 235 ; - } -#Experimental product -'p236.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 236 ; - } -#Experimental product -'p237.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 237 ; - } -#Experimental product -'p238.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 238 ; - } -#Experimental product -'p239.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 239 ; - } -#Experimental product -'p240.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 240 ; - } -#Experimental product -'p241.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 241 ; - } -#Experimental product -'p242.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 242 ; - } -#Experimental product -'p243.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 243 ; - } -#Experimental product -'p244.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 244 ; - } -#Experimental product -'p245.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 245 ; - } -#Experimental product -'p246.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 246 ; - } -#Experimental product -'p247.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 247 ; - } -#Experimental product -'p248.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 248 ; - } -#Experimental product -'p249.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 249 ; - } -#Experimental product -'p250.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 250 ; - } -#Experimental product -'p251.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 251 ; - } -#Experimental product -'p252.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 252 ; - } -#Experimental product -'p253.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 253 ; - } -#Experimental product -'p254.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 254 ; - } -#Experimental product -'p255.212' = { - discipline = 192 ; - parameterCategory = 212 ; - parameterNumber = 255 ; - } -#Random pattern 1 for sppt -'sppt1' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 1 ; - } -#Random pattern 2 for sppt -'sppt2' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 2 ; - } -#Random pattern 3 for sppt -'sppt3' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 3 ; - } -#Random pattern 4 for sppt -'sppt4' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 4 ; - } -#Random pattern 5 for sppt -'sppt5' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 5 ; - } -#Random pattern 1 for SPP scheme -'spp1' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 101 ; - } -#Random pattern 2 for SPP scheme -'spp2' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 102 ; - } -#Random pattern 3 for SPP scheme -'spp3' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 103 ; - } -#Random pattern 4 for SPP scheme -'spp4' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 104 ; - } -#Random pattern 5 for SPP scheme -'spp5' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 105 ; - } -#Random pattern 6 for SPP scheme -'spp6' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 106 ; - } -#Random pattern 7 for SPP scheme -'spp7' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 107 ; - } -#Random pattern 8 for SPP scheme -'spp8' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 108 ; - } -#Random pattern 9 for SPP scheme -'spp9' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 109 ; - } -#Random pattern 10 for SPP scheme -'spp10' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 110 ; - } -#Random pattern 11 for SPP scheme -'spp11' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 111 ; - } -#Random pattern 12 for SPP scheme -'spp12' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 112 ; - } -#Random pattern 13 for SPP scheme -'spp13' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 113 ; - } -#Random pattern 14 for SPP scheme -'spp14' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 114 ; - } -#Random pattern 15 for SPP scheme -'spp15' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 115 ; - } -#Random pattern 16 for SPP scheme -'spp16' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 116 ; - } -#Random pattern 17 for SPP scheme -'spp17' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 117 ; - } -#Random pattern 18 for SPP scheme -'spp18' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 118 ; - } -#Random pattern 19 for SPP scheme -'spp19' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 119 ; - } -#Random pattern 20 for SPP scheme -'spp20' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 120 ; - } -#Random pattern 21 for SPP scheme -'spp21' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 121 ; - } -#Random pattern 22 for SPP scheme -'spp22' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 122 ; - } -#Random pattern 23 for SPP scheme -'spp23' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 123 ; - } -#Random pattern 24 for SPP scheme -'spp24' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 124 ; - } -#Random pattern 25 for SPP scheme -'spp25' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 125 ; - } -#Random pattern 26 for SPP scheme -'spp26' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 126 ; - } -#Random pattern 27 for SPP scheme -'spp27' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 127 ; - } -#Random pattern 28 for SPP scheme -'spp28' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 128 ; - } -#Random pattern 29 for SPP scheme -'spp29' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 129 ; - } -#Random pattern 30 for SPP scheme -'spp30' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 130 ; - } -#Random pattern 31 for SPP scheme -'spp31' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 131 ; - } -#Random pattern 32 for SPP scheme -'spp32' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 132 ; - } -#Random pattern 33 for SPP scheme -'spp33' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 133 ; - } -#Random pattern 34 for SPP scheme -'spp34' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 134 ; - } -#Random pattern 35 for SPP scheme -'spp35' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 135 ; - } -#Random pattern 36 for SPP scheme -'spp36' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 136 ; - } -#Random pattern 37 for SPP scheme -'spp37' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 137 ; - } -#Random pattern 38 for SPP scheme -'spp38' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 138 ; - } -#Random pattern 39 for SPP scheme -'spp39' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 139 ; - } -#Random pattern 40 for SPP scheme -'spp40' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 140 ; - } -#Random pattern 41 for SPP scheme -'spp41' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 141 ; - } -#Random pattern 42 for SPP scheme -'spp42' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 142 ; - } -#Random pattern 43 for SPP scheme -'spp43' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 143 ; - } -#Random pattern 44 for SPP scheme -'spp44' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 144 ; - } -#Random pattern 45 for SPP scheme -'spp45' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 145 ; - } -#Random pattern 46 for SPP scheme -'spp46' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 146 ; - } -#Random pattern 47 for SPP scheme -'spp47' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 147 ; - } -#Random pattern 48 for SPP scheme -'spp48' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 148 ; - } -#Random pattern 49 for SPP scheme -'spp49' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 149 ; - } -#Random pattern 50 for SPP scheme -'spp50' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 150 ; - } -#Random pattern 51 for SPP scheme -'spp51' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 151 ; - } -#Random pattern 52 for SPP scheme -'spp52' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 152 ; - } -#Random pattern 53 for SPP scheme -'spp53' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 153 ; - } -#Random pattern 54 for SPP scheme -'spp54' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 154 ; - } -#Random pattern 55 for SPP scheme -'spp55' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 155 ; - } -#Random pattern 56 for SPP scheme -'spp56' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 156 ; - } -#Random pattern 57 for SPP scheme -'spp57' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 157 ; - } -#Random pattern 58 for SPP scheme -'spp58' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 158 ; - } -#Random pattern 59 for SPP scheme -'spp59' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 159 ; - } -#Random pattern 60 for SPP scheme -'spp60' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 160 ; - } -#Random pattern 61 for SPP scheme -'spp61' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 161 ; - } -#Random pattern 62 for SPP scheme -'spp62' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 162 ; - } -#Random pattern 63 for SPP scheme -'spp63' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 163 ; - } -#Random pattern 64 for SPP scheme -'spp64' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 164 ; - } -#Random pattern 65 for SPP scheme -'spp65' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 165 ; - } -#Random pattern 66 for SPP scheme -'spp66' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 166 ; - } -#Random pattern 67 for SPP scheme -'spp67' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 167 ; - } -#Random pattern 68 for SPP scheme -'spp68' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 168 ; - } -#Random pattern 69 for SPP scheme -'spp69' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 169 ; - } -#Random pattern 70 for SPP scheme -'spp70' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 170 ; - } -#Random pattern 71 for SPP scheme -'spp71' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 171 ; - } -#Random pattern 72 for SPP scheme -'spp72' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 172 ; - } -#Random pattern 73 for SPP scheme -'spp73' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 173 ; - } -#Random pattern 74 for SPP scheme -'spp74' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 174 ; - } -#Random pattern 75 for SPP scheme -'spp75' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 175 ; - } -#Random pattern 76 for SPP scheme -'spp76' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 176 ; - } -#Random pattern 77 for SPP scheme -'spp77' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 177 ; - } -#Random pattern 78 for SPP scheme -'spp78' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 178 ; - } -#Random pattern 79 for SPP scheme -'spp79' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 179 ; - } -#Random pattern 80 for SPP scheme -'spp80' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 180 ; - } -#Random pattern 81 for SPP scheme -'spp81' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 181 ; - } -#Random pattern 82 for SPP scheme -'spp82' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 182 ; - } -#Random pattern 83 for SPP scheme -'spp83' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 183 ; - } -#Random pattern 84 for SPP scheme -'spp84' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 184 ; - } -#Random pattern 85 for SPP scheme -'spp85' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 185 ; - } -#Random pattern 86 for SPP scheme -'spp86' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 186 ; - } -#Random pattern 87 for SPP scheme -'spp87' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 187 ; - } -#Random pattern 88 for SPP scheme -'spp88' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 188 ; - } -#Random pattern 89 for SPP scheme -'spp89' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 189 ; - } -#Random pattern 90 for SPP scheme -'spp90' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 190 ; - } -#Random pattern 91 for SPP scheme -'spp91' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 191 ; - } -#Random pattern 92 for SPP scheme -'spp92' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 192 ; - } -#Random pattern 93 for SPP scheme -'spp93' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 193 ; - } -#Random pattern 94 for SPP scheme -'spp94' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 194 ; - } -#Random pattern 95 for SPP scheme -'spp95' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 195 ; - } -#Random pattern 96 for SPP scheme -'spp96' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 196 ; - } -#Random pattern 97 for SPP scheme -'spp97' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 197 ; - } -#Random pattern 98 for SPP scheme -'spp98' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 198 ; - } -#Random pattern 99 for SPP scheme -'spp99' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 199 ; - } -#Random pattern 100 for SPP scheme -'spp100' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 200 ; - } -#Random pattern 101 for SPP scheme -'spp101' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 201 ; - } -#Random pattern 102 for SPP scheme -'spp102' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 202 ; - } -#Random pattern 103 for SPP scheme -'spp103' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 203 ; - } -#Random pattern 104 for SPP scheme -'spp104' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 204 ; - } -#Random pattern 105 for SPP scheme -'spp105' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 205 ; - } -#Random pattern 106 for SPP scheme -'spp106' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 206 ; - } -#Random pattern 107 for SPP scheme -'spp107' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 207 ; - } -#Random pattern 108 for SPP scheme -'spp108' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 208 ; - } -#Random pattern 109 for SPP scheme -'spp109' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 209 ; - } -#Random pattern 110 for SPP scheme -'spp110' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 210 ; - } -#Random pattern 111 for SPP scheme -'spp111' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 211 ; - } -#Random pattern 112 for SPP scheme -'spp112' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 212 ; - } -#Random pattern 113 for SPP scheme -'spp113' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 213 ; - } -#Random pattern 114 for SPP scheme -'spp114' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 214 ; - } -#Random pattern 115 for SPP scheme -'spp115' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 215 ; - } -#Random pattern 116 for SPP scheme -'spp116' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 216 ; - } -#Random pattern 117 for SPP scheme -'spp117' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 217 ; - } -#Random pattern 118 for SPP scheme -'spp118' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 218 ; - } -#Random pattern 119 for SPP scheme -'spp119' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 219 ; - } -#Random pattern 120 for SPP scheme -'spp120' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 220 ; - } -#Random pattern 121 for SPP scheme -'spp121' = { - discipline = 192 ; - parameterCategory = 213 ; - parameterNumber = 221 ; - } -#Cosine of solar zenith angle -'uvcossza' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 1 ; - } -#UV biologically effective dose -'uvbed' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 2 ; - } -#UV biologically effective dose clear-sky -'uvbedcs' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 3 ; - } -#Total surface UV spectral flux (280-285 nm) -'uvsflxt280285' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 4 ; - } -#Total surface UV spectral flux (285-290 nm) -'uvsflxt285290' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 5 ; - } -#Total surface UV spectral flux (290-295 nm) -'uvsflxt290295' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 6 ; - } -#Total surface UV spectral flux (295-300 nm) -'uvsflxt295300' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 7 ; - } -#Total surface UV spectral flux (300-305 nm) -'uvsflxt300305' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 8 ; - } -#Total surface UV spectral flux (305-310 nm) -'uvsflxt305310' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 9 ; - } -#Total surface UV spectral flux (310-315 nm) -'uvsflxt310315' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 10 ; - } -#Total surface UV spectral flux (315-320 nm) -'uvsflxt315320' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 11 ; - } -#Total surface UV spectral flux (320-325 nm) -'uvsflxt320325' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 12 ; - } -#Total surface UV spectral flux (325-330 nm) -'uvsflxt325330' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 13 ; - } -#Total surface UV spectral flux (330-335 nm) -'uvsflxt330335' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 14 ; - } -#Total surface UV spectral flux (335-340 nm) -'uvsflxt335340' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 15 ; - } -#Total surface UV spectral flux (340-345 nm) -'uvsflxt340345' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 16 ; - } -#Total surface UV spectral flux (345-350 nm) -'uvsflxt345350' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 17 ; - } -#Total surface UV spectral flux (350-355 nm) -'uvsflxt350355' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 18 ; - } -#Total surface UV spectral flux (355-360 nm) -'uvsflxt355360' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 19 ; - } -#Total surface UV spectral flux (360-365 nm) -'uvsflxt360365' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 20 ; - } -#Total surface UV spectral flux (365-370 nm) -'uvsflxt365370' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 21 ; - } -#Total surface UV spectral flux (370-375 nm) -'uvsflxt370375' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 22 ; - } -#Total surface UV spectral flux (375-380 nm) -'uvsflxt375380' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 23 ; - } -#Total surface UV spectral flux (380-385 nm) -'uvsflxt380385' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 24 ; - } -#Total surface UV spectral flux (385-390 nm) -'uvsflxt385390' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 25 ; - } -#Total surface UV spectral flux (390-395 nm) -'uvsflxt390395' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 26 ; - } -#Total surface UV spectral flux (395-400 nm) -'uvsflxt395400' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 27 ; - } -#Clear-sky surface UV spectral flux (280-285 nm) -'uvsflxcs280285' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 28 ; - } -#Clear-sky surface UV spectral flux (285-290 nm) -'uvsflxcs285290' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 29 ; - } -#Clear-sky surface UV spectral flux (290-295 nm) -'uvsflxcs290295' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 30 ; - } -#Clear-sky surface UV spectral flux (295-300 nm) -'uvsflxcs295300' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 31 ; - } -#Clear-sky surface UV spectral flux (300-305 nm) -'uvsflxcs300305' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 32 ; - } -#Clear-sky surface UV spectral flux (305-310 nm) -'uvsflxcs305310' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 33 ; - } -#Clear-sky surface UV spectral flux (310-315 nm) -'uvsflxcs310315' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 34 ; - } -#Clear-sky surface UV spectral flux (315-320 nm) -'uvsflxcs315320' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 35 ; - } -#Clear-sky surface UV spectral flux (320-325 nm) -'uvsflxcs320325' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 36 ; - } -#Clear-sky surface UV spectral flux (325-330 nm) -'uvsflxcs325330' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 37 ; - } -#Clear-sky surface UV spectral flux (330-335 nm) -'uvsflxcs330335' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 38 ; - } -#Clear-sky surface UV spectral flux (335-340 nm) -'uvsflxcs335340' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 39 ; - } -#Clear-sky surface UV spectral flux (340-345 nm) -'uvsflxcs340345' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 40 ; - } -#Clear-sky surface UV spectral flux (345-350 nm) -'uvsflxcs345350' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 41 ; - } -#Clear-sky surface UV spectral flux (350-355 nm) -'uvsflxcs350355' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 42 ; - } -#Clear-sky surface UV spectral flux (355-360 nm) -'uvsflxcs355360' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 43 ; - } -#Clear-sky surface UV spectral flux (360-365 nm) -'uvsflxcs360365' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 44 ; - } -#Clear-sky surface UV spectral flux (365-370 nm) -'uvsflxcs365370' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 45 ; - } -#Clear-sky surface UV spectral flux (370-375 nm) -'uvsflxcs370375' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 46 ; - } -#Clear-sky surface UV spectral flux (375-380 nm) -'uvsflxcs375380' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 47 ; - } -#Clear-sky surface UV spectral flux (380-385 nm) -'uvsflxcs380385' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 48 ; - } -#Clear-sky surface UV spectral flux (385-390 nm) -'uvsflxcs385390' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 49 ; - } -#Clear-sky surface UV spectral flux (390-395 nm) -'uvsflxcs390395' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 50 ; - } -#Clear-sky surface UV spectral flux (395-400 nm) -'uvsflxcs395400' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 51 ; - } -#Profile of optical thickness at 340 nm -'aot340' = { - discipline = 192 ; - parameterCategory = 214 ; - parameterNumber = 52 ; - } -#Source/gain of sea salt aerosol (0.03 - 0.5 um) -'aersrcsss' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 1 ; - } -#Source/gain of sea salt aerosol (0.5 - 5 um) -'aersrcssm' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 2 ; - } -#Source/gain of sea salt aerosol (5 - 20 um) -'aersrcssl' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 3 ; - } -#Dry deposition of sea salt aerosol (0.03 - 0.5 um) -'aerddpsss' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 4 ; - } -#Dry deposition of sea salt aerosol (0.5 - 5 um) -'aerddpssm' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 5 ; - } -#Dry deposition of sea salt aerosol (5 - 20 um) -'aerddpssl' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 6 ; - } -#Sedimentation of sea salt aerosol (0.03 - 0.5 um) -'aersdmsss' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 7 ; - } -#Sedimentation of sea salt aerosol (0.5 - 5 um) -'aersdmssm' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 8 ; - } -#Sedimentation of sea salt aerosol (5 - 20 um) -'aersdmssl' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 9 ; - } -#Wet deposition of sea salt aerosol (0.03 - 0.5 um) by large-scale precipitation -'aerwdlssss' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 10 ; - } -#Wet deposition of sea salt aerosol (0.5 - 5 um) by large-scale precipitation -'aerwdlsssm' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 11 ; - } -#Wet deposition of sea salt aerosol (5 - 20 um) by large-scale precipitation -'aerwdlsssl' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 12 ; - } -#Wet deposition of sea salt aerosol (0.03 - 0.5 um) by convective precipitation -'aerwdccsss' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 13 ; - } -#Wet deposition of sea salt aerosol (0.5 - 5 um) by convective precipitation -'aerwdccssm' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 14 ; - } -#Wet deposition of sea salt aerosol (5 - 20 um) by convective precipitation -'aerwdccssl' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 15 ; - } -#Negative fixer of sea salt aerosol (0.03 - 0.5 um) -'aerngtsss' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 16 ; - } -#Negative fixer of sea salt aerosol (0.5 - 5 um) -'aerngtssm' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 17 ; - } -#Negative fixer of sea salt aerosol (5 - 20 um) -'aerngtssl' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 18 ; - } -#Vertically integrated mass of sea salt aerosol (0.03 - 0.5 um) -'aermsssss' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 19 ; - } -#Vertically integrated mass of sea salt aerosol (0.5 - 5 um) -'aermssssm' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 20 ; - } -#Vertically integrated mass of sea salt aerosol (5 - 20 um) -'aermssssl' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 21 ; - } -#Sea salt aerosol (0.03 - 0.5 um) optical depth -'aerodsss' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 22 ; - } -#Sea salt aerosol (0.5 - 5 um) optical depth -'aerodssm' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 23 ; - } -#Sea salt aerosol (5 - 20 um) optical depth -'aerodssl' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 24 ; - } -#Source/gain of dust aerosol (0.03 - 0.55 um) -'aersrcdus' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 25 ; - } -#Source/gain of dust aerosol (0.55 - 9 um) -'aersrcdum' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 26 ; - } -#Source/gain of dust aerosol (9 - 20 um) -'aersrcdul' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 27 ; - } -#Dry deposition of dust aerosol (0.03 - 0.55 um) -'aerddpdus' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 28 ; - } -#Dry deposition of dust aerosol (0.55 - 9 um) -'aerddpdum' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 29 ; - } -#Dry deposition of dust aerosol (9 - 20 um) -'aerddpdul' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 30 ; - } -#Sedimentation of dust aerosol (0.03 - 0.55 um) -'aersdmdus' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 31 ; - } -#Sedimentation of dust aerosol (0.55 - 9 um) -'aersdmdum' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 32 ; - } -#Sedimentation of dust aerosol (9 - 20 um) -'aersdmdul' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 33 ; - } -#Wet deposition of dust aerosol (0.03 - 0.55 um) by large-scale precipitation -'aerwdlsdus' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 34 ; - } -#Wet deposition of dust aerosol (0.55 - 9 um) by large-scale precipitation -'aerwdlsdum' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 35 ; - } -#Wet deposition of dust aerosol (9 - 20 um) by large-scale precipitation -'aerwdlsdul' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 36 ; - } -#Wet deposition of dust aerosol (0.03 - 0.55 um) by convective precipitation -'aerwdccdus' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 37 ; - } -#Wet deposition of dust aerosol (0.55 - 9 um) by convective precipitation -'aerwdccdum' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 38 ; - } -#Wet deposition of dust aerosol (9 - 20 um) by convective precipitation -'aerwdccdul' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 39 ; - } -#Negative fixer of dust aerosol (0.03 - 0.55 um) -'aerngtdus' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 40 ; - } -#Negative fixer of dust aerosol (0.55 - 9 um) -'aerngtdum' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 41 ; - } -#Negative fixer of dust aerosol (9 - 20 um) -'aerngtdul' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 42 ; - } -#Vertically integrated mass of dust aerosol (0.03 - 0.55 um) -'aermssdus' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 43 ; - } -#Vertically integrated mass of dust aerosol (0.55 - 9 um) -'aermssdum' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 44 ; - } -#Vertically integrated mass of dust aerosol (9 - 20 um) -'aermssdul' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 45 ; - } -#Dust aerosol (0.03 - 0.55 um) optical depth -'aeroddus' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 46 ; - } -#Dust aerosol (0.55 - 9 um) optical depth -'aeroddum' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 47 ; - } -#Dust aerosol (9 - 20 um) optical depth -'aeroddul' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 48 ; - } -#Source/gain of hydrophobic organic matter aerosol -'aersrcomhphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 49 ; - } -#Source/gain of hydrophilic organic matter aerosol -'aersrcomhphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 50 ; - } -#Dry deposition of hydrophobic organic matter aerosol -'aerddpomhphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 51 ; - } -#Dry deposition of hydrophilic organic matter aerosol -'aerddpomhphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 52 ; - } -#Sedimentation of hydrophobic organic matter aerosol -'aersdmomhphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 53 ; - } -#Sedimentation of hydrophilic organic matter aerosol -'aersdmomhphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 54 ; - } -#Wet deposition of hydrophobic organic matter aerosol by large-scale precipitation -'aerwdlsomhphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 55 ; - } -#Wet deposition of hydrophilic organic matter aerosol by large-scale precipitation -'aerwdlsomhphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 56 ; - } -#Wet deposition of hydrophobic organic matter aerosol by convective precipitation -'aerwdccomhphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 57 ; - } -#Wet deposition of hydrophilic organic matter aerosol by convective precipitation -'aerwdccomhphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 58 ; - } -#Negative fixer of hydrophobic organic matter aerosol -'aerngtomhphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 59 ; - } -#Negative fixer of hydrophilic organic matter aerosol -'aerngtomhphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 60 ; - } -#Vertically integrated mass of hydrophobic organic matter aerosol -'aermssomhphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 61 ; - } -#Vertically integrated mass of hydrophilic organic matter aerosol -'aermssomhphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 62 ; - } -#Hydrophobic organic matter aerosol optical depth -'aerodomhphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 63 ; - } -#Hydrophilic organic matter aerosol optical depth -'aerodomhphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 64 ; - } -#Source/gain of hydrophobic black carbon aerosol -'aersrcbchphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 65 ; - } -#Source/gain of hydrophilic black carbon aerosol -'aersrcbchphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 66 ; - } -#Dry deposition of hydrophobic black carbon aerosol -'aerddpbchphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 67 ; - } -#Dry deposition of hydrophilic black carbon aerosol -'aerddpbchphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 68 ; - } -#Sedimentation of hydrophobic black carbon aerosol -'aersdmbchphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 69 ; - } -#Sedimentation of hydrophilic black carbon aerosol -'aersdmbchphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 70 ; - } -#Wet deposition of hydrophobic black carbon aerosol by large-scale precipitation -'aerwdlsbchphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 71 ; - } -#Wet deposition of hydrophilic black carbon aerosol by large-scale precipitation -'aerwdlsbchphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 72 ; - } -#Wet deposition of hydrophobic black carbon aerosol by convective precipitation -'aerwdccbchphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 73 ; - } -#Wet deposition of hydrophilic black carbon aerosol by convective precipitation -'aerwdccbchphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 74 ; - } -#Negative fixer of hydrophobic black carbon aerosol -'aerngtbchphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 75 ; - } -#Negative fixer of hydrophilic black carbon aerosol -'aerngtbchphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 76 ; - } -#Vertically integrated mass of hydrophobic black carbon aerosol -'aermssbchphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 77 ; - } -#Vertically integrated mass of hydrophilic black carbon aerosol -'aermssbchphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 78 ; - } -#Hydrophobic black carbon aerosol optical depth -'aerodbchphob' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 79 ; - } -#Hydrophilic black carbon aerosol optical depth -'aerodbchphil' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 80 ; - } -#Source/gain of sulphate aerosol -'aersrcsu' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 81 ; - } -#Dry deposition of sulphate aerosol -'aerddpsu' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 82 ; - } -#Sedimentation of sulphate aerosol -'aersdmsu' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 83 ; - } -#Wet deposition of sulphate aerosol by large-scale precipitation -'aerwdlssu' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 84 ; - } -#Wet deposition of sulphate aerosol by convective precipitation -'aerwdccsu' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 85 ; - } -#Negative fixer of sulphate aerosol -'aerngtsu' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 86 ; - } -#Vertically integrated mass of sulphate aerosol -'aermsssu' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 87 ; - } -#Sulphate aerosol optical depth -'aerodsu' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 88 ; - } -#Accumulated total aerosol optical depth at 550 nm -'accaod550' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 89 ; - } -#Effective (snow effect included) UV visible albedo for direct radiation -'aluvpsn' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 90 ; - } -#10 metre wind speed dust emission potential -'aerdep10si' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 91 ; - } -#10 metre wind gustiness dust emission potential -'aerdep10fg' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 92 ; - } -#Total aerosol optical thickness at 532 nm -'aot532' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 93 ; - } -#Natural (sea-salt and dust) aerosol optical thickness at 532 nm -'naot532' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 94 ; - } -#Anthropogenic (black carbon, organic matter, sulphate) aerosol optical thickness at 532 nm -'aaot532' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 95 ; - } -#Total absorption aerosol optical depth at 340 nm -'aodabs340' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 96 ; - } -#Total absorption aerosol optical depth at 355 nm -'aodabs355' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 97 ; - } -#Total absorption aerosol optical depth at 380 nm -'aodabs380' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 98 ; - } -#Total absorption aerosol optical depth at 400 nm -'aodabs400' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 99 ; - } -#Total absorption aerosol optical depth at 440 nm -'aodabs440' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 100 ; - } -#Total absorption aerosol optical depth at 469 nm -'aodabs469' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 101 ; - } -#Total absorption aerosol optical depth at 500 nm -'aodabs500' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 102 ; - } -#Total absorption aerosol optical depth at 532 nm -'aodabs532' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 103 ; - } -#Total absorption aerosol optical depth at 550 nm -'aodabs550' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 104 ; - } -#Total absorption aerosol optical depth at 645 nm -'aodabs645' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 105 ; - } -#Total absorption aerosol optical depth at 670 nm -'aodabs670' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 106 ; - } -#Total absorption aerosol optical depth at 800 nm -'aodabs800' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 107 ; - } -#Total absorption aerosol optical depth at 858 nm -'aodabs858' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 108 ; - } -#Total absorption aerosol optical depth at 865 nm -'aodabs865' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 109 ; - } -#Total absorption aerosol optical depth at 1020 nm -'aodabs1020' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 110 ; - } -#Total absorption aerosol optical depth at 1064 nm -'aodabs1064' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 111 ; - } -#Total absorption aerosol optical depth at 1240 nm -'aodabs1240' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 112 ; - } -#Total absorption aerosol optical depth at 1640 nm -'aodabs1640' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 113 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 340 nm -'aodfm340' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 114 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 355 nm -'aodfm355' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 115 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 380 nm -'aodfm380' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 116 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 400 nm -'aodfm400' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 117 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 440 nm -'aodfm440' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 118 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 469 nm -'aodfm469' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 119 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 500 nm -'aodfm500' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 120 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 532 nm -'aodfm532' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 121 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 550 nm -'aodfm550' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 122 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 645 nm -'aodfm645' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 123 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 670 nm -'aodfm670' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 124 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 800 nm -'aodfm800' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 125 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 858 nm -'aodfm858' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 126 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 865 nm -'aodfm865' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 127 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 1020 nm -'aodfm1020' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 128 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 1064 nm -'aodfm1064' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 129 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 1240 nm -'aodfm1240' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 130 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 1640 nm -'aodfm1640' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 131 ; - } -#Single scattering albedo at 340 nm -'ssa340' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 132 ; - } -#Single scattering albedo at 355 nm -'ssa355' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 133 ; - } -#Single scattering albedo at 380 nm -'ssa380' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 134 ; - } -#Single scattering albedo at 400 nm -'ssa400' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 135 ; - } -#Single scattering albedo at 440 nm -'ssa440' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 136 ; - } -#Single scattering albedo at 469 nm -'ssa469' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 137 ; - } -#Single scattering albedo at 500 nm -'ssa500' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 138 ; - } -#Single scattering albedo at 532 nm -'ssa532' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 139 ; - } -#Single scattering albedo at 550 nm -'ssa550' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 140 ; - } -#Single scattering albedo at 645 nm -'ssa645' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 141 ; - } -#Single scattering albedo at 670 nm -'ssa670' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 142 ; - } -#Single scattering albedo at 800 nm -'ssa800' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 143 ; - } -#Single scattering albedo at 858 nm -'ssa858' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 144 ; - } -#Single scattering albedo at 865 nm -'ssa865' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 145 ; - } -#Single scattering albedo at 1020 nm -'ssa1020' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 146 ; - } -#Single scattering albedo at 1064 nm -'ssa1064' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 147 ; - } -#Single scattering albedo at 1240 nm -'ssa1240' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 148 ; - } -#Single scattering albedo at 1640 nm -'ssa1640' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 149 ; - } -#Asymmetry factor at 340 nm -'asymmetry340' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 150 ; - } -#Asymmetry factor at 355 nm -'asymmetry355' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 151 ; - } -#Asymmetry factor at 380 nm -'asymmetry380' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 152 ; - } -#Asymmetry factor at 400 nm -'asymmetry400' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 153 ; - } -#Asymmetry factor at 440 nm -'asymmetry440' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 154 ; - } -#Asymmetry factor at 469 nm -'asymmetry469' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 155 ; - } -#Asymmetry factor at 500 nm -'asymmetry500' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 156 ; - } -#Asymmetry factor at 532 nm -'asymmetry532' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 157 ; - } -#Asymmetry factor at 550 nm -'asymmetry550' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 158 ; - } -#Asymmetry factor at 645 nm -'asymmetry645' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 159 ; - } -#Asymmetry factor at 670 nm -'asymmetry670' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 160 ; - } -#Asymmetry factor at 800 nm -'asymmetry800' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 161 ; - } -#Asymmetry factor at 858 nm -'asymmetry858' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 162 ; - } -#Asymmetry factor at 865 nm -'asymmetry865' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 163 ; - } -#Asymmetry factor at 1020 nm -'asymmetry1020' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 164 ; - } -#Asymmetry factor at 1064 nm -'asymmetry1064' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 165 ; - } -#Asymmetry factor at 1240 nm -'asymmetry1240' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 166 ; - } -#Asymmetry factor at 1640 nm -'asymmetry1640' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 167 ; - } -#Source/gain of sulphur dioxide -'aersrcso2' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 168 ; - } -#Dry deposition of sulphur dioxide -'aerddpso2' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 169 ; - } -#Sedimentation of sulphur dioxide -'aersdmso2' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 170 ; - } -#Wet deposition of sulphur dioxide by large-scale precipitation -'aerwdlsso2' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 171 ; - } -#Wet deposition of sulphur dioxide by convective precipitation -'aerwdccso2' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 172 ; - } -#Negative fixer of sulphur dioxide -'aerngtso2' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 173 ; - } -#Vertically integrated mass of sulphur dioxide -'aermssso2' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 174 ; - } -#Sulphur dioxide optical depth -'aerodso2' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 175 ; - } -#Total absorption aerosol optical depth at 2130 nm -'aodabs2130' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 176 ; - } -#Total fine mode (r < 0.5 um) aerosol optical depth at 2130 nm -'aodfm2130' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 177 ; - } -#Single scattering albedo at 2130 nm -'ssa2130' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 178 ; - } -#Asymmetry factor at 2130 nm -'asymmetry2130' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 179 ; - } -#Aerosol extinction coefficient at 355 nm -'aerext355' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 180 ; - } -#Aerosol extinction coefficient at 532 nm -'aerext532' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 181 ; - } -#Aerosol extinction coefficient at 1064 nm -'aerext1064' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 182 ; - } -#Aerosol backscatter coefficient at 355 nm (from top of atmosphere) -'aerbackscattoa355' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 183 ; - } -#Aerosol backscatter coefficient at 532 nm (from top of atmosphere) -'aerbackscattoa532' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 184 ; - } -#Aerosol backscatter coefficient at 1064 nm (from top of atmosphere) -'aerbackscattoa1064' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 185 ; - } -#Aerosol backscatter coefficient at 355 nm (from ground) -'aerbackscatgnd355' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 186 ; - } -#Aerosol backscatter coefficient at 532 nm (from ground) -'aerbackscatgnd532' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 187 ; - } -#Aerosol backscatter coefficient at 1064 nm (from ground) -'aerbackscatgnd1064' = { - discipline = 192 ; - parameterCategory = 215 ; - parameterNumber = 188 ; - } -#Source/gain of fine-mode nitrate aerosol -'aersrcnif' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 192 ; - aerosolType = 65534 ; - is_aerosol = 1 ; - } -#Source/gain of coarse-mode nitrate aerosol -'aersrcnic' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 192 ; - aerosolType = 65533 ; - is_aerosol = 1 ; - } -#Dry deposition of fine-mode nitrate aerosol -'aerddpnif' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - aerosolType = 65534 ; - is_aerosol = 1 ; - } -#Dry deposition of coarse-mode nitrate aerosol -'aerddpnic' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - aerosolType = 65533 ; - is_aerosol = 1 ; - } -#Sedimentation of fine-mode nitrate aerosol -'aersdmnif' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 11 ; - aerosolType = 65534 ; - is_aerosol = 1 ; - } -#Sedimentation of coarse-mode nitrate aerosol -'aersdmnic' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 11 ; - aerosolType = 65533 ; - is_aerosol = 1 ; - } -#Wet deposition of fine-mode nitrate aerosol by large-scale precipitation -'aerwdlnif' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 9 ; - aerosolType = 65534 ; - is_aerosol = 1 ; - } -#Wet deposition of coarse-mode nitrate aerosol by large-scale precipitation -'aerwdlnic' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 9 ; - aerosolType = 65533 ; - is_aerosol = 1 ; - } -#Wet deposition of fine-mode nitrate aerosol by convective precipitation -'aerwdcnif' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 10 ; - aerosolType = 65534 ; - is_aerosol = 1 ; - } -#Wet deposition of coarse-mode nitrate aerosol by convective precipitation -'aerwdcnic' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 10 ; - aerosolType = 65533 ; - is_aerosol = 1 ; - } -#Negative fixer of fine-mode nitrate aerosol -'aerngtnif' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 193 ; - aerosolType = 65534 ; - is_aerosol = 1 ; - } -#Negative fixer of coarse-mode nitrate aerosol -'aerngtnic' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 193 ; - aerosolType = 65533 ; - is_aerosol = 1 ; - } -#Vertically integrated mass of fine-mode nitrate aerosol -'aermssnif' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - aerosolType = 65534 ; - is_aerosol = 1 ; - } -#Vertically integrated mass of coarse-mode nitrate aerosol -'aermssnic' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - aerosolType = 65533 ; - is_aerosol = 1 ; - } -#Fine-mode nitrate aerosol optical depth at 550 nm -'aerodnif' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 102 ; - scaleFactorOfFirstWavelength = 8 ; - typeOfSizeInterval = 255 ; - aerosolType = 65534 ; - scaledValueOfFirstWavelength = 55 ; - typeOfWavelengthInterval = 11 ; - is_aerosol_optical = 1 ; - } -#Coarse-mode nitrate aerosol optical depth at 550 nm -'aerodnic' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 102 ; - scaleFactorOfFirstWavelength = 8 ; - typeOfSizeInterval = 255 ; - aerosolType = 65533 ; - scaledValueOfFirstWavelength = 55 ; - typeOfWavelengthInterval = 11 ; - is_aerosol_optical = 1 ; - } -#Source/gain of ammonium aerosol -'aersrcam' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 192 ; - aerosolType = 62003 ; - is_aerosol = 1 ; - } -#Negative fixer of ammonium aerosol -'aerngtam' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 193 ; - aerosolType = 62003 ; - is_aerosol = 1 ; - } -#Source/gain of biogenic secondary organic aerosol -'aersrcsoab' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 192 ; - aerosolType = 62032 ; - is_aerosol = 1 ; - } -#Negative fixer of biogenic secondary organic aerosol -'aerngtsoab' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 193 ; - aerosolType = 62032 ; - is_aerosol = 1 ; - } -#Source/gain of anthropogenic secondary organic aerosol -'aersrcsoaa' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 192 ; - aerosolType = 62033 ; - is_aerosol = 1 ; - } -#Negative fixer of anthropogenic secondary organic aerosol -'aerngtsoaa' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 193 ; - aerosolType = 62033 ; - is_aerosol = 1 ; - } -#Experimental product -'p1.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 1 ; - } -#Experimental product -'p2.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 2 ; - } -#Experimental product -'p3.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 3 ; - } -#Experimental product -'p4.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 4 ; - } -#Experimental product -'p5.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 5 ; - } -#Experimental product -'p6.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 6 ; - } -#Experimental product -'p7.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 7 ; - } -#Experimental product -'p8.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 8 ; - } -#Experimental product -'p9.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 9 ; - } -#Experimental product -'p10.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 10 ; - } -#Experimental product -'p11.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 11 ; - } -#Experimental product -'p12.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 12 ; - } -#Experimental product -'p13.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 13 ; - } -#Experimental product -'p14.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 14 ; - } -#Experimental product -'p15.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 15 ; - } -#Experimental product -'p16.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 16 ; - } -#Experimental product -'p17.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 17 ; - } -#Experimental product -'p18.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 18 ; - } -#Experimental product -'p19.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 19 ; - } -#Experimental product -'p20.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 20 ; - } -#Experimental product -'p21.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 21 ; - } -#Experimental product -'p22.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 22 ; - } -#Experimental product -'p23.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 23 ; - } -#Experimental product -'p24.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 24 ; - } -#Experimental product -'p25.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 25 ; - } -#Experimental product -'p26.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 26 ; - } -#Experimental product -'p27.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 27 ; - } -#Experimental product -'p28.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 28 ; - } -#Experimental product -'p29.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 29 ; - } -#Experimental product -'p30.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 30 ; - } -#Experimental product -'p31.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 31 ; - } -#Experimental product -'p32.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 32 ; - } -#Experimental product -'p33.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 33 ; - } -#Experimental product -'p34.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 34 ; - } -#Experimental product -'p35.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 35 ; - } -#Experimental product -'p36.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 36 ; - } -#Experimental product -'p37.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 37 ; - } -#Experimental product -'p38.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 38 ; - } -#Experimental product -'p39.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 39 ; - } -#Experimental product -'p40.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 40 ; - } -#Experimental product -'p41.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 41 ; - } -#Experimental product -'p42.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 42 ; - } -#Experimental product -'p43.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 43 ; - } -#Experimental product -'p44.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 44 ; - } -#Experimental product -'p45.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 45 ; - } -#Experimental product -'p46.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 46 ; - } -#Experimental product -'p47.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 47 ; - } -#Experimental product -'p48.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 48 ; - } -#Experimental product -'p49.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 49 ; - } -#Experimental product -'p50.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 50 ; - } -#Experimental product -'p51.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 51 ; - } -#Experimental product -'p52.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 52 ; - } -#Experimental product -'p53.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 53 ; - } -#Experimental product -'p54.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 54 ; - } -#Experimental product -'p55.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 55 ; - } -#Experimental product -'p56.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 56 ; - } -#Experimental product -'p57.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 57 ; - } -#Experimental product -'p58.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 58 ; - } -#Experimental product -'p59.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 59 ; - } -#Experimental product -'p60.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 60 ; - } -#Experimental product -'p61.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 61 ; - } -#Experimental product -'p62.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 62 ; - } -#Experimental product -'p63.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 63 ; - } -#Experimental product -'p64.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 64 ; - } -#Experimental product -'p65.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 65 ; - } -#Experimental product -'p66.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 66 ; - } -#Experimental product -'p67.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 67 ; - } -#Experimental product -'p68.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 68 ; - } -#Experimental product -'p69.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 69 ; - } -#Experimental product -'p70.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 70 ; - } -#Experimental product -'p71.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 71 ; - } -#Experimental product -'p72.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 72 ; - } -#Experimental product -'p73.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 73 ; - } -#Experimental product -'p74.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 74 ; - } -#Experimental product -'p75.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 75 ; - } -#Experimental product -'p76.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 76 ; - } -#Experimental product -'p77.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 77 ; - } -#Experimental product -'p78.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 78 ; - } -#Experimental product -'p79.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 79 ; - } -#Experimental product -'p80.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 80 ; - } -#Experimental product -'p81.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 81 ; - } -#Experimental product -'p82.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 82 ; - } -#Experimental product -'p83.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 83 ; - } -#Experimental product -'p84.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 84 ; - } -#Experimental product -'p85.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 85 ; - } -#Experimental product -'p86.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 86 ; - } -#Experimental product -'p87.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 87 ; - } -#Experimental product -'p88.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 88 ; - } -#Experimental product -'p89.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 89 ; - } -#Experimental product -'p90.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 90 ; - } -#Experimental product -'p91.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 91 ; - } -#Experimental product -'p92.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 92 ; - } -#Experimental product -'p93.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 93 ; - } -#Experimental product -'p94.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 94 ; - } -#Experimental product -'p95.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 95 ; - } -#Experimental product -'p96.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 96 ; - } -#Experimental product -'p97.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 97 ; - } -#Experimental product -'p98.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 98 ; - } -#Experimental product -'p99.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 99 ; - } -#Experimental product -'p100.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 100 ; - } -#Experimental product -'p101.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 101 ; - } -#Experimental product -'p102.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 102 ; - } -#Experimental product -'p103.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 103 ; - } -#Experimental product -'p104.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 104 ; - } -#Experimental product -'p105.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 105 ; - } -#Experimental product -'p106.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 106 ; - } -#Experimental product -'p107.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 107 ; - } -#Experimental product -'p108.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 108 ; - } -#Experimental product -'p109.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 109 ; - } -#Experimental product -'p110.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 110 ; - } -#Experimental product -'p111.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 111 ; - } -#Experimental product -'p112.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 112 ; - } -#Experimental product -'p113.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 113 ; - } -#Experimental product -'p114.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 114 ; - } -#Experimental product -'p115.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 115 ; - } -#Experimental product -'p116.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 116 ; - } -#Experimental product -'p117.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 117 ; - } -#Experimental product -'p118.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 118 ; - } -#Experimental product -'p119.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 119 ; - } -#Experimental product -'p120.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 120 ; - } -#Experimental product -'p121.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 121 ; - } -#Experimental product -'p122.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 122 ; - } -#Experimental product -'p123.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 123 ; - } -#Experimental product -'p124.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 124 ; - } -#Experimental product -'p125.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 125 ; - } -#Experimental product -'p126.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 126 ; - } -#Experimental product -'p127.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 127 ; - } -#Experimental product -'p128.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 128 ; - } -#Experimental product -'p129.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 129 ; - } -#Experimental product -'p130.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 130 ; - } -#Experimental product -'p131.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 131 ; - } -#Experimental product -'p132.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 132 ; - } -#Experimental product -'p133.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 133 ; - } -#Experimental product -'p134.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 134 ; - } -#Experimental product -'p135.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 135 ; - } -#Experimental product -'p136.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 136 ; - } -#Experimental product -'p137.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 137 ; - } -#Experimental product -'p138.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 138 ; - } -#Experimental product -'p139.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 139 ; - } -#Experimental product -'p140.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 140 ; - } -#Experimental product -'p141.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 141 ; - } -#Experimental product -'p142.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 142 ; - } -#Experimental product -'p143.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 143 ; - } -#Experimental product -'p144.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 144 ; - } -#Experimental product -'p145.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 145 ; - } -#Experimental product -'p146.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 146 ; - } -#Experimental product -'p147.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 147 ; - } -#Experimental product -'p148.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 148 ; - } -#Experimental product -'p149.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 149 ; - } -#Experimental product -'p150.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 150 ; - } -#Experimental product -'p151.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 151 ; - } -#Experimental product -'p152.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 152 ; - } -#Experimental product -'p153.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 153 ; - } -#Experimental product -'p154.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 154 ; - } -#Experimental product -'p155.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 155 ; - } -#Experimental product -'p156.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 156 ; - } -#Experimental product -'p157.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 157 ; - } -#Experimental product -'p158.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 158 ; - } -#Experimental product -'p159.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 159 ; - } -#Experimental product -'p160.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 160 ; - } -#Experimental product -'p161.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 161 ; - } -#Experimental product -'p162.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 162 ; - } -#Experimental product -'p163.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 163 ; - } -#Experimental product -'p164.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 164 ; - } -#Experimental product -'p165.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 165 ; - } -#Experimental product -'p166.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 166 ; - } -#Experimental product -'p167.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 167 ; - } -#Experimental product -'p168.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 168 ; - } -#Experimental product -'p169.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 169 ; - } -#Experimental product -'p170.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 170 ; - } -#Experimental product -'p171.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 171 ; - } -#Experimental product -'p172.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 172 ; - } -#Experimental product -'p173.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 173 ; - } -#Experimental product -'p174.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 174 ; - } -#Experimental product -'p175.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 175 ; - } -#Experimental product -'p176.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 176 ; - } -#Experimental product -'p177.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 177 ; - } -#Experimental product -'p178.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 178 ; - } -#Experimental product -'p179.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 179 ; - } -#Experimental product -'p180.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 180 ; - } -#Experimental product -'p181.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 181 ; - } -#Experimental product -'p182.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 182 ; - } -#Experimental product -'p183.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 183 ; - } -#Experimental product -'p184.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 184 ; - } -#Experimental product -'p185.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 185 ; - } -#Experimental product -'p186.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 186 ; - } -#Experimental product -'p187.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 187 ; - } -#Experimental product -'p188.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 188 ; - } -#Experimental product -'p189.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 189 ; - } -#Experimental product -'p190.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 190 ; - } -#Experimental product -'p191.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 191 ; - } -#Experimental product -'p192.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 192 ; - } -#Experimental product -'p193.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 193 ; - } -#Experimental product -'p194.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 194 ; - } -#Experimental product -'p195.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 195 ; - } -#Experimental product -'p196.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 196 ; - } -#Experimental product -'p197.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 197 ; - } -#Experimental product -'p198.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 198 ; - } -#Experimental product -'p199.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 199 ; - } -#Experimental product -'p200.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 200 ; - } -#Experimental product -'p201.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 201 ; - } -#Experimental product -'p202.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 202 ; - } -#Experimental product -'p203.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 203 ; - } -#Experimental product -'p204.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 204 ; - } -#Experimental product -'p205.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 205 ; - } -#Experimental product -'p206.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 206 ; - } -#Experimental product -'p207.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 207 ; - } -#Experimental product -'p208.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 208 ; - } -#Experimental product -'p209.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 209 ; - } -#Experimental product -'p210.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 210 ; - } -#Experimental product -'p211.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 211 ; - } -#Experimental product -'p212.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 212 ; - } -#Experimental product -'p213.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 213 ; - } -#Experimental product -'p214.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 214 ; - } -#Experimental product -'p215.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 215 ; - } -#Experimental product -'p216.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 216 ; - } -#Experimental product -'p217.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 217 ; - } -#Experimental product -'p218.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 218 ; - } -#Experimental product -'p219.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 219 ; - } -#Experimental product -'p220.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 220 ; - } -#Experimental product -'p221.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 221 ; - } -#Experimental product -'p222.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 222 ; - } -#Experimental product -'p223.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 223 ; - } -#Experimental product -'p224.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 224 ; - } -#Experimental product -'p225.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 225 ; - } -#Experimental product -'p226.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 226 ; - } -#Experimental product -'p227.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 227 ; - } -#Experimental product -'p228.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 228 ; - } -#Experimental product -'p229.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 229 ; - } -#Experimental product -'p230.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 230 ; - } -#Experimental product -'p231.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 231 ; - } -#Experimental product -'p232.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 232 ; - } -#Experimental product -'p233.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 233 ; - } -#Experimental product -'p234.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 234 ; - } -#Experimental product -'p235.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 235 ; - } -#Experimental product -'p236.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 236 ; - } -#Experimental product -'p237.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 237 ; - } -#Experimental product -'p238.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 238 ; - } -#Experimental product -'p239.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 239 ; - } -#Experimental product -'p240.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 240 ; - } -#Experimental product -'p241.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 241 ; - } -#Experimental product -'p242.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 242 ; - } -#Experimental product -'p243.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 243 ; - } -#Experimental product -'p244.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 244 ; - } -#Experimental product -'p245.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 245 ; - } -#Experimental product -'p246.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 246 ; - } -#Experimental product -'p247.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 247 ; - } -#Experimental product -'p248.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 248 ; - } -#Experimental product -'p249.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 249 ; - } -#Experimental product -'p250.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 250 ; - } -#Experimental product -'p251.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 251 ; - } -#Experimental product -'p252.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 252 ; - } -#Experimental product -'p253.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 253 ; - } -#Experimental product -'p254.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 254 ; - } -#Experimental product -'p255.216' = { - discipline = 192 ; - parameterCategory = 216 ; - parameterNumber = 255 ; - } -#Hydrogen peroxide -'h2o2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 3 ; - } -#Methane (chemistry) -'ch4_c' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 4 ; - } -#Nitric acid -'hno3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 6 ; - } -#Methyl peroxide -'ch3ooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 7 ; - } -#Paraffins -'par' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 9 ; - } -#Ethene -'c2h4' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 10 ; - } -#Olefins -'ole' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 11 ; - } -#Aldehydes -'ald2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 12 ; - } -#Peroxyacetyl nitrate -'pan' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 13 ; - } -#Peroxides -'rooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 14 ; - } -#Organic nitrates -'onit' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 15 ; - } -#Isoprene -'c5h8' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 16 ; - } -#Dimethyl sulfide -'dms' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 18 ; - } -#Sulfate -'so4' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 20 ; - } -#Ammonium -'nh4' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 21 ; - } -#Methane sulfonic acid -'msa' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 22 ; - } -#Methyl glyoxal -'ch3cocho' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 23 ; - } -#Stratospheric ozone -'o3s' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 24 ; - } -#Lead -'pb' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 26 ; - } -#Hydroperoxy radical -'ho2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 28 ; - } -#Methylperoxy radical -'ch3o2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 29 ; - } -#Hydroxyl radical -'oh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 30 ; - } -#Nitrate radical -'no3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 32 ; - } -#Dinitrogen pentoxide -'n2o5' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 33 ; - } -#Pernitric acid -'ho2no2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 34 ; - } -#Peroxy acetyl radical -'c2o3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 35 ; - } -#Organic ethers -'ror' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 36 ; - } -#PAR budget corrector -'rxpar' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 37 ; - } -#NO to NO2 operator -'xo2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 38 ; - } -#NO to alkyl nitrate operator -'xo2n' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 39 ; - } -#Amine -'nh2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 40 ; - } -#Polar stratospheric cloud -'psc' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 41 ; - } -#Methanol -'ch3oh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 42 ; - } -#Formic acid -'hcooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 43 ; - } -#Methacrylic acid -'mcooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 44 ; - } -#Ethane -'c2h6' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 45 ; - } -#Ethanol -'c2h5oh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 46 ; - } -#Propane -'c3h8' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 47 ; - } -#Propene -'c3h6' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 48 ; - } -#Terpenes -'c10h16' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 49 ; - } -#Methacrolein MVK -'ispd' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 50 ; - } -#Nitrate -'no3_a' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 51 ; - } -#Acetone -'ch3coch3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 52 ; - } -#Acetone product -'aco2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 53 ; - } -#IC3H7O2 -'ic3h7o2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 54 ; - } -#HYPROPO2 -'hypropo2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 55 ; - } -#Nitrogen oxides Transp -'noxa' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 56 ; - } -#Carbon dioxide (chemistry) -'co2_c' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 57 ; - } -#Nitrous oxide (chemistry) -'n2o_c' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 58 ; - } -#Water vapour (chemistry) -'h2o' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 59 ; - } -#Oxygen -'o2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 60 ; - } -#Singlet oxygen -'o2_1s' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 61 ; - } -#Singlet delta oxygen -'o2_1d' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 62 ; - } -#Chlorine dioxide -'oclo' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 63 ; - } -#Chlorine nitrate -'clono2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 64 ; - } -#Hypochlorous acid -'hocl' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 65 ; - } -#Chlorine -'cl2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 66 ; - } -#Nitryl chloride -'clno2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 67 ; - } -#Hydrogen bromide -'hbr' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 68 ; - } -#Dichlorine dioxide -'cl2o2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 69 ; - } -#Hypobromous acid -'hobr' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 70 ; - } -#Trichlorofluoromethane -'cfc11' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 71 ; - } -#Dichlorodifluoromethane -'cfc12' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 72 ; - } -#Trichlorotrifluoroethane -'cfc113' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 73 ; - } -#Dichlorotetrafluoroethane -'cfc114' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 74 ; - } -#Chloropentafluoroethane -'cfc115' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 75 ; - } -#Tetrachloromethane -'ccl4' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 76 ; - } -#Methyl chloroform -'ch3ccl3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 77 ; - } -#Methyl chloride -'ch3cl' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 78 ; - } -#Chlorodifluoromethane -'hcfc22' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 79 ; - } -#Methyl bromide -'ch3br' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 80 ; - } -#Dibromodifluoromethane -'ha1202' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 81 ; - } -#Bromochlorodifluoromethane -'ha1211' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 82 ; - } -#Trifluorobromomethane -'ha1301' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 83 ; - } -#Cbrf2cbrf2 -'ha2402' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 84 ; - } -#Sulfuric acid -'h2so4' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 85 ; - } -#Nitrous acid -'hono' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 86 ; - } -#Alkanes low oh rate -'hc3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 87 ; - } -#Alkanes med oh rate -'hc5' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 88 ; - } -#Alkanes high oh rate -'hc8' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 89 ; - } -#Terminal alkenes -'olt' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 90 ; - } -#Internal alkenes -'oli' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 91 ; - } -#Ethylperoxy radical -'c2h5o2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 92 ; - } -#Butadiene -'dien' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 93 ; - } -#Ethyl hydroperoxide -'c2h5ooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 94 ; - } -#A-pinene cyclic terpenes -'api' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 95 ; - } -#Acetic acid -'ch3cooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 96 ; - } -#D-limonene cyclic diene -'lim' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 97 ; - } -#Acetaldehyde -'ch3cho' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 98 ; - } -#Toluene and less reactive aromatics -'tol' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 99 ; - } -#Xylene and more reactive aromatics -'xyl' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 100 ; - } -#Glycolaldehyde -'glyald' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 101 ; - } -#Cresol -'cresol' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 102 ; - } -#Acetaldehyde and higher -'ald' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 103 ; - } -#Peracetic acid -'ch3coooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 104 ; - } -#Ketones -'ket' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 105 ; - } -#Hoch2ch2o2 -'eo2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 106 ; - } -#Glyoxal -'glyoxal' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 107 ; - } -#Hoch2ch2o -'eo' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 108 ; - } -#Unsaturated dicarbonyls -'dcb' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 109 ; - } -#Methacrolein -'macr' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 110 ; - } -#Unsaturated hydroxy dicarbonyl -'udd' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 111 ; - } -#Isopropyldioxidanyl -'c3h7o2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 112 ; - } -#Hydroxy ketone -'hket' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 113 ; - } -#Isopropyl hydroperoxide -'c3h7ooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 114 ; - } -#C3h6oho2 -'po2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 115 ; - } -#C3h6ohooh -'pooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 116 ; - } -#Higher organic peroxides -'op2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 117 ; - } -#Hydroxyacetone -'hyac' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 118 ; - } -#Peroxyacetic acid -'paa' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 119 ; - } -#Ch3coch2o2 -'ro2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 120 ; - } -#Peroxy radical from c2h6 -'ethp' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 121 ; - } -#Peroxy radical from hc3 -'hc3p' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 122 ; - } -#Peroxy radical from hc5 -'hc5p' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 123 ; - } -#Lumped alkenes -'bigene' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 124 ; - } -#Peroxy radical from hc8 -'hc8p' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 125 ; - } -#Lumped alkanes -'bigalk' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 126 ; - } -#Peroxy radical from c2h4 -'etep' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 127 ; - } -#C4h8o -'mek' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 128 ; - } -#Peroxy radical from terminal alkenes -'oltp' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 129 ; - } -#C4h9o3 -'eneo2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 130 ; - } -#Peroxy radical from internal alkenes -'olip' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 131 ; - } -#Ch3coch(oo)ch3 -'meko2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 132 ; - } -#Peroxy radical from c5h8 -'isopo2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 133 ; - } -#Ch3coch(ooh)ch3 -'mekooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 134 ; - } -#Peroxy radical from a-pinene cyclic terpenes -'apip' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 135 ; - } -#Ch2=c(ch3)co3 -'mco3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 136 ; - } -#Peroxy radical from d-limonene cyclic diene -'limp' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 137 ; - } -#Methylvinylketone -'mvk' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 138 ; - } -#Phenoxy radical -'pho' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 139 ; - } -#Peroxy radical from toluene and less reactive aromatics -'tolp' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 140 ; - } -#Ch3c(o)ch(oo)ch2oh -'macro2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 141 ; - } -#Peroxy radical from xylene and more reactive aromatics -'xylp' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 142 ; - } -#H3c(o)ch(ooh)ch2oh -'macrooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 143 ; - } -#Peroxy radical from cresol -'cslp' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 144 ; - } -#Unsaturated pans -'mpan' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 145 ; - } -#Unsaturated acyl peroxy radical -'tco3_c' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 146 ; - } -#Peroxy radical from ketones -'ketp' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 147 ; - } -#C5h11o2 -'alko2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 148 ; - } -#No3-alkenes adduct reacting to form carbonitrates -'olnn' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 149 ; - } -#C5h11ooh -'alkooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 150 ; - } -#No3-alkenes adduct reacting via decomposition -'olnd' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 151 ; - } -#Hoch2c(ch3)=chcho -'bigald' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 152 ; - } -#C5h6o2 -'hydrald' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 153 ; - } -#Trop sulfuric acid -'sulf' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 154 ; - } -#Oxides -'ox' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 155 ; - } -#Ch2chc(ch3)(oo)ch2ono2 -'isopno3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 156 ; - } -#C3 organic nitrate -'onitr' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 157 ; - } -#Chlorine oxides -'clox' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 158 ; - } -#Bromine oxides -'brox' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 159 ; - } -#Hoch2c(ooh)(ch3)chchoh -'xooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 160 ; - } -#Hoch2c(ooh)(ch3)ch=ch2 -'isopooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 161 ; - } -#Lumped aromatics -'toluene' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 162 ; - } -#Dimethyl sulfoxyde -'dmso' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 163 ; - } -#C7h9o5 -'tolo2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 164 ; - } -#C7h10o5 -'tolooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 165 ; - } -#Hydrogensulfide -'h2s' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 166 ; - } -#C7h10o6 -'xoh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 167 ; - } -#All nitrogen oxides -'noy' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 168 ; - } -#Chlorine family -'cly' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 169 ; - } -#C10h16(oh)(oo) -'terpo2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 170 ; - } -#Bromine family -'bry' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 171 ; - } -#C10h18o3 -'terpooh' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 172 ; - } -#Nitrogen atom -'n' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 173 ; - } -#Chlorine monoxide -'clo' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 174 ; - } -#Chlorine atom -'cl_c' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 175 ; - } -#Bromine monoxide -'bro' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 176 ; - } -#Hydrogen atom -'h_c' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 177 ; - } -#Methyl group -'ch3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 178 ; - } -#Aromatic-ho from toluene and less reactive aromatics -'addt' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 179 ; - } -#Aromatic-ho from xylene and more reactive aromatics -'addx' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 180 ; - } -#Ammonium nitrate -'nh4no3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 181 ; - } -#Aromatic-ho from csl -'addc' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 182 ; - } -#Secondary organic aerosol type 1 -'soa1' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 183 ; - } -#Secondary organic aerosol type 2a -'soa2a' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 184 ; - } -#Secondary organic aerosol type 2b -'soa2b' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 185 ; - } -#Condensable gas type 1 -'sog1' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 186 ; - } -#Condensable gas type 2a -'sog2a' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 187 ; - } -#Condensable gas type 2b -'sog2b' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 188 ; - } -#Sulfur trioxide -'so3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 189 ; - } -#Carbonyl sulfide -'ocs_c' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 190 ; - } -#Bromine atom -'br' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 191 ; - } -#Bromine -'br2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 192 ; - } -#Bromine monochloride -'brcl' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 193 ; - } -#Bromine nitrate -'brono2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 194 ; - } -#Dibromomethane -'ch2br2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 195 ; - } -#Methoxy radical -'ch3o' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 196 ; - } -#Tribromomethane -'chbr3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 197 ; - } -#Asymmetric chlorine dioxide radical -'cloo' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 198 ; - } -#Hydrogen -'h2' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 199 ; - } -#Hydrogen chloride -'hcl' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 200 ; - } -#Formyl radical -'hco' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 201 ; - } -#Hydrogen fluoride -'hf' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 202 ; - } -#Oxygen atom -'o' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 203 ; - } -#Excited oxygen atom -'o1d' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 204 ; - } -#Ground state oxygen atom -'o3p' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 205 ; - } -#Stratospheric aerosol -'strataer' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 206 ; - } -#Anthropogenic volatile organic compounds mass mixing ratio -'VOCA' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 65532 ; - is_chemical = 1 ; - } -#Biomass burning volatile organic compounds mass mixing ratio -'VOCBB' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 2 ; - constituentType = 65531 ; - is_chemical = 1 ; - } -#Total column hydrogen peroxide -'tc_h2o2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 3 ; - } -#Total column methane -'tc_ch4' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 4 ; - } -#Total column nitric acid -'tc_hno3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 6 ; - } -#Total column methyl peroxide -'tc_ch3ooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 7 ; - } -#Total column paraffins -'tc_par' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 9 ; - } -#Total column ethene -'tc_c2h4' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 10 ; - } -#Total column olefins -'tc_ole' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 11 ; - } -#Total column aldehydes -'tc_ald2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 12 ; - } -#Total column peroxyacetyl nitrate -'tc_pan' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 13 ; - } -#Total column peroxides -'tc_rooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 14 ; - } -#Total column organic nitrates -'tc_onit' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 15 ; - } -#Total column isoprene -'tc_c5h8' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 16 ; - } -#Total column dimethyl sulfide -'tc_dms' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 18 ; - } -#Total column ammonia -'tc_nh3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 19 ; - } -#Total column sulfate -'tc_so4' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 20 ; - } -#Total column ammonium -'tc_nh4' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 21 ; - } -#Total column methane sulfonic acid -'tc_msa' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 22 ; - } -#Total column methyl glyoxal -'tc_ch3cocho' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 23 ; - } -#Total column stratospheric ozone -'tc_o3s' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 24 ; - } -#Total column lead -'tc_pb' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 26 ; - } -#Total column nitrogen monoxide -'tc_no' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 27 ; - } -#Total column hydroperoxy radical -'tc_ho2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 28 ; - } -#Total column methylperoxy radical -'tc_ch3o2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 29 ; - } -#Total column hydroxyl radical -'tc_oh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 30 ; - } -#Total column nitrate radical -'tc_no3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 32 ; - } -#Total column dinitrogen pentoxide -'tc_n2o5' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 33 ; - } -#Total column pernitric acid -'tc_ho2no2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 34 ; - } -#Total column peroxy acetyl radical -'tc_c2o3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 35 ; - } -#Total column organic ethers -'tc_ror' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 36 ; - } -#Total column PAR budget corrector -'tc_rxpar' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 37 ; - } -#Total column NO to NO2 operator -'tc_xo2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 38 ; - } -#Total column NO to alkyl nitrate operator -'tc_xo2n' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 39 ; - } -#Total column amine -'tc_nh2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 40 ; - } -#Total column polar stratospheric cloud -'tc_psc' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 41 ; - } -#Total column methanol -'tc_ch3oh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 42 ; - } -#Total column formic acid -'tc_hcooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 43 ; - } -#Total column methacrylic acid -'tc_mcooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 44 ; - } -#Total column ethane -'tc_c2h6' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 45 ; - } -#Total column ethanol -'tc_c2h5oh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 46 ; - } -#Total column propane -'tc_c3h8' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 47 ; - } -#Total column propene -'tc_c3h6' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 48 ; - } -#Total column terpenes -'tc_c10h16' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 49 ; - } -#Total column methacrolein MVK -'tc_ispd' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 50 ; - } -#Total column nitrate -'tc_no3_a' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 51 ; - } -#Total column acetone -'tc_ch3coch3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 52 ; - } -#Total column acetone product -'tc_aco2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 53 ; - } -#Total column IC3H7O2 -'tc_ic3h7o2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 54 ; - } -#Total column HYPROPO2 -'tc_hypropo2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 55 ; - } -#Total column nitrogen oxides Transp -'tc_noxa' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 56 ; - } -#Total column of carbon dioxide (chemistry) -'tc_co2_c' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 57 ; - } -#Total column of nitrous oxide (chemistry) -'tc_n2o_c' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 58 ; - } -#Total column of water vapour (chemistry) -'tc_h2o' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 59 ; - } -#Total column of oxygen -'tc_o2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 60 ; - } -#Total column of singlet oxygen -'tc_o2_1s' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 61 ; - } -#Total column of singlet delta oxygen -'tc_o2_1d' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 62 ; - } -#Total column of chlorine dioxide -'tc_oclo' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 63 ; - } -#Total column of chlorine nitrate -'tc_clono2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 64 ; - } -#Total column of hypochlorous acid -'tc_hocl' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 65 ; - } -#Total column of chlorine -'tc_cl2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 66 ; - } -#Total column of nitryl chloride -'tc_clno2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 67 ; - } -#Total column of hydrogen bromide -'tc_hbr' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 68 ; - } -#Total column of dichlorine dioxide -'tc_cl2o2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 69 ; - } -#Total column of hypobromous acid -'tc_hobr' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 70 ; - } -#Total column of trichlorofluoromethane -'tc_cfc11' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 71 ; - } -#Total column of dichlorodifluoromethane -'tc_cfc12' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 72 ; - } -#Total column of trichlorotrifluoroethane -'tc_cfc113' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 73 ; - } -#Total column of dichlorotetrafluoroethane -'tc_cfc114' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 74 ; - } -#Total column of chloropentafluoroethane -'tc_cfc115' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 75 ; - } -#Total column of tetrachloromethane -'tc_ccl4' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 76 ; - } -#Total column of methyl chloroform -'tc_ch3ccl3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 77 ; - } -#Total column of methyl chloride -'tc_ch3cl' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 78 ; - } -#Total column of chlorodifluoromethane -'tc_hcfc22' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 79 ; - } -#Total column of methyl bromide -'tc_ch3br' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 80 ; - } -#Total column of dibromodifluoromethane -'tc_ha1202' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 81 ; - } -#Total column of bromochlorodifluoromethane -'tc_ha1211' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 82 ; - } -#Total column of trifluorobromomethane -'tc_ha1301' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 83 ; - } -#Total column of cbrf2cbrf2 -'tc_ha2402' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 84 ; - } -#Total column of sulfuric acid -'tc_h2so4' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 85 ; - } -#Total column of nitrous acid -'tc_hono' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 86 ; - } -#Total column of alkanes low oh rate -'tc_hc3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 87 ; - } -#Total column of alkanes med oh rate -'tc_hc5' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 88 ; - } -#Total column of alkanes high oh rate -'tc_hc8' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 89 ; - } -#Total column of terminal alkenes -'tc_olt' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 90 ; - } -#Total column of internal alkenes -'tc_oli' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 91 ; - } -#Total column of ethylperoxy radical -'tc_c2h5o2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 92 ; - } -#Total column of butadiene -'tc_dien' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 93 ; - } -#Total column of ethyl hydroperoxide -'tc_c2h5ooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 94 ; - } -#Total column of a-pinene cyclic terpenes -'tc_api' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 95 ; - } -#Total column of acetic acid -'tc_ch3cooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 96 ; - } -#Total column of d-limonene cyclic diene -'tc_lim' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 97 ; - } -#Total column of acetaldehyde -'tc_ch3cho' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 98 ; - } -#Total column of toluene and less reactive aromatics -'tc_tol' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 99 ; - } -#Total column of xylene and more reactive aromatics -'tc_xyl' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 100 ; - } -#Total column of glycolaldehyde -'tc_glyald' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 101 ; - } -#Total column of cresol -'tc_cresol' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 102 ; - } -#Total column of acetaldehyde and higher -'tc_ald' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 103 ; - } -#Total column of peracetic acid -'tc_ch3coooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 104 ; - } -#Total column of ketones -'tc_ket' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 105 ; - } -#Total column of hoch2ch2o2 -'tc_eo2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 106 ; - } -#Total column of glyoxal -'tc_glyoxal' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 107 ; - } -#Total column of hoch2ch2o -'tc_eo' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 108 ; - } -#Total column of unsaturated dicarbonyls -'tc_dcb' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 109 ; - } -#Total column of methacrolein -'tc_macr' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 110 ; - } -#Total column of unsaturated hydroxy dicarbonyl -'tc_udd' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 111 ; - } -#Total column of isopropyldioxidanyl -'tc_c3h7o2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 112 ; - } -#Total column of hydroxy ketone -'tc_hket' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 113 ; - } -#Total column of isopropyl hydroperoxide -'tc_c3h7ooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 114 ; - } -#Total column of c3h6oho2 -'tc_po2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 115 ; - } -#Total column of c3h6ohooh -'tc_pooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 116 ; - } -#Total column of higher organic peroxides -'tc_op2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 117 ; - } -#Total column of hydroxyacetone -'tc_hyac' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 118 ; - } -#Total column of peroxyacetic acid -'tc_paa' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 119 ; - } -#Total column of ch3coch2o2 -'tc_ro2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 120 ; - } -#Total column of peroxy radical from c2h6 -'tc_ethp' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 121 ; - } -#Total column of peroxy radical from hc3 -'tc_hc3p' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 122 ; - } -#Total column of peroxy radical from hc5 -'tc_hc5p' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 123 ; - } -#Total column of lumped alkenes -'tc_bigene' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 124 ; - } -#Total column of peroxy radical from hc8 -'tc_hc8p' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 125 ; - } -#Total column of lumped alkanes -'tc_bigalk' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 126 ; - } -#Total column of peroxy radical from c2h4 -'tc_etep' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 127 ; - } -#Total column of c4h8o -'tc_mek' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 128 ; - } -#Total column of peroxy radical from terminal alkenes -'tc_oltp' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 129 ; - } -#Total column of c4h9o3 -'tc_eneo2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 130 ; - } -#Total column of peroxy radical from internal alkenes -'tc_olip' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 131 ; - } -#Total column of ch3coch(oo)ch3 -'tc_meko2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 132 ; - } -#Total column of peroxy radical from c5h8 -'tc_isopo2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 133 ; - } -#Total column of ch3coch(ooh)ch3 -'tc_mekooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 134 ; - } -#Total column of peroxy radical from a-pinene cyclic terpenes -'tc_apip' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 135 ; - } -#Total column of ch2=c(ch3)co3 -'tc_mco3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 136 ; - } -#Total column of peroxy radical from d-limonene cyclic diene -'tc_limp' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 137 ; - } -#Total column of methylvinylketone -'tc_mvk' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 138 ; - } -#Total column of phenoxy radical -'tc_pho' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 139 ; - } -#Total column of peroxy radical from toluene and less reactive aromatics -'tc_tolp' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 140 ; - } -#Total column of ch3c(o)ch(oo)ch2oh -'tc_macro2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 141 ; - } -#Total column of peroxy radical from xylene and more reactive aromatics -'tc_xylp' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 142 ; - } -#Total column of h3c(o)ch(ooh)ch2oh -'tc_macrooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 143 ; - } -#Total column of peroxy radical from cresol -'tc_cslp' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 144 ; - } -#Total column of unsaturated pans -'tc_mpan' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 145 ; - } -#Total column of unsaturated acyl peroxy radical -'tc_tco3_c' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 146 ; - } -#Total column of peroxy radical from ketones -'tc_ketp' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 147 ; - } -#Total column of c5h11o2 -'tc_alko2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 148 ; - } -#Total column of no3-alkenes adduct reacting to form carbonitrates -'tc_olnn' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 149 ; - } -#Total column of c5h11ooh -'tc_alkooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 150 ; - } -#Total column of no3-alkenes adduct reacting via decomposition -'tc_olnd' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 151 ; - } -#Total column of hoch2c(ch3)=chcho -'tc_bigald' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 152 ; - } -#Total column of c5h6o2 -'tc_hydrald' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 153 ; - } -#Total column of trop sulfuric acid -'tc_sulf' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 154 ; - } -#Total column of oxides -'tc_ox' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 155 ; - } -#Total column of ch2chc(ch3)(oo)ch2ono2 -'tc_isopno3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 156 ; - } -#Total column of c3 organic nitrate -'tc_onitr' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 157 ; - } -#Total column of chlorine oxides -'tc_clox' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 158 ; - } -#Total column of bromine oxides -'tc_brox' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 159 ; - } -#Total column of hoch2c(ooh)(ch3)chchoh -'tc_xooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 160 ; - } -#Total column of hoch2c(ooh)(ch3)ch=ch2 -'tc_isopooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 161 ; - } -#Total column of lumped aromatics -'tc_toluene' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 162 ; - } -#Total column of dimethyl sulfoxyde -'tc_dmso' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 163 ; - } -#Total column of c7h9o5 -'tc_tolo2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 164 ; - } -#Total column of c7h10o5 -'tc_tolooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 165 ; - } -#Total column of hydrogensulfide -'tc_h2s' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 166 ; - } -#Total column of c7h10o6 -'tc_xoh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 167 ; - } -#Total column of all nitrogen oxides -'tc_noy' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 168 ; - } -#Total column of chlorine family -'tc_cly' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 169 ; - } -#Total column of c10h16(oh)(oo) -'tc_terpo2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 170 ; - } -#Total column of bromine family -'tc_bry' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 171 ; - } -#Total column of c10h18o3 -'tc_terpooh' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 172 ; - } -#Total column of nitrogen atom -'tc_n' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 173 ; - } -#Total column of chlorine monoxide -'tc_clo' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 174 ; - } -#Total column of chlorine atom -'tc_cl_c' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 175 ; - } -#Total column of bromine monoxide -'tc_bro' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 176 ; - } -#Total column of hydrogen atom -'tc_h_c' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 177 ; - } -#Total column of methyl group -'tc_ch3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 178 ; - } -#Total column of aromatic-ho from toluene and less reactive aromatics -'tc_addt' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 179 ; - } -#Total column of aromatic-ho from xylene and more reactive aromatics -'tc_addx' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 180 ; - } -#Total column of ammonium nitrate -'tc_nh4no3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 181 ; - } -#Total column of aromatic-ho from csl -'tc_addc' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 182 ; - } -#Total column of secondary organic aerosol type 1 -'tc_soa1' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 183 ; - } -#Total column of secondary organic aerosol type 2a -'tc_soa2a' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 184 ; - } -#Total column of secondary organic aerosol type 2b -'tc_soa2b' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 185 ; - } -#Total column of condensable gas type 1 -'tc_sog1' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 186 ; - } -#Total column of condensable gas type 2a -'tc_sog2a' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 187 ; - } -#Total column of condensable gas type 2b -'tc_sog2b' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 188 ; - } -#Total column of sulfur trioxide -'tc_so3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 189 ; - } -#Total column of carbonyl sulfide -'tc_ocs_c' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 190 ; - } -#Total column of bromine atom -'tc_br' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 191 ; - } -#Total column of bromine -'tc_br2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 192 ; - } -#Total column of bromine monochloride -'tc_brcl' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 193 ; - } -#Total column of bromine nitrate -'tc_brono2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 194 ; - } -#Total column of dibromomethane -'tc_ch2br2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 195 ; - } -#Total column of methoxy radical -'tc_ch3o' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 196 ; - } -#Total column of tribromomethane -'tc_chbr3' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 197 ; - } -#Total column of asymmetric chlorine dioxide radical -'tc_cloo' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 198 ; - } -#Total column of hydrogen -'tc_h2' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 199 ; - } -#Total column of hydrogen chloride -'tc_hcl' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 200 ; - } -#Total column of formyl radical -'tc_hco' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 201 ; - } -#Total column of hydrogen fluoride -'tc_hf' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 202 ; - } -#Total column of oxygen atom -'tc_o' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 203 ; - } -#Total column of excited oxygen atom -'tc_o1d' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 204 ; - } -#Total column of ground state oxygen atom -'tc_o3p' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 205 ; - } -#Total column of stratospheric aerosol -'tc_strataer' = { - discipline = 192 ; - parameterCategory = 218 ; - parameterNumber = 206 ; - } -#Column integrated mass density of Anthropogenic volatile organic compounds -'tc_VOCA' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 65532 ; - is_chemical = 1 ; - } -#Column integrated mass density of Biomass burning volatile organic compounds -'tc_VOCBB' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 1 ; - constituentType = 65531 ; - is_chemical = 1 ; - } -#Ozone emissions -'e_go3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 1 ; - } -#Nitrogen oxides emissions -'e_nox' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 2 ; - } -#Hydrogen peroxide emissions -'e_h2o2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 3 ; - } -#Methane emissions -'e_ch4' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 4 ; - } -#Carbon monoxide emissions -'e_co' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 5 ; - } -#Nitric acid emissions -'e_hno3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 6 ; - } -#Methyl peroxide emissions -'e_ch3ooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 7 ; - } -#Formaldehyde emissions -'e_hcho' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 8 ; - } -#Paraffins emissions -'e_par' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 9 ; - } -#Ethene emissions -'e_c2h4' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 10 ; - } -#Olefins emissions -'e_ole' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 11 ; - } -#Aldehydes emissions -'e_ald2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 12 ; - } -#Peroxyacetyl nitrate emissions -'e_pan' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 13 ; - } -#Peroxides emissions -'e_rooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 14 ; - } -#Organic nitrates emissions -'e_onit' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 15 ; - } -#Isoprene emissions -'e_c5h8' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 16 ; - } -#Sulfur dioxide emissions -'e_so2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 17 ; - } -#Dimethyl sulfide emissions -'e_dms' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 18 ; - } -#Ammonia emissions -'e_nh3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 19 ; - } -#Sulfate emissions -'e_so4' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 20 ; - } -#Ammonium emissions -'e_nh4' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 21 ; - } -#Methane sulfonic acid emissions -'e_msa' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 22 ; - } -#Methyl glyoxal emissions -'e_ch3cocho' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 23 ; - } -#Stratospheric ozone emissions -'e_o3s' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 24 ; - } -#Radon emissions -'e_ra' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 25 ; - } -#Lead emissions -'e_pb' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 26 ; - } -#Nitrogen monoxide emissions -'e_no' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 27 ; - } -#Hydroperoxy radical emissions -'e_ho2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 28 ; - } -#Methylperoxy radical emissions -'e_ch3o2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 29 ; - } -#Hydroxyl radical emissions -'e_oh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 30 ; - } -#Nitrogen dioxide emissions -'e_no2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 31 ; - } -#Nitrate radical emissions -'e_no3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 32 ; - } -#Dinitrogen pentoxide emissions -'e_n2o5' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 33 ; - } -#Pernitric acid emissions -'e_ho2no2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 34 ; - } -#Peroxy acetyl radical emissions -'e_c2o3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 35 ; - } -#Organic ethers emissions -'e_ror' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 36 ; - } -#PAR budget corrector emissions -'e_rxpar' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 37 ; - } -#NO to NO2 operator emissions -'e_xo2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 38 ; - } -#NO to alkyl nitrate operator emissions -'e_xo2n' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 39 ; - } -#Amine emissions -'e_nh2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 40 ; - } -#Polar stratospheric cloud emissions -'e_psc' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 41 ; - } -#Methanol emissions -'e_ch3oh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 42 ; - } -#Formic acid emissions -'e_hcooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 43 ; - } -#Methacrylic acid emissions -'e_mcooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 44 ; - } -#Ethane emissions -'e_c2h6' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 45 ; - } -#Ethanol emissions -'e_c2h5oh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 46 ; - } -#Propane emissions -'e_c3h8' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 47 ; - } -#Propene emissions -'e_c3h6' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 48 ; - } -#Terpenes emissions -'e_c10h16' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 49 ; - } -#Methacrolein MVK emissions -'e_ispd' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 50 ; - } -#Nitrate emissions -'e_no3_a' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 51 ; - } -#Acetone emissions -'e_ch3coch3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 52 ; - } -#Acetone product emissions -'e_aco2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 53 ; - } -#IC3H7O2 emissions -'e_ic3h7o2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 54 ; - } -#HYPROPO2 emissions -'e_hypropo2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 55 ; - } -#Nitrogen oxides Transp emissions -'e_noxa' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 56 ; - } -#Emissions of carbon dioxide (chemistry) -'e_co2_c' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 57 ; - } -#Emissions of nitrous oxide (chemistry) -'e_n2o_c' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 58 ; - } -#Emissions of water vapour (chemistry) -'e_h2o' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 59 ; - } -#Emissions of oxygen -'e_o2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 60 ; - } -#Emissions of singlet oxygen -'e_o2_1s' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 61 ; - } -#Emissions of singlet delta oxygen -'e_o2_1d' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 62 ; - } -#Emissions of chlorine dioxide -'e_oclo' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 63 ; - } -#Emissions of chlorine nitrate -'e_clono2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 64 ; - } -#Emissions of hypochlorous acid -'e_hocl' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 65 ; - } -#Emissions of chlorine -'e_cl2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 66 ; - } -#Emissions of nitryl chloride -'e_clno2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 67 ; - } -#Emissions of hydrogen bromide -'e_hbr' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 68 ; - } -#Emissions of dichlorine dioxide -'e_cl2o2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 69 ; - } -#Emissions of hypobromous acid -'e_hobr' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 70 ; - } -#Emissions of trichlorofluoromethane -'e_cfc11' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 71 ; - } -#Emissions of dichlorodifluoromethane -'e_cfc12' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 72 ; - } -#Emissions of trichlorotrifluoroethane -'e_cfc113' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 73 ; - } -#Emissions of dichlorotetrafluoroethane -'e_cfc114' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 74 ; - } -#Emissions of chloropentafluoroethane -'e_cfc115' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 75 ; - } -#Emissions of tetrachloromethane -'e_ccl4' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 76 ; - } -#Emissions of methyl chloroform -'e_ch3ccl3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 77 ; - } -#Emissions of methyl chloride -'e_ch3cl' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 78 ; - } -#Emissions of chlorodifluoromethane -'e_hcfc22' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 79 ; - } -#Emissions of methyl bromide -'e_ch3br' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 80 ; - } -#Emissions of dibromodifluoromethane -'e_ha1202' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 81 ; - } -#Emissions of bromochlorodifluoromethane -'e_ha1211' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 82 ; - } -#Emissions of trifluorobromomethane -'e_ha1301' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 83 ; - } -#Emissions of cbrf2cbrf2 -'e_ha2402' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 84 ; - } -#Emissions of sulfuric acid -'e_h2so4' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 85 ; - } -#Emissions of nitrous acid -'e_hono' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 86 ; - } -#Emissions of alkanes low oh rate -'e_hc3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 87 ; - } -#Emissions of alkanes med oh rate -'e_hc5' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 88 ; - } -#Emissions of alkanes high oh rate -'e_hc8' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 89 ; - } -#Emissions of terminal alkenes -'e_olt' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 90 ; - } -#Emissions of internal alkenes -'e_oli' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 91 ; - } -#Emissions of ethylperoxy radical -'e_c2h5o2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 92 ; - } -#Emissions of butadiene -'e_dien' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 93 ; - } -#Emissions of ethyl hydroperoxide -'e_c2h5ooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 94 ; - } -#Emissions of a-pinene cyclic terpenes -'e_api' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 95 ; - } -#Emissions of acetic acid -'e_ch3cooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 96 ; - } -#Emissions of d-limonene cyclic diene -'e_lim' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 97 ; - } -#Emissions of acetaldehyde -'e_ch3cho' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 98 ; - } -#Emissions of toluene and less reactive aromatics -'e_tol' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 99 ; - } -#Emissions of xylene and more reactive aromatics -'e_xyl' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 100 ; - } -#Emissions of glycolaldehyde -'e_glyald' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 101 ; - } -#Emissions of cresol -'e_cresol' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 102 ; - } -#Emissions of acetaldehyde and higher -'e_ald' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 103 ; - } -#Emissions of peracetic acid -'e_ch3coooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 104 ; - } -#Emissions of ketones -'e_ket' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 105 ; - } -#Emissions of hoch2ch2o2 -'e_eo2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 106 ; - } -#Emissions of glyoxal -'e_glyoxal' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 107 ; - } -#Emissions of hoch2ch2o -'e_eo' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 108 ; - } -#Emissions of unsaturated dicarbonyls -'e_dcb' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 109 ; - } -#Emissions of methacrolein -'e_macr' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 110 ; - } -#Emissions of unsaturated hydroxy dicarbonyl -'e_udd' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 111 ; - } -#Emissions of isopropyldioxidanyl -'e_c3h7o2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 112 ; - } -#Emissions of hydroxy ketone -'e_hket' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 113 ; - } -#Emissions of isopropyl hydroperoxide -'e_c3h7ooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 114 ; - } -#Emissions of c3h6oho2 -'e_po2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 115 ; - } -#Emissions of c3h6ohooh -'e_pooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 116 ; - } -#Emissions of higher organic peroxides -'e_op2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 117 ; - } -#Emissions of hydroxyacetone -'e_hyac' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 118 ; - } -#Emissions of peroxyacetic acid -'e_paa' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 119 ; - } -#Emissions of ch3coch2o2 -'e_ro2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 120 ; - } -#Emissions of peroxy radical from c2h6 -'e_ethp' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 121 ; - } -#Emissions of peroxy radical from hc3 -'e_hc3p' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 122 ; - } -#Emissions of peroxy radical from hc5 -'e_hc5p' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 123 ; - } -#Emissions of lumped alkenes -'e_bigene' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 124 ; - } -#Emissions of peroxy radical from hc8 -'e_hc8p' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 125 ; - } -#Emissions of lumped alkanes -'e_bigalk' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 126 ; - } -#Emissions of peroxy radical from c2h4 -'e_etep' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 127 ; - } -#Emissions of c4h8o -'e_mek' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 128 ; - } -#Emissions of peroxy radical from terminal alkenes -'e_oltp' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 129 ; - } -#Emissions of c4h9o3 -'e_eneo2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 130 ; - } -#Emissions of peroxy radical from internal alkenes -'e_olip' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 131 ; - } -#Emissions of ch3coch(oo)ch3 -'e_meko2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 132 ; - } -#Emissions of peroxy radical from c5h8 -'e_isopo2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 133 ; - } -#Emissions of ch3coch(ooh)ch3 -'e_mekooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 134 ; - } -#Emissions of peroxy radical from a-pinene cyclic terpenes -'e_apip' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 135 ; - } -#Emissions of ch2=c(ch3)co3 -'e_mco3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 136 ; - } -#Emissions of peroxy radical from d-limonene cyclic diene -'e_limp' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 137 ; - } -#Emissions of methylvinylketone -'e_mvk' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 138 ; - } -#Emissions of phenoxy radical -'e_pho' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 139 ; - } -#Emissions of peroxy radical from toluene and less reactive aromatics -'e_tolp' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 140 ; - } -#Emissions of ch3c(o)ch(oo)ch2oh -'e_macro2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 141 ; - } -#Emissions of peroxy radical from xylene and more reactive aromatics -'e_xylp' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 142 ; - } -#Emissions of h3c(o)ch(ooh)ch2oh -'e_macrooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 143 ; - } -#Emissions of peroxy radical from cresol -'e_cslp' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 144 ; - } -#Emissions of unsaturated pans -'e_mpan' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 145 ; - } -#Emissions of unsaturated acyl peroxy radical -'e_tco3_c' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 146 ; - } -#Emissions of peroxy radical from ketones -'e_ketp' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 147 ; - } -#Emissions of c5h11o2 -'e_alko2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 148 ; - } -#Emissions of no3-alkenes adduct reacting to form carbonitrates -'e_olnn' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 149 ; - } -#Emissions of c5h11ooh -'e_alkooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 150 ; - } -#Emissions of no3-alkenes adduct reacting via decomposition -'e_olnd' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 151 ; - } -#Emissions of hoch2c(ch3)=chcho -'e_bigald' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 152 ; - } -#Emissions of c5h6o2 -'e_hydrald' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 153 ; - } -#Emissions of trop sulfuric acid -'e_sulf' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 154 ; - } -#Emissions of oxides -'e_ox' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 155 ; - } -#Emissions of ch2chc(ch3)(oo)ch2ono2 -'e_isopno3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 156 ; - } -#Emissions of c3 organic nitrate -'e_onitr' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 157 ; - } -#Emissions of chlorine oxides -'e_clox' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 158 ; - } -#Emissions of bromine oxides -'e_brox' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 159 ; - } -#Emissions of hoch2c(ooh)(ch3)chchoh -'e_xooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 160 ; - } -#Emissions of hoch2c(ooh)(ch3)ch=ch2 -'e_isopooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 161 ; - } -#Emissions of lumped aromatics -'e_toluene' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 162 ; - } -#Emissions of dimethyl sulfoxyde -'e_dmso' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 163 ; - } -#Emissions of c7h9o5 -'e_tolo2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 164 ; - } -#Emissions of c7h10o5 -'e_tolooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 165 ; - } -#Emissions of hydrogensulfide -'e_h2s' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 166 ; - } -#Emissions of c7h10o6 -'e_xoh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 167 ; - } -#Emissions of all nitrogen oxides -'e_noy' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 168 ; - } -#Emissions of chlorine family -'e_cly' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 169 ; - } -#Emissions of c10h16(oh)(oo) -'e_terpo2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 170 ; - } -#Emissions of bromine family -'e_bry' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 171 ; - } -#Emissions of c10h18o3 -'e_terpooh' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 172 ; - } -#Emissions of nitrogen atom -'e_n' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 173 ; - } -#Emissions of chlorine monoxide -'e_clo' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 174 ; - } -#Emissions of chlorine atom -'e_cl_c' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 175 ; - } -#Emissions of bromine monoxide -'e_bro' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 176 ; - } -#Emissions of hydrogen atom -'e_h_c' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 177 ; - } -#Emissions of methyl group -'e_ch3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 178 ; - } -#Emissions of aromatic-ho from toluene and less reactive aromatics -'e_addt' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 179 ; - } -#Emissions of aromatic-ho from xylene and more reactive aromatics -'e_addx' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 180 ; - } -#Emissions of ammonium nitrate -'e_nh4no3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 181 ; - } -#Emissions of aromatic-ho from csl -'e_addc' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 182 ; - } -#Emissions of secondary organic aerosol type 1 -'e_soa1' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 183 ; - } -#Emissions of secondary organic aerosol type 2a -'e_soa2a' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 184 ; - } -#Emissions of secondary organic aerosol type 2b -'e_soa2b' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 185 ; - } -#Emissions of condensable gas type 1 -'e_sog1' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 186 ; - } -#Emissions of condensable gas type 2a -'e_sog2a' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 187 ; - } -#Emissions of condensable gas type 2b -'e_sog2b' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 188 ; - } -#Emissions of sulfur trioxide -'e_so3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 189 ; - } -#Emissions of carbonyl sulfide -'e_ocs_c' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 190 ; - } -#Emissions of bromine atom -'e_br' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 191 ; - } -#Emissions of bromine -'e_br2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 192 ; - } -#Emissions of bromine monochloride -'e_brcl' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 193 ; - } -#Emissions of bromine nitrate -'e_brono2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 194 ; - } -#Emissions of dibromomethane -'e_ch2br2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 195 ; - } -#Emissions of methoxy radical -'e_ch3o' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 196 ; - } -#Emissions of tribromomethane -'e_chbr3' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 197 ; - } -#Emissions of asymmetric chlorine dioxide radical -'e_cloo' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 198 ; - } -#Emissions of hydrogen -'e_h2' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 199 ; - } -#Emissions of hydrogen chloride -'e_hcl' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 200 ; - } -#Emissions of formyl radical -'e_hco' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 201 ; - } -#Emissions of hydrogen fluoride -'e_hf' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 202 ; - } -#Emissions of oxygen atom -'e_o' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 203 ; - } -#Emissions of excited oxygen atom -'e_o1d' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 204 ; - } -#Emissions of ground state oxygen atom -'e_o3p' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 205 ; - } -#Emissions of stratospheric aerosol -'e_strataer' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 206 ; - } -#Wildfire flux of paraffins -'parfire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 207 ; - } -#Wildfire flux of olefines -'olefire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 208 ; - } -#Wildfire flux of aldehydes -'ald2fire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 209 ; - } -#Wildfire flux of ketones -'ketfire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 210 ; - } -#Wildfire flux of f a-pinene cyclic terpenes -'apifire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 211 ; - } -#Wildfire flux of toluene less reactive aromatics -'tolfire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 212 ; - } -#Wildfire flux of xylene more reactive aromatics -'xylfire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 213 ; - } -#Wildfire flux of d-limonene cyclic diene -'limfire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 214 ; - } -#Wildfire flux of terminal alkenes -'oltfire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 215 ; - } -#Wildfire flux of alkanes low oh rate -'hc3fire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 216 ; - } -#Wildfire flux of alkanes med oh rate -'hc5fire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 217 ; - } -#Wildfire flux of alkanes high oh rate -'hc8fire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 218 ; - } -#Wildfire flux of hydrogen cyanide -'hcnfire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 219 ; - } -#Wildfire flux of acetonitrile -'ch3cnfire' = { - discipline = 192 ; - parameterCategory = 219 ; - parameterNumber = 220 ; - } -#Atmosphere emission mass flux of Anthropogenic volatile organic compounds -'e_VOCA' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 65532 ; - is_chemical = 1 ; - } -#Atmosphere emission mass flux of Biomass burning volatile organic compounds -'e_VOCBB' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 3 ; - constituentType = 65531 ; - is_chemical = 1 ; - } -#Ozone deposition velocity -'dv_go3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 1 ; - } -#Nitrogen oxides deposition velocity -'dv_nox' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 2 ; - } -#Hydrogen peroxide deposition velocity -'dv_h2o2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 3 ; - } -#Methane deposition velocity -'dv_ch4' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 4 ; - } -#Carbon monoxide deposition velocity -'dv_co' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 5 ; - } -#Nitric acid deposition velocity -'dv_hno3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 6 ; - } -#Methyl peroxide deposition velocity -'dv_ch3ooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 7 ; - } -#Formaldehyde deposition velocity -'dv_hcho' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 8 ; - } -#Paraffins deposition velocity -'dv_par' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 9 ; - } -#Ethene deposition velocity -'dv_c2h4' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 10 ; - } -#Olefins deposition velocity -'dv_ole' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 11 ; - } -#Aldehydes deposition velocity -'dv_ald2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 12 ; - } -#Peroxyacetyl nitrate deposition velocity -'dv_pan' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 13 ; - } -#Peroxides deposition velocity -'dv_rooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 14 ; - } -#Organic nitrates deposition velocity -'dv_onit' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 15 ; - } -#Isoprene deposition velocity -'dv_c5h8' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 16 ; - } -#Sulfur dioxide deposition velocity -'dv_so2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 17 ; - } -#Dimethyl sulfide deposition velocity -'dv_dms' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 18 ; - } -#Ammonia deposition velocity -'dv_nh3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 19 ; - } -#Sulfate deposition velocity -'dv_so4' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 20 ; - } -#Ammonium deposition velocity -'dv_nh4' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 21 ; - } -#Methane sulfonic acid deposition velocity -'dv_msa' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 22 ; - } -#Methyl glyoxal deposition velocity -'dv_ch3cocho' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 23 ; - } -#Stratospheric ozone deposition velocity -'dv_o3s' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 24 ; - } -#Radon deposition velocity -'dv_ra' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 25 ; - } -#Lead deposition velocity -'dv_pb' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 26 ; - } -#Nitrogen monoxide deposition velocity -'dv_no' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 27 ; - } -#Hydroperoxy radical deposition velocity -'dv_ho2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 28 ; - } -#Methylperoxy radical deposition velocity -'dv_ch3o2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 29 ; - } -#Hydroxyl radical deposition velocity -'dv_oh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 30 ; - } -#Nitrogen dioxide deposition velocity -'dv_no2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 31 ; - } -#Nitrate radical deposition velocity -'dv_no3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 32 ; - } -#Dinitrogen pentoxide deposition velocity -'dv_n2o5' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 33 ; - } -#Pernitric acid deposition velocity -'dv_ho2no2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 34 ; - } -#Peroxy acetyl radical deposition velocity -'dv_c2o3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 35 ; - } -#Organic ethers deposition velocity -'dv_ror' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 36 ; - } -#PAR budget corrector deposition velocity -'dv_rxpar' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 37 ; - } -#NO to NO2 operator deposition velocity -'dv_xo2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 38 ; - } -#NO to alkyl nitrate operator deposition velocity -'dv_xo2n' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 39 ; - } -#Amine deposition velocity -'dv_nh2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 40 ; - } -#Polar stratospheric cloud deposition velocity -'dv_psc' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 41 ; - } -#Methanol deposition velocity -'dv_ch3oh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 42 ; - } -#Formic acid deposition velocity -'dv_hcooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 43 ; - } -#Methacrylic acid deposition velocity -'dv_mcooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 44 ; - } -#Ethane deposition velocity -'dv_c2h6' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 45 ; - } -#Ethanol deposition velocity -'dv_c2h5oh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 46 ; - } -#Propane deposition velocity -'dv_c3h8' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 47 ; - } -#Propene deposition velocity -'dv_c3h6' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 48 ; - } -#Terpenes deposition velocity -'dv_c10h16' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 49 ; - } -#Methacrolein MVK deposition velocity -'dv_ispd' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 50 ; - } -#Nitrate deposition velocity -'dv_no3_a' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 51 ; - } -#Acetone deposition velocity -'dv_ch3coch3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 52 ; - } -#Acetone product deposition velocity -'dv_aco2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 53 ; - } -#IC3H7O2 deposition velocity -'dv_ic3h7o2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 54 ; - } -#HYPROPO2 deposition velocity -'dv_hypropo2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 55 ; - } -#Nitrogen oxides Transp deposition velocity -'dv_noxa' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 56 ; - } -#Dry deposition velocity of carbon dioxide (chemistry) -'dv_co2_c' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 57 ; - } -#Dry deposition velocity of nitrous oxide (chemistry) -'dv_n2o_c' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 58 ; - } -#Dry deposition velocity of water vapour (chemistry) -'dv_h2o' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 59 ; - } -#Dry deposition velocity of oxygen -'dv_o2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 60 ; - } -#Dry deposition velocity of singlet oxygen -'dv_o2_1s' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 61 ; - } -#Dry deposition velocity of singlet delta oxygen -'dv_o2_1d' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 62 ; - } -#Dry deposition velocity of chlorine dioxide -'dv_oclo' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 63 ; - } -#Dry deposition velocity of chlorine nitrate -'dv_clono2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 64 ; - } -#Dry deposition velocity of hypochlorous acid -'dv_hocl' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 65 ; - } -#Dry deposition velocity of chlorine -'dv_cl2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 66 ; - } -#Dry deposition velocity of nitryl chloride -'dv_clno2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 67 ; - } -#Dry deposition velocity of hydrogen bromide -'dv_hbr' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 68 ; - } -#Dry deposition velocity of dichlorine dioxide -'dv_cl2o2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 69 ; - } -#Dry deposition velocity of hypobromous acid -'dv_hobr' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 70 ; - } -#Dry deposition velocity of trichlorofluoromethane -'dv_cfc11' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 71 ; - } -#Dry deposition velocity of dichlorodifluoromethane -'dv_cfc12' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 72 ; - } -#Dry deposition velocity of trichlorotrifluoroethane -'dv_cfc113' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 73 ; - } -#Dry deposition velocity of dichlorotetrafluoroethane -'dv_cfc114' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 74 ; - } -#Dry deposition velocity of chloropentafluoroethane -'dv_cfc115' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 75 ; - } -#Dry deposition velocity of tetrachloromethane -'dv_ccl4' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 76 ; - } -#Dry deposition velocity of methyl chloroform -'dv_ch3ccl3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 77 ; - } -#Dry deposition velocity of methyl chloride -'dv_ch3cl' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 78 ; - } -#Dry deposition velocity of chlorodifluoromethane -'dv_hcfc22' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 79 ; - } -#Dry deposition velocity of methyl bromide -'dv_ch3br' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 80 ; - } -#Dry deposition velocity of dibromodifluoromethane -'dv_ha1202' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 81 ; - } -#Dry deposition velocity of bromochlorodifluoromethane -'dv_ha1211' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 82 ; - } -#Dry deposition velocity of trifluorobromomethane -'dv_ha1301' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 83 ; - } -#Dry deposition velocity of cbrf2cbrf2 -'dv_ha2402' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 84 ; - } -#Dry deposition velocity of sulfuric acid -'dv_h2so4' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 85 ; - } -#Dry deposition velocity of nitrous acid -'dv_hono' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 86 ; - } -#Dry deposition velocity of alkanes low oh rate -'dv_hc3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 87 ; - } -#Dry deposition velocity of alkanes med oh rate -'dv_hc5' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 88 ; - } -#Dry deposition velocity of alkanes high oh rate -'dv_hc8' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 89 ; - } -#Dry deposition velocity of terminal alkenes -'dv_olt' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 90 ; - } -#Dry deposition velocity of internal alkenes -'dv_oli' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 91 ; - } -#Dry deposition velocity of ethylperoxy radical -'dv_c2h5o2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 92 ; - } -#Dry deposition velocity of butadiene -'dv_dien' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 93 ; - } -#Dry deposition velocity of ethyl hydroperoxide -'dv_c2h5ooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 94 ; - } -#Dry deposition velocity of a-pinene cyclic terpenes -'dv_api' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 95 ; - } -#Dry deposition velocity of acetic acid -'dv_ch3cooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 96 ; - } -#Dry deposition velocity of d-limonene cyclic diene -'dv_lim' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 97 ; - } -#Dry deposition velocity of acetaldehyde -'dv_ch3cho' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 98 ; - } -#Dry deposition velocity of toluene and less reactive aromatics -'dv_tol' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 99 ; - } -#Dry deposition velocity of xylene and more reactive aromatics -'dv_xyl' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 100 ; - } -#Dry deposition velocity of glycolaldehyde -'dv_glyald' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 101 ; - } -#Dry deposition velocity of cresol -'dv_cresol' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 102 ; - } -#Dry deposition velocity of acetaldehyde and higher -'dv_ald' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 103 ; - } -#Dry deposition velocity of peracetic acid -'dv_ch3coooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 104 ; - } -#Dry deposition velocity of ketones -'dv_ket' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 105 ; - } -#Dry deposition velocity of hoch2ch2o2 -'dv_eo2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 106 ; - } -#Dry deposition velocity of glyoxal -'dv_glyoxal' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 107 ; - } -#Dry deposition velocity of hoch2ch2o -'dv_eo' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 108 ; - } -#Dry deposition velocity of unsaturated dicarbonyls -'dv_dcb' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 109 ; - } -#Dry deposition velocity of methacrolein -'dv_macr' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 110 ; - } -#Dry deposition velocity of unsaturated hydroxy dicarbonyl -'dv_udd' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 111 ; - } -#Dry deposition velocity of isopropyldioxidanyl -'dv_c3h7o2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 112 ; - } -#Dry deposition velocity of hydroxy ketone -'dv_hket' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 113 ; - } -#Dry deposition velocity of isopropyl hydroperoxide -'dv_c3h7ooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 114 ; - } -#Dry deposition velocity of c3h6oho2 -'dv_po2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 115 ; - } -#Dry deposition velocity of c3h6ohooh -'dv_pooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 116 ; - } -#Dry deposition velocity of higher organic peroxides -'dv_op2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 117 ; - } -#Dry deposition velocity of hydroxyacetone -'dv_hyac' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 118 ; - } -#Dry deposition velocity of peroxyacetic acid -'dv_paa' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 119 ; - } -#Dry deposition velocity of ch3coch2o2 -'dv_ro2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 120 ; - } -#Dry deposition velocity of peroxy radical from c2h6 -'dv_ethp' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 121 ; - } -#Dry deposition velocity of peroxy radical from hc3 -'dv_hc3p' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 122 ; - } -#Dry deposition velocity of peroxy radical from hc5 -'dv_hc5p' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 123 ; - } -#Dry deposition velocity of lumped alkenes -'dv_bigene' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 124 ; - } -#Dry deposition velocity of peroxy radical from hc8 -'dv_hc8p' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 125 ; - } -#Dry deposition velocity of lumped alkanes -'dv_bigalk' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 126 ; - } -#Dry deposition velocity of peroxy radical from c2h4 -'dv_etep' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 127 ; - } -#Dry deposition velocity of c4h8o -'dv_mek' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 128 ; - } -#Dry deposition velocity of peroxy radical from terminal alkenes -'dv_oltp' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 129 ; - } -#Dry deposition velocity of c4h9o3 -'dv_eneo2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 130 ; - } -#Dry deposition velocity of peroxy radical from internal alkenes -'dv_olip' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 131 ; - } -#Dry deposition velocity of ch3coch(oo)ch3 -'dv_meko2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 132 ; - } -#Dry deposition velocity of peroxy radical from c5h8 -'dv_isopo2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 133 ; - } -#Dry deposition velocity of ch3coch(ooh)ch3 -'dv_mekooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 134 ; - } -#Dry deposition velocity of peroxy radical from a-pinene cyclic terpenes -'dv_apip' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 135 ; - } -#Dry deposition velocity of ch2=c(ch3)co3 -'dv_mco3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 136 ; - } -#Dry deposition velocity of peroxy radical from d-limonene cyclic diene -'dv_limp' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 137 ; - } -#Dry deposition velocity of methylvinylketone -'dv_mvk' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 138 ; - } -#Dry deposition velocity of phenoxy radical -'dv_pho' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 139 ; - } -#Dry deposition velocity of peroxy radical from toluene and less reactive aromatics -'dv_tolp' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 140 ; - } -#Dry deposition velocity of ch3c(o)ch(oo)ch2oh -'dv_macro2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 141 ; - } -#Dry deposition velocity of peroxy radical from xylene and more reactive aromatics -'dv_xylp' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 142 ; - } -#Dry deposition velocity of h3c(o)ch(ooh)ch2oh -'dv_macrooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 143 ; - } -#Dry deposition velocity of peroxy radical from cresol -'dv_cslp' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 144 ; - } -#Dry deposition velocity of unsaturated pans -'dv_mpan' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 145 ; - } -#Dry deposition velocity of unsaturated acyl peroxy radical -'dv_tco3_c' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 146 ; - } -#Dry deposition velocity of peroxy radical from ketones -'dv_ketp' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 147 ; - } -#Dry deposition velocity of c5h11o2 -'dv_alko2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 148 ; - } -#Dry deposition velocity of no3-alkenes adduct reacting to form carbonitrates -'dv_olnn' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 149 ; - } -#Dry deposition velocity of c5h11ooh -'dv_alkooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 150 ; - } -#Dry deposition velocity of no3-alkenes adduct reacting via decomposition -'dv_olnd' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 151 ; - } -#Dry deposition velocity of hoch2c(ch3)=chcho -'dv_bigald' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 152 ; - } -#Dry deposition velocity of c5h6o2 -'dv_hydrald' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 153 ; - } -#Dry deposition velocity of trop sulfuric acid -'dv_sulf' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 154 ; - } -#Dry deposition velocity of oxides -'dv_ox' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 155 ; - } -#Dry deposition velocity of ch2chc(ch3)(oo)ch2ono2 -'dv_isopno3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 156 ; - } -#Dry deposition velocity of c3 organic nitrate -'dv_onitr' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 157 ; - } -#Dry deposition velocity of chlorine oxides -'dv_clox' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 158 ; - } -#Dry deposition velocity of bromine oxides -'dv_brox' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 159 ; - } -#Dry deposition velocity of hoch2c(ooh)(ch3)chchoh -'dv_xooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 160 ; - } -#Dry deposition velocity of hoch2c(ooh)(ch3)ch=ch2 -'dv_isopooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 161 ; - } -#Dry deposition velocity of lumped aromatics -'dv_toluene' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 162 ; - } -#Dry deposition velocity of dimethyl sulfoxyde -'dv_dmso' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 163 ; - } -#Dry deposition velocity of c7h9o5 -'dv_tolo2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 164 ; - } -#Dry deposition velocity of c7h10o5 -'dv_tolooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 165 ; - } -#Dry deposition velocity of hydrogensulfide -'dv_h2s' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 166 ; - } -#Dry deposition velocity of c7h10o6 -'dv_xoh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 167 ; - } -#Dry deposition velocity of all nitrogen oxides -'dv_noy' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 168 ; - } -#Dry deposition velocity of chlorine family -'dv_cly' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 169 ; - } -#Dry deposition velocity of c10h16(oh)(oo) -'dv_terpo2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 170 ; - } -#Dry deposition velocity of bromine family -'dv_bry' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 171 ; - } -#Dry deposition velocity of c10h18o3 -'dv_terpooh' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 172 ; - } -#Dry deposition velocity of nitrogen atom -'dv_n' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 173 ; - } -#Dry deposition velocity of chlorine monoxide -'dv_clo' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 174 ; - } -#Dry deposition velocity of chlorine atom -'dv_cl_c' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 175 ; - } -#Dry deposition velocity of bromine monoxide -'dv_bro' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 176 ; - } -#Dry deposition velocity of hydrogen atom -'dv_h_c' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 177 ; - } -#Dry deposition velocity of methyl group -'dv_ch3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 178 ; - } -#Dry deposition velocity of aromatic-ho from toluene and less reactive aromatics -'dv_addt' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 179 ; - } -#Dry deposition velocity of aromatic-ho from xylene and more reactive aromatics -'dv_addx' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 180 ; - } -#Dry deposition velocity of ammonium nitrate -'dv_nh4no3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 181 ; - } -#Dry deposition velocity of aromatic-ho from csl -'dv_addc' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 182 ; - } -#Dry deposition velocity of secondary organic aerosol type 1 -'dv_soa1' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 183 ; - } -#Dry deposition velocity of secondary organic aerosol type 2a -'dv_soa2a' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 184 ; - } -#Dry deposition velocity of secondary organic aerosol type 2b -'dv_soa2b' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 185 ; - } -#Dry deposition velocity of condensable gas type 1 -'dv_sog1' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 186 ; - } -#Dry deposition velocity of condensable gas type 2a -'dv_sog2a' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 187 ; - } -#Dry deposition velocity of condensable gas type 2b -'dv_sog2b' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 188 ; - } -#Dry deposition velocity of sulfur trioxide -'dv_so3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 189 ; - } -#Dry deposition velocity of carbonyl sulfide -'dv_ocs_c' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 190 ; - } -#Dry deposition velocity of bromine atom -'dv_br' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 191 ; - } -#Dry deposition velocity of bromine -'dv_br2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 192 ; - } -#Dry deposition velocity of bromine monochloride -'dv_brcl' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 193 ; - } -#Dry deposition velocity of bromine nitrate -'dv_brono2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 194 ; - } -#Dry deposition velocity of dibromomethane -'dv_ch2br2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 195 ; - } -#Dry deposition velocity of methoxy radical -'dv_ch3o' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 196 ; - } -#Dry deposition velocity of tribromomethane -'dv_chbr3' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 197 ; - } -#Dry deposition velocity of asymmetric chlorine dioxide radical -'dv_cloo' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 198 ; - } -#Dry deposition velocity of hydrogen -'dv_h2' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 199 ; - } -#Dry deposition velocity of hydrogen chloride -'dv_hcl' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 200 ; - } -#Dry deposition velocity of formyl radical -'dv_hco' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 201 ; - } -#Dry deposition velocity of hydrogen fluoride -'dv_hf' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 202 ; - } -#Dry deposition velocity of oxygen atom -'dv_o' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 203 ; - } -#Dry deposition velocity of excited oxygen atom -'dv_o1d' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 204 ; - } -#Dry deposition velocity of ground state oxygen atom -'dv_o3p' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 205 ; - } -#Dry deposition velocity of stratospheric aerosol -'dv_strataer' = { - discipline = 192 ; - parameterCategory = 221 ; - parameterNumber = 206 ; - } -#Dry deposition velocity of Anthropogenic volatile organic compounds -'dv_VOCA' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 65532 ; - is_chemical = 1 ; - } -#Dry deposition velocity of Biomass burning volatile organic compounds -'dv_VOCBB' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 15 ; - constituentType = 65531 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Ozone (stratospheric) -'acc_dry_depm_O3S' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 65524 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Nitrate -'acc_dry_depm_NO3_A' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 65525 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Toluene and less reactive aromatics -'acc_dry_depm_TOL' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 65529 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated dry deposition mass flux of Xylene and more reactive aromatics -'acc_dry_depm_XYL' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 6 ; - constituentType = 65530 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Nitrate -'acc_wet_depm_NO3_A' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 65525 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Condensable gas type 1 -'acc_wet_depm_SOG1' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 65526 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Condensable gas type 2a -'acc_wet_depm_SOG2A' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 65527 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Time-integrated wet deposition mass flux of Condensable gas type 2b -'acc_wet_depm_SOG2B' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 7 ; - constituentType = 65528 ; - typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; - } -#Horizontal visibility -'hvis' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 25 ; - } -#Maximum temperature at 2 metres in the last 3 hours -'mx2t3' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 2 ; - lengthOfTimeRange = 3 ; - } -#Minimum temperature at 2 metres in the last 3 hours -'mn2t3' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 0 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 3 ; - lengthOfTimeRange = 3 ; - } -#Soil wetness index in layer 1 -'swi1' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 40 ; - } -#Soil wetness index in layer 2 -'swi2' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 41 ; - } -#Soil wetness index in layer 3 -'swi3' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 42 ; - } -#Soil wetness index in layer 4 -'swi4' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 43 ; - } -#GPP coefficient from Biogenic Flux Adjustment System -'gppbfas' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 198 ; - } -#Rec coefficient from Biogenic Flux Adjustment System -'recbfas' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 199 ; - } -#Canopy cover fraction -'ccf' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 91 ; - } -#Soil texture fraction -'stf' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 92 ; - } -#Volumetric soil moisture -'swv' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 93 ; - } -#Evaporation from the top of canopy -'evatc' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 100 ; - } -#Evaporation from bare soil -'evabs' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 101 ; - } -#Evaporation from open water surfaces excluding oceans -'evaow' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 102 ; - } -#Evaporation from vegetation transpiration -'evavt' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 103 ; - } -#Solar induced Chlorophyll fluorescence at 740nm -'sif740' = { - localTablesVersion = 1 ; - discipline = 4 ; - parameterCategory = 8 ; - parameterNumber = 254 ; - scaleFactorOfFirstWavelength = 9 ; - scaledValueOfFirstWavelength = 740 ; - scaledValueOfSecondWavelength = missing() ; - typeOfWavelengthInterval = 11 ; - scaleFactorOfSecondWavelength = missing() ; - is_aerosol_optical = 1 ; - } -#Solar induced Chlorophyll fluorescence at 755nm -'sif755' = { - localTablesVersion = 1 ; - discipline = 4 ; - parameterCategory = 8 ; - parameterNumber = 254 ; - scaleFactorOfFirstWavelength = 9 ; - scaledValueOfFirstWavelength = 755 ; - scaledValueOfSecondWavelength = missing() ; - typeOfWavelengthInterval = 11 ; - scaleFactorOfSecondWavelength = missing() ; - is_aerosol_optical = 1 ; - } -#Solar induced Chlorophyll fluorescence at 771nm -'sif771' = { - localTablesVersion = 1 ; - discipline = 4 ; - parameterCategory = 8 ; - parameterNumber = 254 ; - scaleFactorOfFirstWavelength = 9 ; - scaledValueOfFirstWavelength = 771 ; - scaledValueOfSecondWavelength = missing() ; - typeOfWavelengthInterval = 11 ; - scaleFactorOfSecondWavelength = missing() ; - is_aerosol_optical = 1 ; - } -#Solar induced Chlorophyll fluorescence at 757nm -'sif757' = { - localTablesVersion = 1 ; - discipline = 4 ; - parameterCategory = 8 ; - parameterNumber = 254 ; - scaleFactorOfFirstWavelength = 9 ; - scaledValueOfFirstWavelength = 757 ; - scaledValueOfSecondWavelength = missing() ; - typeOfWavelengthInterval = 11 ; - scaleFactorOfSecondWavelength = missing() ; - is_aerosol_optical = 1 ; - } -#Accumulated freezing rain -'fzra' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 194 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Surface short wave-effective total cloudiness -'tccsw' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 248 ; - } -#Irrigation fraction -'irrfr' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 250 ; - } -#Potential evaporation -'pev' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 200 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Irrigation -'irr' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 252 ; - } -#Surface long wave-effective total cloudiness -'tcclw' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 255 ; - } -#Time integral of snow evaporation flux -'tisef' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 192 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-mean snow depth -'avg_sd_m' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 254 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean logarithm of surface pressure -'avg_lnsp' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 25 ; - typeOfFirstFixedSurface = 105 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean low cloud cover -'avg_lcc_frac' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 193 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean medium cloud cover -'avg_mcc_frac' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 194 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean high cloud cover -'avg_hcc_frac' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 195 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean forecast albedo -'avg_fal_frac' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 193 ; - typeOfStatisticalProcessing = 0 ; - } -#Covariance between 2-metre temperature and volumetric soil water layer 1 -'covar_t2m_swvl1' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 192 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre relative humidity and volumetric soil water layer 1 -'covar_rh2m_swvl1' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 193 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between surface soil moisture and volumetric soil water layer 1 -'covar_ssm_swvl1' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 194 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre temperature and volumetric soil water layer 2 -'covar_t2m_swvl2' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 195 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre relative humidity and volumetric soil water layer 2 -'covar_rh2m_swvl2' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 196 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between surface soil moisture and volumetric soil water layer 2 -'covar_ssm_swvl2' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 197 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre temperature and volumetric soil water layer 3 -'covar_t2m_swvl3' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 198 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre relative humidity and volumetric soil water layer 3 -'covar_rh2m_swvl3' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 199 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between surface soil moisture and volumetric soil water layer 3 -'covar_ssm_swvl3' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 200 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre temperature and soil temperature layer 1 -'covar_t2m_stl1' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 201 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre relative humidity and soil temperature layer 1 -'covar_rh2m_stl1' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 202 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre temperature and soil temperature layer 2 -'covar_t2m_stl2' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 203 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre relative humidity and soil temperature layer 2 -'covar_rh2m_stl2' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 204 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre temperature and soil temperature layer 3 -'covar_t2m_stl3' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 205 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre relative humidity and soil temperature layer 3 -'covar_rh2m_stl3' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 206 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre temperature and temperature of snow layer 1 -'covar_t2m_tsn1' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 207 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre relative humidity and temperature of snow layer 1 -'covar_rh2m_tsn1' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 208 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre temperature and temperature of snow layer 2 -'covar_t2m_tsn2' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 209 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre relative humidity and temperature of snow layer 2 -'covar_rh2m_tsn2' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 210 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre temperature and temperature of snow layer 3 -'covar_t2m_tsn3' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 211 ; - typeOfFirstFixedSurface = 254 ; - } -#Covariance between 2-metre relative humidity and temperature of snow layer 3 -'covar_rh2m_tsn3' = { - localTablesVersion = 1 ; - discipline = 254 ; - parameterCategory = 254 ; - parameterNumber = 212 ; - typeOfFirstFixedSurface = 254 ; - } -#Surface roughness length for heat -'srlh' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 200 ; - } -#Snow thickness over sea ice -'sisnthick' = { - localTablesVersion = 1 ; - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 192 ; - typeOfFirstFixedSurface = 173 ; - typeOfSecondFixedSurface = 175 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Sea ice salinity -'icesalt' = { - localTablesVersion = 1 ; - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 193 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - } -#Time-mean snow thickness over sea ice -'avg_sisnthick' = { - localTablesVersion = 1 ; - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 192 ; - typeOfFirstFixedSurface = 173 ; - typeOfSecondFixedSurface = 175 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean Sea ice salinity -'avg_icesalt' = { - localTablesVersion = 1 ; - discipline = 10 ; - parameterCategory = 2 ; - parameterNumber = 193 ; - typeOfFirstFixedSurface = 174 ; - typeOfSecondFixedSurface = 176 ; - scaledValueOfFirstFixedSurface = missing() ; - scaleFactorOfFirstFixedSurface = missing() ; - scaledValueOfSecondFixedSurface = missing() ; - scaleFactorOfSecondFixedSurface = missing() ; - typeOfStatisticalProcessing = 0 ; - } -#Volume-mean total column mixing ratio -'vm_tc_vol_mixrat' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 195 ; - } -#Emission mass flux from vegetation -'emi_mflx_veg' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 192 ; - } -#Emission mass flux from biomass burning -'emi_mflx_biomburn' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 193 ; - } -#Emission mass flux from settlements -'emi_mflx_settl' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 194 ; - } -#Emission mass flux from soil -'emi_mflx_soil' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 195 ; - } -#Emission mass flux from wild animals -'emi_mflx_wildanim' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 196 ; - } -#Aerosol negative fixer mass flux -'aer_negfix_mflx' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 193 ; - } -#Aerosol sink/loss mass flux -'aer_sink_mflx' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 194 ; - } -#Aerosol source/gain mass flux -'aer_src_mflx' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 192 ; - } -#Emission mass flux from commercial buildings heating -'emi_mflx_cbh' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 197 ; - } -#Emission mass flux from residential heating -'emi_mflx_rh' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 198 ; - } -#Emission mass flux from oil refineries and transformation industry -'emi_mflx_oti' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 199 ; - } -#Emission mass flux from gas production -'emi_mflx_gp' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 20 ; - parameterNumber = 77 ; - sourceSinkChemicalPhysicalProcess = 200 ; - } -#Stream function gradient -'strfgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 1 ; - } -#Velocity potential gradient -'vpotgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 2 ; - } -#Potential temperature gradient -'ptgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 3 ; - } -#Equivalent potential temperature gradient -'eqptgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 4 ; - } -#Saturated equivalent potential temperature gradient -'septgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 5 ; - } -#U component of divergent wind gradient -'udvwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 11 ; - } -#V component of divergent wind gradient -'vdvwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 12 ; - } -#U component of rotational wind gradient -'urtwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 13 ; - } -#V component of rotational wind gradient -'vrtwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 14 ; - } -#Unbalanced component of temperature gradient -'uctpgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 21 ; - } -#Unbalanced component of logarithm of surface pressure gradient -'uclngrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 22 ; - } -#Unbalanced component of divergence gradient -'ucdvgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 23 ; - } -#Reserved for future unbalanced components -'p24.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 24 ; - } -#Reserved for future unbalanced components -'p25.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 25 ; - } -#Lake cover gradient -'clgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 26 ; - } -#Low vegetation cover gradient -'cvlgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 27 ; - } -#High vegetation cover gradient -'cvhgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 28 ; - } -#Type of low vegetation gradient -'tvlgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 29 ; - } -#Type of high vegetation gradient -'tvhgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 30 ; - } -#Sea-ice cover gradient -'sicgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 31 ; - } -#Snow albedo gradient -'asngrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 32 ; - } -#Snow density gradient -'rsngrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 33 ; - } -#Sea surface temperature gradient -'sstkgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 34 ; - } -#Ice surface temperature layer 1 gradient -'istl1grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 35 ; - } -#Ice surface temperature layer 2 gradient -'istl2grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 36 ; - } -#Ice surface temperature layer 3 gradient -'istl3grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 37 ; - } -#Ice surface temperature layer 4 gradient -'istl4grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 38 ; - } -#Volumetric soil water layer 1 gradient -'swvl1grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 39 ; - } -#Volumetric soil water layer 2 gradient -'swvl2grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 40 ; - } -#Volumetric soil water layer 3 gradient -'swvl3grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 41 ; - } -#Volumetric soil water layer 4 gradient -'swvl4grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 42 ; - } -#Soil type gradient -'sltgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 43 ; - } -#Snow evaporation gradient -'esgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 44 ; - } -#Snowmelt gradient -'smltgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 45 ; - } -#Solar duration gradient -'sdurgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 46 ; - } -#Direct solar radiation gradient -'dsrpgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 47 ; - } -#Magnitude of turbulent surface stress gradient -'magssgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 48 ; - } -#10 metre wind gust gradient -'fggrd10' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 49 ; - } -#Large-scale precipitation fraction gradient -'lspfgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 50 ; - } -#Maximum 2 metre temperature gradient -'mx2t24grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 51 ; - } -#Minimum 2 metre temperature gradient -'mn2t24grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 52 ; - } -#Montgomery potential gradient -'montgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 53 ; - } -#Pressure gradient -'presgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 54 ; - } -#Downward UV radiation at the surface gradient -'uvbgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 57 ; - } -#Photosynthetically active radiation at the surface gradient -'pargrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 58 ; - } -#Convective available potential energy gradient -'capegrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 59 ; - } -#Potential vorticity gradient -'pvgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 60 ; - } -#Total precipitation from observations gradient -'tpogrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 61 ; - } -#Observation count gradient -'obctgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 62 ; - } -#Start time for skin temperature difference -'p63.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 63 ; - } -#Finish time for skin temperature difference -'p64.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 64 ; - } -#Skin temperature difference -'p65.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 65 ; - } -#Leaf area index, low vegetation -'p66.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 66 ; - } -#Leaf area index, high vegetation -'p67.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 67 ; - } -#Minimum stomatal resistance, low vegetation -'p68.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'p69.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 69 ; - } -#Biome cover, low vegetation -'p70.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 70 ; - } -#Biome cover, high vegetation -'p71.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 71 ; - } -#Total column liquid water -'p78.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 78 ; - } -#Total column ice water -'p79.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 79 ; - } -#Experimental product -'p80.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 80 ; - } -#Experimental product -'p81.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 81 ; - } -#Experimental product -'p82.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 82 ; - } -#Experimental product -'p83.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 83 ; - } -#Experimental product -'p84.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 84 ; - } -#Experimental product -'p85.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 85 ; - } -#Experimental product -'p86.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 86 ; - } -#Experimental product -'p87.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 87 ; - } -#Experimental product -'p88.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 88 ; - } -#Experimental product -'p89.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 89 ; - } -#Experimental product -'p90.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 90 ; - } -#Experimental product -'p91.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 91 ; - } -#Experimental product -'p92.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 92 ; - } -#Experimental product -'p93.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 93 ; - } -#Experimental product -'p94.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 94 ; - } -#Experimental product -'p95.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 95 ; - } -#Experimental product -'p96.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 96 ; - } -#Experimental product -'p97.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 97 ; - } -#Experimental product -'p98.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 98 ; - } -#Experimental product -'p99.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 99 ; - } -#Experimental product -'p100.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 100 ; - } -#Experimental product -'p101.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 101 ; - } -#Experimental product -'p102.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 102 ; - } -#Experimental product -'p103.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 103 ; - } -#Experimental product -'p104.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 104 ; - } -#Experimental product -'p105.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 105 ; - } -#Experimental product -'p106.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 106 ; - } -#Experimental product -'p107.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 107 ; - } -#Experimental product -'p108.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 108 ; - } -#Experimental product -'p109.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 109 ; - } -#Experimental product -'p110.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 110 ; - } -#Experimental product -'p111.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 111 ; - } -#Experimental product -'p112.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 112 ; - } -#Experimental product -'p113.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 113 ; - } -#Experimental product -'p114.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 114 ; - } -#Experimental product -'p115.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 115 ; - } -#Experimental product -'p116.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 116 ; - } -#Experimental product -'p117.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 117 ; - } -#Experimental product -'p118.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 118 ; - } -#Experimental product -'p119.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 119 ; - } -#Experimental product -'p120.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 120 ; - } -#Maximum temperature at 2 metres gradient -'mx2t6grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 121 ; - } -#Minimum temperature at 2 metres gradient -'mn2t6grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 122 ; - } -#10 metre wind gust in the last 6 hours gradient -'fg6grd10' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 123 ; - } -#Vertically integrated total energy -'p125.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 125 ; - } -#Generic parameter for sensitive area prediction -'p126.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 126 ; - } -#Atmospheric tide gradient -'atgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 127 ; - } -#Budget values gradient -'bvgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 128 ; - } -#Geopotential gradient -'zgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 129 ; - } -#Temperature gradient -'tgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 130 ; - } -#U component of wind gradient -'ugrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 131 ; - } -#V component of wind gradient -'vgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 132 ; - } -#Specific humidity gradient -'qgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 133 ; - } -#Surface pressure gradient -'spgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 134 ; - } -#vertical velocity (pressure) gradient -'wgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 135 ; - } -#Total column water gradient -'tcwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 136 ; - } -#Total column water vapour gradient -'tcwvgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 137 ; - } -#Vorticity (relative) gradient -'vogrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 138 ; - } -#Soil temperature level 1 gradient -'stl1grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 139 ; - } -#Soil wetness level 1 gradient -'swl1grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 140 ; - } -#Snow depth gradient -'sdgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 141 ; - } -#Stratiform precipitation (Large-scale precipitation) gradient -'lspgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 142 ; - } -#Convective precipitation gradient -'cpgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 143 ; - } -#Snowfall (convective + stratiform) gradient -'sfgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 144 ; - } -#Boundary layer dissipation gradient -'bldgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 145 ; - } -#Surface sensible heat flux gradient -'sshfgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 146 ; - } -#Surface latent heat flux gradient -'slhfgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 147 ; - } -#Charnock gradient -'chnkgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 148 ; - } -#Surface net radiation gradient -'snrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 149 ; - } -#Top net radiation gradient -'tnrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 150 ; - } -#Mean sea level pressure gradient -'mslgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 151 ; - } -#Logarithm of surface pressure gradient -'lnspgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 152 ; - } -#Short-wave heating rate gradient -'swhrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 153 ; - } -#Long-wave heating rate gradient -'lwhrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 154 ; - } -#Divergence gradient -'dgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 155 ; - } -#Height gradient -'ghgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 156 ; - } -#Relative humidity gradient -'rgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 157 ; - } -#Tendency of surface pressure gradient -'tspgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 158 ; - } -#Boundary layer height gradient -'blhgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 159 ; - } -#Standard deviation of orography gradient -'sdorgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 160 ; - } -#Anisotropy of sub-gridscale orography gradient -'isorgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 161 ; - } -#Angle of sub-gridscale orography gradient -'anorgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 162 ; - } -#Slope of sub-gridscale orography gradient -'slorgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 163 ; - } -#Total cloud cover gradient -'tccgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 164 ; - } -#10 metre U wind component gradient -'ugrd10' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 165 ; - } -#10 metre V wind component gradient -'vgrd10' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 166 ; - } -#2 metre temperature gradient -'grd2t' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 167 ; - } -#2 metre dewpoint temperature gradient -'grd2d' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 168 ; - } -#Surface solar radiation downwards gradient -'ssrdgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 169 ; - } -#Soil temperature level 2 gradient -'stl2grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 170 ; - } -#Soil wetness level 2 gradient -'swl2grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 171 ; - } -#Land-sea mask gradient -'lsmgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 172 ; - } -#Surface roughness gradient -'srgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 173 ; - } -#Albedo gradient -'algrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 174 ; - } -#Surface thermal radiation downwards gradient -'strdgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 175 ; - } -#Surface net solar radiation gradient -'ssrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 176 ; - } -#Surface net thermal radiation gradient -'strgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 177 ; - } -#Top net solar radiation gradient -'tsrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 178 ; - } -#Top net thermal radiation gradient -'ttrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 179 ; - } -#East-West surface stress gradient -'ewssgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 180 ; - } -#North-South surface stress gradient -'nsssgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 181 ; - } -#Evaporation gradient -'egrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 182 ; - } -#Soil temperature level 3 gradient -'stl3grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 183 ; - } -#Soil wetness level 3 gradient -'swl3grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 184 ; - } -#Convective cloud cover gradient -'cccgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 185 ; - } -#Low cloud cover gradient -'lccgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 186 ; - } -#Medium cloud cover gradient -'mccgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 187 ; - } -#High cloud cover gradient -'hccgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 188 ; - } -#Sunshine duration gradient -'sundgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 189 ; - } -#East-West component of sub-gridscale orographic variance gradient -'ewovgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 190 ; - } -#North-South component of sub-gridscale orographic variance gradient -'nsovgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 191 ; - } -#North-West/South-East component of sub-gridscale orographic variance gradient -'nwovgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 192 ; - } -#North-East/South-West component of sub-gridscale orographic variance gradient -'neovgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 193 ; - } -#Brightness temperature gradient -'btmpgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 194 ; - } -#Longitudinal component of gravity wave stress gradient -'lgwsgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 195 ; - } -#Meridional component of gravity wave stress gradient -'mgwsgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 196 ; - } -#Gravity wave dissipation gradient -'gwdgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 197 ; - } -#Skin reservoir content gradient -'srcgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 198 ; - } -#Vegetation fraction gradient -'veggrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 199 ; - } -#Variance of sub-gridscale orography gradient -'vsogrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 200 ; - } -#Maximum temperature at 2 metres since previous post-processing gradient -'mx2tgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 201 ; - } -#Minimum temperature at 2 metres since previous post-processing gradient -'mn2tgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 202 ; - } -#Ozone mass mixing ratio gradient -'o3grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 203 ; - } -#Precipitation analysis weights gradient -'pawgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 204 ; - } -#Runoff gradient -'rogrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 205 ; - } -#Total column ozone gradient -'tco3grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 206 ; - } -#10 metre wind speed gradient -'sigrd10' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 207 ; - } -#Top net solar radiation, clear sky gradient -'tsrcgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 208 ; - } -#Top net thermal radiation, clear sky gradient -'ttrcgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 209 ; - } -#Surface net solar radiation, clear sky gradient -'ssrcgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 210 ; - } -#Surface net thermal radiation, clear sky gradient -'strcgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 211 ; - } -#TOA incident solar radiation gradient -'tisrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 212 ; - } -#Diabatic heating by radiation gradient -'dhrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 214 ; - } -#Diabatic heating by vertical diffusion gradient -'dhvdgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 215 ; - } -#Diabatic heating by cumulus convection gradient -'dhccgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 216 ; - } -#Diabatic heating large-scale condensation gradient -'dhlcgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 217 ; - } -#Vertical diffusion of zonal wind gradient -'vdzwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 218 ; - } -#Vertical diffusion of meridional wind gradient -'vdmwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 219 ; - } -#East-West gravity wave drag tendency gradient -'ewgdgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 220 ; - } -#North-South gravity wave drag tendency gradient -'nsgdgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 221 ; - } -#Convective tendency of zonal wind gradient -'ctzwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 222 ; - } -#Convective tendency of meridional wind gradient -'ctmwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 223 ; - } -#Vertical diffusion of humidity gradient -'vdhgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 224 ; - } -#Humidity tendency by cumulus convection gradient -'htccgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 225 ; - } -#Humidity tendency by large-scale condensation gradient -'htlcgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 226 ; - } -#Change from removal of negative humidity gradient -'crnhgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 227 ; - } -#Total precipitation gradient -'tpgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 228 ; - } -#Instantaneous X surface stress gradient -'iewsgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 229 ; - } -#Instantaneous Y surface stress gradient -'inssgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 230 ; - } -#Instantaneous surface heat flux gradient -'ishfgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 231 ; - } -#Instantaneous moisture flux gradient -'iegrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 232 ; - } -#Apparent surface humidity gradient -'asqgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 233 ; - } -#Logarithm of surface roughness length for heat gradient -'lsrhgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 234 ; - } -#Skin temperature gradient -'sktgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 235 ; - } -#Soil temperature level 4 gradient -'stl4grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 236 ; - } -#Soil wetness level 4 gradient -'swl4grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 237 ; - } -#Temperature of snow layer gradient -'tsngrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 238 ; - } -#Convective snowfall gradient -'csfgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 239 ; - } -#Large scale snowfall gradient -'lsfgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 240 ; - } -#Accumulated cloud fraction tendency gradient -'acfgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 241 ; - } -#Accumulated liquid water tendency gradient -'alwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 242 ; - } -#Forecast albedo gradient -'falgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 243 ; - } -#Forecast surface roughness gradient -'fsrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 244 ; - } -#Forecast logarithm of surface roughness for heat gradient -'flsrgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 245 ; - } -#Specific cloud liquid water content gradient -'clwcgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 246 ; - } -#Specific cloud ice water content gradient -'ciwcgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 247 ; - } -#Cloud cover gradient -'ccgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 248 ; - } -#Accumulated ice water tendency gradient -'aiwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 249 ; - } -#Ice age gradient -'icegrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 250 ; - } -#Adiabatic tendency of temperature gradient -'attegrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 251 ; - } -#Adiabatic tendency of humidity gradient -'athegrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 252 ; - } -#Adiabatic tendency of zonal wind gradient -'atzegrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 253 ; - } -#Adiabatic tendency of meridional wind gradient -'atmwgrd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 254 ; - } -#Indicates a missing value -'p255.129' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 255 ; - } -#Top solar radiation upward -'tsru' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 208 ; - } -#Top thermal radiation upward -'ttru' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 209 ; - } -#Top solar radiation upward, clear sky -'tsuc' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 210 ; - } -#Top thermal radiation upward, clear sky -'ttuc' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 211 ; - } -#Cloud liquid water -'clw' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 212 ; - } -#Cloud fraction -'cf' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 213 ; - } -#Diabatic heating by radiation -'dhr' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 214 ; - } -#Diabatic heating by vertical diffusion -'dhvd' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 215 ; - } -#Diabatic heating by cumulus convection -'dhcc' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 216 ; - } -#Diabatic heating by large-scale condensation -'dhlc' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 217 ; - } -#Vertical diffusion of zonal wind -'vdzw' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 218 ; - } -#Vertical diffusion of meridional wind -'vdmw' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 219 ; - } -#East-West gravity wave drag -'ewgd' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 220 ; - } -#North-South gravity wave drag -'nsgd' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 221 ; - } -#Vertical diffusion of humidity -'vdh' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 224 ; - } -#Humidity tendency by cumulus convection -'htcc' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 225 ; - } -#Humidity tendency by large-scale condensation -'htlc' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 226 ; - } -#Adiabatic tendency of temperature -'att' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 228 ; - } -#Adiabatic tendency of humidity -'ath' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 229 ; - } -#Adiabatic tendency of zonal wind -'atzw' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 230 ; - } -#Adiabatic tendency of meridional wind -'atmwax' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 231 ; - } -#2m temperature anomaly of at least +2K -'t2ag2' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 1 ; - } -#2m temperature anomaly of at least +1K -'t2ag1' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 2 ; - } -#2m temperature anomaly of at least 0K -'t2ag0' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 3 ; - } -#2m temperature anomaly of at most -1K -'t2alm1' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 4 ; - } -#2m temperature anomaly of at most -2K -'t2alm2' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 5 ; - } -#Total precipitation anomaly of at least 20 mm -'tpag20' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 6 ; - } -#Total precipitation anomaly of at least 10 mm -'tpag10' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 7 ; - } -#Total precipitation anomaly of at least 0 mm -'tpag0' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 8 ; - } -#Surface temperature anomaly of at least 0K -'stag0' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 9 ; - } -#Mean sea level pressure anomaly of at least 0 Pa -'mslag0' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 10 ; - } -#Height of 0 degree isotherm probability -'h0dip' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 15 ; - } -#Height of snowfall limit probability -'hslp' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 16 ; - } -#Showalter index probability -'saip' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 17 ; - } -#Whiting index probability -'whip' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 18 ; - } -#Temperature anomaly less than -2 K -'talm2' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 20 ; - } -#Temperature anomaly of at least +2 K -'tag2' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 21 ; - } -#Temperature anomaly less than -8 K -'talm8' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 22 ; - } -#Temperature anomaly less than -4 K -'talm4' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 23 ; - } -#Temperature anomaly greater than +4 K -'tag4' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 24 ; - } -#Temperature anomaly greater than +8 K -'tag8' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 25 ; - } -#10 metre wind gust probability -'g10p' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 49 ; - } -#Convective available potential energy probability -'capep' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 59 ; - } -#Total precipitation less than 0.1 mm -'tpl01' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 64 ; - } -#Total precipitation rate less than 1 mm/day -'tprl1' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 65 ; - } -#Total precipitation rate of at least 3 mm/day -'tprg3' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 66 ; - } -#Total precipitation rate of at least 5 mm/day -'tprg5' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 67 ; - } -#10 metre Wind speed of at least 10 m/s -'sp10g10' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 68 ; - } -#10 metre Wind speed of at least 15 m/s -'sp10g15' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 69 ; - } -#10 metre wind gust of at least 25 m/s -'fg10g25' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 22 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 10 ; - scaleFactorOfFirstFixedSurface = 0 ; - productDefinitionTemplateNumber = 9 ; - typeOfStatisticalProcessing = 2 ; - scaledValueOfLowerLimit = 25 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#2 metre temperature less than 273.15 K -'t2l273' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 73 ; - } -#Significant wave height of at least 2 m -'swhg2' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 101 ; - productDefinitionTemplateNumber = 5 ; - scaledValueOfLowerLimit = 2 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Significant wave height of at least 4 m -'swhg4' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - typeOfFirstFixedSurface = 101 ; - productDefinitionTemplateNumber = 5 ; - scaledValueOfLowerLimit = 4 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Significant wave height of at least 6 m -'swhg6' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - productDefinitionTemplateNumber = 5 ; - typeOfFirstFixedSurface = 101 ; - scaledValueOfLowerLimit = 6 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Significant wave height of at least 8 m -'swhg8' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 3 ; - productDefinitionTemplateNumber = 5 ; - typeOfFirstFixedSurface = 101 ; - scaledValueOfLowerLimit = 8 ; - scaleFactorOfLowerLimit = 0 ; - probabilityType = 3 ; - } -#Mean wave period of at least 8 s -'mwpg8' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 78 ; - } -#Mean wave period of at least 10 s -'mwpg10' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 79 ; - } -#Mean wave period of at least 12 s -'mwpg12' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 80 ; - } -#Mean wave period of at least 15 s -'mwpg15' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 81 ; - } -#Geopotential probability -'zp' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 129 ; - } -#Temperature anomaly probability -'tap' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 130 ; - } -#Soil temperature level 1 probability -'stl1p' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 139 ; - } -#Snowfall (convective + stratiform) probability -'sfp' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 144 ; - } -#Mean sea level pressure probability -'mslpp' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 151 ; - } -#Total cloud cover probability -'tccp' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 164 ; - } -#10 metre speed probability -'sp10' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 165 ; - } -#2 metre temperature probability -'t2p' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 167 ; - } -#Maximum 2 metre temperature probability -'mx2tp' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 201 ; - } -#Minimum 2 metre temperature probability -'mn2tp' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 202 ; - } -#Total precipitation probability -'tpp' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 228 ; - } -#Significant wave height probability -'swhp' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 229 ; - } -#Mean wave period probability -'mwpp' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 232 ; - } -#Indicates a missing value -'p255.131' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 255 ; - } -#2m temperature probability less than -10 C -'t2plm10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 1 ; - } -#2m temperature probability less than -5 C -'t2plm5' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 2 ; - } -#2m temperature probability less than 0 C -'t2pl0' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 3 ; - } -#2m temperature probability less than 5 C -'t2pl5' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 4 ; - } -#2m temperature probability less than 10 C -'t2pl10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 5 ; - } -#2m temperature probability greater than 25 C -'t2pg25' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 6 ; - } -#2m temperature probability greater than 30 C -'t2pg30' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 7 ; - } -#2m temperature probability greater than 35 C -'t2pg35' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 8 ; - } -#2m temperature probability greater than 40 C -'t2pg40' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 9 ; - } -#2m temperature probability greater than 45 C -'t2pg45' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 10 ; - } -#Minimum 2 metre temperature probability less than -10 C -'mn2tplm10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 11 ; - } -#Minimum 2 metre temperature probability less than -5 C -'mn2tplm5' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 12 ; - } -#Minimum 2 metre temperature probability less than 0 C -'mn2tpl0' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 13 ; - } -#Minimum 2 metre temperature probability less than 5 C -'mn2tpl5' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 14 ; - } -#Minimum 2 metre temperature probability less than 10 C -'mn2tpl10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 15 ; - } -#Maximum 2 metre temperature probability greater than 25 C -'mx2tpg25' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 16 ; - } -#Maximum 2 metre temperature probability greater than 30 C -'mx2tpg30' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 17 ; - } -#Maximum 2 metre temperature probability greater than 35 C -'mx2tpg35' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 18 ; - } -#Maximum 2 metre temperature probability greater than 40 C -'mx2tpg40' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 19 ; - } -#Maximum 2 metre temperature probability greater than 45 C -'mx2tpg45' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 20 ; - } -#10 metre wind speed probability of at least 10 m/s -'sp10g10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 21 ; - } -#10 metre wind speed probability of at least 15 m/s -'sp10g15' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 22 ; - } -#10 metre wind speed probability of at least 20 m/s -'sp10g20' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 23 ; - } -#10 metre wind speed probability of at least 35 m/s -'sp10g35' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 24 ; - } -#10 metre wind speed probability of at least 50 m/s -'sp10g50' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 25 ; - } -#10 metre wind gust probability of at least 20 m/s -'gp10g20' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 26 ; - } -#10 metre wind gust probability of at least 35 m/s -'gp10g35' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 27 ; - } -#10 metre wind gust probability of at least 50 m/s -'gp10g50' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 28 ; - } -#10 metre wind gust probability of at least 75 m/s -'gp10g75' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 29 ; - } -#10 metre wind gust probability of at least 100 m/s -'gp10g100' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 30 ; - } -#Total precipitation probability of at least 1 mm -'tppg1' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 31 ; - } -#Total precipitation probability of at least 5 mm -'tppg5' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 32 ; - } -#Total precipitation probability of at least 10 mm -'tppg10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 33 ; - } -#Total precipitation probability of at least 20 mm -'tppg20' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 34 ; - } -#Total precipitation probability of at least 40 mm -'tppg40' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 35 ; - } -#Total precipitation probability of at least 60 mm -'tppg60' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 36 ; - } -#Total precipitation probability of at least 80 mm -'tppg80' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 37 ; - } -#Total precipitation probability of at least 100 mm -'tppg100' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 38 ; - } -#Total precipitation probability of at least 150 mm -'tppg150' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 39 ; - } -#Total precipitation probability of at least 200 mm -'tppg200' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 40 ; - } -#Total precipitation probability of at least 300 mm -'tppg300' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 41 ; - } -#Snowfall probability of at least 1 mm -'sfpg1' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 42 ; - } -#Snowfall probability of at least 5 mm -'sfpg5' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 43 ; - } -#Snowfall probability of at least 10 mm -'sfpg10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 44 ; - } -#Snowfall probability of at least 20 mm -'sfpg20' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 45 ; - } -#Snowfall probability of at least 40 mm -'sfpg40' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 46 ; - } -#Snowfall probability of at least 60 mm -'sfpg60' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 47 ; - } -#Snowfall probability of at least 80 mm -'sfpg80' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 48 ; - } -#Snowfall probability of at least 100 mm -'sfpg100' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 49 ; - } -#Snowfall probability of at least 150 mm -'sfpg150' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 50 ; - } -#Snowfall probability of at least 200 mm -'sfpg200' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 51 ; - } -#Snowfall probability of at least 300 mm -'sfpg300' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 52 ; - } -#Total Cloud Cover probability greater than 10% -'tccpg10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 53 ; - } -#Total Cloud Cover probability greater than 20% -'tccpg20' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 54 ; - } -#Total Cloud Cover probability greater than 30% -'tccpg30' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 55 ; - } -#Total Cloud Cover probability greater than 40% -'tccpg40' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 56 ; - } -#Total Cloud Cover probability greater than 50% -'tccpg50' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 57 ; - } -#Total Cloud Cover probability greater than 60% -'tccpg60' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 58 ; - } -#Total Cloud Cover probability greater than 70% -'tccpg70' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 59 ; - } -#Total Cloud Cover probability greater than 80% -'tccpg80' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 60 ; - } -#Total Cloud Cover probability greater than 90% -'tccpg90' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 61 ; - } -#Total Cloud Cover probability greater than 99% -'tccpg99' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 62 ; - } -#High Cloud Cover probability greater than 10% -'hccpg10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 63 ; - } -#High Cloud Cover probability greater than 20% -'hccpg20' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 64 ; - } -#High Cloud Cover probability greater than 30% -'hccpg30' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 65 ; - } -#High Cloud Cover probability greater than 40% -'hccpg40' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 66 ; - } -#High Cloud Cover probability greater than 50% -'hccpg50' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 67 ; - } -#High Cloud Cover probability greater than 60% -'hccpg60' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 68 ; - } -#High Cloud Cover probability greater than 70% -'hccpg70' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 69 ; - } -#High Cloud Cover probability greater than 80% -'hccpg80' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 70 ; - } -#High Cloud Cover probability greater than 90% -'hccpg90' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 71 ; - } -#High Cloud Cover probability greater than 99% -'hccpg99' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 72 ; - } -#Medium Cloud Cover probability greater than 10% -'mccpg10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 73 ; - } -#Medium Cloud Cover probability greater than 20% -'mccpg20' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 74 ; - } -#Medium Cloud Cover probability greater than 30% -'mccpg30' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 75 ; - } -#Medium Cloud Cover probability greater than 40% -'mccpg40' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 76 ; - } -#Medium Cloud Cover probability greater than 50% -'mccpg50' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 77 ; - } -#Medium Cloud Cover probability greater than 60% -'mccpg60' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 78 ; - } -#Medium Cloud Cover probability greater than 70% -'mccpg70' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 79 ; - } -#Medium Cloud Cover probability greater than 80% -'mccpg80' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 80 ; - } -#Medium Cloud Cover probability greater than 90% -'mccpg90' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 81 ; - } -#Medium Cloud Cover probability greater than 99% -'mccpg99' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 82 ; - } -#Low Cloud Cover probability greater than 10% -'lccpg10' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 83 ; - } -#Low Cloud Cover probability greater than 20% -'lccpg20' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 84 ; - } -#Low Cloud Cover probability greater than 30% -'lccpg30' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 85 ; - } -#Low Cloud Cover probability greater than 40% -'lccpg40' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 86 ; - } -#Low Cloud Cover probability greater than 50% -'lccpg50' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 87 ; - } -#Low Cloud Cover probability greater than 60% -'lccpg60' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 88 ; - } -#Low Cloud Cover probability greater than 70% -'lccpg70' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 89 ; - } -#Low Cloud Cover probability greater than 80% -'lccpg80' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 90 ; - } -#Low Cloud Cover probability greater than 90% -'lccpg90' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 91 ; - } -#Low Cloud Cover probability greater than 99% -'lccpg99' = { - discipline = 192 ; - parameterCategory = 133 ; - parameterNumber = 92 ; - } -#Maximum of significant wave height -'maxswh' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 200 ; - } -#2D wave spectra (multiple) -'d2sp' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 250 ; - } -#Indicates a missing value -'p255.140' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 255 ; - } -#Ocean potential temperature -'ocpt' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 129 ; - } -#Ocean salinity -'ocs' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 130 ; - } -#Ocean potential density -'ocpd' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 131 ; - } -#Ocean U wind component -'p133.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 133 ; - } -#Ocean V wind component -'p134.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 134 ; - } -#Ocean W wind component -'ocw' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 135 ; - } -#Richardson number -'rn' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 137 ; - } -#U*V product -'uv' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 139 ; - } -#U*T product -'ut' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 140 ; - } -#V*T product -'vt' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 141 ; - } -#U*U product -'uu' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 142 ; - } -#V*V product -'vv' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 143 ; - } -#UV - U~V~ -'p144.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 144 ; - } -#UT - U~T~ -'p145.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 145 ; - } -#VT - V~T~ -'p146.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 146 ; - } -#UU - U~U~ -'p147.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 147 ; - } -#VV - V~V~ -'p148.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 148 ; - } -#Sea level -'sl' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 152 ; - } -#Barotropic stream function -'p153.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 153 ; - } -#Mixed layer depth -'mld' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 154 ; - } -#Depth -'p155.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 155 ; - } -#U stress -'p168.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 168 ; - } -#V stress -'p169.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 169 ; - } -#Turbulent kinetic energy input -'p170.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 170 ; - } -#Net surface heat flux -'nsf' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 171 ; - } -#Surface solar radiation -'p172.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 172 ; - } -#P-E -'p173.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 173 ; - } -#Diagnosed sea surface temperature error -'p180.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 180 ; - } -#Heat flux correction -'p181.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 181 ; - } -#Observed sea surface temperature -'p182.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 182 ; - } -#Observed heat flux -'p183.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 183 ; - } -#Indicates a missing value -'p255.150' = { - discipline = 192 ; - parameterCategory = 150 ; - parameterNumber = 255 ; - } -#In situ Temperature -'p128.151' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 128 ; - } -#Modulus of strain rate tensor -'mst' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 134 ; - } -#Vertical viscosity -'vvs' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 135 ; - } -#Vertical diffusivity -'vdf' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 136 ; - } -#Bottom level Depth -'dep' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 137 ; - } -#Richardson number -'rn' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 139 ; - } -#UV product -'uv' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 140 ; - } -#UT product -'ut' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 141 ; - } -#VT product -'vt' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 142 ; - } -#UU product -'uu' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 143 ; - } -#VV product -'vv' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 144 ; - } -#Sea level previous timestep -'sl_1' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 146 ; - } -#Ocean barotropic stream function -'stfbarot' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 147 ; - } -#Mixed layer depth -'mld' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 148 ; - } -#Steric height -'sh' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 150 ; - } -#Curl of Wind Stress -'crl' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 151 ; - } -#Divergence of wind stress -'p152.151' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 152 ; - } -#Turbulent kinetic energy input -'tki' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 155 ; - } -#Net surface heat flux -'nsf' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 156 ; - } -#Absorbed solar radiation -'asr' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 157 ; - } -#Precipitation - evaporation -'pme' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 158 ; - } -#Specified sea surface temperature -'sst' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 159 ; - } -#Specified surface heat flux -'shf' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 160 ; - } -#Diagnosed sea surface temperature error -'dte' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 161 ; - } -#Heat flux correction -'hfc' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 162 ; - } -#Average potential temperature in the upper 300m -'tav300' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 164 ; - } -#Vertically integrated zonal velocity (previous time step) -'uba1' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 165 ; - } -#Vertically Integrated meridional velocity (previous time step) -'vba1' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 166 ; - } -#Vertically integrated zonal volume transport -'ztr' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 167 ; - } -#Vertically integrated meridional volume transport -'mtr' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 168 ; - } -#Vertically integrated zonal heat transport -'zht' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 169 ; - } -#Vertically integrated meridional heat transport -'mht' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 170 ; - } -#U velocity maximum -'umax' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 171 ; - } -#Depth of the velocity maximum -'dumax' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 172 ; - } -#Salinity maximum -'smax' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 173 ; - } -#Depth of salinity maximum -'dsmax' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 174 ; - } -#Layer Thickness at scalar points -'ldp' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 176 ; - } -#Layer Thickness at vector points -'ldu' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 177 ; - } -#Potential temperature increment -'pti' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 178 ; - } -#Potential temperature analysis error -'ptae' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 179 ; - } -#Background potential temperature -'bpt' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 180 ; - } -#Analysed potential temperature -'apt' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 181 ; - } -#Potential temperature background error -'ptbe' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 182 ; - } -#Analysed salinity -'as' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 183 ; - } -#Salinity increment -'sali' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 184 ; - } -#Estimated Bias in Temperature -'ebt' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 185 ; - } -#Estimated Bias in Salinity -'ebs' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 186 ; - } -#Zonal Velocity increment (from balance operator) -'uvi' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 187 ; - } -#Meridional Velocity increment (from balance operator) -'vvi' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 188 ; - } -#Salinity increment (from salinity data) -'subi' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 190 ; - } -#Salinity analysis error -'sale' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 191 ; - } -#Background Salinity -'bsal' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 192 ; - } -#Salinity background error -'salbe' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 194 ; - } -#Estimated temperature bias from assimilation -'ebta' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 199 ; - } -#Estimated salinity bias from assimilation -'ebsa' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 200 ; - } -#Temperature increment from relaxation term -'lti' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 201 ; - } -#Salinity increment from relaxation term -'lsi' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 202 ; - } -#Bias in the zonal pressure gradient (applied) -'bzpga' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 203 ; - } -#Bias in the meridional pressure gradient (applied) -'bmpga' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 204 ; - } -#Estimated temperature bias from relaxation -'ebtl' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 205 ; - } -#Estimated salinity bias from relaxation -'ebsl' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 206 ; - } -#First guess bias in temperature -'fgbt' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 207 ; - } -#First guess bias in salinity -'fgbs' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 208 ; - } -#Applied bias in pressure -'bpa' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 209 ; - } -#FG bias in pressure -'fgbp' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 210 ; - } -#Bias in temperature(applied) -'pta' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 211 ; - } -#Bias in salinity (applied) -'psa' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 212 ; - } -#Indicates a missing value -'p255.151' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 255 ; - } -#10 metre wind gust during averaging time -'fgrea10' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 49 ; - } -#vertical velocity (pressure) -'wrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 135 ; - } -#Precipitable water content -'pwcrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 137 ; - } -#Soil wetness level 1 -'swl1rea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 140 ; - } -#Large-scale precipitation -'lsprea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 142 ; - } -#Convective precipitation -'cprea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 143 ; - } -#Snowfall -'sfrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 144 ; - } -#Height -'ghrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 156 ; - } -#Relative humidity -'rrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 157 ; - } -#Soil wetness level 2 -'swl2rea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 171 ; - } -#East-West surface stress -'ewssrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 180 ; - } -#North-South surface stress -'nsssrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 181 ; - } -#Evaporation -'erea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 182 ; - } -#Soil wetness level 3 -'swl3rea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 184 ; - } -#Percentage of vegetation -'vegrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 199 ; - } -#Maximum temperature at 2 metres during averaging time -'mx2trea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 201 ; - } -#Minimum temperature at 2 metres during averaging time -'mn2trea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 202 ; - } -#Runoff -'rorea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 205 ; - } -#Standard deviation of geopotential -'zzrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 206 ; - } -#Covariance of temperature and geopotential -'tzrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 207 ; - } -#Standard deviation of temperature -'ttrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 208 ; - } -#Covariance of specific humidity and geopotential -'qzrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 209 ; - } -#Covariance of specific humidity and temperature -'qtrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 210 ; - } -#Standard deviation of specific humidity -'qqrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 211 ; - } -#Covariance of U component and geopotential -'uzrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 212 ; - } -#Covariance of U component and temperature -'utrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 213 ; - } -#Covariance of U component and specific humidity -'uqrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 214 ; - } -#Standard deviation of U velocity -'uurea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 215 ; - } -#Covariance of V component and geopotential -'vzrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 216 ; - } -#Covariance of V component and temperature -'vtrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 217 ; - } -#Covariance of V component and specific humidity -'vqrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 218 ; - } -#Covariance of V component and U component -'vurea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 219 ; - } -#Standard deviation of V component -'vvrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 220 ; - } -#Covariance of W component and geopotential -'wzrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 221 ; - } -#Covariance of W component and temperature -'wtrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 222 ; - } -#Covariance of W component and specific humidity -'wqrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 223 ; - } -#Covariance of W component and U component -'wurea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 224 ; - } -#Covariance of W component and V component -'wvrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 225 ; - } -#Standard deviation of vertical velocity -'wwrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 226 ; - } -#Instantaneous surface heat flux -'ishfrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 231 ; - } -#Convective snowfall -'csfrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 239 ; - } -#Large scale snowfall -'lsfrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 240 ; - } -#Cloud liquid water content -'clwcerrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 241 ; - } -#Cloud cover -'ccrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 242 ; - } -#Forecast albedo -'falrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 243 ; - } -#10 metre wind speed -'wsrea10' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 246 ; - } -#Momentum flux -'moflrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 247 ; - } -#Gravity wave dissipation flux -'p249.160' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 249 ; - } -#Heaviside beta function -'hsdrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 254 ; - } -#Covariance of v component/geopotential -'p216.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 216 ; - } -#Covariance of v component/temperature -'p217.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 217 ; - } -#Covariance of v component/specific humidity -'p218.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 218 ; - } -#Covariance of v component/u component -'p219.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 219 ; - } -#Variance of v component -'p220.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 220 ; - } -#Covariance of omega/geopotential -'p221.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 221 ; - } -#Covariance of omega/temperature -'p222.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 222 ; - } -#Covariance of omega/specific humidity -'p223.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 223 ; - } -#Covariance of omega/u component -'p224.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 224 ; - } -#Covariance of omega/v component -'p225.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 225 ; - } -#Variance of omega -'p226.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 226 ; - } -#Variance of surface pressure -'p227.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 227 ; - } -#Variance of relative humidity -'p229.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 229 ; - } -#Covariance of u component/ozone -'p230.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 230 ; - } -#Covariance of v component/ozone -'p231.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 231 ; - } -#Covariance of omega/ozone -'p232.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 232 ; - } -#Variance of ozone -'p233.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 233 ; - } -#Indicates a missing value -'p255.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 255 ; - } -#Total soil moisture -'tsw' = { - discipline = 192 ; - parameterCategory = 170 ; - parameterNumber = 149 ; - } -#Soil wetness level 2 -'swl2' = { - discipline = 192 ; - parameterCategory = 170 ; - parameterNumber = 171 ; - } -#Top net thermal radiation -'ttr' = { - discipline = 192 ; - parameterCategory = 170 ; - parameterNumber = 179 ; - } -#Stream function anomaly -'strfa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 1 ; - } -#Velocity potential anomaly -'vpota' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 2 ; - } -#Potential temperature anomaly -'pta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 3 ; - } -#Equivalent potential temperature anomaly -'epta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 4 ; - } -#Saturated equivalent potential temperature anomaly -'septa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 5 ; - } -#U component of divergent wind anomaly -'udwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 11 ; - } -#V component of divergent wind anomaly -'vdwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 12 ; - } -#U component of rotational wind anomaly -'urwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 13 ; - } -#V component of rotational wind anomaly -'vrwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 14 ; - } -#Unbalanced component of temperature anomaly -'uctpa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 21 ; - } -#Unbalanced component of logarithm of surface pressure anomaly -'uclna' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 22 ; - } -#Unbalanced component of divergence anomaly -'ucdva' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 23 ; - } -#Lake cover anomaly -'cla' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 26 ; - } -#Low vegetation cover anomaly -'cvla' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 27 ; - } -#High vegetation cover anomaly -'cvha' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 28 ; - } -#Type of low vegetation anomaly -'tvla' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 29 ; - } -#Type of high vegetation anomaly -'tvha' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 30 ; - } -#Sea-ice cover anomaly -'sica' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 31 ; - } -#Snow albedo anomaly -'asna' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 32 ; - } -#Snow density anomaly -'rsna' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 33 ; - } -#Sea surface temperature anomaly -'ssta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 34 ; - } -#Ice surface temperature anomaly layer 1 -'istal1' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 35 ; - } -#Ice surface temperature anomaly layer 2 -'istal2' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 36 ; - } -#Ice surface temperature anomaly layer 3 -'istal3' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 37 ; - } -#Ice surface temperature anomaly layer 4 -'istal4' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 38 ; - } -#Volumetric soil water anomaly layer 1 -'swval1' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 39 ; - } -#Volumetric soil water anomaly layer 2 -'swval2' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 40 ; - } -#Volumetric soil water anomaly layer 3 -'swval3' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 41 ; - } -#Volumetric soil water anomaly layer 4 -'swval4' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 42 ; - } -#Soil type anomaly -'slta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 43 ; - } -#Snow evaporation anomaly -'esa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 44 ; - } -#Snowmelt anomaly -'smlta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 45 ; - } -#Solar duration anomaly -'sdura' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 46 ; - } -#Direct solar radiation anomaly -'dsrpa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 47 ; - } -#Magnitude of turbulent surface stress anomaly -'magssa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 48 ; - } -#10 metre wind gust anomaly -'fga10' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 49 ; - } -#Large-scale precipitation fraction anomaly -'lspfa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 50 ; - } -#Maximum 2 metre temperature in the last 24 hours anomaly -'mx2t24a' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 51 ; - } -#Minimum 2 metre temperature in the last 24 hours anomaly -'mn2t24a' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 52 ; - } -#Montgomery potential anomaly -'monta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 53 ; - } -#Pressure anomaly -'pa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 54 ; - } -#Mean 2 metre temperature in the last 24 hours anomaly -'mean2t24a' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 55 ; - } -#Mean 2 metre dewpoint temperature in the last 24 hours anomaly -'mn2d24a' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 56 ; - } -#Downward UV radiation at the surface anomaly -'uvba' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 57 ; - } -#Photosynthetically active radiation at the surface anomaly -'para' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 58 ; - } -#Convective available potential energy anomaly -'capea' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 59 ; - } -#Potential vorticity anomaly -'pva' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 60 ; - } -#Total precipitation from observations anomaly -'tpoa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 61 ; - } -#Observation count anomaly -'obcta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 62 ; - } -#Start time for skin temperature difference anomaly -'stsktda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 63 ; - } -#Finish time for skin temperature difference anomaly -'ftsktda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 64 ; - } -#Skin temperature difference anomaly -'sktda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 65 ; - } -#Total column liquid water anomaly -'tclwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 78 ; - } -#Total column ice water anomaly -'tciwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 79 ; - } -#Vertically integrated total energy anomaly -'vitea' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 125 ; - } -#Generic parameter for sensitive area prediction -'p126.171' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 126 ; - } -#Atmospheric tide anomaly -'ata' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 127 ; - } -#Budget values anomaly -'bva' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 128 ; - } -#Geopotential anomaly -'za' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 129 ; - } -#Temperature anomaly -'ta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 130 ; - } -#U component of wind anomaly -'ua' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 131 ; - } -#V component of wind anomaly -'va' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 132 ; - } -#Specific humidity anomaly -'qa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 133 ; - } -#Surface pressure anomaly -'spa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 134 ; - } -#Vertical velocity (pressure) anomaly -'wa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 135 ; - } -#Total column water anomaly -'tcwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 136 ; - } -#Total column water vapour anomaly -'tcwva' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 137 ; - } -#Relative vorticity anomaly -'voa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 138 ; - } -#Soil temperature anomaly level 1 -'stal1' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 139 ; - } -#Soil wetness anomaly level 1 -'swal1' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 140 ; - } -#Snow depth anomaly -'sda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 141 ; - } -#Stratiform precipitation (Large-scale precipitation) anomaly -'lspa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 142 ; - } -#Convective precipitation anomaly -'cpa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 143 ; - } -#Snowfall (convective + stratiform) anomaly -'sfa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 144 ; - } -#Boundary layer dissipation anomaly -'blda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 145 ; - } -#Surface sensible heat flux anomaly -'sshfa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 146 ; - } -#Surface latent heat flux anomaly -'slhfa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 147 ; - } -#Charnock anomaly -'chnka' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 148 ; - } -#Surface net radiation anomaly -'snra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 149 ; - } -#Top net radiation anomaly -'tnra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 150 ; - } -#Mean sea level pressure anomaly -'msla' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 151 ; - } -#Logarithm of surface pressure anomaly -'lspa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 152 ; - } -#Short-wave heating rate anomaly -'swhra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 153 ; - } -#Long-wave heating rate anomaly -'lwhra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 154 ; - } -#Relative divergence anomaly -'da' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 155 ; - } -#Height anomaly -'gha' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 156 ; - } -#Relative humidity anomaly -'ra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 157 ; - } -#Tendency of surface pressure anomaly -'tspa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 158 ; - } -#Boundary layer height anomaly -'blha' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 159 ; - } -#Standard deviation of orography anomaly -'sdora' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 160 ; - } -#Anisotropy of sub-gridscale orography anomaly -'isora' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 161 ; - } -#Angle of sub-gridscale orography anomaly -'anora' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 162 ; - } -#Slope of sub-gridscale orography anomaly -'slora' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 163 ; - } -#Total cloud cover anomaly -'tcca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 164 ; - } -#10 metre U wind component anomaly -'ua10' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 165 ; - } -#10 metre V wind component anomaly -'va10' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 166 ; - } -#2 metre temperature anomaly -'t2a' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 167 ; - } -#2 metre dewpoint temperature anomaly -'d2a' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 168 ; - } -#Surface solar radiation downwards anomaly -'ssrda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 169 ; - } -#Soil temperature anomaly level 2 -'stal2' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 170 ; - } -#Soil wetness anomaly level 2 -'swal2' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 171 ; - } -#Surface roughness anomaly -'sra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 173 ; - } -#Albedo anomaly -'ala' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 174 ; - } -#Surface thermal radiation downwards anomaly -'strda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 175 ; - } -#Surface net solar radiation anomaly -'ssra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 176 ; - } -#Surface net thermal radiation anomaly -'stra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 177 ; - } -#Top net solar radiation anomaly -'tsra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 178 ; - } -#Top net thermal radiation anomaly -'ttra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 179 ; - } -#East-West surface stress anomaly -'eqssa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 180 ; - } -#North-South surface stress anomaly -'nsssa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 181 ; - } -#Evaporation anomaly -'ea' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 182 ; - } -#Soil temperature anomaly level 3 -'stal3' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 183 ; - } -#Soil wetness anomaly level 3 -'swal3' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 184 ; - } -#Convective cloud cover anomaly -'ccca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 185 ; - } -#Low cloud cover anomaly -'lcca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 186 ; - } -#Medium cloud cover anomaly -'mcca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 187 ; - } -#High cloud cover anomaly -'hcca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 188 ; - } -#Sunshine duration anomaly -'sunda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 189 ; - } -#East-West component of sub-gridscale orographic variance anomaly -'ewova' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 190 ; - } -#North-South component of sub-gridscale orographic variance anomaly -'nsova' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 191 ; - } -#North-West/South-East component of sub-gridscale orographic variance anomaly -'nwova' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 192 ; - } -#North-East/South-West component of sub-gridscale orographic variance anomaly -'neova' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 193 ; - } -#Brightness temperature anomaly -'btmpa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 194 ; - } -#Longitudinal component of gravity wave stress anomaly -'lgwsa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 195 ; - } -#Meridional component of gravity wave stress anomaly -'mgwsa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 196 ; - } -#Gravity wave dissipation anomaly -'gwda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 197 ; - } -#Skin reservoir content anomaly -'srca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 198 ; - } -#Vegetation fraction anomaly -'vfa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 199 ; - } -#Variance of sub-gridscale orography anomaly -'vsoa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 200 ; - } -#Maximum temperature at 2 metres anomaly -'mx2ta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 201 ; - } -#Minimum temperature at 2 metres anomaly -'mn2ta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 202 ; - } -#Ozone mass mixing ratio anomaly -'o3a' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 203 ; - } -#Precipitation analysis weights anomaly -'pawa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 204 ; - } -#Runoff anomaly -'roa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 205 ; - } -#Total column ozone anomaly -'tco3a' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 206 ; - } -#10 metre wind speed anomaly -'sia10' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 207 ; - } -#Top net solar radiation clear sky anomaly -'tsrca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 208 ; - } -#Top net thermal radiation clear sky anomaly -'ttrca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 209 ; - } -#Surface net solar radiation clear sky anomaly -'ssrca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 210 ; - } -#Surface net thermal radiation, clear sky anomaly -'strca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 211 ; - } -#Solar insolation anomaly -'sia' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 212 ; - } -#Diabatic heating by radiation anomaly -'dhra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 214 ; - } -#Diabatic heating by vertical diffusion anomaly -'dhvda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 215 ; - } -#Diabatic heating by cumulus convection anomaly -'dhcca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 216 ; - } -#Diabatic heating by large-scale condensation anomaly -'dhlca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 217 ; - } -#Vertical diffusion of zonal wind anomaly -'vdzwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 218 ; - } -#Vertical diffusion of meridional wind anomaly -'vdmwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 219 ; - } -#East-West gravity wave drag tendency anomaly -'ewgda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 220 ; - } -#North-South gravity wave drag tendency anomaly -'nsgda' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 221 ; - } -#Convective tendency of zonal wind anomaly -'ctzwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 222 ; - } -#Convective tendency of meridional wind anomaly -'ctmwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 223 ; - } -#Vertical diffusion of humidity anomaly -'vdha' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 224 ; - } -#Humidity tendency by cumulus convection anomaly -'htcca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 225 ; - } -#Humidity tendency by large-scale condensation anomaly -'htlca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 226 ; - } -#Change from removal of negative humidity anomaly -'crnha' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 227 ; - } -#Total precipitation anomaly -'tpa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 228 ; - } -#Instantaneous X surface stress anomaly -'iewsa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 229 ; - } -#Instantaneous Y surface stress anomaly -'inssa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 230 ; - } -#Instantaneous surface heat flux anomaly -'ishfa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 231 ; - } -#Instantaneous moisture flux anomaly -'iea' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 232 ; - } -#Apparent surface humidity anomaly -'asqa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 233 ; - } -#Logarithm of surface roughness length for heat anomaly -'lsrha' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 234 ; - } -#Skin temperature anomaly -'skta' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 235 ; - } -#Soil temperature level 4 anomaly -'stal4' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 236 ; - } -#Soil wetness level 4 anomaly -'swal4' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 237 ; - } -#Temperature of snow layer anomaly -'tsna' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 238 ; - } -#Convective snowfall anomaly -'csfa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 239 ; - } -#Large scale snowfall anomaly -'lsfa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 240 ; - } -#Accumulated cloud fraction tendency anomaly -'acfa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 241 ; - } -#Accumulated liquid water tendency anomaly -'alwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 242 ; - } -#Forecast albedo anomaly -'fala' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 243 ; - } -#Forecast surface roughness anomaly -'fsra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 244 ; - } -#Forecast logarithm of surface roughness for heat anomaly -'flsra' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 245 ; - } -#Cloud liquid water content anomaly -'clwca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 246 ; - } -#Cloud ice water content anomaly -'ciwca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 247 ; - } -#Cloud cover anomaly -'cca' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 248 ; - } -#Accumulated ice water tendency anomaly -'aiwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 249 ; - } -#Ice age anomaly -'iaa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 250 ; - } -#Adiabatic tendency of temperature anomaly -'attea' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 251 ; - } -#Adiabatic tendency of humidity anomaly -'athea' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 252 ; - } -#Adiabatic tendency of zonal wind anomaly -'atzea' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 253 ; - } -#Adiabatic tendency of meridional wind anomaly -'atmwa' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 254 ; - } -#Indicates a missing value -'p255.171' = { - discipline = 192 ; - parameterCategory = 171 ; - parameterNumber = 255 ; - } -#Snow evaporation -'esrate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 44 ; - } -#Snowmelt -'p45.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 45 ; - } -#Magnitude of turbulent surface stress -'p48.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 48 ; - } -#Mean large-scale precipitation fraction -'mlspfr' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 50 ; - } -#Mean large-scale precipitation rate -'mlsprt' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 196 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean convective precipitation rate -'cprate' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 195 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean total snowfall rate -'mtsfr' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 198 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Boundary layer dissipation -'bldrate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 145 ; - } -#Mean short-wave heating rate -'mswhr' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 153 ; - } -#Mean long-wave heating rate -'mlwhr' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 154 ; - } -#Evaporation -'erate' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 199 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean sunshine duration rate -'msdr' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 189 ; - } -#Longitudinal component of gravity wave stress -'p195.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 195 ; - } -#Meridional component of gravity wave stress -'p196.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 196 ; - } -#Gravity wave dissipation -'gwdrate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 197 ; - } -#Mean runoff rate -'mrort' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 201 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean total precipitation rate -'tprate' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 193 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Convective snowfall -'p239.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 239 ; - } -#Large scale snowfall -'p240.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 240 ; - } -#Indicates a missing value -'p255.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 255 ; - } -#Snow evaporation anomaly -'p44.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 44 ; - } -#Snowmelt anomaly -'p45.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 45 ; - } -#Magnitude of turbulent surface stress anomaly -'p48.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 48 ; - } -#Large-scale precipitation fraction anomaly -'p50.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 50 ; - } -#Stratiform precipitation (Large-scale precipitation) anomalous rate of accumulation -'lspara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 142 ; - } -#Mean convective precipitation rate anomaly -'mcpra' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 143 ; - } -#Snowfall (convective + stratiform) anomalous rate of accumulation -'sfara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 144 ; - } -#Boundary layer dissipation anomaly -'p145.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 145 ; - } -#Surface sensible heat flux anomalous rate of accumulation -'sshfara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 146 ; - } -#Surface latent heat flux anomalous rate of accumulation -'slhfara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 147 ; - } -#Surface net radiation anomaly -'p149.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 149 ; - } -#Short-wave heating rate anomaly -'p153.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 153 ; - } -#Long-wave heating rate anomaly -'p154.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 154 ; - } -#Surface solar radiation downwards anomalous rate of accumulation -'ssrdara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 169 ; - } -#Surface thermal radiation downwards anomalous rate of accumulation -'strdara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 175 ; - } -#Surface solar radiation anomalous rate of accumulation -'ssrara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 176 ; - } -#Surface thermal radiation anomalous rate of accumulation -'strara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 177 ; - } -#Top solar radiation anomalous rate of accumulation -'tsrara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 178 ; - } -#Top thermal radiation anomalous rate of accumulation -'ttrara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 179 ; - } -#East-West surface stress anomalous rate of accumulation -'ewssara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 180 ; - } -#North-South surface stress anomalous rate of accumulation -'nsssara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 181 ; - } -#Evaporation anomalous rate of accumulation -'evara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 182 ; - } -#Sunshine duration anomalous rate of accumulation -'sundara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 189 ; - } -#Longitudinal component of gravity wave stress anomaly -'p195.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 195 ; - } -#Meridional component of gravity wave stress anomaly -'p196.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 196 ; - } -#Gravity wave dissipation anomaly -'p197.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 197 ; - } -#Runoff anomalous rate of accumulation -'roara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 205 ; - } -#Top net solar radiation, clear sky anomaly -'p208.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 208 ; - } -#Top net thermal radiation, clear sky anomaly -'p209.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 209 ; - } -#Surface net solar radiation, clear sky anomaly -'p210.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 210 ; - } -#Surface net thermal radiation, clear sky anomaly -'p211.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 211 ; - } -#Solar insolation anomalous rate of accumulation -'soiara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 212 ; - } -#Total precipitation anomalous rate of accumulation -'tpara' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 228 ; - } -#Convective snowfall anomaly -'p239.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 239 ; - } -#Large scale snowfall anomaly -'p240.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 240 ; - } -#Indicates a missing value -'p255.173' = { - discipline = 192 ; - parameterCategory = 173 ; - parameterNumber = 255 ; - } -#Total soil moisture -'p6.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 6 ; - } -#Fraction of sea-ice in sea -'p31.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 31 ; - } -#Open-sea surface temperature -'p34.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 34 ; - } -#Volumetric soil water layer 1 -'p39.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 39 ; - } -#Volumetric soil water layer 2 -'p40.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 40 ; - } -#Volumetric soil water layer 3 -'p41.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 41 ; - } -#Volumetric soil water layer 4 -'p42.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 42 ; - } -#10 metre wind gust in the last 24 hours -'p49.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 49 ; - } -#1.5m temperature - mean in the last 24 hours -'p55.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 55 ; - } -#Net primary productivity -'p83.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 83 ; - } -#10m U wind over land -'p85.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 85 ; - } -#10m V wind over land -'p86.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 86 ; - } -#1.5m temperature over land -'p87.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 87 ; - } -#1.5m dewpoint temperature over land -'p88.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 88 ; - } -#Top incoming solar radiation -'p89.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 89 ; - } -#Top outgoing solar radiation -'p90.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 90 ; - } -#Mean sea surface temperature -'p94.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 94 ; - } -#1.5m specific humidity -'p95.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 95 ; - } -#Liquid water potential temperature -'p99.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 99 ; - } -#Ocean ice concentration -'p110.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 110 ; - } -#Ocean mean ice depth -'p111.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 111 ; - } -#Soil temperature layer 1 -'p139.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 139 ; - } -#Average potential temperature in upper 293.4m -'p164.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 164 ; - } -#1.5m temperature -'p167.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 167 ; - } -#1.5m dewpoint temperature -'p168.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 168 ; - } -#Soil temperature layer 2 -'p170.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 170 ; - } -#Average salinity in upper 293.4m -'p175.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 175 ; - } -#Soil temperature layer 3 -'p183.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 183 ; - } -#1.5m temperature - maximum in the last 24 hours -'p201.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'p202.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 202 ; - } -#Soil temperature layer 4 -'p236.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 236 ; - } -#Indicates a missing value -'p255.174' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 255 ; - } -#Total soil moisture -'p6.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 6 ; - } -#Fraction of sea-ice in sea -'p31.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 31 ; - } -#Open-sea surface temperature -'p34.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 34 ; - } -#Volumetric soil water layer 1 -'p39.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 39 ; - } -#Volumetric soil water layer 2 -'p40.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 40 ; - } -#Volumetric soil water layer 3 -'p41.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 41 ; - } -#Volumetric soil water layer 4 -'p42.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 42 ; - } -#10m wind gust in the last 24 hours -'p49.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 49 ; - } -#1.5m temperature - mean in the last 24 hours -'p55.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 55 ; - } -#Net primary productivity -'p83.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 83 ; - } -#10m U wind over land -'p85.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 85 ; - } -#10m V wind over land -'p86.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 86 ; - } -#1.5m temperature over land -'p87.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 87 ; - } -#1.5m dewpoint temperature over land -'p88.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 88 ; - } -#Top incoming solar radiation -'p89.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 89 ; - } -#Top outgoing solar radiation -'p90.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 90 ; - } -#Ocean ice concentration -'p110.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 110 ; - } -#Ocean mean ice depth -'p111.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 111 ; - } -#Soil temperature layer 1 -'p139.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 139 ; - } -#Average potential temperature in upper 293.4m -'p164.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 164 ; - } -#1.5m temperature -'p167.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 167 ; - } -#1.5m dewpoint temperature -'p168.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 168 ; - } -#Soil temperature layer 2 -'p170.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 170 ; - } -#Average salinity in upper 293.4m -'p175.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 175 ; - } -#Soil temperature layer 3 -'p183.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 183 ; - } -#1.5m temperature - maximum in the last 24 hours -'p201.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'p202.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 202 ; - } -#Soil temperature layer 4 -'p236.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 236 ; - } -#Indicates a missing value -'p255.175' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 255 ; - } -#Total soil wetness -'tsw' = { - discipline = 192 ; - parameterCategory = 180 ; - parameterNumber = 149 ; - } -#Surface net solar radiation -'ssr' = { - discipline = 192 ; - parameterCategory = 180 ; - parameterNumber = 176 ; - } -#Surface net thermal radiation -'str' = { - discipline = 192 ; - parameterCategory = 180 ; - parameterNumber = 177 ; - } -#Top net solar radiation -'tsr' = { - discipline = 192 ; - parameterCategory = 180 ; - parameterNumber = 178 ; - } -#Top net thermal radiation -'ttr' = { - discipline = 192 ; - parameterCategory = 180 ; - parameterNumber = 179 ; - } -#Field capacity -'cap' = { - discipline = 192 ; - parameterCategory = 190 ; - parameterNumber = 170 ; - } -#Wilting point -'wiltsien' = { - discipline = 192 ; - parameterCategory = 190 ; - parameterNumber = 171 ; - } -#Roughness length -'sr' = { - discipline = 192 ; - parameterCategory = 190 ; - parameterNumber = 173 ; - } -#Total soil moisture -'tsm' = { - discipline = 192 ; - parameterCategory = 190 ; - parameterNumber = 229 ; - } -#2 metre dewpoint temperature difference -'ddiff2' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 168 ; - } -#downward shortwave radiant flux density -'p1.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 1 ; - } -#upward shortwave radiant flux density -'p2.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 2 ; - } -#downward longwave radiant flux density -'p3.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 3 ; - } -#upward longwave radiant flux density -'p4.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 4 ; - } -#downwd photosynthetic active radiant flux density -'apab_s' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 5 ; - } -#net shortwave flux -'p6.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 6 ; - } -#net longwave flux -'p7.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 7 ; - } -#total net radiative flux density -'p8.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 8 ; - } -#downw shortw radiant flux density, cloudfree part -'p9.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 9 ; - } -#upw shortw radiant flux density, cloudy part -'p10.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 10 ; - } -#downw longw radiant flux density, cloudfree part -'p11.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 11 ; - } -#upw longw radiant flux density, cloudy part -'p12.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 12 ; - } -#shortwave radiative heating rate -'sohr_rad' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 13 ; - } -#longwave radiative heating rate -'thhr_rad' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 14 ; - } -#total radiative heating rate -'p15.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 15 ; - } -#soil heat flux, surface -'p16.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 16 ; - } -#soil heat flux, bottom of layer -'p17.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 17 ; - } -#fractional cloud cover -'clc' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 29 ; - } -#cloud cover, grid scale -'p30.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 30 ; - } -#specific cloud water content -'qc' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 31 ; - } -#cloud water content, grid scale, vert integrated -'p32.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 32 ; - } -#specific cloud ice content, grid scale -'qi' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 33 ; - } -#cloud ice content, grid scale, vert integrated -'p34.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 34 ; - } -#specific rainwater content, grid scale -'p35.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 35 ; - } -#specific snow content, grid scale -'p36.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 36 ; - } -#specific rainwater content, gs, vert. integrated -'p37.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 37 ; - } -#specific snow content, gs, vert. integrated -'p38.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 38 ; - } -#total column water -'twater' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 41 ; - } -#vert. integral of divergence of tot. water content -'p42.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 42 ; - } -#cloud covers CH_CM_CL (000...888) -'ch_cm_cl' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 50 ; - } -#cloud cover CH (0..8) -'p51.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 51 ; - } -#cloud cover CM (0..8) -'p52.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 52 ; - } -#cloud cover CL (0..8) -'p53.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 53 ; - } -#total cloud cover (0..8) -'p54.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 54 ; - } -#fog (0..8) -'p55.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 55 ; - } -#fog -'p56.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 56 ; - } -#cloud cover, convective cirrus -'p60.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 60 ; - } -#specific cloud water content, convective clouds -'p61.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 61 ; - } -#cloud water content, conv clouds, vert integrated -'p62.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 62 ; - } -#specific cloud ice content, convective clouds -'p63.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 63 ; - } -#cloud ice content, conv clouds, vert integrated -'p64.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 64 ; - } -#convective mass flux -'p65.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 65 ; - } -#Updraft velocity, convection -'p66.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 66 ; - } -#entrainment parameter, convection -'p67.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 67 ; - } -#cloud base, convective clouds (above msl) -'hbas_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 68 ; - } -#cloud top, convective clouds (above msl) -'htop_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 69 ; - } -#convective layers (00...77) (BKE) -'p70.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 70 ; - } -#KO-index -'p71.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 71 ; - } -#convection base index -'bas_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 72 ; - } -#convection top index -'top_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 73 ; - } -#convective temperature tendency -'dt_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 74 ; - } -#convective tendency of specific humidity -'dqv_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 75 ; - } -#convective tendency of total heat -'p76.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 76 ; - } -#convective tendency of total water -'p77.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 77 ; - } -#convective momentum tendency (X-component) -'du_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 78 ; - } -#convective momentum tendency (Y-component) -'dv_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 79 ; - } -#convective vorticity tendency -'p80.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 80 ; - } -#convective divergence tendency -'p81.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 81 ; - } -#top of dry convection (above msl) -'htop_dc' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 82 ; - } -#dry convection top index -'p83.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 83 ; - } -#height of 0 degree Celsius isotherm above msl -'hzerocl' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 84 ; - } -#height of snow-fall limit -'snowlmt' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 85 ; - } -#spec. content of precip. particles -'qrs_gsp' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 99 ; - } -#surface precipitation rate, rain, grid scale -'prr_gsp' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 100 ; - } -#surface precipitation rate, snow, grid scale -'prs_gsp' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 101 ; - } -#surface precipitation amount, rain, grid scale -'rain_gsp' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 102 ; - } -#surface precipitation rate, rain, convective -'prr_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 111 ; - } -#surface precipitation rate, snow, convective -'prs_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 112 ; - } -#surface precipitation amount, rain, convective -'rain_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 113 ; - } -#deviation of pressure from reference value -'pp' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 139 ; - } -#coefficient of horizontal diffusion -'p150.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 150 ; - } -#Maximum wind velocity -'vmax_10m' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 187 ; - } -#water content of interception store -'w_i' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 200 ; - } -#snow temperature -'t_snow' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 203 ; - } -#ice surface temperature -'t_ice' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 215 ; - } -#convective available potential energy -'cape_con' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 241 ; - } -#Indicates a missing value -'p255.201' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 255 ; - } -#Sea Salt Aerosol (0.03 - 0.5 um) Mixing Ratio -'aermr01' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 1 ; - } -#Sea Salt Aerosol (0.5 - 5 um) Mixing Ratio -'aermr02' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 2 ; - } -#Sea Salt Aerosol (5 - 20 um) Mixing Ratio -'aermr03' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 3 ; - } -#Dust Aerosol (0.03 - 0.55 um) Mixing Ratio -'aermr04' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 4 ; - } -#Dust Aerosol (0.55 - 0.9 um) Mixing Ratio -'aermr05' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 5 ; - } -#Dust Aerosol (0.9 - 20 um) Mixing Ratio -'aermr06' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 6 ; - } -#Hydrophilic Organic Matter Aerosol Mixing Ratio -'aermr07' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 7 ; - } -#Hydrophobic Organic Matter Aerosol Mixing Ratio -'aermr08' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 8 ; - } -#Hydrophilic Black Carbon Aerosol Mixing Ratio -'aermr09' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 9 ; - } -#Hydrophobic Black Carbon Aerosol Mixing Ratio -'aermr10' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 10 ; - } -#Sulphate Aerosol Mixing Ratio -'aermr11' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 11 ; - } -#SO2 precursor mixing ratio -'aermr12' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 12 ; - } -#Aerosol type 1 source/gain accumulated -'aergn01' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 16 ; - } -#Aerosol type 2 source/gain accumulated -'aergn02' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 17 ; - } -#Aerosol type 3 source/gain accumulated -'aergn03' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 18 ; - } -#Aerosol type 4 source/gain accumulated -'aergn04' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 19 ; - } -#Aerosol type 5 source/gain accumulated -'aergn05' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 20 ; - } -#Aerosol type 6 source/gain accumulated -'aergn06' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 21 ; - } -#Aerosol type 7 source/gain accumulated -'aergn07' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 22 ; - } -#Aerosol type 8 source/gain accumulated -'aergn08' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 23 ; - } -#Aerosol type 9 source/gain accumulated -'aergn09' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 24 ; - } -#Aerosol type 10 source/gain accumulated -'aergn10' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 25 ; - } -#Aerosol type 11 source/gain accumulated -'aergn11' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 26 ; - } -#Aerosol type 12 source/gain accumulated -'aergn12' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 27 ; - } -#Aerosol type 1 sink/loss accumulated -'aerls01' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 31 ; - } -#Aerosol type 2 sink/loss accumulated -'aerls02' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 32 ; - } -#Aerosol type 3 sink/loss accumulated -'aerls03' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 33 ; - } -#Aerosol type 4 sink/loss accumulated -'aerls04' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 34 ; - } -#Aerosol type 5 sink/loss accumulated -'aerls05' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 35 ; - } -#Aerosol type 6 sink/loss accumulated -'aerls06' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 36 ; - } -#Aerosol type 7 sink/loss accumulated -'aerls07' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 37 ; - } -#Aerosol type 8 sink/loss accumulated -'aerls08' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 38 ; - } -#Aerosol type 9 sink/loss accumulated -'aerls09' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 39 ; - } -#Aerosol type 10 sink/loss accumulated -'aerls10' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 40 ; - } -#Aerosol type 11 sink/loss accumulated -'aerls11' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 41 ; - } -#Aerosol type 12 sink/loss accumulated -'aerls12' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 42 ; - } -#Aerosol precursor mixing ratio -'aerpr' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 46 ; - } -#Aerosol small mode mixing ratio -'aersm' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 47 ; - } -#Aerosol large mode mixing ratio -'aerlg' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 48 ; - } -#Aerosol precursor optical depth -'aodpr' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 49 ; - } -#Aerosol small mode optical depth -'aodsm' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 50 ; - } -#Aerosol large mode optical depth -'aodlg' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 51 ; - } -#Dust emission potential -'aerdep' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 52 ; - } -#Lifting threshold speed -'aerlts' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 53 ; - } -#Soil clay content -'aerscc' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 54 ; - } -#Carbon dioxide mass mixing ratio -'co2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 61 ; - } -#Methane -'ch4' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 62 ; - } -#Nitrous oxide -'n2o' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 63 ; - } -#CO2 column-mean molar fraction -'tcco2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 64 ; - } -#CH4 column-mean molar fraction -'tcch4' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 65 ; - } -#Total column Nitrous oxide -'tcn2o' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 66 ; - } -#Ocean flux of Carbon Dioxide -'co2of' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 67 ; - } -#Natural biosphere flux of Carbon Dioxide -'co2nbf' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 68 ; - } -#Anthropogenic emissions of Carbon Dioxide -'co2apf' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 69 ; - } -#Methane Surface Fluxes -'ch4f' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 70 ; - } -#Methane loss rate due to radical hydroxyl (OH) -'kch4' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 71 ; - } -#Wildfire flux of Carbon Dioxide -'co2fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 80 ; - } -#Wildfire flux of Carbon Monoxide -'cofire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 81 ; - } -#Wildfire flux of Methane -'ch4fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 82 ; - } -#Wildfire flux of Non-Methane Hydro-Carbons -'nmhcfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 83 ; - } -#Wildfire flux of Hydrogen -'h2fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 84 ; - } -#Wildfire flux of Nitrogen Oxides NOx -'noxfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 85 ; - } -#Wildfire flux of Nitrous Oxide -'n2ofire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 86 ; - } -#Wildfire flux of Particulate Matter PM2.5 -'pm2p5fire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 87 ; - } -#Wildfire flux of Total Particulate Matter -'tpmfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 88 ; - } -#Wildfire flux of Total Carbon in Aerosols -'tcfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 89 ; - } -#Wildfire flux of Organic Carbon -'ocfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 90 ; - } -#Wildfire flux of Black Carbon -'bcfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 91 ; - } -#Wildfire overall flux of burnt Carbon -'cfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 92 ; - } -#Wildfire fraction of C4 plants -'c4ffire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 93 ; - } -#Wildfire vegetation map index -'vegfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 94 ; - } -#Wildfire Combustion Completeness -'ccfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 95 ; - } -#Wildfire Fuel Load: Carbon per unit area -'flfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 96 ; - } -#Wildfire fraction of area observed -'offire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 97 ; - } -#Number of positive FRP pixels per grid cell -'nofrp' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 98 ; - } -#Wildfire radiative power -'frpfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 99 ; - } -#Wildfire combustion rate -'crfire' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 100 ; - } -#Formaldehyde -'hcho' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 124 ; - } -#Total column Nitrogen dioxide -'tcno2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 125 ; - } -#Total column Sulphur dioxide -'tcso2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 126 ; - } -#Total column Carbon monoxide -'tcco' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 127 ; - } -#Total column Formaldehyde -'tchcho' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 128 ; - } -#Nitrogen Oxides -'nox' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 129 ; - } -#Total Column Nitrogen Oxides -'tcnox' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 130 ; - } -#Reactive tracer 1 mass mixing ratio -'grg1' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 131 ; - } -#Total column GRG tracer 1 -'tcgrg1' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 132 ; - } -#Reactive tracer 2 mass mixing ratio -'grg2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 133 ; - } -#Total column GRG tracer 2 -'tcgrg2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 134 ; - } -#Reactive tracer 3 mass mixing ratio -'grg3' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 135 ; - } -#Total column GRG tracer 3 -'tcgrg3' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 136 ; - } -#Reactive tracer 4 mass mixing ratio -'grg4' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 137 ; - } -#Total column GRG tracer 4 -'tcgrg4' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 138 ; - } -#Reactive tracer 5 mass mixing ratio -'grg5' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 139 ; - } -#Total column GRG tracer 5 -'tcgrg5' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 140 ; - } -#Reactive tracer 6 mass mixing ratio -'grg6' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 141 ; - } -#Total column GRG tracer 6 -'tcgrg6' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 142 ; - } -#Reactive tracer 7 mass mixing ratio -'grg7' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 143 ; - } -#Total column GRG tracer 7 -'tcgrg7' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 144 ; - } -#Reactive tracer 8 mass mixing ratio -'grg8' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 145 ; - } -#Total column GRG tracer 8 -'tcgrg8' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 146 ; - } -#Reactive tracer 9 mass mixing ratio -'grg9' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 147 ; - } -#Total column GRG tracer 9 -'tcgrg9' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 148 ; - } -#Reactive tracer 10 mass mixing ratio -'grg10' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 149 ; - } -#Total column GRG tracer 10 -'tcgrg10' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 150 ; - } -#Surface flux Nitrogen oxides -'sfnox' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 151 ; - } -#Surface flux Nitrogen dioxide -'sfno2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 152 ; - } -#Surface flux Sulphur dioxide -'sfso2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 153 ; - } -#Surface flux Carbon monoxide -'sfco2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 154 ; - } -#Surface flux Formaldehyde -'sfhcho' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 155 ; - } -#Surface flux GEMS Ozone -'sfgo3' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 156 ; - } -#Surface flux reactive tracer 1 -'sfgr1' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 157 ; - } -#Surface flux reactive tracer 2 -'sfgr2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 158 ; - } -#Surface flux reactive tracer 3 -'sfgr3' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 159 ; - } -#Surface flux reactive tracer 4 -'sfgr4' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 160 ; - } -#Surface flux reactive tracer 5 -'sfgr5' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 161 ; - } -#Surface flux reactive tracer 6 -'sfgr6' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 162 ; - } -#Surface flux reactive tracer 7 -'sfgr7' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 163 ; - } -#Surface flux reactive tracer 8 -'sfgr8' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 164 ; - } -#Surface flux reactive tracer 9 -'sfgr9' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 165 ; - } -#Surface flux reactive tracer 10 -'sfgr10' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 166 ; - } -#Radon -'ra' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 181 ; - } -#Sulphur Hexafluoride -'sf6' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 182 ; - } -#Total column Radon -'tcra' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 183 ; - } -#Total column Sulphur Hexafluoride -'tcsf6' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 184 ; - } -#Anthropogenic Emissions of Sulphur Hexafluoride -'sf6apf' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 185 ; - } -#GEMS Total column ozone -'gtco3' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 206 ; - } -#Total Aerosol Optical Depth at 550nm -'aod550' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 207 ; - } -#Sea Salt Aerosol Optical Depth at 550nm -'ssaod550' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 208 ; - } -#Dust Aerosol Optical Depth at 550nm -'duaod550' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 209 ; - } -#Organic Matter Aerosol Optical Depth at 550nm -'omaod550' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 210 ; - } -#Black Carbon Aerosol Optical Depth at 550nm -'bcaod550' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 211 ; - } -#Sulphate Aerosol Optical Depth at 550nm -'suaod550' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 212 ; - } -#Total Aerosol Optical Depth at 469nm -'aod469' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 213 ; - } -#Total Aerosol Optical Depth at 670nm -'aod670' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 214 ; - } -#Total Aerosol Optical Depth at 865nm -'aod865' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 215 ; - } -#Total Aerosol Optical Depth at 1240nm -'aod1240' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 216 ; - } -#Sea Salt Aerosol (0.03 - 0.5 um) Mixing Ratio -'aermr01diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 1 ; - } -#Sea Salt Aerosol (0.5 - 5 um) Mixing Ratio -'aermr02diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 2 ; - } -#Sea Salt Aerosol (5 - 20 um) Mixing Ratio -'aermr03diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 3 ; - } -#Dust Aerosol (0.03 - 0.55 um) Mixing Ratio -'aermr04diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 4 ; - } -#Dust Aerosol (0.55 - 0.9 um) Mixing Ratio -'aermr05diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 5 ; - } -#Dust Aerosol (0.9 - 20 um) Mixing Ratio -'aermr06diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 6 ; - } -#Hydrophilic Organic Matter Aerosol Mixing Ratio -'aermr07diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 7 ; - } -#Hydrophobic Organic Matter Aerosol Mixing Ratio -'aermr08diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 8 ; - } -#Hydrophilic Black Carbon Aerosol Mixing Ratio -'aermr09diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 9 ; - } -#Hydrophobic Black Carbon Aerosol Mixing Ratio -'aermr10diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 10 ; - } -#Sulphate Aerosol Mixing Ratio -'aermr11diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 11 ; - } -#Aerosol type 12 mixing ratio -'aermr12diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 12 ; - } -#Aerosol type 1 source/gain accumulated -'aergn01diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 16 ; - } -#Aerosol type 2 source/gain accumulated -'aergn02diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 17 ; - } -#Aerosol type 3 source/gain accumulated -'aergn03diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 18 ; - } -#Aerosol type 4 source/gain accumulated -'aergn04diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 19 ; - } -#Aerosol type 5 source/gain accumulated -'aergn05diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 20 ; - } -#Aerosol type 6 source/gain accumulated -'aergn06diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 21 ; - } -#Aerosol type 7 source/gain accumulated -'aergn07diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 22 ; - } -#Aerosol type 8 source/gain accumulated -'aergn08diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 23 ; - } -#Aerosol type 9 source/gain accumulated -'aergn09diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 24 ; - } -#Aerosol type 10 source/gain accumulated -'aergn10diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 25 ; - } -#Aerosol type 11 source/gain accumulated -'aergn11diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 26 ; - } -#Aerosol type 12 source/gain accumulated -'aergn12diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 27 ; - } -#Aerosol type 1 sink/loss accumulated -'aerls01diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 31 ; - } -#Aerosol type 2 sink/loss accumulated -'aerls02diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 32 ; - } -#Aerosol type 3 sink/loss accumulated -'aerls03diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 33 ; - } -#Aerosol type 4 sink/loss accumulated -'aerls04diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 34 ; - } -#Aerosol type 5 sink/loss accumulated -'aerls05diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 35 ; - } -#Aerosol type 6 sink/loss accumulated -'aerls06diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 36 ; - } -#Aerosol type 7 sink/loss accumulated -'aerls07diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 37 ; - } -#Aerosol type 8 sink/loss accumulated -'aerls08diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 38 ; - } -#Aerosol type 9 sink/loss accumulated -'aerls09diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 39 ; - } -#Aerosol type 10 sink/loss accumulated -'aerls10diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 40 ; - } -#Aerosol type 11 sink/loss accumulated -'aerls11diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 41 ; - } -#Aerosol type 12 sink/loss accumulated -'aerls12diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 42 ; - } -#Aerosol precursor mixing ratio -'aerprdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 46 ; - } -#Aerosol small mode mixing ratio -'aersmdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 47 ; - } -#Aerosol large mode mixing ratio -'aerlgdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 48 ; - } -#Aerosol precursor optical depth -'aodprdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 49 ; - } -#Aerosol small mode optical depth -'aodsmdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 50 ; - } -#Aerosol large mode optical depth -'aodlgdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 51 ; - } -#Dust emission potential -'aerdepdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 52 ; - } -#Lifting threshold speed -'aerltsdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 53 ; - } -#Soil clay content -'aersccdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 54 ; - } -#Carbon Dioxide -'co2diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 61 ; - } -#Methane -'ch4diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 62 ; - } -#Nitrous oxide -'n2odiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 63 ; - } -#Total column Carbon Dioxide -'tcco2diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 64 ; - } -#Total column Methane -'tcch4diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 65 ; - } -#Total column Nitrous oxide -'tcn2odiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 66 ; - } -#Ocean flux of Carbon Dioxide -'co2ofdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 67 ; - } -#Natural biosphere flux of Carbon Dioxide -'co2nbfdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 68 ; - } -#Anthropogenic emissions of Carbon Dioxide -'co2apfdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 69 ; - } -#Methane Surface Fluxes -'ch4fdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 70 ; - } -#Methane loss rate due to radical hydroxyl (OH) -'kch4diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 71 ; - } -#Wildfire overall flux of burnt Carbon -'cfirediff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 92 ; - } -#Wildfire fraction of C4 plants -'c4ffirediff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 93 ; - } -#Wildfire vegetation map index -'vegfirediff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 94 ; - } -#Wildfire Combustion Completeness -'ccfirediff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 95 ; - } -#Wildfire Fuel Load: Carbon per unit area -'flfirediff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 96 ; - } -#Wildfire fraction of area observed -'offirediff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 97 ; - } -#Wildfire observed area -'oafirediff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 98 ; - } -#Wildfire radiative power -'frpfirediff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 99 ; - } -#Wildfire combustion rate -'crfirediff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 100 ; - } -#Formaldehyde -'hchodiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 124 ; - } -#Total column Nitrogen dioxide -'tcno2diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 125 ; - } -#Total column Sulphur dioxide -'tcso2diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 126 ; - } -#Total column Carbon monoxide -'tccodiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 127 ; - } -#Total column Formaldehyde -'tchchodiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 128 ; - } -#Nitrogen Oxides -'noxdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 129 ; - } -#Total Column Nitrogen Oxides -'tcnoxdiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 130 ; - } -#Reactive tracer 1 mass mixing ratio -'grg1diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 131 ; - } -#Total column GRG tracer 1 -'tcgrg1diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 132 ; - } -#Reactive tracer 2 mass mixing ratio -'grg2diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 133 ; - } -#Total column GRG tracer 2 -'tcgrg2diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 134 ; - } -#Reactive tracer 3 mass mixing ratio -'grg3diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 135 ; - } -#Total column GRG tracer 3 -'tcgrg3diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 136 ; - } -#Reactive tracer 4 mass mixing ratio -'grg4diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 137 ; - } -#Total column GRG tracer 4 -'tcgrg4diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 138 ; - } -#Reactive tracer 5 mass mixing ratio -'grg5diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 139 ; - } -#Total column GRG tracer 5 -'tcgrg5diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 140 ; - } -#Reactive tracer 6 mass mixing ratio -'grg6diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 141 ; - } -#Total column GRG tracer 6 -'tcgrg6diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 142 ; - } -#Reactive tracer 7 mass mixing ratio -'grg7diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 143 ; - } -#Total column GRG tracer 7 -'tcgrg7diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 144 ; - } -#Reactive tracer 8 mass mixing ratio -'grg8diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 145 ; - } -#Total column GRG tracer 8 -'tcgrg8diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 146 ; - } -#Reactive tracer 9 mass mixing ratio -'grg9diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 147 ; - } -#Total column GRG tracer 9 -'tcgrg9diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 148 ; - } -#Reactive tracer 10 mass mixing ratio -'grg10diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 149 ; - } -#Total column GRG tracer 10 -'tcgrg10diff' = { +#10 metre wind gust difference +'fgdiff10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 150 ; + parameterCategory = 200 ; + parameterNumber = 49 ; } -#Surface flux Nitrogen oxides -'sfnoxdiff' = { +#10 metre wind gust in the last 6 hours difference +'fg6diff10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 151 ; + parameterCategory = 200 ; + parameterNumber = 123 ; } -#Surface flux Nitrogen dioxide -'sfno2diff' = { +#10 metre U wind component difference +'udiff10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 152 ; + parameterCategory = 200 ; + parameterNumber = 165 ; } -#Surface flux Sulphur dioxide -'sfso2diff' = { +#10 metre V wind component difference +'vdiff10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 153 ; + parameterCategory = 200 ; + parameterNumber = 166 ; } -#Surface flux Carbon monoxide -'sfco2diff' = { +#2 metre temperature difference +'difft2' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 154 ; + parameterCategory = 200 ; + parameterNumber = 167 ; } -#Surface flux Formaldehyde -'sfhchodiff' = { +#10 metre wind speed difference +'sidiff10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 155 ; + parameterCategory = 200 ; + parameterNumber = 207 ; } -#Surface flux GEMS Ozone -'sfgo3diff' = { +#100 metre U wind component anomaly +'ua100' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 156 ; + parameterCategory = 171 ; + parameterNumber = 6 ; } -#Surface flux reactive tracer 1 -'sfgr1diff' = { +#100 metre V wind component anomaly +'va100' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 157 ; + parameterCategory = 171 ; + parameterNumber = 7 ; } -#Surface flux reactive tracer 2 -'sfgr2diff' = { +#10 metre wind gust gradient +'fggrd10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 158 ; + parameterCategory = 129 ; + parameterNumber = 49 ; } -#Surface flux reactive tracer 3 -'sfgr3diff' = { +#10 metre wind gust in the last 6 hours gradient +'fg6grd10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 159 ; + parameterCategory = 129 ; + parameterNumber = 123 ; } -#Surface flux reactive tracer 4 -'sfgr4diff' = { +#10 metre U wind component gradient +'ugrd10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 160 ; + parameterCategory = 129 ; + parameterNumber = 165 ; } -#Surface flux reactive tracer 5 -'sfgr5diff' = { +#10 metre V wind component gradient +'vgrd10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 161 ; + parameterCategory = 129 ; + parameterNumber = 166 ; } -#Surface flux reactive tracer 6 -'sfgr6diff' = { +#2 metre temperature gradient +'grd2t' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 162 ; + parameterCategory = 129 ; + parameterNumber = 167 ; } -#Surface flux reactive tracer 7 -'sfgr7diff' = { +#2 metre dewpoint temperature gradient +'grd2d' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 163 ; + parameterCategory = 129 ; + parameterNumber = 168 ; } -#Surface flux reactive tracer 8 -'sfgr8diff' = { +#10 metre wind speed gradient +'sigrd10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 164 ; + parameterCategory = 129 ; + parameterNumber = 207 ; } -#Surface flux reactive tracer 9 -'sfgr9diff' = { +#2m temperature anomaly of at least +2K +'t2ag2' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 165 ; + parameterCategory = 131 ; + parameterNumber = 1 ; } -#Surface flux reactive tracer 10 -'sfgr10diff' = { +#2m temperature anomaly of at least +1K +'t2ag1' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 166 ; + parameterCategory = 131 ; + parameterNumber = 2 ; } -#Radon -'radiff' = { +#2m temperature anomaly of at least 0K +'t2ag0' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 181 ; + parameterCategory = 131 ; + parameterNumber = 3 ; } -#Sulphur Hexafluoride -'sf6diff' = { +#2m temperature anomaly of at most -1K +'t2alm1' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 182 ; + parameterCategory = 131 ; + parameterNumber = 4 ; } -#Total column Radon -'tcradiff' = { +#2m temperature anomaly of at most -2K +'t2alm2' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 183 ; + parameterCategory = 131 ; + parameterNumber = 5 ; } -#Total column Sulphur Hexafluoride -'tcsf6diff' = { +#10 metre wind gust probability +'g10p' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 184 ; + parameterCategory = 131 ; + parameterNumber = 49 ; } -#Anthropogenic Emissions of Sulphur Hexafluoride -'sf6apfdiff' = { +#10 metre Wind speed of at least 10 m/s +'sp10g10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 185 ; + parameterCategory = 131 ; + parameterNumber = 68 ; } -#GEMS Total column ozone -'gtco3diff' = { +#10 metre Wind speed of at least 15 m/s +'sp10g15' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 206 ; + parameterCategory = 131 ; + parameterNumber = 69 ; } -#Total Aerosol Optical Depth at 550nm -'aod550diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 207 ; +#10 metre wind gust of at least 25 m/s +'fg10g25' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 22 ; + productDefinitionTemplateNumber = 9 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 10 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; + scaledValueOfLowerLimit = 25 ; + scaleFactorOfLowerLimit = 0 ; + probabilityType = 3 ; } -#Sea Salt Aerosol Optical Depth at 550nm -'ssaod550diff' = { +#2 metre temperature less than 273.15 K +'t2l273' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 208 ; + parameterCategory = 131 ; + parameterNumber = 73 ; } -#Dust Aerosol Optical Depth at 550nm -'duaod550diff' = { +#10 metre speed probability +'sp10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 209 ; + parameterCategory = 131 ; + parameterNumber = 165 ; } -#Organic Matter Aerosol Optical Depth at 550nm -'omaod550diff' = { +#2 metre temperature probability +'t2p' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 210 ; + parameterCategory = 131 ; + parameterNumber = 167 ; } -#Black Carbon Aerosol Optical Depth at 550nm -'bcaod550diff' = { +#2m temperature probability less than -10 C +'t2plm10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 211 ; + parameterCategory = 133 ; + parameterNumber = 1 ; } -#Sulphate Aerosol Optical Depth at 550nm -'suaod550diff' = { +#2m temperature probability less than -5 C +'t2plm5' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 212 ; + parameterCategory = 133 ; + parameterNumber = 2 ; } -#Total Aerosol Optical Depth at 469nm -'aod469diff' = { +#2m temperature probability less than 0 C +'t2pl0' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 213 ; + parameterCategory = 133 ; + parameterNumber = 3 ; } -#Total Aerosol Optical Depth at 670nm -'aod670diff' = { +#2m temperature probability less than 5 C +'t2pl5' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 214 ; + parameterCategory = 133 ; + parameterNumber = 4 ; } -#Total Aerosol Optical Depth at 865nm -'aod865diff' = { +#2m temperature probability less than 10 C +'t2pl10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 215 ; + parameterCategory = 133 ; + parameterNumber = 5 ; } -#Total Aerosol Optical Depth at 1240nm -'aod1240diff' = { +#2m temperature probability greater than 25 C +'t2pg25' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 216 ; + parameterCategory = 133 ; + parameterNumber = 6 ; } -#Total precipitation observation count -'tpoc' = { +#2m temperature probability greater than 30 C +'t2pg30' = { discipline = 192 ; - parameterCategory = 220 ; - parameterNumber = 228 ; - } -#Mean total cloud cover -'meantcc' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 192 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; + parameterCategory = 133 ; + parameterNumber = 7 ; } -#Surface temperature significance -'sts' = { +#2m temperature probability greater than 35 C +'t2pg35' = { discipline = 192 ; - parameterCategory = 234 ; - parameterNumber = 139 ; + parameterCategory = 133 ; + parameterNumber = 8 ; } -#Mean sea level pressure significance -'msls' = { +#2m temperature probability greater than 40 C +'t2pg40' = { discipline = 192 ; - parameterCategory = 234 ; - parameterNumber = 151 ; + parameterCategory = 133 ; + parameterNumber = 9 ; } -#2 metre temperature significance -'t2s' = { +#2m temperature probability greater than 45 C +'t2pg45' = { discipline = 192 ; - parameterCategory = 234 ; - parameterNumber = 167 ; + parameterCategory = 133 ; + parameterNumber = 10 ; } -#Total precipitation significance -'tps' = { +#10 metre wind speed probability of at least 10 m/s +'sp10g10' = { discipline = 192 ; - parameterCategory = 234 ; - parameterNumber = 228 ; + parameterCategory = 133 ; + parameterNumber = 21 ; } -#Wildfire radiative power maximum -'maxfrpfire' = { +#10 metre wind speed probability of at least 15 m/s +'sp10g15' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 101 ; + parameterCategory = 133 ; + parameterNumber = 22 ; } -#Wildfire flux of Sulfur Dioxide -'so2fire' = { +#10 metre wind speed probability of at least 20 m/s +'sp10g20' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 102 ; + parameterCategory = 133 ; + parameterNumber = 23 ; } -#Wildfire Flux of Methanol (CH3OH) -'ch3ohfire' = { +#10 metre wind speed probability of at least 35 m/s +'sp10g35' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 103 ; + parameterCategory = 133 ; + parameterNumber = 24 ; } -#Wildfire Flux of Ethanol (C2H5OH) -'c2h5ohfire' = { +#10 metre wind speed probability of at least 50 m/s +'sp10g50' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 104 ; + parameterCategory = 133 ; + parameterNumber = 25 ; } -#Wildfire Flux of Propane (C3H8) -'c3h8fire' = { +#10 metre wind gust probability of at least 20 m/s +'gp10g20' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 105 ; + parameterCategory = 133 ; + parameterNumber = 26 ; } -#Wildfire Flux of Ethene (C2H4) -'c2h4fire' = { +#10 metre wind gust probability of at least 35 m/s +'gp10g35' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 106 ; + parameterCategory = 133 ; + parameterNumber = 27 ; } -#Wildfire Flux of Propene (C3H6) -'c3h6fire' = { +#10 metre wind gust probability of at least 50 m/s +'gp10g50' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 107 ; + parameterCategory = 133 ; + parameterNumber = 28 ; } -#Wildfire Flux of Isoprene (C5H8) -'c5h8fire' = { +#10 metre wind gust probability of at least 75 m/s +'gp10g75' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 108 ; + parameterCategory = 133 ; + parameterNumber = 29 ; } -#Wildfire Flux of Terpenes (C5H8)n -'terpenesfire' = { +#10 metre wind gust probability of at least 100 m/s +'gp10g100' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 109 ; + parameterCategory = 133 ; + parameterNumber = 30 ; } -#Wildfire Flux of Toluene_lump (C7H8+ C6H6 + C8H10) -'toluenefire' = { +#2D wave spectra (multiple) +'d2sp' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 110 ; + parameterCategory = 140 ; + parameterNumber = 250 ; } -#Wildfire Flux of Higher Alkenes (CnH2n, C>=4) -'hialkenesfire' = { +#10 metre wind gust during averaging time +'fgrea10' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 111 ; + parameterCategory = 160 ; + parameterNumber = 49 ; } -#Wildfire Flux of Higher Alkanes (CnH2n+2, C>=4) -'hialkanesfire' = { +#10 metre wind speed +'wsrea10' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 112 ; + parameterCategory = 160 ; + parameterNumber = 246 ; } -#Wildfire Flux of Formaldehyde (CH2O) -'ch2ofire' = { +#10 metre wind gust anomaly +'fga10' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 113 ; + parameterCategory = 171 ; + parameterNumber = 49 ; } -#Wildfire Flux of Acetaldehyde (C2H4O) -'c2h4ofire' = { +#10 metre U wind component anomaly +'ua10' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 114 ; + parameterCategory = 171 ; + parameterNumber = 165 ; } -#Wildfire Flux of Acetone (C3H6O) -'c3h6ofire' = { +#10 metre V wind component anomaly +'va10' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 115 ; + parameterCategory = 171 ; + parameterNumber = 166 ; } -#Wildfire Flux of Ammonia (NH3) -'nh3fire' = { +#2 metre temperature anomaly +'t2a' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 116 ; + parameterCategory = 171 ; + parameterNumber = 167 ; } -#Wildfire Flux of Dimethyl Sulfide (DMS) (C2H6S) -'c2h6sfire' = { +#2 metre dewpoint temperature anomaly +'d2a' = { discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 117 ; + parameterCategory = 171 ; + parameterNumber = 168 ; } -#Wildfire radiative power maximum -'maxfrpfirediff' = { +#10 metre wind speed anomaly +'sia10' = { discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 101 ; - } -#V-tendency from non-orographic wave drag -'vtnowd' = { - localTablesVersion = 228 ; - discipline = 0 ; - parameterCategory = 254 ; - parameterNumber = 134 ; - } -#U-tendency from non-orographic wave drag -'utnowd' = { - localTablesVersion = 228 ; - discipline = 0 ; - parameterCategory = 254 ; - parameterNumber = 136 ; + parameterCategory = 171 ; + parameterNumber = 207 ; } -#ASCAT first soil moisture CDF matching parameter -'ascat_sm_cdfa' = { +#2 metre dewpoint temperature difference +'ddiff2' = { discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 253 ; + parameterCategory = 200 ; + parameterNumber = 168 ; } -#ASCAT second soil moisture CDF matching parameter -'ascat_sm_cdfb' = { +#2 metre temperature significance +'t2s' = { discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 254 ; + parameterCategory = 234 ; + parameterNumber = 167 ; } diff --git a/definitions/grib2/localConcepts/kwbc/cfVarName.def b/definitions/grib2/localConcepts/kwbc/cfVarName.def index 06c621dd5..39ecfae04 100644 --- a/definitions/grib2/localConcepts/kwbc/cfVarName.def +++ b/definitions/grib2/localConcepts/kwbc/cfVarName.def @@ -1,1915 +1,19 @@ # Automatically generated by ./create_def.pl, do not edit -#Convective available potential energy -'cape' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 6 ; - } -#Snow phase change heat flux -'snohf' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 192 ; - } -#Condensate -'tcond' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 195 ; - } -#Horizontal moisture convergence -'mconv' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 197 ; - } -#Categorical rain -'crain' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 192 ; - } -#Categorical freezing rain -'cfrzr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 193 ; - } -#Categorical ice pellets -'cicep' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 194 ; - } -#Categorical snow -'csnow' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 195 ; - } -#Convective precipitation rate -'cprat' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 196 ; - } -#Percent frozen precipitation -'cpofp' = { - discipline = 1 ; - parameterCategory = 1 ; - parameterNumber = 193 ; - } -#Potential evaporation -'pevap' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 199 ; - } -#Snow cover -'snowc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 201 ; - } -#Rain fraction of total cloud water -'frain' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 202 ; - } -#Rime factor -'rime' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 203 ; - } -#Total column integrated rain -'tcolr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 204 ; - } -#Total column integrated snow -'tcols' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 205 ; - } -#Water equivalent of accumulated snow depth (deprecated) -'sdwe' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 11 ; - } -#Vertical speed shear -'vwsh' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 192 ; - } -#Horizontal momentum flux -'mflx' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 193 ; - } -#U-component storm motion -'ustm' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 194 ; - } -#V-component storm motion -'vstm' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 195 ; - } -#Drag coefficient -'cd' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 196 ; - } -#Frictional velocity -'fricv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 197 ; - } #5-wave geopotential height 'wavh5' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 193 ; } -#Zonal flux of gravity wave stress -'u-gwd' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 194 ; - } -#Meridional flux of gravity wave stress -'v-gwd' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 195 ; - } #5-wave geopotential height anomaly 'wava5' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 197 ; } -#Downward short-wave radiation flux -'dswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 192 ; - } -#Upward short-wave radiation flux -'uswrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 193 ; - } -#UV index -'uvi' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 196 ; - } -#Downward long-wave radiation flux -'dlwrf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 192 ; - } -#Upward long-wave radiation flux -'ulwrf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 193 ; - } -#Non-convective cloud cover -'cdlyr' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 192 ; - } -#Cloud work function -'cwork' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 193 ; - } -#Convective cloud efficiency -'cuefi' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 194 ; - } -#Total column-integrated cloud water -'tcolw' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 196 ; - } -#Total column-integrated cloud ice -'tcoli' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 197 ; - } -#Total column-integrated condensate -'tcolc' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 198 ; - } -#Ice fraction of total condensate -'fice' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 199 ; - } -#Surface lifted index -'lftx' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 192 ; - } #Best (4-layer) lifted index 'lftx4' = { discipline = 0 ; parameterCategory = 7 ; parameterNumber = 193 ; - } -#Ozone mixing ratio -'o3mr' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 192 ; - } -#Maximum snow albedo -'mxsalb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 192 ; - } -#Snow free albedo -'snfalb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 193 ; - } -#Seconds prior to initial reference time (defined in Section 1) -'tsec' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 194 ; - } -#Baseflow-groundwater runoff -'bgrun' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 192 ; - } -#Storm surface runoff -'ssrun' = { - discipline = 1 ; - parameterCategory = 0 ; - parameterNumber = 193 ; - } -#Volumetric soil moisture content -'soilw' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 192 ; - } -#Ground heat flux -'gflux' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 193 ; - } -#Moisture availability -'mstav' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 194 ; - } -#Exchange coefficient -'sfexc' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 195 ; - } -#Plant canopy surface water -'cnwat' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 196 ; - } -#Blackadar mixing length scale -'bmixl' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 197 ; - } -#Canopy conductance -'ccond' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 199 ; - } -#Minimal stomatal resistance -'rsmin' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 200 ; - } -#Solar parameter in canopy conductance -'rcs' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 202 ; - } -#Temperature parameter in canopy conductance -'rct' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 203 ; - } -#Soil moisture parameter in canopy conductance -'rcsol' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 205 ; - } -#Humidity parameter in canopy conductance -'rcq' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 204 ; - } -#Liquid volumetric soil moisture (non-frozen) -'soill' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 192 ; - } -#Number of soil layers in root zone -'rlyrs' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 193 ; - } -#Transpiration stress-onset (soil moisture) -'smref' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 195 ; - } -#Direct evaporation cease (soil moisture) -'smdry' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 196 ; - } -#Soil porosity -'poros' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 197 ; - } -#Temperature tendency by all radiation -'ttrad' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 193 ; - } -#Relative Error Variance -'rev' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 194 ; - } -#Large Scale Condensate Heating rate -'lrghr' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 195 ; - } -#Deep Convective Heating rate -'cnvhr' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 196 ; - } -#Total Downward Heat Flux at Surface -'thflx' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 197 ; - } -#Temperature Tendency By All Physics -'ttdia' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 198 ; - } -#Temperature Tendency By Non-radiation Physics -'ttphy' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 199 ; - } -#Standard Dev. of IR Temp. over 1x1 deg. area -'tsd1d' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 200 ; - } -#Shallow Convective Heating rate -'shahr' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 201 ; - } -#Vertical Diffusion Heating rate -'vdfhr' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 202 ; - } -#Potential temperature at top of viscous sublayer -'thz0' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 203 ; - } -#Tropical Cyclone Heat Potential -'tchp' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 204 ; - } -#Minimum Relative Humidity -'minrh' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 198 ; - } -#Total Icing Potential Diagnostic -'tipd' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 206 ; - } -#Number concentration for ice particles -'ncip' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 207 ; - } -#Snow temperature -'snot' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 208 ; - } -#Total column-integrated supercooled liquid water -'tclsw' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 209 ; - } -#Total column-integrated melting ice -'tcolm' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 210 ; - } -#Evaporation - Precipitation -'emnp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 211 ; - } -#Sublimation (evaporation from snow) -'sbsno' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 212 ; - } -#Deep Convective Moistening Rate -'cnvmr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 213 ; - } -#Shallow Convective Moistening Rate -'shamr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 214 ; - } -#Vertical Diffusion Moistening Rate -'vdfmr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 215 ; - } -#Condensation Pressure of Parcali Lifted From Indicate Surface -'condp' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 216 ; - } -#Large scale moistening rate -'lrgmr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 217 ; - } -#Specific humidity at top of viscous sublayer -'qz0' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 218 ; - } -#Maximum specific humidity at 2m -'qmax' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 219 ; - } -#Minimum specific humidity at 2m -'qmin' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 220 ; - } -#Liquid precipitation (rainfall) -'arain' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 221 ; - } -#Snow temperature, depth-avg -'snowt' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 222 ; - } -#Total precipitation (nearest grid point) -'apcpn' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 223 ; - } -#Convective precipitation (nearest grid point) -'acpcpn' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 224 ; - } -#Freezing Rain -'frzr' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 225 ; - } -#Latitude of U Wind Component of Velocity -'lauv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 198 ; - } -#Longitude of U Wind Component of Velocity -'louv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 199 ; - } -#Latitude of V Wind Component of Velocity -'lavv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 200 ; - } -#Longitude of V Wind Component of Velocity -'lovv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 201 ; - } -#Latitude of Pressure Point -'lapp' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 202 ; - } -#Longitude of Pressure Point -'lopp' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 203 ; - } -#Vertical Eddy Diffusivity Heat exchange -'vedh' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 204 ; - } -#Covariance between Meridional and Zonal Components of the wind. -'covmz' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 205 ; - } -#Covariance between Temperature and Zonal Components of the wind. -'covtz' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 206 ; - } -#Covariance between Temperature and Meridional Components of the wind. -'covtm' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 207 ; - } -#Vertical Diffusion Zonal Acceleration -'vdfua' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 208 ; - } -#Vertical Diffusion Meridional Acceleration -'vdfva' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 209 ; - } -#Gravity wave drag zonal acceleration -'gwdu' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 210 ; - } -#Gravity wave drag meridional acceleration -'gwdv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 211 ; - } -#Convective zonal momentum mixing acceleration -'cnvu' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 212 ; - } -#Convective meridional momentum mixing acceleration -'cnvv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 213 ; - } -#Tendency of vertical velocity -'wtend' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 214 ; - } -#Omega (Dp/Dt) divide by density -'omgalf' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 215 ; - } -#Convective Gravity wave drag zonal acceleration -'cngwdu' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 216 ; - } -#Convective Gravity wave drag meridional acceleration -'cngwdv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 217 ; - } -#Velocity Point Model Surface -'lmv' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 218 ; - } -#Potential Vorticity (Mass-Weighted) -'pvmww' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 219 ; - } -#MSLP (Eta model reduction) -'mslet' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 192 ; - } -#MSLP (MAPS System Reduction) -'mslma' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 198 ; - } -#3-hr pressure tendency (Std. Atmos. Reduction) -'tslsa' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 199 ; - } -#Pressure of level from which parcel was lifted -'plpl' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 200 ; - } -#X-gradient of Log Pressure -'lpsx' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 201 ; - } -#Y-gradient of Log Pressure -'lpsy' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 202 ; - } -#X-gradient of Height -'hgtx' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 203 ; - } -#Y-gradient of Height -'hgty' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 204 ; - } -#Layer Thickness -'layth' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 205 ; - } -#Natural Log of Surface Pressure -'nlgsp' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 206 ; - } -#Convective updraft mass flux -'cnvumf' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 207 ; - } -#Convective downdraft mass flux -'cnvdmf' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 208 ; - } -#Convective detrainment mass flux -'cnvdemf' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 209 ; - } -#Mass Point Model Surface -'lmh' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 210 ; - } -#Geopotential Height (nearest grid point) -'hgtn' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 211 ; - } -#Pressure (nearest grid point) -'presn' = { - discipline = 0 ; - parameterCategory = 3 ; - parameterNumber = 212 ; - } -#UV-B downward solar flux -'duvb' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 194 ; - } -#Clear sky UV-B downward solar flux -'cduvb' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 195 ; - } -#Clear Sky Downward Solar Flux -'csdsf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 196 ; - } -#Solar Radiative Heating Rate -'swhr' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 197 ; - } -#Clear Sky Upward Solar Flux -'csusf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 198 ; - } -#Cloud Forcing Net Solar Flux -'cfnsf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 199 ; - } -#Visible Beam Downward Solar Flux -'vbdsf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 200 ; - } -#Visible Diffuse Downward Solar Flux -'vddsf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 201 ; - } -#Near IR Beam Downward Solar Flux -'nbdsf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 202 ; - } -#Near IR Diffuse Downward Solar Flux -'nddsf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 203 ; - } -#Downward Total radiation Flux -'dtrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 204 ; - } -#Upward Total radiation Flux -'utrf' = { - discipline = 0 ; - parameterCategory = 4 ; - parameterNumber = 205 ; - } -#Long-Wave Radiative Heating Rate -'lwhr' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 194 ; - } -#Clear Sky Upward Long Wave Flux -'csulf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 195 ; - } -#Clear Sky Downward Long Wave Flux -'csdlf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 196 ; - } -#Cloud Forcing Net Long Wave Flux -'cfnlf' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 197 ; - } -#Convective Cloud Mass Flux -'mflux' = { - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 200 ; - } -#Richardson Number -'ri' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 194 ; - } -#Convective Weather Detection Index -'cwdi' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 195 ; - } -#Updraft Helicity -'uphl' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 197 ; - } -#Leaf Area Index -'lai' = { - discipline = 0 ; - parameterCategory = 7 ; - parameterNumber = 198 ; - } -#Particulate matter (coarse) -'pmtc' = { - discipline = 0 ; - parameterCategory = 13 ; - parameterNumber = 192 ; - } -#Particulate matter (fine) -'pmtf' = { - discipline = 0 ; - parameterCategory = 13 ; - parameterNumber = 193 ; - } -#Particulate matter (fine) -'lpmtf' = { - discipline = 0 ; - parameterCategory = 13 ; - parameterNumber = 194 ; - } -#Integrated column particulate matter (fine) -'lipmf' = { - discipline = 0 ; - parameterCategory = 13 ; - parameterNumber = 195 ; - } -#Ozone Concentration (PPB) -'ozcon' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 193 ; - } -#Categorical Ozone Concentration -'ozcat' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 194 ; - } -#Ozone vertical diffusion -'vdfoz' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 195 ; - } -#Ozone production -'poz' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 196 ; - } -#Ozone tendency -'toz' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 197 ; - } -#Ozone production from temperature term -'pozt' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 198 ; - } -#Ozone production from col ozone term -'pozo' = { - discipline = 0 ; - parameterCategory = 14 ; - parameterNumber = 199 ; - } -#Derived radar reflectivity backscatter from rain -'refzr' = { - discipline = 0 ; - parameterCategory = 16 ; - parameterNumber = 192 ; - } -#Derived radar reflectivity backscatter from ice -'refzi' = { - discipline = 0 ; - parameterCategory = 16 ; - parameterNumber = 193 ; - } -#Derived radar reflectivity backscatter from parameterized convection -'refzc' = { - discipline = 0 ; - parameterCategory = 16 ; - parameterNumber = 194 ; - } -#Derived radar reflectivity -'refd' = { - discipline = 0 ; - parameterCategory = 16 ; - parameterNumber = 195 ; - } -#Maximum/Composite radar reflectivity -'refc' = { - discipline = 0 ; - parameterCategory = 16 ; - parameterNumber = 196 ; - } -#Lightning -'ltng' = { - discipline = 0 ; - parameterCategory = 17 ; - parameterNumber = 192 ; - } -#Slight risk convective outlook -'srcono' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 194 ; - } -#Moderate risk convective outlook -'mrcono' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 195 ; - } -#High risk convective outlook -'hrcono' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 196 ; - } -#Tornado probability -'torprob' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 197 ; - } -#Hail probability -'hailprob' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 198 ; - } -#Wind probability -'windprob' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 199 ; - } -#Significant Tornado probability -'storprob' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 200 ; - } -#Significant Hail probability -'shailpro' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 201 ; - } -#Significant Wind probability -'swindpro' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 202 ; - } -#Categorical Thunderstorm (1-yes, 0-no) -'tstmc' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 203 ; - } -#Number of mixed layers next to surface -'mixly' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 204 ; - } -#Flight Category -'flght' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 205 ; - } -#Confidence - Ceiling -'cicel' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 206 ; - } -#Confidence - Visibility -'civis' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 207 ; - } -#Confidence - Flight Category -'ciflt' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 208 ; - } -#Low-Level aviation interest -'lavni' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 209 ; - } -#High-Level aviation interest -'havni' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 210 ; - } -#Visible, Black Sky Albedo -'sbsalb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 211 ; - } -#Visible, White Sky Albedo -'swsalb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 212 ; - } -#Near IR, Black Sky Albedo -'nbsalb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 213 ; - } -#Near IR, White Sky Albedo -'nwsalb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 214 ; - } -#Total Probability of Severe Thunderstorms (Days 2,3) -'prsvr' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 215 ; - } -#Total Probability of Extreme Severe Thunderstorms (Days 2,3) -'prsigsvr' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 216 ; - } -#Supercooled Large Droplet (SLD) Potential -'sipd' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 217 ; - } -#Radiative emissivity -'epsr' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 218 ; - } -#Turbulence Potential Forecast Index -'tpfi' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 219 ; - } -#Volcanic Ash Forecast Transport and Dispersion -'vaftd' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 232 ; - } -#Latitude (-90 to +90) -'nlat' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 192 ; - } -#East Longitude (0 - 360) -'elon' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 193 ; - } -#Model Layer number (From bottom up) -'mlyno' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 195 ; - } -#Latitude (nearest neighbor) (-90 to +90) -'nlatn' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 196 ; - } -#East Longitude (nearest neighbor) (0 - 360) -'elonn' = { - discipline = 0 ; - parameterCategory = 191 ; - parameterNumber = 197 ; - } -#Probability of Freezing Precipitation -'cpozp' = { - discipline = 1 ; - parameterCategory = 1 ; - parameterNumber = 192 ; - } -#Probability of precipitation exceeding flash flood guidance values -'ppffg' = { - discipline = 1 ; - parameterCategory = 1 ; - parameterNumber = 194 ; - } -#Probability of Wetting Rain, exceeding in 0.10 in a given time period -'cwr' = { - discipline = 1 ; - parameterCategory = 1 ; - parameterNumber = 195 ; - } -#Vegetation Type -'vgtyp' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 198 ; - } -#Wilting Point -'wilt' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 201 ; - } -#Rate of water dropping from canopy to ground -'rdrip' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 206 ; - } -#Ice-free water surface -'icwat' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 207 ; - } -#Surface exchange coefficients for T and Q divided by delta z -'akhs' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 208 ; - } -#Surface exchange coefficients for U and V divided by delta z -'akms' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 209 ; - } -#Vegetation canopy temperature -'vegt' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 210 ; - } -#Surface water storage -'sstor' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 211 ; - } -#Liquid soil moisture content (non-frozen) -'lsoil' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 212 ; - } -#Open water evaporation (standing water) -'ewatr' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 213 ; - } -#Groundwater recharge -'gwrec' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 214 ; - } -#Flood plain recharge -'qrec' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 215 ; - } -#Roughness length for heat -'sfcrh' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 216 ; - } -#Normalized Difference Vegetation Index -'ndvi' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 217 ; - } -#Land-sea coverage (nearest neighbor) [land=1,sea=0] -'landn' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 218 ; - } -#Asymptotic mixing length scale -'amixl' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 219 ; - } -#Water vapor added by precip assimilation -'wvinc' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 220 ; - } -#Water condensate added by precip assimilation -'wcinc' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 221 ; - } -#Water Vapor Flux Convergence (Vertical Int) -'wvconv' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 222 ; - } -#Water Condensate Flux Convergence (Vertical Int) -'wcconv' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 223 ; - } -#Water Vapor Zonal Flux (Vertical Int) -'wvuflx' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 224 ; - } -#Water Vapor Meridional Flux (Vertical Int) -'wvvflx' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 225 ; - } -#Water Condensate Zonal Flux (Vertical Int) -'wcuflx' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 226 ; - } -#Water Condensate Meridional Flux (Vertical Int) -'wcvflx' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 227 ; - } -#Aerodynamic conductance -'acond' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 228 ; - } -#Canopy water evaporation -'evcw' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 229 ; - } -#Transpiration -'trans' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 230 ; - } -#Surface Slope Type -'sltyp' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 194 ; - } -#Direct evaporation from bare soil -'evbs' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 198 ; - } -#Land Surface Precipitation Accumulation -'lspa' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 199 ; - } -#Bare soil surface skin temperature -'baret' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 200 ; - } -#Average surface skin temperature -'avsft' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 201 ; - } -#Effective radiative skin temperature -'radt' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 202 ; - } -#Field Capacity -'fldcp' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 203 ; - } -#Scatterometer Estimated U Wind Component -'usct' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 192 ; - } -#Scatterometer Estimated V Wind Component -'vsct' = { - discipline = 3 ; - parameterCategory = 1 ; - parameterNumber = 193 ; - } -#Wave Steepness -'wstp' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 192 ; - } -#Ocean Mixed Layer U Velocity -'omlu' = { - discipline = 10 ; - parameterCategory = 1 ; - parameterNumber = 192 ; - } -#Ocean Mixed Layer V Velocity -'omlv' = { - discipline = 10 ; - parameterCategory = 1 ; - parameterNumber = 193 ; - } -#Barotropic U velocity -'ubaro' = { - discipline = 10 ; - parameterCategory = 1 ; - parameterNumber = 194 ; - } -#Barotropic V velocity -'vbaro' = { - discipline = 10 ; - parameterCategory = 1 ; - parameterNumber = 195 ; - } -#Storm Surge -'surge' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 192 ; - } -#Extra Tropical Storm Surge -'etsrg' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 193 ; - } -#Ocean Surface Elevation Relative to Geoid -'elevhtml' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 194 ; - } -#Sea Surface Height Relative to Geoid -'sshg' = { - discipline = 10 ; - parameterCategory = 3 ; - parameterNumber = 195 ; - } -#Ocean Mixed Layer Potential Density (Reference 2000m)
name is the value of the key (e.g. 151163 or sst) */ + if (strcmp(key, "cfVarName")==0) { + Assert( strlen(concept_value->name) > 0 ); + if ( isdigit(concept_value->name[0]) || strcmp(concept_value->name, "~")==0 ) { + fprintf(stderr, "%s %s: Invalid cfVarName in file %s\n", + key, concept_value->name, filename); + return GRIB_INVALID_KEY_VALUE; + } + } while (concept_condition) { char condition_value[512] = {0,}; grib_expression* expression = concept_condition->expression; diff --git a/tests/grib_check_param_concepts.sh b/tests/grib_check_param_concepts.sh index 004ca49b8..35b4a4910 100755 --- a/tests/grib_check_param_concepts.sh +++ b/tests/grib_check_param_concepts.sh @@ -39,11 +39,12 @@ done # Check WMO name.def etc $EXEC ${test_dir}/grib_check_param_concepts name $ECCODES_DEFINITION_PATH/grib2/name.def $EXEC ${test_dir}/grib_check_param_concepts units $ECCODES_DEFINITION_PATH/grib2/units.def -$EXEC ${test_dir}/grib_check_param_concepts units $ECCODES_DEFINITION_PATH/grib2/cfVarName.def +$EXEC ${test_dir}/grib_check_param_concepts cfVarName $ECCODES_DEFINITION_PATH/grib2/cfVarName.def +$EXEC ${test_dir}/grib_check_param_concepts cfVarName $ECCODES_DEFINITION_PATH/grib2/localConcepts/ecmf/cfVarName.def -# Check the group: name.def paramId.def shortName.def units.def cfVarName.def -# ---------------------------------------------------------------------------- +# Check the group: name.def paramId.def shortName.def units.def +# ------------------------------------------------------------- # Check whether the Test::More Perl module is available set +e perl -e 'use Test::More;' @@ -119,7 +120,7 @@ rm -fr $tempDir mkdir -p $tempDir cd $tempDir cp $ECMF_DIR/cfName.legacy.def cfName.def -cp $ECMF_DIR/cfVarName.legacy.def cfVarName.def +# cp $ECMF_DIR/cfVarName.legacy.def cfVarName.def cp $ECMF_DIR/name.legacy.def name.def cp $ECMF_DIR/paramId.legacy.def paramId.def cp $ECMF_DIR/shortName.legacy.def shortName.def From 5b888f382cdfde85f6d9b137a2822d96a4903385 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 2 Aug 2024 11:51:58 +0000 Subject: [PATCH 129/277] ECC-1886: No need for cfVarName.legacy.def --- definitions/grib2/cfVarName.legacy.def | 188 -- .../localConcepts/ecmf/cfVarName.legacy.def | 1779 ----------------- 2 files changed, 1967 deletions(-) delete mode 100644 definitions/grib2/cfVarName.legacy.def delete mode 100644 definitions/grib2/localConcepts/ecmf/cfVarName.legacy.def diff --git a/definitions/grib2/cfVarName.legacy.def b/definitions/grib2/cfVarName.legacy.def deleted file mode 100644 index ffd6469d2..000000000 --- a/definitions/grib2/cfVarName.legacy.def +++ /dev/null @@ -1,188 +0,0 @@ -#Volumetric soil moisture content -'soilw' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 9 ; - } -#Upper layer soil temperature -'uplst' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 1 ; - } -#Upper layer soil moisture -'uplsm' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 2 ; - } -#Lower layer soil moisture -'lowlsm' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 3 ; - } -#Bottom layer soil temperature -'botlst' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 4 ; - } -#Liquid volumetric soil moisture (non-frozen) -'soill' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 5 ; - } -#Transpiration stress-onset (soil moisture) -'smref' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 7 ; - } -#Direct evaporation cease (soil moisture) -'smdry' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 8 ; - } -#Soil porosity -'poros' = { - discipline = 2 ; - parameterCategory = 3 ; - parameterNumber = 9 ; - } -#Instantaneous eastward turbulent surface stress -'iews' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 38 ; - typeOfFirstFixedSurface = 1 ; -} -#Instantaneous northward turbulent surface stress -'inss' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 37 ; - typeOfFirstFixedSurface = 1 ; -} -#Evaporation in the last 6 hours -'eva06' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 79 ; - typeOfFirstFixedSurface = 1 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 1 ; - lengthOfTimeRange = 6 ; -} -#Time-mean evapotranspiration rate in the last 24h -'avg_et24' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 39 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 24 ; -} -#Time-integrated potential evapotranspiration rate in the last 24h -'acc_pet24' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 40 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 1 ; - lengthOfTimeRange = 24 ; -} -#Time-mean potential evapotranspiration rate in the last 24h -'avg_pet24' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 40 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 24 ; -} -#Time-mean volumetric soil moisture -'avg_swv24' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 25 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 24 ; -} -#Time-integrated water runoff and drainage rate in the last 24h -'acc_rod24' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 42 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 1 ; - lengthOfTimeRange = 24 ; -} -#Time-mean water runoff and drainage rate in the last 24h -'avg_rod24' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 42 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 24 ; -} -#Time-mean snow depth water equivalent -'avg_sd24' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 60 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 24 ; -} -#Time-mean skin temperature -'avg_skt24' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 17 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 0 ; - lengthOfTimeRange = 24 ; -} -#Time-integrated snow melt rate in the last 24h -'acc_smr24' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 41 ; - indicatorOfUnitForTimeRange = 1 ; - typeOfStatisticalProcessing = 1 ; - lengthOfTimeRange = 24 ; -} -#Upward sea water velocity -'wo' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 27 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; -} -#Time-mean upward sea water velocity -'avg_wo' = { - discipline = 10 ; - parameterCategory = 4 ; - parameterNumber = 27 ; - typeOfFirstFixedSurface = 168 ; - typeOfSecondFixedSurface = 168 ; - typeOfStatisticalProcessing = 0 ; -} -#Maximum individual wave height -'hmax' = { - discipline = 10 ; - parameterCategory = 0 ; - parameterNumber = 24 ; -} -#Soil temperature -'st' = { - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 2 ; -} diff --git a/definitions/grib2/localConcepts/ecmf/cfVarName.legacy.def b/definitions/grib2/localConcepts/ecmf/cfVarName.legacy.def deleted file mode 100644 index cb38cc6e2..000000000 --- a/definitions/grib2/localConcepts/ecmf/cfVarName.legacy.def +++ /dev/null @@ -1,1779 +0,0 @@ -#Surface net solar radiation, clear sky -'ssrc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 210 ; -} -#Surface net thermal radiation, clear sky -'strc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 211 ; -} -#Eastward sea water velocity -'uoe' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 131 ; -} -#Northward sea water velocity -'von' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 132 ; -} -#Sea-ice thickness -'sithick' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 98 ; -} -#Sea surface height -'zos' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 145 ; -} -#100 metre U wind component -'u100' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 246 ; -} -#100 metre V wind component -'v100' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 247 ; -} -#100 metre wind speed -'si100' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 249 ; -} -#0 degrees C isothermal level (atm) -'deg0l' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 24 ; -} -#Depth of 20C isotherm -'t20d' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 163 ; -} -#Average salinity in the upper 300m -'sav300' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 175 ; -} -#Total precipitation of at least 1 mm -'tpg1' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 60 ; -} -#Total precipitation of at least 5 mm -'tpg5' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 61 ; -} -#Total precipitation of at least 40 mm -'tpg40' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 82 ; -} -#Total precipitation of at least 60 mm -'tpg60' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 83 ; -} -#Total precipitation of at least 80 mm -'tpg80' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 84 ; -} -#Total precipitation of at least 150 mm -'tpg150' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 86 ; -} -#Total precipitation of at least 200 mm -'tpg200' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 87 ; -} -#Total precipitation of at least 300 mm -'tpg300' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 88 ; -} -#Total column cloud liquid water -'tclw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 78 ; -} -#Total column cloud ice water -'tciw' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 79 ; -} -#Top net solar radiation -'tsr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 178 ; -} -#Temperature of snow layer -'tsn' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 238 ; -} -#Sea-ice cover -'ci' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 31 ; -} -#Snow density -'rsn' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 33 ; -} -#Sea surface temperature -'sst' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 34 ; -} -#Surface solar radiation downwards -'ssrd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 169 ; -} -#Surface thermal radiation downwards -'strd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 175 ; -} -#Eastward turbulent surface stress -'ewss' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 180 ; -} -#Northward turbulent surface stress -'nsss' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 181 ; -} -#Surface runoff -'sro' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 8 ; -} -#Direct solar radiation -'dsrp' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 47 ; -} -#Lake total layer temperature -'ltlt' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 11 ; -} -#Lake mix-layer temperature -'lmlt' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 8 ; -} -#Lake mix-layer depth -'lmld' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 9 ; -} -#Lake bottom temperature -'lblt' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 10 ; -} -#Lake shape factor -'lshf' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 12 ; -} -#Lake ice surface temperature -'lict' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 13 ; -} -#Lake ice total depth -'licd' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 14 ; -} -#Lake total depth -'dl' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 7 ; -} -#GEMS Ozone -'go3' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 203 ; -} -#GEMS Ozone -'go3diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 203 ; -} -#Carbon monoxide -'co' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 123 ; -} -#Carbon monoxide -'codiff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 123 ; -} -#Nitrogen dioxide -'no2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 121 ; -} -#Nitrogen dioxide -'no2diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 121 ; -} -#Sulphur dioxide -'so2' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 122 ; -} -#Sulphur dioxide -'so2diff' = { - discipline = 192 ; - parameterCategory = 211 ; - parameterNumber = 122 ; -} -#Ammonia -'nh3' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 19 ; -} -#Nitrogen monoxide -'no' = { - discipline = 192 ; - parameterCategory = 217 ; - parameterNumber = 27 ; -} -#Particulate matter d <= 1 um -'pm1' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 72 ; -} -#Particulate matter d <= 2.5 um -'pm2p5' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 73 ; -} -#Particulate matter d <= 10 um -'pm10' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 74 ; -} -#Runoff -'ro' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 205 ; -} -#Total column vertically-integrated water vapour -'tcwv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 137 ; -} -#Total precipitation of at least 100 mm -'tpg100' = { - discipline = 192 ; - parameterCategory = 131 ; - parameterNumber = 85 ; -} -#Mean zero-crossing wave period -'mp2' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 221 ; -} -#Peak wave period -'pp1d' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 231 ; -} -#Instantaneous total lightning flash density -'litoti' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 50 ; -} -#Averaged total lightning flash density in the last hour -'litota1' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 51 ; -} -#Instantaneous cloud-to-ground lightning flash density -'licgi' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 52 ; -} -#Averaged cloud-to-ground lightning flash density in the last hour -'licga1' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 53 ; -} -#Averaged total lightning flash density in the last 3 hours -'litota3' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 57 ; -} -#Averaged total lightning flash density in the last 6 hours -'litota6' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 58 ; -} -#Averaged cloud-to-ground lightning flash density in the last 3 hours -'licga3' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 59 ; -} -#Averaged cloud-to-ground lightning flash density in the last 6 hours -'licga6' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 60 ; -} -#Eastward gravity wave surface stress -'lgws' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 195 ; -} -#Friction velocity -'zust' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 3 ; -} -#Instantaneous eastward turbulent surface stress -'iews' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 229 ; -} -#Instantaneous northward turbulent surface stress -'inss' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 230 ; -} -#Instantaneous surface sensible heat flux -'ishf' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 231 ; -} -#Instantaneous moisture flux -'ie' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 232 ; -} -#Large-scale precipitation -'lsp' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 142 ; -} -#Large-scale precipitation fraction -'lspf' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 50 ; -} -#Northward gravity wave surface stress -'mgws' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 196 ; -} -#Snow evaporation -'es' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 44 ; -} -#Snowfall -'sf' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 144 ; -} -#Surface runoff -'sro' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 8 ; -} -#TOA incident solar radiation -'tisr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 212 ; -} -#Top net thermal radiation, clear sky -'ttrc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 209 ; -} -#Top net solar radiation, clear sky -'tsrc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 208 ; -} -#Total cloud cover -'tcc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 164 ; -} -#Total column rain water -'tcrw' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 89 ; -} -#Total column snow water -'tcsw' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 90 ; -} -#Vertical integral of eastward water vapour flux -'viwve' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 71 ; -} -#Vertical integral of northward water vapour flux -'viwvn' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 72 ; -} -#Snow albedo -'asn' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 32 ; -} -#Ice temperature -'ist' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 94 ; -} -#Snowmelt -'smlt' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 45 ; -} -#Downward UV radiation at the surface -'uvb' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 57 ; -} -#Photosynthetically active radiation at the surface -'par' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 58 ; -} -#Boundary layer height -'blh' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 159 ; -} -#Evaporation -'e' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 182 ; -} -#Low cloud cover -'lcc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 186 ; -} -#Medium cloud cover -'mcc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 187 ; -} -#High cloud cover -'hcc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 188 ; -} -#Gravity wave dissipation -'gwd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 197 ; -} -#Potential evaporation -'pev' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 251 ; -} -#Unbalanced component of temperature -'uctp' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 21 ; -} -#Unbalanced component of logarithm of surface pressure -'ucln' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 22 ; -} -#Unbalanced component of divergence -'ucdv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 23 ; -} -#10 metre wind gust in the last 3 hours -'fg310' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 28 ; -} -#Forecast albedo -'fal' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 243 ; -} -#Forecast surface roughness -'fsr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 244 ; -} -#Flux of Carbon Dioxide Net Ecosystem Exchange -'fco2nee' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 195 ; -} -#Accumulated Carbon Dioxide Net Ecosystem Exchange -'aco2nee' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 192 ; - typeOfStatisticalProcessing = 1 ; -} -#Flux of Carbon Dioxide Gross Primary Production -'fco2gpp' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 197 ; -} -#Accumulated Carbon Dioxide Gross Primary Production -'aco2gpp' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 193 ; - typeOfStatisticalProcessing = 1 ; -} -#Flux of Carbon Dioxide Ecosystem Respiration -'fco2rec' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 196 ; -} -#Accumulated Carbon Dioxide Ecosystem Respiration -'aco2rec' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 194 ; - typeOfStatisticalProcessing = 1 ; -} -#Albedo (climatological) -'al' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 174 ; -} -#UV visible albedo for direct radiation (climatological) -'aluvp' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 15 ; -} -#UV visible albedo for diffuse radiation (climatological) -'aluvd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 16 ; -} -#Near IR albedo for direct radiation (climatological) -'alnip' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 17 ; -} -#Near IR albedo for diffuse radiation (climatological) -'alnid' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 18 ; -} -#Standard deviation of filtered subgrid orography (climatological) -'sdfor' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 74 ; -} -#Logarithm of surface roughness length for heat (climatological) -'lsrh' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 234 ; -} -#UV visible albedo for direct radiation, isotropic component (climatological) -'aluvpi' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 186 ; -} -#UV visible albedo for direct radiation, volumetric component (climatological) -'aluvpv' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 187 ; -} -#UV visible albedo for direct radiation, geometric component (climatological) -'aluvpg' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 188 ; -} -#Near IR albedo for direct radiation, isotropic component (climatological) -'alnipi' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 189 ; -} -#Near IR albedo for direct radiation, volumetric component (climatological) -'alnipv' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 190 ; -} -#Near IR albedo for direct radiation, geometric component (climatological) -'alnipg' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 191 ; -} -#Vertically integrated moisture divergence -'vimd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 213 ; -} -#Vertically integrated moisture divergence flux -'viwvd' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 84 ; -} -#Forecast logarithm of surface roughness for heat -'flsr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 245 ; -} -#10 metre u-component of neutral wind -'u10n' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 131 ; -} -#V-component of neutral wind -'v10n' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 132 ; -} -#Magnitude of turbulent surface stress -'magss' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 48 ; -} -#Vertical integral of mass of atmosphere -'vima' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 53 ; -} -#Height of zero-degree wet-bulb temperature -'hwbt0' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 47 ; -} -#Height of one-degree wet-bulb temperature -'hwbt1' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 48 ; -} -#Surface photosynthetically active radiation, clear sky -'parcs' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 20 ; -} -#Surface direct short-wave radiation, clear sky -'cdir' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 22 ; -} -#Duct base height -'dctb' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 17 ; -} -#Trapping layer base height -'tplb' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 18 ; -} -#Trapping layer top height -'tplt' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 19 ; -} -#Mean vertical gradient of refractivity inside trapping layer -'dndza' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 16 ; -} -#Minimum vertical gradient of refractivity inside trapping layer -'dndzn' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 15 ; -} -#Vertical integral of eastward heat flux -'vithee' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 69 ; -} -#Vertical integral of northward heat flux -'vithen' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 70 ; -} -#Vertical integral of potential+internal+latent energy -'vipile' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 62 ; -} -#Skin reservoir content -'src' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 198 ; -} -#Skin reservoir content -'srcrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 198 ; -} -#Sub-surface runoff -'ssro' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 9 ; -} -#Low vegetation cover -'cvl' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 27 ; -} -#High vegetation cover -'cvh' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 28 ; -} -#Leaf area index, low vegetation -'lai_lv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 66 ; -} -#Leaf area index, high vegetation -'lai_hv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 67 ; -} -#Type of low vegetation -'tvl' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 29 ; -} -#Type of high vegetation -'tvh' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 30 ; -} -#Mean direction of total swell -'mdts' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 238 ; -} -#Mean direction of wind waves -'mdww' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 235 ; -} -#Charnock -'chnk' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 148 ; -} -#2D wave spectra (single) -'d2fd' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 251 ; -} -#Vertical integral of thermal energy -'vithe' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 60 ; -} -#Vertical integral of potential+internal energy -'vipie' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 61 ; -} -#Vertical integral of kinetic energy -'vike' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 59 ; -} -#Vertical integral of total energy -'vitoe' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 63 ; -} -#UV visible albedo for diffuse radiation, isotropic component (climatological) -'aluvdi' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 192 ; -} -#UV visible albedo for diffuse radiation, volumetric component (climatological) -'aluvdv' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 193 ; -} -#UV visible albedo for diffuse radiation, geometric component (climatological) -'aluvdg' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 194 ; -} -#Near IR albedo for diffuse radiation, isotropic component (climatological) -'alnidi' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 195 ; -} -#Near IR albedo for diffuse radiation, volumetric component (climatological) -'alnidv' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 196 ; -} -#Near IR albedo for diffuse radiation, geometric component (climatological) -'alnidg' = { - discipline = 192 ; - parameterCategory = 210 ; - parameterNumber = 197 ; -} -#Time-integrated temperature tendency due to short-wave radiation -'srta' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 100 ; -} -#Time-integrated temperature tendency due to long-wave radiation -'trta' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 101 ; -} -#Time-integrated temperature tendency due to short wave radiation, clear sky -'srtca' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 102 ; -} -#Time-integrated temperature tendency due to long-wave radiation, clear sky -'trtca' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 103 ; -} -#Time-integrated updraught mass flux -'umfa' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 104 ; -} -#Time-integrated downdraught mass flux -'dmfa' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 105 ; -} -#Time-integrated updraught detrainment rate -'udra' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 106 ; -} -#Time-integrated downdraught detrainment rate -'ddra' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 107 ; -} -#Time-integrated total precipitation flux -'tpfa' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 108 ; -} -#Time-integrated turbulent diffusion coefficient for heat -'tdcha' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 109 ; -} -#Time-integrated temperature tendency due to parametrisations -'ttpha' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 110 ; -} -#Time-integrated specific humidity tendency due to parametrisations -'qtpha' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 111 ; -} -#Time-integrated eastward wind tendency due to parametrisations -'utpha' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 112 ; -} -#Time-integrated northward wind tendency due to parametrisations -'vtpha' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 113 ; -} -#Period corresponding to maximum individual wave height -'tmax' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 217 ; -} -#Maximum individual wave height -'hmax' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 218 ; -} -#Model bathymetry -'wmb' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 219 ; -} -#Mean wave period based on first moment -'mp1' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 220 ; -} -#Wave spectral directional width -'wdw' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 222 ; -} -#Mean wave period based on first moment for wind waves -'p1ww' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 223 ; -} -#Mean wave period based on second moment for wind waves -'p2ww' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 224 ; -} -#Wave spectral directional width for wind waves -'dwww' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 225 ; -} -#Mean wave period based on first moment for swell -'p1ps' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 226 ; -} -#Mean wave period based on second moment for swell -'p2ps' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 227 ; -} -#Wave spectral directional width for swell -'dwps' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 228 ; -} -#Coefficient of drag with waves -'cdww' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 233 ; -} -#Significant height of total swell -'shts' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 237 ; -} -#Mean period of total swell -'mpts' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 239 ; -} -#Mean square slope of waves -'msqs' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 244 ; -} -#Benjamin-Feir index -'bfi' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 253 ; -} -#Montgomery stream Function -'mntsf' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 53 ; -} -#Water fraction -'fldfrc' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 26 ; -} -#Anisotropy of sub-gridscale orography -'isor' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 161 ; -} -#Angle of sub-gridscale orography -'anor' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 162 ; -} -#Slope of sub-gridscale orography -'slor' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 163 ; -} -#U-component surface stokes drift -'ust' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 215 ; -} -#V-component surface stokes drift -'vst' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 216 ; -} -#Total column ozone -'tco3' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 206 ; -} -#Convective snowfall -'csf' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 239 ; -} -#Large-scale snowfall -'lsf' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 240 ; -} -#Altimeter wave height -'awh' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 246 ; -} -#Altimeter corrected wave height -'acwh' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 247 ; -} -#Altimeter range relative correction -'arrc' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 248 ; -} -#Total sky direct solar radiation at surface -'fdir' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 21 ; -} -#Surface solar radiation downward clear-sky -'ssrdc' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 129 ; -} -#Surface thermal radiation downward clear-sky -'strdc' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 130 ; -} -#Standard deviation of orography -'sdor' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 160 ; -} -#Cloud base height -'cbh' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 23 ; -} -#Wave spectral kurtosis -'wsk' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 252 ; -} -#10 metre wind speed -'wind' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 245 ; -} -#10 metre wind direction -'dwi' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 249 ; -} -#Mean temperature at 2 metres -'mean2t' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 4 ; -} -#Mean surface net radiation flux -'msnrf' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 149 ; -} -#Surface net radiation -'snr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 149 ; -} -#Top net radiation -'tnr' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 150 ; -} -#Surface emissivity -'emis' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 124 ; -} -#Vertical integral of water vapour -'p55.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 55 ; -} -#Snow depth -'sdsien' = { - discipline = 192 ; - parameterCategory = 190 ; - parameterNumber = 141 ; -} -#Mean total snowfall rate -'mtsfr' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 144 ; -} -#Evaporation -'erate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 182 ; -} -#Mean total precipitation rate -'tprate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 228 ; -} -#Mean large-scale precipitation rate -'mlsprt' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 142 ; -} -#Mean convective precipitation rate -'cprate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 143 ; -} -#Mean runoff rate -'mrort' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 205 ; -} -#Mean total cloud cover -'meantcc' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 6 ; -} -#Mean of 10 metre wind speed -'mean10ws' = { - discipline = 192 ; - parameterCategory = 228 ; - parameterNumber = 5 ; -} -#Sea water potential temperature -'thetao' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 129 ; -} -#Sea water practical salinity -'so' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 130 ; -} -#Upward sea water velocity -'wo' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 133 ; -} -#Sea water sigma theta -'sigmat' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 138 ; -} -#Surface downward eastward stress -'taueo' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 153 ; -} -#Surface downward northward stress -'tauno' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 154 ; -} -#Surface geopotential -'p51.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 51 ; -} -#Vertical integral of temperature -'vit' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 54 ; -} -#Vertical integral of cloud liquid water -'vilw' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 56 ; -} -#Vertical integral of cloud frozen water -'viiw' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 57 ; -} -#Vertical integral of ozone -'vioz' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 58 ; -} -#Vertical integral of energy conversion -'viec' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 64 ; -} -#Vertical integral of eastward mass flux -'vimae' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 65 ; -} -#Vertical integral of northward mass flux -'viman' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 66 ; -} -#Vertical integral of eastward kinetic energy flux -'vikee' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 67 ; -} -#Vertical integral of northward kinetic energy flux -'viken' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 68 ; -} -#Vertical integral of eastward geopotential flux -'vige' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 73 ; -} -#Vertical integral of northward geopotential flux -'vign' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 74 ; -} -#Vertical integral of eastward total energy flux -'vitoee' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 75 ; -} -#Vertical integral of northward total energy flux -'vitoen' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 76 ; -} -#Vertical integral of eastward ozone flux -'vioze' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 77 ; -} -#Vertical integral of northward ozone flux -'viozn' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 78 ; -} -#Vertical integral of divergence of mass flux -'vimad' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 81 ; -} -#Vertical integral of divergence of kinetic energy flux -'viked' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 82 ; -} -#Vertical integral of divergence of thermal energy flux -'vithed' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 83 ; -} -#Vertical integral of divergence of geopotential flux -'vigd' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 85 ; -} -#Vertical integral of divergence of total energy flux -'vitoed' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 86 ; -} -#Vertical integral of divergence of ozone flux -'viozd' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 87 ; -} -#Variance of geopotential -'p206.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 206 ; -} -#Covariance of geopotential/temperature -'p207.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 207 ; -} -#Variance of temperature -'p208.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 208 ; -} -#Covariance of geopotential/specific humidity -'p209.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 209 ; -} -#Covariance of temperature/specific humidity -'p210.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 210 ; -} -#Variance of specific humidity -'p211.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 211 ; -} -#Covariance of u component/geopotential -'p212.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 212 ; -} -#Covariance of u component/temperature -'p213.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 213 ; -} -#Covariance of u component/specific humidity -'p214.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 214 ; -} -#Variance of u component -'p215.162' = { - discipline = 192 ; - parameterCategory = 162 ; - parameterNumber = 215 ; -} -#Mean vertical velocity -'mvv' = { - discipline = 192 ; - parameterCategory = 130 ; - parameterNumber = 232 ; -} -#Mean surface sensible heat flux -'msshfl' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 146 ; -} -#Mean surface latent heat flux -'mslhfl' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 147 ; -} -#Mean temperature at 2 metres in the last 24 hours -'mean2t24' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 55 ; -} -#Mean 2 metre temperature in the last 24 hours gradient -'mean2t24grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 55 ; -} -#Mean 2 metre dewpoint temperature in the last 24 hours -'mn2d24' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 56 ; -} -#Mean 2 metre dewpoint temperature in the last 24 hours gradient -'mn2d24grd' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 56 ; -} -#Mean surface downward solar radiation flux -'msdsrf' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 169 ; -} -#Mean surface downward thermal radiation flux -'msdtrf' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 175 ; -} -#Mean surface net solar radiation flux -'msnsrf' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 176 ; -} -#Mean surface net thermal radiation flux -'msntrf' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 177 ; -} -#Mean top net solar radiation flux -'mtnsrf' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 178 ; -} -#Mean top net thermal radiation flux -'mtntrf' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 179 ; -} -#East-West surface stress rate of accumulation -'ewssra' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 180 ; -} -#North-South surface stress rate of accumulation -'nsssra' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 181 ; -} -#Standard deviation wave height -'sdhs' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 240 ; -} -#Mean of 10 metre wind speed -'mu10' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 241 ; -} -#Mean wind direction -'mdwi' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 242 ; -} -#Standard deviation of 10 metre wind speed -'sdu' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 243 ; -} -#Top net solar radiation, clear sky -'p208.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 208 ; -} -#Top net thermal radiation, clear sky -'p209.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 209 ; -} -#Surface net solar radiation, clear sky -'p210.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 210 ; -} -#Surface net thermal radiation, clear sky -'p211.172' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 211 ; -} -#Solar insolation rate of accumulation -'soira' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 212 ; -} -#Wave spectral peakedness -'wsp' = { - discipline = 192 ; - parameterCategory = 140 ; - parameterNumber = 254 ; -} From 331bb6942f28dd71f0e1bd5660c51c8859f1725d Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 2 Aug 2024 12:39:41 +0000 Subject: [PATCH 130/277] ECC-1886: Comments --- definitions/create_def.pl | 3 +++ tests/grib_check_param_concepts.sh | 2 ++ 2 files changed, 5 insertions(+) diff --git a/definitions/create_def.pl b/definitions/create_def.pl index 6e5ff223a..6d2f72602 100755 --- a/definitions/create_def.pl +++ b/definitions/create_def.pl @@ -183,6 +183,7 @@ sub create_def { close(TAR); } +# See ECC-1886 sub create_cfVarName { my $p; my %seen; my ($key) =@_; @@ -356,6 +357,8 @@ sub create_def_old { create_def("shortName"); create_def("name"); create_def("units"); +# Note: The cfVarName.def files are smaller than the rest. We only store the +# minimum set necessary. See ECC-1886 create_cfVarName("cfVarName"); create_cfName("cfName"); diff --git a/tests/grib_check_param_concepts.sh b/tests/grib_check_param_concepts.sh index 35b4a4910..cc1bd6a01 100755 --- a/tests/grib_check_param_concepts.sh +++ b/tests/grib_check_param_concepts.sh @@ -100,6 +100,8 @@ tempDir=temp.${label}.dir rm -fr $tempDir mkdir -p $tempDir cd $tempDir + +# See ECC-1886 re cfVarName files #cp $ECMF_DIR/cfName.legacy.def cfName.def #cp $ECMF_DIR/cfVarName.legacy.def cfVarName.def cp $ECMF_DIR/name.legacy.def name.def From 6f3f99beb307c7c4bf55eb6735f82ce83ac7533c Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 2 Aug 2024 12:48:28 +0000 Subject: [PATCH 131/277] ECC-1886: Fix failing tests --- .../grib1/localConcepts/ecmf/cfVarName.def | 20 ++ .../grib2/localConcepts/cerise/cfVarName.def | 247 ------------------ .../grib2/localConcepts/ecmf/cfVarName.def | 48 ++++ 3 files changed, 68 insertions(+), 247 deletions(-) diff --git a/definitions/grib1/localConcepts/ecmf/cfVarName.def b/definitions/grib1/localConcepts/ecmf/cfVarName.def index 92f6bd7cb..306073c90 100644 --- a/definitions/grib1/localConcepts/ecmf/cfVarName.def +++ b/definitions/grib1/localConcepts/ecmf/cfVarName.def @@ -9,6 +9,16 @@ table2Version = 128 ; indicatorOfParameter = 49 ; } +#Maximum temperature at 2 metres in the last 24 hours +'mx2t24' = { + table2Version = 128 ; + indicatorOfParameter = 51 ; + } +#Minimum temperature at 2 metres in the last 24 hours +'mn2t24' = { + table2Version = 128 ; + indicatorOfParameter = 52 ; + } #Maximum temperature at 2 metres in the last 6 hours 'mx2t6' = { table2Version = 128 ; @@ -184,6 +194,16 @@ table2Version = 174 ; indicatorOfParameter = 96 ; } +#Maximum temperature at 2 metres in the last 3 hours +'mx2t3' = { + table2Version = 228 ; + indicatorOfParameter = 26 ; + } +#Minimum temperature at 2 metres in the last 3 hours +'mn2t3' = { + table2Version = 228 ; + indicatorOfParameter = 27 ; + } #Maximum 10 metre wind gust in the last 3 hours 'fg310' = { table2Version = 228 ; diff --git a/definitions/grib2/localConcepts/cerise/cfVarName.def b/definitions/grib2/localConcepts/cerise/cfVarName.def index 9d88fb46e..41dc54375 100644 --- a/definitions/grib2/localConcepts/cerise/cfVarName.def +++ b/definitions/grib2/localConcepts/cerise/cfVarName.def @@ -1,22 +1,4 @@ # Automatically generated by ./create_def.pl, do not edit -#Surface runoff -'sro' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 202 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Sub-surface runoff -'ssro' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 204 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } #Maximum temperature at 2 metres in the last 24 hours 'mx2t24' = { discipline = 0 ; @@ -40,233 +22,4 @@ indicatorOfUnitForTimeRange = 1 ; typeOfStatisticalProcessing = 3 ; lengthOfTimeRange = 24 ; - } -#Snow depth -'sd' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 254 ; - } -#Large-scale precipitation -'lsp' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 196 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Convective precipitation -'cp' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 195 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Snowfall -'sf' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 198 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Total cloud cover -'tcc' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 192 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - } -#Evaporation -'e' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 199 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Low cloud cover -'lcc' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 193 ; - } -#Runoff -'ro' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 201 ; - typeOfStatisticalProcessing = 1 ; - } -#Total precipitation -'tp' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 193 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 255 ; - typeOfStatisticalProcessing = 1 ; - } -#Forecast albedo -'fal' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 193 ; - } -#Mean surface runoff rate -'msror' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 202 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean sub-surface runoff rate -'mssror' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 204 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Potential evaporation -'pev' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 200 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 1 ; - } -#Time-mean snow depth -'avg_sde' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 11 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean snow cover -'avg_snowc' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 42 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean snow depth -'avg_sd_m' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 254 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean low cloud cover -'avg_lcc_frac' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 193 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean medium cloud cover -'avg_mcc_frac' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 194 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean high cloud cover -'avg_hcc_frac' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 195 ; - typeOfStatisticalProcessing = 0 ; - } -#Time-mean forecast albedo -'avg_fal_frac' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 193 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean large-scale precipitation rate -'mlsprt' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 196 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean convective precipitation rate -'cprate' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 195 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean total snowfall rate -'mtsfr' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 198 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Evaporation -'erate' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 199 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean runoff rate -'mrort' = { - localTablesVersion = 1 ; - discipline = 2 ; - parameterCategory = 0 ; - parameterNumber = 201 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean total precipitation rate -'tprate' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 193 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } -#Mean total cloud cover -'meantcc' = { - localTablesVersion = 1 ; - discipline = 0 ; - parameterCategory = 6 ; - parameterNumber = 192 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; } diff --git a/definitions/grib2/localConcepts/ecmf/cfVarName.def b/definitions/grib2/localConcepts/ecmf/cfVarName.def index c878bb952..57020b521 100644 --- a/definitions/grib2/localConcepts/ecmf/cfVarName.def +++ b/definitions/grib2/localConcepts/ecmf/cfVarName.def @@ -1,4 +1,28 @@ # Automatically generated by ./create_def.pl, do not edit +#Maximum temperature at 2 metres in the last 24 hours +'mx2t24' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + indicatorOfUnitForTimeRange = 1 ; + typeOfStatisticalProcessing = 2 ; + lengthOfTimeRange = 24 ; + } +#Minimum temperature at 2 metres in the last 24 hours +'mn2t24' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + indicatorOfUnitForTimeRange = 1 ; + typeOfStatisticalProcessing = 3 ; + lengthOfTimeRange = 24 ; + } #10 metre wind gust difference 'fgdiff10' = { discipline = 192 ; @@ -47,6 +71,30 @@ parameterCategory = 171 ; parameterNumber = 7 ; } +#Maximum temperature at 2 metres in the last 3 hours +'mx2t3' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + indicatorOfUnitForTimeRange = 1 ; + typeOfStatisticalProcessing = 2 ; + lengthOfTimeRange = 3 ; + } +#Minimum temperature at 2 metres in the last 3 hours +'mn2t3' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + indicatorOfUnitForTimeRange = 1 ; + typeOfStatisticalProcessing = 3 ; + lengthOfTimeRange = 3 ; + } #10 metre wind gust gradient 'fggrd10' = { discipline = 192 ; From fe5a4b168c348060940d6f488b2d0321237874ea Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 3 Aug 2024 14:44:40 +0100 Subject: [PATCH 132/277] ECC-1897: GRIB2: Print a warning if the packing type template is experimental or deprecated --- src/grib_value.cc | 30 ++++++++++++++++++++++-------- tests/grib_change_packing.sh | 8 +++++++- 2 files changed, 29 insertions(+), 9 deletions(-) diff --git a/src/grib_value.cc b/src/grib_value.cc index f89cb9725..e68ea72e0 100644 --- a/src/grib_value.cc +++ b/src/grib_value.cc @@ -410,7 +410,7 @@ int grib_set_string_internal(grib_handle* h, const char* name, /* Return 1 if we dealt with specific packing type changes and nothing more needs doing. * Return 0 if further action is needed */ -static int process_packingType_change(grib_handle* h, const char* keyname, const char* keyval) +static int preprocess_packingType_change(grib_handle* h, const char* keyname, const char* keyval) { int err = 0; char input_packing_type[100] = {0,}; @@ -456,24 +456,37 @@ static int process_packingType_change(grib_handle* h, const char* keyname, const if (strcmp(input_packing_type, "grid_ieee") == 0) { const long max_bpv = 32; /* Cannot do any higher */ grib_set_long(h, "bitsPerValue", max_bpv); - /* - long accuracy = 0; - err = grib_get_long(h, "accuracy", &accuracy); - if (!err) { - grib_set_long(h, "bitsPerValue", accuracy); - } */ + //long accuracy = 0; + //err = grib_get_long(h, "accuracy", &accuracy); + //if (!err) grib_set_long(h, "bitsPerValue", accuracy); } } } return 0; /* Further action is needed */ } +static void postprocess_packingType_change(grib_handle* h, const char* keyname, const char* keyval) +{ + if (grib_inline_strcmp(keyname, "packingType") == 0) { + long is_experimental = 0, is_deprecated = 0; + if (grib_get_long(h, "isTemplateExperimental", &is_experimental) == GRIB_SUCCESS && is_experimental == 1) { + fprintf(stderr, "ECCODES WARNING : The template for %s=%s is experimental. " + "This template was not validated at the time of publication.\n", + keyname, keyval); + return; + } + if (grib_get_long(h, "isTemplateDeprecated", &is_deprecated) == GRIB_SUCCESS && is_deprecated == 1) { + fprintf(stderr, "ECCODES WARNING : The template for %s=%s is deprecated.\n", keyname, keyval); + } + } +} + int grib_set_string(grib_handle* h, const char* name, const char* val, size_t* length) { int ret = 0; grib_accessor* a = NULL; - int processed = process_packingType_change(h, name, val); + int processed = preprocess_packingType_change(h, name, val); if (processed) return GRIB_SUCCESS; /* Dealt with - no further action needed */ @@ -492,6 +505,7 @@ int grib_set_string(grib_handle* h, const char* name, const char* val, size_t* l ret = a->pack_string(val, length); if (ret == GRIB_SUCCESS) { + postprocess_packingType_change(h, name, val); return grib_dependency_notify_change(a); } return ret; diff --git a/tests/grib_change_packing.sh b/tests/grib_change_packing.sh index 2b4d8ebf5..e9aa4743a 100755 --- a/tests/grib_change_packing.sh +++ b/tests/grib_change_packing.sh @@ -144,9 +144,15 @@ fi # grid_simple_log_preprocessing # ----------------------------- input=${data_dir}/sample.grib2 -${tools_dir}/grib_set -r -s packingType=grid_simple_log_preprocessing $input $temp +${tools_dir}/grib_set -r -s packingType=grid_simple_log_preprocessing $input $temp 2> $temp_err grib_check_key_equals $temp packingType 'grid_simple_log_preprocessing' ${tools_dir}/grib_compare -c data:n -R packedValues=2e-6 $input $temp +# ECC-1897 +grep -q "ECCODES WARNING.*is experimental" $temp_err + +${tools_dir}/grib_set -r -s packingType=grid_simple_matrix $input $temp 2> $temp_err +grep -q "ECCODES WARNING.*is experimental" $temp_err + # Large constant fields # ----------------------- From c1ecf9533435e9f6895484f7af28fd49a410c99e Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 3 Aug 2024 15:59:26 +0100 Subject: [PATCH 133/277] Cosmetics --- ...ass_data_g1second_order_general_packing.cc | 1 - ..._data_g1second_order_row_by_row_packing.cc | 1 - ...ib_accessor_class_data_g22order_packing.cc | 1 - .../grib_accessor_class_number_of_points.cc | 1 - ...ccessor_class_number_of_points_gaussian.cc | 1 - ...grib_accessor_class_octahedral_gaussian.cc | 1 - .../grib_accessor_class_step_in_units.cc | 4 +- src/accessor/grib_accessor_class_sum.cc | 1 - .../grib_accessor_class_suppressed.cc | 1 - src/accessor/grib_accessor_class_time.cc | 1 - src/accessor/grib_accessor_class_to_double.cc | 1 - .../grib_accessor_class_to_integer.cc | 1 - src/accessor/grib_accessor_class_to_string.cc | 1 - .../grib_accessor_class_transient_darray.cc | 1 - ...b_accessor_class_unexpanded_descriptors.cc | 10 ++--- .../grib_accessor_class_unpack_bufr_values.cc | 1 - .../grib_accessor_class_unsigned_bits.cc | 37 +++++++++---------- .../grib_accessor_class_validity_date.cc | 1 - .../grib_accessor_class_validity_time.cc | 5 +-- src/accessor/grib_accessor_class_values.cc | 3 +- src/accessor/grib_accessor_class_vector.cc | 1 - src/accessor/grib_accessor_class_when.cc | 1 - src/step.cc | 1 + 23 files changed, 28 insertions(+), 49 deletions(-) diff --git a/src/accessor/grib_accessor_class_data_g1second_order_general_packing.cc b/src/accessor/grib_accessor_class_data_g1second_order_general_packing.cc index 8fb0165d0..3ee5f6a4f 100644 --- a/src/accessor/grib_accessor_class_data_g1second_order_general_packing.cc +++ b/src/accessor/grib_accessor_class_data_g1second_order_general_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_data_g1second_order_row_by_row_packing.cc b/src/accessor/grib_accessor_class_data_g1second_order_row_by_row_packing.cc index afed13ca2..7697a3a69 100644 --- a/src/accessor/grib_accessor_class_data_g1second_order_row_by_row_packing.cc +++ b/src/accessor/grib_accessor_class_data_g1second_order_row_by_row_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_data_g22order_packing.cc b/src/accessor/grib_accessor_class_data_g22order_packing.cc index 0fefbc6de..aefef16c8 100644 --- a/src/accessor/grib_accessor_class_data_g22order_packing.cc +++ b/src/accessor/grib_accessor_class_data_g22order_packing.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_number_of_points.cc b/src/accessor/grib_accessor_class_number_of_points.cc index d12eabeae..53fcf6fbe 100644 --- a/src/accessor/grib_accessor_class_number_of_points.cc +++ b/src/accessor/grib_accessor_class_number_of_points.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_number_of_points_gaussian.cc b/src/accessor/grib_accessor_class_number_of_points_gaussian.cc index 7959a6360..cf8fa8db0 100644 --- a/src/accessor/grib_accessor_class_number_of_points_gaussian.cc +++ b/src/accessor/grib_accessor_class_number_of_points_gaussian.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_octahedral_gaussian.cc b/src/accessor/grib_accessor_class_octahedral_gaussian.cc index eda90763f..69074bef3 100644 --- a/src/accessor/grib_accessor_class_octahedral_gaussian.cc +++ b/src/accessor/grib_accessor_class_octahedral_gaussian.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_step_in_units.cc b/src/accessor/grib_accessor_class_step_in_units.cc index 52086d700..e5fd32b8f 100644 --- a/src/accessor/grib_accessor_class_step_in_units.cc +++ b/src/accessor/grib_accessor_class_step_in_units.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -10,7 +9,6 @@ */ #include "grib_accessor_class_step_in_units.h" -#include "step.h" #include "step_utilities.h" #include @@ -97,7 +95,7 @@ int grib_accessor_class_step_in_units_t::unpack_double(grib_accessor* a, double return GRIB_SUCCESS; } -int pack_long_new_(grib_accessor* a, const long start_step_value, const long start_step_unit, const long force_step_units) +static int pack_long_new_(grib_accessor* a, const long start_step_value, const long start_step_unit, const long force_step_units) { const grib_accessor_step_in_units_t* self = (grib_accessor_step_in_units_t*)a; grib_handle* h = grib_handle_of_accessor(a); diff --git a/src/accessor/grib_accessor_class_sum.cc b/src/accessor/grib_accessor_class_sum.cc index e4bbeea95..5eb3882d1 100644 --- a/src/accessor/grib_accessor_class_sum.cc +++ b/src/accessor/grib_accessor_class_sum.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_suppressed.cc b/src/accessor/grib_accessor_class_suppressed.cc index 10a99ee64..7cc05c5e1 100644 --- a/src/accessor/grib_accessor_class_suppressed.cc +++ b/src/accessor/grib_accessor_class_suppressed.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_time.cc b/src/accessor/grib_accessor_class_time.cc index e70fc3d49..921114465 100644 --- a/src/accessor/grib_accessor_class_time.cc +++ b/src/accessor/grib_accessor_class_time.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_to_double.cc b/src/accessor/grib_accessor_class_to_double.cc index 2983be487..afe26f2a1 100644 --- a/src/accessor/grib_accessor_class_to_double.cc +++ b/src/accessor/grib_accessor_class_to_double.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_to_integer.cc b/src/accessor/grib_accessor_class_to_integer.cc index a4b621b8d..827812db8 100644 --- a/src/accessor/grib_accessor_class_to_integer.cc +++ b/src/accessor/grib_accessor_class_to_integer.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_to_string.cc b/src/accessor/grib_accessor_class_to_string.cc index d0fd72727..c6b093a5f 100644 --- a/src/accessor/grib_accessor_class_to_string.cc +++ b/src/accessor/grib_accessor_class_to_string.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_transient_darray.cc b/src/accessor/grib_accessor_class_transient_darray.cc index 71d404f0d..3766bb218 100644 --- a/src/accessor/grib_accessor_class_transient_darray.cc +++ b/src/accessor/grib_accessor_class_transient_darray.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_unexpanded_descriptors.cc b/src/accessor/grib_accessor_class_unexpanded_descriptors.cc index 5c9402360..36e7112a6 100644 --- a/src/accessor/grib_accessor_class_unexpanded_descriptors.cc +++ b/src/accessor/grib_accessor_class_unexpanded_descriptors.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -20,7 +19,7 @@ void grib_accessor_class_unexpanded_descriptors_t::init(grib_accessor* a, const grib_accessor_class_long_t::init(a, len, args); grib_accessor_unexpanded_descriptors_t* self = (grib_accessor_unexpanded_descriptors_t*)a; - int n = 0; + int n = 0; grib_handle* hand = grib_handle_of_accessor(a); self->unexpandedDescriptorsEncoded = grib_find_accessor(hand, grib_arguments_get_name(hand, args, n++)); self->createNewData = grib_arguments_get_name(hand, args, n++); @@ -30,9 +29,10 @@ void grib_accessor_class_unexpanded_descriptors_t::init(grib_accessor* a, const int grib_accessor_class_unexpanded_descriptors_t::unpack_long(grib_accessor* a, long* val, size_t* len) { grib_accessor_unexpanded_descriptors_t* self = (grib_accessor_unexpanded_descriptors_t*)a; - int ret = 0; - long pos = 0; - long rlen = 0; + + int ret = 0; + long pos = 0; + long rlen = 0; long f, x, y; long* v = val; long i; diff --git a/src/accessor/grib_accessor_class_unpack_bufr_values.cc b/src/accessor/grib_accessor_class_unpack_bufr_values.cc index 3497bbbe2..9f6495989 100644 --- a/src/accessor/grib_accessor_class_unpack_bufr_values.cc +++ b/src/accessor/grib_accessor_class_unpack_bufr_values.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_unsigned_bits.cc b/src/accessor/grib_accessor_class_unsigned_bits.cc index 44873938a..4e6f058fe 100644 --- a/src/accessor/grib_accessor_class_unsigned_bits.cc +++ b/src/accessor/grib_accessor_class_unsigned_bits.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -39,26 +38,26 @@ static long compute_byte_count(grib_accessor* a) return (numberOfBits * numberOfElements + 7) / 8; } - void grib_accessor_class_unsigned_bits_t::init(grib_accessor* a, const long len, grib_arguments* args) { grib_accessor_class_long_t::init(a, len, args); grib_accessor_unsigned_bits_t* self = (grib_accessor_unsigned_bits_t*)a; - int n = 0; - self->numberOfBits = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); - self->numberOfElements = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); - a->length = compute_byte_count(a); + + int n = 0; + self->numberOfBits = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); + self->numberOfElements = grib_arguments_get_name(grib_handle_of_accessor(a), args, n++); + a->length = compute_byte_count(a); } int grib_accessor_class_unsigned_bits_t::unpack_long(grib_accessor* a, long* val, size_t* len) { grib_accessor_unsigned_bits_t* self = (grib_accessor_unsigned_bits_t*)a; - int ret = 0; - long pos = a->offset * 8; - long rlen = 0; - long numberOfBits = 0; - ret = value_count(a, &rlen); + long pos = a->offset * 8; + long rlen = 0; + long numberOfBits = 0; + + int ret = value_count(a, &rlen); if (ret) return ret; @@ -89,14 +88,14 @@ int grib_accessor_class_unsigned_bits_t::unpack_long(grib_accessor* a, long* val int grib_accessor_class_unsigned_bits_t::pack_long(grib_accessor* a, const long* val, size_t* len) { grib_accessor_unsigned_bits_t* self = (grib_accessor_unsigned_bits_t*)a; - int ret = 0; - long off = 0; - long numberOfBits = 0; - size_t buflen = 0; - unsigned char* buf = NULL; - unsigned long i = 0; - long rlen = 0; - ret = value_count(a, &rlen); + + long off = 0; + long numberOfBits = 0; + size_t buflen = 0; + unsigned char* buf = NULL; + unsigned long i = 0; + long rlen = 0; + int ret = value_count(a, &rlen); if (ret) return ret; /* diff --git a/src/accessor/grib_accessor_class_validity_date.cc b/src/accessor/grib_accessor_class_validity_date.cc index 1f28f2c3f..99e0eb47a 100644 --- a/src/accessor/grib_accessor_class_validity_date.cc +++ b/src/accessor/grib_accessor_class_validity_date.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_validity_time.cc b/src/accessor/grib_accessor_class_validity_time.cc index cdb0fdf93..6f692e154 100644 --- a/src/accessor/grib_accessor_class_validity_time.cc +++ b/src/accessor/grib_accessor_class_validity_time.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -19,9 +18,9 @@ void grib_accessor_class_validity_time_t::init(grib_accessor* a, const long l, g { grib_accessor_class_long_t::init(a, l, c); grib_accessor_validity_time_t* self = (grib_accessor_validity_time_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - int n = 0; + grib_handle* hand = grib_handle_of_accessor(a); + int n = 0; self->date = grib_arguments_get_name(hand, c, n++); self->time = grib_arguments_get_name(hand, c, n++); self->step = grib_arguments_get_name(hand, c, n++); diff --git a/src/accessor/grib_accessor_class_values.cc b/src/accessor/grib_accessor_class_values.cc index cd2107559..c8afd7787 100644 --- a/src/accessor/grib_accessor_class_values.cc +++ b/src/accessor/grib_accessor_class_values.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * @@ -17,7 +16,7 @@ grib_accessor_class* grib_accessor_class_values = &_grib_accessor_class_values; long init_length(grib_accessor* a) { grib_accessor_values_t* self = (grib_accessor_values_t*)a; - int ret = 0; + int ret = 0; long seclen = 0; long offsetsection = 0; diff --git a/src/accessor/grib_accessor_class_vector.cc b/src/accessor/grib_accessor_class_vector.cc index a5def256f..d9ae76406 100644 --- a/src/accessor/grib_accessor_class_vector.cc +++ b/src/accessor/grib_accessor_class_vector.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/accessor/grib_accessor_class_when.cc b/src/accessor/grib_accessor_class_when.cc index 48db76803..a17f111ea 100644 --- a/src/accessor/grib_accessor_class_when.cc +++ b/src/accessor/grib_accessor_class_when.cc @@ -1,4 +1,3 @@ - /* * (C) Copyright 2005- ECMWF. * diff --git a/src/step.cc b/src/step.cc index ff5560378..34a71743b 100644 --- a/src/step.cc +++ b/src/step.cc @@ -7,6 +7,7 @@ * In applying this licence, ECMWF does not waive the privileges and immunities granted to it by * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. */ +#undef NDEBUG // activate the asserts #include #include From c81b491edc27d11229a8029e1844ba557dabefce Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 3 Aug 2024 16:48:50 +0100 Subject: [PATCH 134/277] Testing: Increase coverage --- .../grib_accessor_class_cf_var_name.cc | 8 +++---- tests/grib_statistics.sh | 22 ++++++++++++++----- 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/src/accessor/grib_accessor_class_cf_var_name.cc b/src/accessor/grib_accessor_class_cf_var_name.cc index 7018ab376..41f42ff30 100644 --- a/src/accessor/grib_accessor_class_cf_var_name.cc +++ b/src/accessor/grib_accessor_class_cf_var_name.cc @@ -35,12 +35,10 @@ int grib_accessor_class_cf_var_name_t::unpack_string(grib_accessor* a, char* val int err = grib_get_string(h, self->defaultKey, defaultKey, &size); if (err) return err; + Assert(size > 0); + Assert(strlen(defaultKey) > 0); - if (size == 0) { - // Should not ever happen - snprintf(val, 1024, "%s", "unknown"); - } - else if ( STR_EQUAL(defaultKey, "~") || isdigit(defaultKey[0]) ) { + if ( STR_EQUAL(defaultKey, "~") || isdigit(defaultKey[0]) ) { // NetCDF variables cannot start with a digit long paramId = 0; err = grib_get_long(h, "paramId", ¶mId); diff --git a/tests/grib_statistics.sh b/tests/grib_statistics.sh index 9cf7719e3..9a71f7082 100755 --- a/tests/grib_statistics.sh +++ b/tests/grib_statistics.sh @@ -13,6 +13,8 @@ label="grib_statistics_test" temp1=temp1.$label.grib temp2=temp2.$label.grib +tempFilt=temp2.$label.filt +tempText=temp2.$label.txt files="regular_latlon_surface.grib2 regular_latlon_surface.grib1" @@ -23,7 +25,7 @@ for file in $files; do # Once it is finished, it sets dirty_statistics to 0. # If you get min,max again, no computation is done (because dirty_statistics==0) # But once the data values are changed, then dirty_statistics is once again 1 -cat >statistics.filter< $tempFilt <statistics.filter< statistics.out - -diff statistics.out ${data_dir}/statistics.out.good +${tools_dir}/grib_filter $tempFilt ${data_dir}/$file > $tempText +diff ${data_dir}/statistics.out.good $tempText done -rm -f statistics.out statistics.filter +rm -f $tempText $tempFilt # GRIB with no missing values but some entries = 9999 @@ -74,4 +75,13 @@ input=${data_dir}/gfs.complex.mvmu.grib2 stats=`${tools_dir}/grib_get -F%.2f -p max,min,avg $input` [ "$stats" = "2.81 0.00 0.30" ] -rm -f $temp1 $temp2 +# Decode as string - Null op +cat >$tempFilt< Date: Sat, 3 Aug 2024 16:56:29 +0100 Subject: [PATCH 135/277] Testing: Increase coverage --- src/accessor/grib_accessor_class_unsigned.cc | 35 +++++++++----------- 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/src/accessor/grib_accessor_class_unsigned.cc b/src/accessor/grib_accessor_class_unsigned.cc index 8093e3a6a..14ca831a3 100644 --- a/src/accessor/grib_accessor_class_unsigned.cc +++ b/src/accessor/grib_accessor_class_unsigned.cc @@ -10,7 +10,6 @@ #include "grib_accessor_class_unsigned.h" - grib_accessor_class_unsigned_t _grib_accessor_class_unsigned("unsigned"); grib_accessor_class* grib_accessor_class_unsigned = &_grib_accessor_class_unsigned; @@ -67,17 +66,17 @@ int value_is_missing(long val) int pack_long_unsigned_helper(grib_accessor* a, const long* val, size_t* len, int check) { grib_accessor_unsigned_t* self = (grib_accessor_unsigned_t*)a; - int ret = 0; - long off = 0; - long rlen = 0; - int err = 0; + + int ret = 0; + long off = 0; + long rlen = 0; size_t buflen = 0; unsigned char* buf = NULL; unsigned long i = 0; unsigned long missing = 0; - err = a->value_count(&rlen); + int err = a->value_count(&rlen); if (err) return err; @@ -164,13 +163,14 @@ int pack_long_unsigned_helper(grib_accessor* a, const long* val, size_t* len, in int grib_accessor_class_unsigned_t::unpack_long(grib_accessor* a, long* val, size_t* len) { grib_accessor_unsigned_t* self = (grib_accessor_unsigned_t*)a; - long rlen = 0; - unsigned long i = 0; - unsigned long missing = 0; - long count = 0; - int err = 0; - long pos = a->offset * 8; - grib_handle* hand = grib_handle_of_accessor(a); + + long rlen = 0; + unsigned long i = 0; + unsigned long missing = 0; + long count = 0; + int err = 0; + long pos = a->offset * 8; + grib_handle* hand = grib_handle_of_accessor(a); err = a->value_count(&count); if (err) @@ -243,8 +243,7 @@ long grib_accessor_class_unsigned_t::next_offset(grib_accessor* a) int grib_accessor_class_unsigned_t::is_missing(grib_accessor* a) { - int i = 0; - unsigned char ff = 0xff; + const unsigned char ff = 0xff; unsigned long offset = a->offset; grib_handle* hand = grib_handle_of_accessor(a); @@ -253,7 +252,7 @@ int grib_accessor_class_unsigned_t::is_missing(grib_accessor* a) return a->vvalue->missing; } - for (i = 0; i < a->length; i++) { + for (long i = 0; i < a->length; i++) { if (hand->buffer->data[offset] != ff) { return 0; } @@ -264,9 +263,7 @@ int grib_accessor_class_unsigned_t::is_missing(grib_accessor* a) void grib_accessor_class_unsigned_t::destroy(grib_context* context, grib_accessor* a) { - if (a->vvalue != NULL) - grib_context_free(context, a->vvalue); - + grib_context_free(context, a->vvalue); a->vvalue = NULL; grib_accessor_class_long_t::destroy(context, a); From db8d72582e344a7e4f5155ba5379826f543e2b1f Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 3 Aug 2024 17:10:21 +0100 Subject: [PATCH 136/277] Testing: Increase coverage --- tests/grib_filter_fail.sh | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/tests/grib_filter_fail.sh b/tests/grib_filter_fail.sh index 8afd89811..3f77cf436 100755 --- a/tests/grib_filter_fail.sh +++ b/tests/grib_filter_fail.sh @@ -120,6 +120,24 @@ set -e grep -q "ECCODES ERROR.*failed for 'unicorn'" $tempOut grep -q "Function not yet implemented" $tempOut +# Direction Increment +# -------------------- +input="${samp_dir}/GRIB1.tmpl" +cat >$tempFilt < $tempOut +status=$? +set -e +[ $status -ne 0 ] +grep -q "Cannot compute lat/lon increments. Not enough points" $tempOut + + # Clean up rm -f $tempGrib $tempFilt $tempOut $tempRef From 7d8a2b65fda6cd2d8a946099e0e896d37ce1b3fa Mon Sep 17 00:00:00 2001 From: Gioele Barabucci Date: Wed, 7 Aug 2024 07:09:37 +0200 Subject: [PATCH 137/277] tools/bufs_compare_dir: Make compatible with POSIX sh `bufr_compare_dir` is the only installed script that requires `ksh`. With minor changes it is possible to make this script compatible with standard POSIX sh. Removing the need to use `ksh` greatly simplifies many aspects of the efforts needed to package, install and maintain eccodes in distributions like Debian. See: https://bugs.debian.org/1078095 --- tools/bufr_compare_dir | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/bufr_compare_dir b/tools/bufr_compare_dir index 33adb21b6..67ef362f2 100755 --- a/tools/bufr_compare_dir +++ b/tools/bufr_compare_dir @@ -1,23 +1,23 @@ -#!/bin/ksh +#!/bin/sh keys="md5Structure,md5Data,typicalDate,typicalTime,rdbType,rdbSubtype,ident,satelliteID,localLatitude,localLongitude,localLatitude1,localLongitude1,localLatitude2,localLongitude2" opt="" -if [[ $# -eq 3 ]] +if [ $# -eq 3 ] then opt=$1 dir1=$2 dir2=$3 fi -if [[ $# -eq 2 ]] +if [ $# -eq 2 ] then dir1=$1 dir2=$2 fi -if [[ $# -gt 3 ]] || [[ $# -lt 2 ]] +if [ $# -gt 3 ] || [ $# -lt 2 ] then echo usage: [bufr_compare options] bufr_compare_dir directory1 directory2 exit 1 From 3230077c67a85891f547e1d9c2dc8562af4efc3b Mon Sep 17 00:00:00 2001 From: Gioele Barabucci Date: Wed, 7 Aug 2024 07:14:51 +0200 Subject: [PATCH 138/277] tools/bufr_compare_dir: Support directory names with spaces --- tools/bufr_compare_dir | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/bufr_compare_dir b/tools/bufr_compare_dir index 67ef362f2..f7ba8763b 100755 --- a/tools/bufr_compare_dir +++ b/tools/bufr_compare_dir @@ -23,8 +23,8 @@ then exit 1 fi -bufr_index_build -k $keys -o 1.idx $dir1/* > /dev/null -bufr_index_build -k $keys -o 2.idx $dir2/* > /dev/null +bufr_index_build -k $keys -o 1.idx "$dir1"/* > /dev/null +bufr_index_build -k $keys -o 2.idx "$dir2"/* > /dev/null bufr_compare -f $opt 1.idx 2.idx rm -f 1.idx 2.idx From cbb438933437536f82e3eaebd5ddeaf40c0f78bc Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 8 Aug 2024 09:59:28 +0100 Subject: [PATCH 139/277] ECC-1695: GRIB2 definitions: Group files into sub-directories --- definitions/grib2/local.98.500.def | 2 +- .../grib2/local/ecmf/template.4.40033.def | 2 +- .../grib2/local/ecmf/template.4.40034.def | 2 +- .../grib2/local/ecmf/template.4.65533.def | 12 ++++++------ .../grib2/local/ecmf/template.4.65534.def | 12 ++++++------ .../grib2/local/kwbc/template.3.32769.def | 4 ++-- definitions/grib2/section.1.def | 2 +- definitions/grib2/section.3.def | 2 +- definitions/grib2/section.4.def | 2 +- definitions/grib2/section.5.def | 2 +- definitions/grib2/section.7.def | 2 +- definitions/grib2/template.1.2.def | 6 ------ definitions/grib2/template.3.1.def | 7 ------- definitions/grib2/template.3.150.def | 7 ------- definitions/grib2/template.3.2.def | 7 ------- definitions/grib2/template.3.3.def | 9 --------- definitions/grib2/template.3.4.def | 5 ----- definitions/grib2/template.3.40.def | 6 ------ definitions/grib2/template.3.41.def | 7 ------- definitions/grib2/template.3.42.def | 7 ------- definitions/grib2/template.3.43.def | 8 -------- definitions/grib2/template.3.5.def | 7 ------- definitions/grib2/template.3.51.def | 6 ------ definitions/grib2/template.3.52.def | 6 ------ definitions/grib2/template.3.53.def | 7 ------- definitions/grib2/template.4.0.def | 9 --------- definitions/grib2/template.4.1.def | 10 ---------- definitions/grib2/template.4.10.def | 13 ------------- definitions/grib2/template.4.100.def | 12 ------------ definitions/grib2/template.4.101.def | 11 ----------- definitions/grib2/template.4.102.def | 12 ------------ definitions/grib2/template.4.103.def | 10 ---------- definitions/grib2/template.4.104.def | 11 ----------- definitions/grib2/template.4.105.def | 10 ---------- definitions/grib2/template.4.106.def | 11 ----------- definitions/grib2/template.4.107.def | 11 ----------- definitions/grib2/template.4.108.def | 10 ---------- definitions/grib2/template.4.109.def | 11 ----------- definitions/grib2/template.4.11.def | 10 ---------- definitions/grib2/template.4.110.def | 10 ---------- definitions/grib2/template.4.111.def | 11 ----------- definitions/grib2/template.4.112.def | 11 ----------- definitions/grib2/template.4.113.def | 10 ---------- definitions/grib2/template.4.114.def | 10 ---------- definitions/grib2/template.4.115.def | 11 ----------- definitions/grib2/template.4.116.def | 11 ----------- definitions/grib2/template.4.117.def | 10 ---------- definitions/grib2/template.4.118.def | 10 ---------- definitions/grib2/template.4.119.def | 10 ---------- definitions/grib2/template.4.12.def | 10 ---------- definitions/grib2/template.4.120.def | 10 ---------- definitions/grib2/template.4.121.def | 11 ----------- definitions/grib2/template.4.122.def | 11 ----------- definitions/grib2/template.4.123.def | 12 ------------ definitions/grib2/template.4.124.def | 12 ------------ definitions/grib2/template.4.125.def | 13 ------------- definitions/grib2/template.4.126.def | 12 ------------ definitions/grib2/template.4.127.def | 14 -------------- definitions/grib2/template.4.13.def | 12 ------------ definitions/grib2/template.4.14.def | 12 ------------ definitions/grib2/template.4.2.def | 10 ---------- definitions/grib2/template.4.3.def | 12 ------------ definitions/grib2/template.4.32.def | 9 --------- definitions/grib2/template.4.33.def | 10 ---------- definitions/grib2/template.4.34.def | 10 ---------- definitions/grib2/template.4.4.def | 12 ------------ definitions/grib2/template.4.40.def | 10 ---------- definitions/grib2/template.4.41.def | 11 ----------- definitions/grib2/template.4.42.def | 10 ---------- definitions/grib2/template.4.43.def | 11 ----------- definitions/grib2/template.4.45.def | 12 ------------ definitions/grib2/template.4.46.def | 11 ----------- definitions/grib2/template.4.47.def | 14 -------------- definitions/grib2/template.4.48.def | 12 ------------ definitions/grib2/template.4.49.def | 13 ------------- definitions/grib2/template.4.5.def | 10 ---------- definitions/grib2/template.4.50.def | 12 ------------ definitions/grib2/template.4.51.def | 10 ---------- definitions/grib2/template.4.53.def | 10 ---------- definitions/grib2/template.4.54.def | 11 ----------- definitions/grib2/template.4.55.def | 10 ---------- definitions/grib2/template.4.57.def | 11 ----------- definitions/grib2/template.4.58.def | 12 ------------ definitions/grib2/template.4.59.def | 13 ------------- definitions/grib2/template.4.6.def | 10 ---------- definitions/grib2/template.4.60.def | 11 ----------- definitions/grib2/template.4.61.def | 11 ----------- definitions/grib2/template.4.63.def | 11 ----------- definitions/grib2/template.4.67.def | 11 ----------- definitions/grib2/template.4.68.def | 12 ------------ definitions/grib2/template.4.70.def | 10 ---------- definitions/grib2/template.4.71.def | 11 ----------- definitions/grib2/template.4.72.def | 10 ---------- definitions/grib2/template.4.73.def | 11 ----------- definitions/grib2/template.4.76.def | 11 ----------- definitions/grib2/template.4.77.def | 12 ------------ definitions/grib2/template.4.78.def | 11 ----------- definitions/grib2/template.4.79.def | 12 ------------ definitions/grib2/template.4.8.def | 9 --------- definitions/grib2/template.4.80.def | 13 ------------- definitions/grib2/template.4.81.def | 14 -------------- definitions/grib2/template.4.82.def | 12 ------------ definitions/grib2/template.4.83.def | 16 ---------------- definitions/grib2/template.4.84.def | 13 ------------- definitions/grib2/template.4.85.def | 12 ------------ definitions/grib2/template.4.86.def | 10 ---------- definitions/grib2/template.4.87.def | 10 ---------- definitions/grib2/template.4.88.def | 9 --------- definitions/grib2/template.4.89.def | 11 ----------- definitions/grib2/template.4.9.def | 10 ---------- definitions/grib2/template.4.90.def | 11 ----------- definitions/grib2/template.4.91.def | 10 ---------- definitions/grib2/template.4.92.def | 11 ----------- definitions/grib2/template.4.93.def | 13 ------------- definitions/grib2/template.4.94.def | 14 -------------- definitions/grib2/template.4.95.def | 12 ------------ definitions/grib2/template.4.96.def | 14 -------------- definitions/grib2/template.4.97.def | 14 -------------- definitions/grib2/template.4.98.def | 15 --------------- definitions/grib2/template.4.99.def | 11 ----------- definitions/grib2/template.5.0.def | 7 ------- definitions/grib2/template.5.40000.def | 3 --- definitions/grib2/template.5.41.def | 6 ------ definitions/grib2/template.7.40000.def | 3 --- .../grib2/{ => templates}/template.1.0.def | 2 +- .../grib2/{ => templates}/template.1.1.def | 2 +- definitions/grib2/templates/template.1.2.def | 6 ++++++ .../{ => templates}/template.1.calendar.def | 0 .../grib2/{ => templates}/template.1.offset.def | 0 .../grib2/{ => templates}/template.3.0.def | 4 ++-- definitions/grib2/templates/template.3.1.def | 7 +++++++ .../grib2/{ => templates}/template.3.10.def | 6 +++--- .../grib2/{ => templates}/template.3.100.def | 0 .../grib2/{ => templates}/template.3.1000.def | 4 ++-- .../grib2/{ => templates}/template.3.101.def | 0 .../grib2/{ => templates}/template.3.110.def | 4 ++-- .../grib2/{ => templates}/template.3.1100.def | 4 ++-- .../grib2/{ => templates}/template.3.12.def | 6 +++--- .../grib2/{ => templates}/template.3.120.def | 2 +- .../grib2/{ => templates}/template.3.1200.def | 0 .../grib2/{ => templates}/template.3.13.def | 4 ++-- .../grib2/{ => templates}/template.3.130.def | 2 +- .../grib2/{ => templates}/template.3.140.def | 4 ++-- definitions/grib2/templates/template.3.150.def | 7 +++++++ definitions/grib2/templates/template.3.2.def | 7 +++++++ .../grib2/{ => templates}/template.3.20.def | 4 ++-- .../grib2/{ => templates}/template.3.23.def | 4 ++-- definitions/grib2/templates/template.3.3.def | 9 +++++++++ .../grib2/{ => templates}/template.3.30.def | 6 +++--- .../grib2/{ => templates}/template.3.31.def | 6 +++--- .../grib2/{ => templates}/template.3.33.def | 4 ++-- definitions/grib2/templates/template.3.4.def | 5 +++++ definitions/grib2/templates/template.3.40.def | 6 ++++++ definitions/grib2/templates/template.3.41.def | 7 +++++++ definitions/grib2/templates/template.3.42.def | 7 +++++++ definitions/grib2/templates/template.3.43.def | 8 ++++++++ definitions/grib2/templates/template.3.5.def | 7 +++++++ .../grib2/{ => templates}/template.3.50.def | 2 +- definitions/grib2/templates/template.3.51.def | 6 ++++++ definitions/grib2/templates/template.3.52.def | 6 ++++++ definitions/grib2/templates/template.3.53.def | 7 +++++++ .../grib2/{ => templates}/template.3.61.def | 4 ++-- .../grib2/{ => templates}/template.3.62.def | 4 ++-- .../grib2/{ => templates}/template.3.63.def | 4 ++-- .../grib2/{ => templates}/template.3.90.def | 6 +++--- .../grib2/{ => templates}/template.3.bf.def | 0 .../{ => templates}/template.3.gaussian.def | 4 ++-- .../grib2/{ => templates}/template.3.grid.def | 2 +- .../grib2/{ => templates}/template.3.healpix.def | 0 .../grib2/{ => templates}/template.3.lam.def | 0 .../grib2/{ => templates}/template.3.latlon.def | 4 ++-- .../{ => templates}/template.3.latlon_vares.def | 4 ++-- .../template.3.resolution_flags.def | 0 .../{ => templates}/template.3.rotation.def | 0 .../{ => templates}/template.3.scanning_mode.def | 0 .../template.3.shape_of_the_earth.def | 0 .../template.3.spherical_harmonics.def | 0 .../{ => templates}/template.3.stretching.def | 0 definitions/grib2/templates/template.4.0.def | 9 +++++++++ definitions/grib2/templates/template.4.1.def | 10 ++++++++++ definitions/grib2/templates/template.4.10.def | 13 +++++++++++++ definitions/grib2/templates/template.4.100.def | 12 ++++++++++++ .../grib2/{ => templates}/template.4.1000.def | 8 ++++---- .../grib2/{ => templates}/template.4.1001.def | 8 ++++---- .../grib2/{ => templates}/template.4.1002.def | 6 +++--- definitions/grib2/templates/template.4.101.def | 11 +++++++++++ definitions/grib2/templates/template.4.102.def | 12 ++++++++++++ definitions/grib2/templates/template.4.103.def | 10 ++++++++++ definitions/grib2/templates/template.4.104.def | 11 +++++++++++ definitions/grib2/templates/template.4.105.def | 10 ++++++++++ definitions/grib2/templates/template.4.106.def | 11 +++++++++++ definitions/grib2/templates/template.4.107.def | 11 +++++++++++ definitions/grib2/templates/template.4.108.def | 10 ++++++++++ definitions/grib2/templates/template.4.109.def | 11 +++++++++++ definitions/grib2/templates/template.4.11.def | 10 ++++++++++ definitions/grib2/templates/template.4.110.def | 10 ++++++++++ .../grib2/{ => templates}/template.4.1100.def | 8 ++++---- .../grib2/{ => templates}/template.4.1101.def | 10 +++++----- definitions/grib2/templates/template.4.111.def | 11 +++++++++++ definitions/grib2/templates/template.4.112.def | 11 +++++++++++ definitions/grib2/templates/template.4.113.def | 10 ++++++++++ definitions/grib2/templates/template.4.114.def | 10 ++++++++++ definitions/grib2/templates/template.4.115.def | 11 +++++++++++ definitions/grib2/templates/template.4.116.def | 11 +++++++++++ definitions/grib2/templates/template.4.117.def | 10 ++++++++++ definitions/grib2/templates/template.4.118.def | 10 ++++++++++ definitions/grib2/templates/template.4.119.def | 10 ++++++++++ definitions/grib2/templates/template.4.12.def | 10 ++++++++++ definitions/grib2/templates/template.4.120.def | 10 ++++++++++ definitions/grib2/templates/template.4.121.def | 11 +++++++++++ definitions/grib2/templates/template.4.122.def | 11 +++++++++++ definitions/grib2/templates/template.4.123.def | 12 ++++++++++++ definitions/grib2/templates/template.4.124.def | 12 ++++++++++++ definitions/grib2/templates/template.4.125.def | 13 +++++++++++++ definitions/grib2/templates/template.4.126.def | 12 ++++++++++++ definitions/grib2/templates/template.4.127.def | 14 ++++++++++++++ definitions/grib2/templates/template.4.13.def | 12 ++++++++++++ definitions/grib2/templates/template.4.14.def | 12 ++++++++++++ .../grib2/{ => templates}/template.4.15.def | 10 +++++----- definitions/grib2/templates/template.4.2.def | 10 ++++++++++ .../grib2/{ => templates}/template.4.20.def | 0 .../grib2/{ => templates}/template.4.2000.def | 0 .../grib2/{ => templates}/template.4.254.def | 0 definitions/grib2/templates/template.4.3.def | 12 ++++++++++++ .../grib2/{ => templates}/template.4.30.def | 4 ++-- .../grib2/{ => templates}/template.4.31.def | 4 ++-- .../grib2/{ => templates}/template.4.311.def | 2 +- definitions/grib2/templates/template.4.32.def | 9 +++++++++ definitions/grib2/templates/template.4.33.def | 10 ++++++++++ definitions/grib2/templates/template.4.34.def | 10 ++++++++++ .../grib2/{ => templates}/template.4.35.def | 4 ++-- definitions/grib2/templates/template.4.4.def | 12 ++++++++++++ definitions/grib2/templates/template.4.40.def | 10 ++++++++++ definitions/grib2/templates/template.4.41.def | 11 +++++++++++ definitions/grib2/templates/template.4.42.def | 10 ++++++++++ definitions/grib2/templates/template.4.43.def | 11 +++++++++++ .../grib2/{ => templates}/template.4.44.def | 14 +++++++------- definitions/grib2/templates/template.4.45.def | 12 ++++++++++++ definitions/grib2/templates/template.4.46.def | 11 +++++++++++ definitions/grib2/templates/template.4.47.def | 14 ++++++++++++++ definitions/grib2/templates/template.4.48.def | 12 ++++++++++++ definitions/grib2/templates/template.4.49.def | 13 +++++++++++++ definitions/grib2/templates/template.4.5.def | 10 ++++++++++ definitions/grib2/templates/template.4.50.def | 12 ++++++++++++ definitions/grib2/templates/template.4.51.def | 10 ++++++++++ definitions/grib2/templates/template.4.53.def | 10 ++++++++++ definitions/grib2/templates/template.4.54.def | 11 +++++++++++ definitions/grib2/templates/template.4.55.def | 10 ++++++++++ .../grib2/{ => templates}/template.4.56.def | 12 ++++++------ definitions/grib2/templates/template.4.57.def | 11 +++++++++++ definitions/grib2/templates/template.4.58.def | 12 ++++++++++++ definitions/grib2/templates/template.4.59.def | 13 +++++++++++++ definitions/grib2/templates/template.4.6.def | 10 ++++++++++ definitions/grib2/templates/template.4.60.def | 11 +++++++++++ definitions/grib2/templates/template.4.61.def | 11 +++++++++++ .../grib2/{ => templates}/template.4.62.def | 12 ++++++------ definitions/grib2/templates/template.4.63.def | 11 +++++++++++ definitions/grib2/templates/template.4.67.def | 11 +++++++++++ definitions/grib2/templates/template.4.68.def | 12 ++++++++++++ .../grib2/{ => templates}/template.4.7.def | 2 +- definitions/grib2/templates/template.4.70.def | 10 ++++++++++ definitions/grib2/templates/template.4.71.def | 11 +++++++++++ definitions/grib2/templates/template.4.72.def | 10 ++++++++++ definitions/grib2/templates/template.4.73.def | 11 +++++++++++ definitions/grib2/templates/template.4.76.def | 11 +++++++++++ definitions/grib2/templates/template.4.77.def | 12 ++++++++++++ definitions/grib2/templates/template.4.78.def | 11 +++++++++++ definitions/grib2/templates/template.4.79.def | 12 ++++++++++++ definitions/grib2/templates/template.4.8.def | 9 +++++++++ definitions/grib2/templates/template.4.80.def | 13 +++++++++++++ definitions/grib2/templates/template.4.81.def | 14 ++++++++++++++ definitions/grib2/templates/template.4.82.def | 12 ++++++++++++ definitions/grib2/templates/template.4.83.def | 16 ++++++++++++++++ definitions/grib2/templates/template.4.84.def | 13 +++++++++++++ definitions/grib2/templates/template.4.85.def | 12 ++++++++++++ definitions/grib2/templates/template.4.86.def | 10 ++++++++++ definitions/grib2/templates/template.4.87.def | 10 ++++++++++ definitions/grib2/templates/template.4.88.def | 9 +++++++++ definitions/grib2/templates/template.4.89.def | 11 +++++++++++ definitions/grib2/templates/template.4.9.def | 10 ++++++++++ definitions/grib2/templates/template.4.90.def | 11 +++++++++++ definitions/grib2/templates/template.4.91.def | 10 ++++++++++ definitions/grib2/templates/template.4.92.def | 11 +++++++++++ definitions/grib2/templates/template.4.93.def | 13 +++++++++++++ definitions/grib2/templates/template.4.94.def | 14 ++++++++++++++ definitions/grib2/templates/template.4.95.def | 12 ++++++++++++ definitions/grib2/templates/template.4.96.def | 14 ++++++++++++++ definitions/grib2/templates/template.4.97.def | 14 ++++++++++++++ definitions/grib2/templates/template.4.98.def | 15 +++++++++++++++ definitions/grib2/templates/template.4.99.def | 11 +++++++++++ .../grib2/{ => templates}/template.4.aerosol.def | 0 .../{ => templates}/template.4.aerosol_size.def | 0 .../{ => templates}/template.4.categorical.def | 0 .../{ => templates}/template.4.chemical.def | 0 .../template.4.circular_cluster.def | 0 .../grib2/{ => templates}/template.4.derived.def | 0 .../{ => templates}/template.4.distribution.def | 0 .../grib2/{ => templates}/template.4.eps.def | 0 .../{ => templates}/template.4.eps_cluster.def | 0 .../template.4.focalStatistics.def | 0 .../{ => templates}/template.4.forecast_time.def | 0 .../template.4.forecast_time_44.def | 0 .../template.4.generalised_tile.def | 0 .../template.4.generating_process.def | 0 .../{ => templates}/template.4.horizontal.def | 0 .../grib2/{ => templates}/template.4.leps.def | 0 .../{ => templates}/template.4.localtime.def | 0 .../template.4.localtime_statistical.def | 0 .../grib2/{ => templates}/template.4.optical.def | 0 .../{ => templates}/template.4.parameter.def | 0 .../{ => templates}/template.4.partition.def | 0 .../{ => templates}/template.4.percentile.def | 0 .../{ => templates}/template.4.point_in_time.def | 0 .../{ => templates}/template.4.postproc.def | 0 .../{ => templates}/template.4.probability.def | 0 .../template.4.probabilityLargeEnsemble.def | 0 .../{ => templates}/template.4.quantile.def | 0 .../{ => templates}/template.4.radionuclides.def | 0 .../template.4.rectangular_cluster.def | 0 .../template.4.referenceperiod.def | 0 .../{ => templates}/template.4.reforecast.def | 0 .../{ => templates}/template.4.satellite.def | 0 .../{ => templates}/template.4.satellite_30.def | 0 .../grib2/{ => templates}/template.4.source.def | 0 .../{ => templates}/template.4.statistical.def | 0 .../grib2/{ => templates}/template.4.tile.def | 0 .../grib2/{ => templates}/template.4.wave.def | 0 .../template.4.wave_period_range.def | 0 .../template.4.wave_spectra_formula.def | 0 .../template.4.wave_spectra_list.def | 0 definitions/grib2/templates/template.5.0.def | 7 +++++++ .../grib2/{ => templates}/template.5.1.def | 2 +- .../grib2/{ => templates}/template.5.2.def | 4 ++-- .../grib2/{ => templates}/template.5.200.def | 0 .../grib2/{ => templates}/template.5.3.def | 4 ++-- .../grib2/{ => templates}/template.5.4.def | 0 .../grib2/{ => templates}/template.5.40.def | 4 ++-- definitions/grib2/templates/template.5.40000.def | 3 +++ definitions/grib2/templates/template.5.41.def | 6 ++++++ .../grib2/{ => templates}/template.5.42.def | 4 ++-- .../grib2/{ => templates}/template.5.50.def | 2 +- .../grib2/{ => templates}/template.5.50000.def | 2 +- .../grib2/{ => templates}/template.5.50001.def | 0 .../grib2/{ => templates}/template.5.50002.def | 0 .../grib2/{ => templates}/template.5.51.def | 2 +- .../grib2/{ => templates}/template.5.53.def | 2 +- .../grib2/{ => templates}/template.5.61.def | 2 +- .../template.5.original_values.def | 0 .../grib2/{ => templates}/template.5.packing.def | 0 .../{ => templates}/template.5.second_order.def | 0 .../grib2/{ => templates}/template.7.0.def | 0 .../grib2/{ => templates}/template.7.1.def | 0 .../grib2/{ => templates}/template.7.2.def | 0 .../grib2/{ => templates}/template.7.200.def | 0 .../grib2/{ => templates}/template.7.3.def | 0 .../grib2/{ => templates}/template.7.4.def | 0 .../grib2/{ => templates}/template.7.40.def | 0 definitions/grib2/templates/template.7.40000.def | 3 +++ .../grib2/{ => templates}/template.7.41.def | 0 .../grib2/{ => templates}/template.7.42.def | 0 .../grib2/{ => templates}/template.7.50.def | 0 .../grib2/{ => templates}/template.7.50000.def | 0 .../grib2/{ => templates}/template.7.50001.def | 0 .../grib2/{ => templates}/template.7.50002.def | 0 .../grib2/{ => templates}/template.7.51.def | 0 .../grib2/{ => templates}/template.7.53.def | 0 .../grib2/{ => templates}/template.7.61.def | 0 .../{ => templates}/template.7.second_order.def | 0 tests/grib2_templates.sh | 2 +- tests/grib_list_keys.sh | 6 +++--- 370 files changed, 1325 insertions(+), 1325 deletions(-) delete mode 100644 definitions/grib2/template.1.2.def delete mode 100644 definitions/grib2/template.3.1.def delete mode 100644 definitions/grib2/template.3.150.def delete mode 100644 definitions/grib2/template.3.2.def delete mode 100644 definitions/grib2/template.3.3.def delete mode 100644 definitions/grib2/template.3.4.def delete mode 100644 definitions/grib2/template.3.40.def delete mode 100644 definitions/grib2/template.3.41.def delete mode 100644 definitions/grib2/template.3.42.def delete mode 100644 definitions/grib2/template.3.43.def delete mode 100644 definitions/grib2/template.3.5.def delete mode 100644 definitions/grib2/template.3.51.def delete mode 100644 definitions/grib2/template.3.52.def delete mode 100644 definitions/grib2/template.3.53.def delete mode 100644 definitions/grib2/template.4.0.def delete mode 100644 definitions/grib2/template.4.1.def delete mode 100644 definitions/grib2/template.4.10.def delete mode 100644 definitions/grib2/template.4.100.def delete mode 100644 definitions/grib2/template.4.101.def delete mode 100644 definitions/grib2/template.4.102.def delete mode 100644 definitions/grib2/template.4.103.def delete mode 100644 definitions/grib2/template.4.104.def delete mode 100644 definitions/grib2/template.4.105.def delete mode 100644 definitions/grib2/template.4.106.def delete mode 100644 definitions/grib2/template.4.107.def delete mode 100644 definitions/grib2/template.4.108.def delete mode 100644 definitions/grib2/template.4.109.def delete mode 100644 definitions/grib2/template.4.11.def delete mode 100644 definitions/grib2/template.4.110.def delete mode 100644 definitions/grib2/template.4.111.def delete mode 100644 definitions/grib2/template.4.112.def delete mode 100644 definitions/grib2/template.4.113.def delete mode 100644 definitions/grib2/template.4.114.def delete mode 100644 definitions/grib2/template.4.115.def delete mode 100644 definitions/grib2/template.4.116.def delete mode 100644 definitions/grib2/template.4.117.def delete mode 100644 definitions/grib2/template.4.118.def delete mode 100644 definitions/grib2/template.4.119.def delete mode 100644 definitions/grib2/template.4.12.def delete mode 100644 definitions/grib2/template.4.120.def delete mode 100644 definitions/grib2/template.4.121.def delete mode 100644 definitions/grib2/template.4.122.def delete mode 100644 definitions/grib2/template.4.123.def delete mode 100644 definitions/grib2/template.4.124.def delete mode 100644 definitions/grib2/template.4.125.def delete mode 100644 definitions/grib2/template.4.126.def delete mode 100644 definitions/grib2/template.4.127.def delete mode 100644 definitions/grib2/template.4.13.def delete mode 100644 definitions/grib2/template.4.14.def delete mode 100644 definitions/grib2/template.4.2.def delete mode 100644 definitions/grib2/template.4.3.def delete mode 100644 definitions/grib2/template.4.32.def delete mode 100644 definitions/grib2/template.4.33.def delete mode 100644 definitions/grib2/template.4.34.def delete mode 100644 definitions/grib2/template.4.4.def delete mode 100644 definitions/grib2/template.4.40.def delete mode 100644 definitions/grib2/template.4.41.def delete mode 100644 definitions/grib2/template.4.42.def delete mode 100644 definitions/grib2/template.4.43.def delete mode 100644 definitions/grib2/template.4.45.def delete mode 100644 definitions/grib2/template.4.46.def delete mode 100644 definitions/grib2/template.4.47.def delete mode 100644 definitions/grib2/template.4.48.def delete mode 100644 definitions/grib2/template.4.49.def delete mode 100644 definitions/grib2/template.4.5.def delete mode 100644 definitions/grib2/template.4.50.def delete mode 100644 definitions/grib2/template.4.51.def delete mode 100644 definitions/grib2/template.4.53.def delete mode 100644 definitions/grib2/template.4.54.def delete mode 100644 definitions/grib2/template.4.55.def delete mode 100644 definitions/grib2/template.4.57.def delete mode 100644 definitions/grib2/template.4.58.def delete mode 100644 definitions/grib2/template.4.59.def delete mode 100644 definitions/grib2/template.4.6.def delete mode 100644 definitions/grib2/template.4.60.def delete mode 100644 definitions/grib2/template.4.61.def delete mode 100644 definitions/grib2/template.4.63.def delete mode 100644 definitions/grib2/template.4.67.def delete mode 100644 definitions/grib2/template.4.68.def delete mode 100644 definitions/grib2/template.4.70.def delete mode 100644 definitions/grib2/template.4.71.def delete mode 100644 definitions/grib2/template.4.72.def delete mode 100644 definitions/grib2/template.4.73.def delete mode 100644 definitions/grib2/template.4.76.def delete mode 100644 definitions/grib2/template.4.77.def delete mode 100644 definitions/grib2/template.4.78.def delete mode 100644 definitions/grib2/template.4.79.def delete mode 100644 definitions/grib2/template.4.8.def delete mode 100644 definitions/grib2/template.4.80.def delete mode 100644 definitions/grib2/template.4.81.def delete mode 100644 definitions/grib2/template.4.82.def delete mode 100644 definitions/grib2/template.4.83.def delete mode 100644 definitions/grib2/template.4.84.def delete mode 100644 definitions/grib2/template.4.85.def delete mode 100644 definitions/grib2/template.4.86.def delete mode 100644 definitions/grib2/template.4.87.def delete mode 100644 definitions/grib2/template.4.88.def delete mode 100644 definitions/grib2/template.4.89.def delete mode 100644 definitions/grib2/template.4.9.def delete mode 100644 definitions/grib2/template.4.90.def delete mode 100644 definitions/grib2/template.4.91.def delete mode 100644 definitions/grib2/template.4.92.def delete mode 100644 definitions/grib2/template.4.93.def delete mode 100644 definitions/grib2/template.4.94.def delete mode 100644 definitions/grib2/template.4.95.def delete mode 100644 definitions/grib2/template.4.96.def delete mode 100644 definitions/grib2/template.4.97.def delete mode 100644 definitions/grib2/template.4.98.def delete mode 100644 definitions/grib2/template.4.99.def delete mode 100644 definitions/grib2/template.5.0.def delete mode 100644 definitions/grib2/template.5.40000.def delete mode 100644 definitions/grib2/template.5.41.def delete mode 100644 definitions/grib2/template.7.40000.def rename definitions/grib2/{ => templates}/template.1.0.def (57%) rename definitions/grib2/{ => templates}/template.1.1.def (59%) create mode 100644 definitions/grib2/templates/template.1.2.def rename definitions/grib2/{ => templates}/template.1.calendar.def (100%) rename definitions/grib2/{ => templates}/template.1.offset.def (100%) rename definitions/grib2/{ => templates}/template.3.0.def (50%) create mode 100644 definitions/grib2/templates/template.3.1.def rename definitions/grib2/{ => templates}/template.3.10.def (95%) rename definitions/grib2/{ => templates}/template.3.100.def (100%) rename definitions/grib2/{ => templates}/template.3.1000.def (94%) rename definitions/grib2/{ => templates}/template.3.101.def (100%) rename definitions/grib2/{ => templates}/template.3.110.def (90%) rename definitions/grib2/{ => templates}/template.3.1100.def (94%) rename definitions/grib2/{ => templates}/template.3.12.def (93%) rename definitions/grib2/{ => templates}/template.3.120.def (96%) rename definitions/grib2/{ => templates}/template.3.1200.def (100%) rename definitions/grib2/{ => templates}/template.3.13.def (50%) rename definitions/grib2/{ => templates}/template.3.130.def (79%) rename definitions/grib2/{ => templates}/template.3.140.def (96%) create mode 100644 definitions/grib2/templates/template.3.150.def create mode 100644 definitions/grib2/templates/template.3.2.def rename definitions/grib2/{ => templates}/template.3.20.def (96%) rename definitions/grib2/{ => templates}/template.3.23.def (53%) create mode 100644 definitions/grib2/templates/template.3.3.def rename definitions/grib2/{ => templates}/template.3.30.def (95%) rename definitions/grib2/{ => templates}/template.3.31.def (92%) rename definitions/grib2/{ => templates}/template.3.33.def (53%) create mode 100644 definitions/grib2/templates/template.3.4.def create mode 100644 definitions/grib2/templates/template.3.40.def create mode 100644 definitions/grib2/templates/template.3.41.def create mode 100644 definitions/grib2/templates/template.3.42.def create mode 100644 definitions/grib2/templates/template.3.43.def create mode 100644 definitions/grib2/templates/template.3.5.def rename definitions/grib2/{ => templates}/template.3.50.def (56%) create mode 100644 definitions/grib2/templates/template.3.51.def create mode 100644 definitions/grib2/templates/template.3.52.def create mode 100644 definitions/grib2/templates/template.3.53.def rename definitions/grib2/{ => templates}/template.3.61.def (94%) rename definitions/grib2/{ => templates}/template.3.62.def (94%) rename definitions/grib2/{ => templates}/template.3.63.def (96%) rename definitions/grib2/{ => templates}/template.3.90.def (95%) rename definitions/grib2/{ => templates}/template.3.bf.def (100%) rename definitions/grib2/{ => templates}/template.3.gaussian.def (97%) rename definitions/grib2/{ => templates}/template.3.grid.def (96%) rename definitions/grib2/{ => templates}/template.3.healpix.def (100%) rename definitions/grib2/{ => templates}/template.3.lam.def (100%) rename definitions/grib2/{ => templates}/template.3.latlon.def (96%) rename definitions/grib2/{ => templates}/template.3.latlon_vares.def (91%) rename definitions/grib2/{ => templates}/template.3.resolution_flags.def (100%) rename definitions/grib2/{ => templates}/template.3.rotation.def (100%) rename definitions/grib2/{ => templates}/template.3.scanning_mode.def (100%) rename definitions/grib2/{ => templates}/template.3.shape_of_the_earth.def (100%) rename definitions/grib2/{ => templates}/template.3.spherical_harmonics.def (100%) rename definitions/grib2/{ => templates}/template.3.stretching.def (100%) create mode 100644 definitions/grib2/templates/template.4.0.def create mode 100644 definitions/grib2/templates/template.4.1.def create mode 100644 definitions/grib2/templates/template.4.10.def create mode 100644 definitions/grib2/templates/template.4.100.def rename definitions/grib2/{ => templates}/template.4.1000.def (57%) rename definitions/grib2/{ => templates}/template.4.1001.def (61%) rename definitions/grib2/{ => templates}/template.4.1002.def (80%) create mode 100644 definitions/grib2/templates/template.4.101.def create mode 100644 definitions/grib2/templates/template.4.102.def create mode 100644 definitions/grib2/templates/template.4.103.def create mode 100644 definitions/grib2/templates/template.4.104.def create mode 100644 definitions/grib2/templates/template.4.105.def create mode 100644 definitions/grib2/templates/template.4.106.def create mode 100644 definitions/grib2/templates/template.4.107.def create mode 100644 definitions/grib2/templates/template.4.108.def create mode 100644 definitions/grib2/templates/template.4.109.def create mode 100644 definitions/grib2/templates/template.4.11.def create mode 100644 definitions/grib2/templates/template.4.110.def rename definitions/grib2/{ => templates}/template.4.1100.def (58%) rename definitions/grib2/{ => templates}/template.4.1101.def (81%) create mode 100644 definitions/grib2/templates/template.4.111.def create mode 100644 definitions/grib2/templates/template.4.112.def create mode 100644 definitions/grib2/templates/template.4.113.def create mode 100644 definitions/grib2/templates/template.4.114.def create mode 100644 definitions/grib2/templates/template.4.115.def create mode 100644 definitions/grib2/templates/template.4.116.def create mode 100644 definitions/grib2/templates/template.4.117.def create mode 100644 definitions/grib2/templates/template.4.118.def create mode 100644 definitions/grib2/templates/template.4.119.def create mode 100644 definitions/grib2/templates/template.4.12.def create mode 100644 definitions/grib2/templates/template.4.120.def create mode 100644 definitions/grib2/templates/template.4.121.def create mode 100644 definitions/grib2/templates/template.4.122.def create mode 100644 definitions/grib2/templates/template.4.123.def create mode 100644 definitions/grib2/templates/template.4.124.def create mode 100644 definitions/grib2/templates/template.4.125.def create mode 100644 definitions/grib2/templates/template.4.126.def create mode 100644 definitions/grib2/templates/template.4.127.def create mode 100644 definitions/grib2/templates/template.4.13.def create mode 100644 definitions/grib2/templates/template.4.14.def rename definitions/grib2/{ => templates}/template.4.15.def (59%) create mode 100644 definitions/grib2/templates/template.4.2.def rename definitions/grib2/{ => templates}/template.4.20.def (100%) rename definitions/grib2/{ => templates}/template.4.2000.def (100%) rename definitions/grib2/{ => templates}/template.4.254.def (100%) create mode 100644 definitions/grib2/templates/template.4.3.def rename definitions/grib2/{ => templates}/template.4.30.def (82%) rename definitions/grib2/{ => templates}/template.4.31.def (77%) rename definitions/grib2/{ => templates}/template.4.311.def (94%) create mode 100644 definitions/grib2/templates/template.4.32.def create mode 100644 definitions/grib2/templates/template.4.33.def create mode 100644 definitions/grib2/templates/template.4.34.def rename definitions/grib2/{ => templates}/template.4.35.def (82%) create mode 100644 definitions/grib2/templates/template.4.4.def create mode 100644 definitions/grib2/templates/template.4.40.def create mode 100644 definitions/grib2/templates/template.4.41.def create mode 100644 definitions/grib2/templates/template.4.42.def create mode 100644 definitions/grib2/templates/template.4.43.def rename definitions/grib2/{ => templates}/template.4.44.def (53%) create mode 100644 definitions/grib2/templates/template.4.45.def create mode 100644 definitions/grib2/templates/template.4.46.def create mode 100644 definitions/grib2/templates/template.4.47.def create mode 100644 definitions/grib2/templates/template.4.48.def create mode 100644 definitions/grib2/templates/template.4.49.def create mode 100644 definitions/grib2/templates/template.4.5.def create mode 100644 definitions/grib2/templates/template.4.50.def create mode 100644 definitions/grib2/templates/template.4.51.def create mode 100644 definitions/grib2/templates/template.4.53.def create mode 100644 definitions/grib2/templates/template.4.54.def create mode 100644 definitions/grib2/templates/template.4.55.def rename definitions/grib2/{ => templates}/template.4.56.def (69%) create mode 100644 definitions/grib2/templates/template.4.57.def create mode 100644 definitions/grib2/templates/template.4.58.def create mode 100644 definitions/grib2/templates/template.4.59.def create mode 100644 definitions/grib2/templates/template.4.6.def create mode 100644 definitions/grib2/templates/template.4.60.def create mode 100644 definitions/grib2/templates/template.4.61.def rename definitions/grib2/{ => templates}/template.4.62.def (50%) create mode 100644 definitions/grib2/templates/template.4.63.def create mode 100644 definitions/grib2/templates/template.4.67.def create mode 100644 definitions/grib2/templates/template.4.68.def rename definitions/grib2/{ => templates}/template.4.7.def (73%) create mode 100644 definitions/grib2/templates/template.4.70.def create mode 100644 definitions/grib2/templates/template.4.71.def create mode 100644 definitions/grib2/templates/template.4.72.def create mode 100644 definitions/grib2/templates/template.4.73.def create mode 100644 definitions/grib2/templates/template.4.76.def create mode 100644 definitions/grib2/templates/template.4.77.def create mode 100644 definitions/grib2/templates/template.4.78.def create mode 100644 definitions/grib2/templates/template.4.79.def create mode 100644 definitions/grib2/templates/template.4.8.def create mode 100644 definitions/grib2/templates/template.4.80.def create mode 100644 definitions/grib2/templates/template.4.81.def create mode 100644 definitions/grib2/templates/template.4.82.def create mode 100644 definitions/grib2/templates/template.4.83.def create mode 100644 definitions/grib2/templates/template.4.84.def create mode 100644 definitions/grib2/templates/template.4.85.def create mode 100644 definitions/grib2/templates/template.4.86.def create mode 100644 definitions/grib2/templates/template.4.87.def create mode 100644 definitions/grib2/templates/template.4.88.def create mode 100644 definitions/grib2/templates/template.4.89.def create mode 100644 definitions/grib2/templates/template.4.9.def create mode 100644 definitions/grib2/templates/template.4.90.def create mode 100644 definitions/grib2/templates/template.4.91.def create mode 100644 definitions/grib2/templates/template.4.92.def create mode 100644 definitions/grib2/templates/template.4.93.def create mode 100644 definitions/grib2/templates/template.4.94.def create mode 100644 definitions/grib2/templates/template.4.95.def create mode 100644 definitions/grib2/templates/template.4.96.def create mode 100644 definitions/grib2/templates/template.4.97.def create mode 100644 definitions/grib2/templates/template.4.98.def create mode 100644 definitions/grib2/templates/template.4.99.def rename definitions/grib2/{ => templates}/template.4.aerosol.def (100%) rename definitions/grib2/{ => templates}/template.4.aerosol_size.def (100%) rename definitions/grib2/{ => templates}/template.4.categorical.def (100%) rename definitions/grib2/{ => templates}/template.4.chemical.def (100%) rename definitions/grib2/{ => templates}/template.4.circular_cluster.def (100%) rename definitions/grib2/{ => templates}/template.4.derived.def (100%) rename definitions/grib2/{ => templates}/template.4.distribution.def (100%) rename definitions/grib2/{ => templates}/template.4.eps.def (100%) rename definitions/grib2/{ => templates}/template.4.eps_cluster.def (100%) rename definitions/grib2/{ => templates}/template.4.focalStatistics.def (100%) rename definitions/grib2/{ => templates}/template.4.forecast_time.def (100%) rename definitions/grib2/{ => templates}/template.4.forecast_time_44.def (100%) rename definitions/grib2/{ => templates}/template.4.generalised_tile.def (100%) rename definitions/grib2/{ => templates}/template.4.generating_process.def (100%) rename definitions/grib2/{ => templates}/template.4.horizontal.def (100%) rename definitions/grib2/{ => templates}/template.4.leps.def (100%) rename definitions/grib2/{ => templates}/template.4.localtime.def (100%) rename definitions/grib2/{ => templates}/template.4.localtime_statistical.def (100%) rename definitions/grib2/{ => templates}/template.4.optical.def (100%) rename definitions/grib2/{ => templates}/template.4.parameter.def (100%) rename definitions/grib2/{ => templates}/template.4.partition.def (100%) rename definitions/grib2/{ => templates}/template.4.percentile.def (100%) rename definitions/grib2/{ => templates}/template.4.point_in_time.def (100%) rename definitions/grib2/{ => templates}/template.4.postproc.def (100%) rename definitions/grib2/{ => templates}/template.4.probability.def (100%) rename definitions/grib2/{ => templates}/template.4.probabilityLargeEnsemble.def (100%) rename definitions/grib2/{ => templates}/template.4.quantile.def (100%) rename definitions/grib2/{ => templates}/template.4.radionuclides.def (100%) rename definitions/grib2/{ => templates}/template.4.rectangular_cluster.def (100%) rename definitions/grib2/{ => templates}/template.4.referenceperiod.def (100%) rename definitions/grib2/{ => templates}/template.4.reforecast.def (100%) rename definitions/grib2/{ => templates}/template.4.satellite.def (100%) rename definitions/grib2/{ => templates}/template.4.satellite_30.def (100%) rename definitions/grib2/{ => templates}/template.4.source.def (100%) rename definitions/grib2/{ => templates}/template.4.statistical.def (100%) rename definitions/grib2/{ => templates}/template.4.tile.def (100%) rename definitions/grib2/{ => templates}/template.4.wave.def (100%) rename definitions/grib2/{ => templates}/template.4.wave_period_range.def (100%) rename definitions/grib2/{ => templates}/template.4.wave_spectra_formula.def (100%) rename definitions/grib2/{ => templates}/template.4.wave_spectra_list.def (100%) create mode 100644 definitions/grib2/templates/template.5.0.def rename definitions/grib2/{ => templates}/template.5.1.def (97%) rename definitions/grib2/{ => templates}/template.5.2.def (92%) rename definitions/grib2/{ => templates}/template.5.200.def (100%) rename definitions/grib2/{ => templates}/template.5.3.def (94%) rename definitions/grib2/{ => templates}/template.5.4.def (100%) rename definitions/grib2/{ => templates}/template.5.40.def (78%) create mode 100644 definitions/grib2/templates/template.5.40000.def create mode 100644 definitions/grib2/templates/template.5.41.def rename definitions/grib2/{ => templates}/template.5.42.def (89%) rename definitions/grib2/{ => templates}/template.5.50.def (71%) rename definitions/grib2/{ => templates}/template.5.50000.def (96%) rename definitions/grib2/{ => templates}/template.5.50001.def (100%) rename definitions/grib2/{ => templates}/template.5.50002.def (100%) rename definitions/grib2/{ => templates}/template.5.51.def (95%) rename definitions/grib2/{ => templates}/template.5.53.def (95%) rename definitions/grib2/{ => templates}/template.5.61.def (88%) rename definitions/grib2/{ => templates}/template.5.original_values.def (100%) rename definitions/grib2/{ => templates}/template.5.packing.def (100%) rename definitions/grib2/{ => templates}/template.5.second_order.def (100%) rename definitions/grib2/{ => templates}/template.7.0.def (100%) rename definitions/grib2/{ => templates}/template.7.1.def (100%) rename definitions/grib2/{ => templates}/template.7.2.def (100%) rename definitions/grib2/{ => templates}/template.7.200.def (100%) rename definitions/grib2/{ => templates}/template.7.3.def (100%) rename definitions/grib2/{ => templates}/template.7.4.def (100%) rename definitions/grib2/{ => templates}/template.7.40.def (100%) create mode 100644 definitions/grib2/templates/template.7.40000.def rename definitions/grib2/{ => templates}/template.7.41.def (100%) rename definitions/grib2/{ => templates}/template.7.42.def (100%) rename definitions/grib2/{ => templates}/template.7.50.def (100%) rename definitions/grib2/{ => templates}/template.7.50000.def (100%) rename definitions/grib2/{ => templates}/template.7.50001.def (100%) rename definitions/grib2/{ => templates}/template.7.50002.def (100%) rename definitions/grib2/{ => templates}/template.7.51.def (100%) rename definitions/grib2/{ => templates}/template.7.53.def (100%) rename definitions/grib2/{ => templates}/template.7.61.def (100%) rename definitions/grib2/{ => templates}/template.7.second_order.def (100%) diff --git a/definitions/grib2/local.98.500.def b/definitions/grib2/local.98.500.def index 3fa593b58..d0d055743 100644 --- a/definitions/grib2/local.98.500.def +++ b/definitions/grib2/local.98.500.def @@ -41,7 +41,7 @@ codetable[2] instrument "grib2/tables/local/ecmf/obstat.5.0.table"; codetable[2] dataStream "grib2/tables/local/ecmf/obstat.6.0.table"; -# include "grib2/template.4.horizontal.def" +# include "grib2/templates/template.4.horizontal.def" codetable[2] observationDiagnostic "grib2/tables/local/ecmf/obstat.9.0.table"; diff --git a/definitions/grib2/local/ecmf/template.4.40033.def b/definitions/grib2/local/ecmf/template.4.40033.def index c5a1421ad..76eb92e2d 100644 --- a/definitions/grib2/local/ecmf/template.4.40033.def +++ b/definitions/grib2/local/ecmf/template.4.40033.def @@ -3,4 +3,4 @@ # # This is deprecated and only included for backward compatibility, use template 4.33 # -include "grib2/template.4.33.def" +include "grib2/templates/template.4.33.def" diff --git a/definitions/grib2/local/ecmf/template.4.40034.def b/definitions/grib2/local/ecmf/template.4.40034.def index 3c0fed44a..7897fd582 100644 --- a/definitions/grib2/local/ecmf/template.4.40034.def +++ b/definitions/grib2/local/ecmf/template.4.40034.def @@ -3,4 +3,4 @@ # # This is deprecated and only included for backward compatibility, use template 4.34 # -include "grib2/template.4.34.def" +include "grib2/templates/template.4.34.def" diff --git a/definitions/grib2/local/ecmf/template.4.65533.def b/definitions/grib2/local/ecmf/template.4.65533.def index 9ebacb060..949923b44 100644 --- a/definitions/grib2/local/ecmf/template.4.65533.def +++ b/definitions/grib2/local/ecmf/template.4.65533.def @@ -2,9 +2,9 @@ # TEMPLATE 4.65533, Individual member for large ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.leps.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.leps.def" diff --git a/definitions/grib2/local/ecmf/template.4.65534.def b/definitions/grib2/local/ecmf/template.4.65534.def index 208b0d185..0a05fff8e 100644 --- a/definitions/grib2/local/ecmf/template.4.65534.def +++ b/definitions/grib2/local/ecmf/template.4.65534.def @@ -2,9 +2,9 @@ # TEMPLATE 4.65534, Individual member for large ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.leps.def" -include "grib2/template.4.statistical.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.leps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/local/kwbc/template.3.32769.def b/definitions/grib2/local/kwbc/template.3.32769.def index f6ed7da90..5aff8a025 100644 --- a/definitions/grib2/local/kwbc/template.3.32769.def +++ b/definitions/grib2/local/kwbc/template.3.32769.def @@ -3,8 +3,8 @@ # TEMPLATE 3.32769 - Rotate Latitude/Longitude (Arakawa Non-E Staggered grid) # See https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_temp3-32769.shtml -include "grib2/template.3.shape_of_the_earth.def"; -include "grib2/template.3.grid.def"; +include "grib2/templates/template.3.shape_of_the_earth.def"; +include "grib2/templates/template.3.grid.def"; meta latitudeOfFirstGridPointInDegrees scale(La1,one,grib2divider,truncateDegrees) : dump; meta longitudeOfFirstGridPointInDegrees scale(Lo1,one,grib2divider,truncateDegrees) : dump; diff --git a/definitions/grib2/section.1.def b/definitions/grib2/section.1.def index c4e3c21f1..b19eb67f8 100644 --- a/definitions/grib2/section.1.def +++ b/definitions/grib2/section.1.def @@ -115,7 +115,7 @@ alias calendarIdPresent = false; if ( ((section1Length > 21) or setCalendarId > 0) and deleteCalendarId == 0) { alias calendarIdPresent = present; codetable[2] calendarIdentificationTemplateNumber ('1.5.table',masterDir,localDir) : dump,string_type,no_fail; - template calendarIdentification "grib2/template.1.[calendarIdentificationTemplateNumber:l].def"; + template calendarIdentification "grib2/templates/template.1.[calendarIdentificationTemplateNumber:l].def"; } constant conceptsMasterDir="grib2" : hidden; diff --git a/definitions/grib2/section.3.def b/definitions/grib2/section.3.def index 40f21e591..b0d2c8476 100644 --- a/definitions/grib2/section.3.def +++ b/definitions/grib2/section.3.def @@ -38,7 +38,7 @@ alias isRotatedGrid = false; if (gridDefinitionTemplateNumber >= 32768) { template gridDefinitionSection "grib2/local/[centreForLocal]/template.3.[gridDefinitionTemplateNumber:l].def"; } else { - template gridDefinitionSection "grib2/template.3.[gridDefinitionTemplateNumber:l].def"; + template gridDefinitionSection "grib2/templates/template.3.[gridDefinitionTemplateNumber:l].def"; } if(PLPresent){ diff --git a/definitions/grib2/section.4.def b/definitions/grib2/section.4.def index edb34d9b7..52d54dfa5 100644 --- a/definitions/grib2/section.4.def +++ b/definitions/grib2/section.4.def @@ -68,7 +68,7 @@ transient genVertHeightCoords = 0; if (productDefinitionTemplateNumber >= 32768) { template productDefinition "grib2/local/[centreForLocal]/template.4.[productDefinitionTemplateNumber:l].def"; } else { - template productDefinition "grib2/template.4.[productDefinitionTemplateNumber:l].def"; + template productDefinition "grib2/templates/template.4.[productDefinitionTemplateNumber:l].def"; } if (defined(marsStream) && defined(marsType)) { diff --git a/definitions/grib2/section.5.def b/definitions/grib2/section.5.def index 49980cdbe..5b2fc1e2b 100644 --- a/definitions/grib2/section.5.def +++ b/definitions/grib2/section.5.def @@ -51,7 +51,7 @@ concept packingType (unknown) { "grid_run_length" = { dataRepresentationTemplateNumber = 200; } } : dump; -template dataRepresentation "grib2/template.5.[dataRepresentationTemplateNumber:l].def"; +template dataRepresentation "grib2/templates/template.5.[dataRepresentationTemplateNumber:l].def"; alias ls.packingType=packingType; alias dataRepresentation=packingType; diff --git a/definitions/grib2/section.7.def b/definitions/grib2/section.7.def index f6d947674..0dc40afe4 100644 --- a/definitions/grib2/section.7.def +++ b/definitions/grib2/section.7.def @@ -13,7 +13,7 @@ unsigned[1] numberOfSection = 7:read_only; # Template number given in octets 10-11 of Section 5 position offsetBeforeData; #if (changed(dataRepresentationTemplateNumber)) { - template dataValues "grib2/template.7.[dataRepresentationTemplateNumber:l].def"; + template dataValues "grib2/templates/template.7.[dataRepresentationTemplateNumber:l].def"; #} meta changeDecimalPrecision decimal_precision(bitsPerValue,decimalScaleFactor,changingPrecision,values) : edition_specific; diff --git a/definitions/grib2/template.1.2.def b/definitions/grib2/template.1.2.def deleted file mode 100644 index 3544cd8ef..000000000 --- a/definitions/grib2/template.1.2.def +++ /dev/null @@ -1,6 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 1.2, Calendar Definition and Paleontological Offset - -include "grib2/template.1.calendar.def" -include "grib2/template.1.offset.def" diff --git a/definitions/grib2/template.3.1.def b/definitions/grib2/template.3.1.def deleted file mode 100644 index 45cd7200f..000000000 --- a/definitions/grib2/template.3.1.def +++ /dev/null @@ -1,7 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.1, Rotated Latitude/longitude (or equidistant cylindrical, or Plate Carree) - -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.latlon.def" -include "grib2/template.3.rotation.def" diff --git a/definitions/grib2/template.3.150.def b/definitions/grib2/template.3.150.def deleted file mode 100644 index 360e4d579..000000000 --- a/definitions/grib2/template.3.150.def +++ /dev/null @@ -1,7 +0,0 @@ -# TEMPLATE 3.150 - The HEALPix grid -# See https://healpix.jpl.nasa.gov/pdf/intro.pdf - -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.resolution_flags.def" -include "grib2/template.3.healpix.def" - diff --git a/definitions/grib2/template.3.2.def b/definitions/grib2/template.3.2.def deleted file mode 100644 index cc422db4d..000000000 --- a/definitions/grib2/template.3.2.def +++ /dev/null @@ -1,7 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.2, Stretched Latitude/longitude (or equidistant cylindrical, or Plate Carree) - -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.latlon.def" -include "grib2/template.3.stretching.def" diff --git a/definitions/grib2/template.3.3.def b/definitions/grib2/template.3.3.def deleted file mode 100644 index 264a09c7a..000000000 --- a/definitions/grib2/template.3.3.def +++ /dev/null @@ -1,9 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.3, Stretched and Rotated Latitude/longitude (or equidistant cylindrical, or Plate Carree) - -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.latlon.def" -include "grib2/template.3.rotation.def" -include "grib2/template.3.stretching.def" - diff --git a/definitions/grib2/template.3.4.def b/definitions/grib2/template.3.4.def deleted file mode 100644 index 224d12e7b..000000000 --- a/definitions/grib2/template.3.4.def +++ /dev/null @@ -1,5 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.4, Variable resolution latitude/longitude -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.latlon_vares.def" diff --git a/definitions/grib2/template.3.40.def b/definitions/grib2/template.3.40.def deleted file mode 100644 index 2f1c86a27..000000000 --- a/definitions/grib2/template.3.40.def +++ /dev/null @@ -1,6 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.40, Gaussian latitude/longitude - -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.gaussian.def" diff --git a/definitions/grib2/template.3.41.def b/definitions/grib2/template.3.41.def deleted file mode 100644 index 7c72c31e3..000000000 --- a/definitions/grib2/template.3.41.def +++ /dev/null @@ -1,7 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.41, Rotated Gaussian latitude/longitude - -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.gaussian.def" -include "grib2/template.3.rotation.def" diff --git a/definitions/grib2/template.3.42.def b/definitions/grib2/template.3.42.def deleted file mode 100644 index 8ec6895eb..000000000 --- a/definitions/grib2/template.3.42.def +++ /dev/null @@ -1,7 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.42, Stretched Gaussian latitude/longitude - -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.gaussian.def" -include "grib2/template.3.stretching.def" diff --git a/definitions/grib2/template.3.43.def b/definitions/grib2/template.3.43.def deleted file mode 100644 index 7e35de9d8..000000000 --- a/definitions/grib2/template.3.43.def +++ /dev/null @@ -1,8 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.43, Stretched and rotated Gaussian latitude/longitude - -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.gaussian.def" -include "grib2/template.3.rotation.def" -include "grib2/template.3.stretching.def" diff --git a/definitions/grib2/template.3.5.def b/definitions/grib2/template.3.5.def deleted file mode 100644 index b80f9264e..000000000 --- a/definitions/grib2/template.3.5.def +++ /dev/null @@ -1,7 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.5, Variable resolution rotated latitude/longitude - -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.latlon_vares.def" -include "grib2/template.3.rotation.def" diff --git a/definitions/grib2/template.3.51.def b/definitions/grib2/template.3.51.def deleted file mode 100644 index 633355082..000000000 --- a/definitions/grib2/template.3.51.def +++ /dev/null @@ -1,6 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.51, Rotated spherical harmonic coefficients - -include "grib2/template.3.spherical_harmonics.def" -include "grib2/template.3.rotation.def" diff --git a/definitions/grib2/template.3.52.def b/definitions/grib2/template.3.52.def deleted file mode 100644 index 3d6975591..000000000 --- a/definitions/grib2/template.3.52.def +++ /dev/null @@ -1,6 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.52, Stretched spherical harmonic coefficients - -include "grib2/template.3.spherical_harmonics.def" -include "grib2/template.3.stretching.def" diff --git a/definitions/grib2/template.3.53.def b/definitions/grib2/template.3.53.def deleted file mode 100644 index 69a93fca8..000000000 --- a/definitions/grib2/template.3.53.def +++ /dev/null @@ -1,7 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 3.53, Stretched and rotated spherical harmonic coefficients - -include "grib2/template.3.spherical_harmonics.def" -include "grib2/template.3.rotation.def" -include "grib2/template.3.stretching.def" diff --git a/definitions/grib2/template.4.0.def b/definitions/grib2/template.4.0.def deleted file mode 100644 index d94c9e293..000000000 --- a/definitions/grib2/template.4.0.def +++ /dev/null @@ -1,9 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.0, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.1.def b/definitions/grib2/template.4.1.def deleted file mode 100644 index d075620be..000000000 --- a/definitions/grib2/template.4.1.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.1, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.10.def b/definitions/grib2/template.4.10.def deleted file mode 100644 index 84b437bdc..000000000 --- a/definitions/grib2/template.4.10.def +++ /dev/null @@ -1,13 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.10, Percentile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -# This template was not validated at the time of publication and should be used with caution. -transient template_is_experimental = 1 : hidden; - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.percentile.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.100.def b/definitions/grib2/template.4.100.def deleted file mode 100644 index d78c32013..000000000 --- a/definitions/grib2/template.4.100.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.100, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with explicit list of frequencies and directions - -include "grib2/template.4.parameter.def" -include "grib2/template.4.wave.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -#include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.wave_spectra_list.def" diff --git a/definitions/grib2/template.4.101.def b/definitions/grib2/template.4.101.def deleted file mode 100644 index a19b0b164..000000000 --- a/definitions/grib2/template.4.101.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.101, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with frequencies and directions defined by formulae - -include "grib2/template.4.parameter.def" -include "grib2/template.4.wave.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -#include "grib2/template.4.horizontal.def" -include "grib2/template.4.wave_spectra_formula.def" diff --git a/definitions/grib2/template.4.102.def b/definitions/grib2/template.4.102.def deleted file mode 100644 index 7bd5726a0..000000000 --- a/definitions/grib2/template.4.102.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.102, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with frequencies and directions defined by formulae - -include "grib2/template.4.parameter.def" -include "grib2/template.4.wave.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -#include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.wave_spectra_formula.def" diff --git a/definitions/grib2/template.4.103.def b/definitions/grib2/template.4.103.def deleted file mode 100644 index 118403f33..000000000 --- a/definitions/grib2/template.4.103.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.103, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for waves selected by period range. - -include "grib2/template.4.parameter.def" -include "grib2/template.4.wave_period_range.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.104.def b/definitions/grib2/template.4.104.def deleted file mode 100644 index f0db4712d..000000000 --- a/definitions/grib2/template.4.104.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.104, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for waves selected by period range. - -include "grib2/template.4.parameter.def" -include "grib2/template.4.wave_period_range.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.105.def b/definitions/grib2/template.4.105.def deleted file mode 100644 index 1ae52eaa0..000000000 --- a/definitions/grib2/template.4.105.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.105, Analysis or forecast in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" -include "grib2/template.4.referenceperiod.def" diff --git a/definitions/grib2/template.4.106.def b/definitions/grib2/template.4.106.def deleted file mode 100644 index 8c0920074..000000000 --- a/definitions/grib2/template.4.106.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.106, Individual ensemble forecast, control and perturbed in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.referenceperiod.def" diff --git a/definitions/grib2/template.4.107.def b/definitions/grib2/template.4.107.def deleted file mode 100644 index f0f06a8d7..000000000 --- a/definitions/grib2/template.4.107.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.107, Derived forecasts based on all ensemble members in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" -include "grib2/template.4.derived.def" -include "grib2/template.4.referenceperiod.def" diff --git a/definitions/grib2/template.4.108.def b/definitions/grib2/template.4.108.def deleted file mode 100644 index df4ad830b..000000000 --- a/definitions/grib2/template.4.108.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.108, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for generic optical properties - -include "grib2/template.4.parameter.def" -include "grib2/template.4.optical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.109.def b/definitions/grib2/template.4.109.def deleted file mode 100644 index bece80dee..000000000 --- a/definitions/grib2/template.4.109.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.109, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for generic optical properties - -include "grib2/template.4.parameter.def" -include "grib2/template.4.optical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.11.def b/definitions/grib2/template.4.11.def deleted file mode 100644 index e1c00f940..000000000 --- a/definitions/grib2/template.4.11.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.11, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.110.def b/definitions/grib2/template.4.110.def deleted file mode 100644 index 4a148ccb7..000000000 --- a/definitions/grib2/template.4.110.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.110 - Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for generic optical properties - -include "grib2/template.4.parameter.def" -include "grib2/template.4.optical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.111.def b/definitions/grib2/template.4.111.def deleted file mode 100644 index f2a63683b..000000000 --- a/definitions/grib2/template.4.111.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.111, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for generic optical properties - -include "grib2/template.4.parameter.def" -include "grib2/template.4.optical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.112.def b/definitions/grib2/template.4.112.def deleted file mode 100644 index 6361f0762..000000000 --- a/definitions/grib2/template.4.112.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.112, Probability forecasts in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" -include "grib2/template.4.probability.def" -include "grib2/template.4.referenceperiod.def" diff --git a/definitions/grib2/template.4.113.def b/definitions/grib2/template.4.113.def deleted file mode 100644 index 52ecb5b61..000000000 --- a/definitions/grib2/template.4.113.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.113, Generalised tiles at a horizontal level or horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generalised_tile.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.114.def b/definitions/grib2/template.4.114.def deleted file mode 100644 index 3c342dff1..000000000 --- a/definitions/grib2/template.4.114.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.114, Average, accumulation, and/or extreme values or other statistically processed values on generalised tiles at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generalised_tile.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" \ No newline at end of file diff --git a/definitions/grib2/template.4.115.def b/definitions/grib2/template.4.115.def deleted file mode 100644 index 5064401c5..000000000 --- a/definitions/grib2/template.4.115.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.115, Individual ensemble forecast, control and perturbed on generalised tiles at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generalised_tile.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.leps.def" diff --git a/definitions/grib2/template.4.116.def b/definitions/grib2/template.4.116.def deleted file mode 100644 index e035279ca..000000000 --- a/definitions/grib2/template.4.116.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.116, Individual ensemble forecast, control and perturbed on generalised tiles at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generalised_tile.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.leps.def" -include "grib2/template.4.statistical.def" \ No newline at end of file diff --git a/definitions/grib2/template.4.117.def b/definitions/grib2/template.4.117.def deleted file mode 100644 index 2d35d198f..000000000 --- a/definitions/grib2/template.4.117.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.117, Individual large ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.leps.def" diff --git a/definitions/grib2/template.4.118.def b/definitions/grib2/template.4.118.def deleted file mode 100644 index e4f5979b9..000000000 --- a/definitions/grib2/template.4.118.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.118, Individual large ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.leps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.119.def b/definitions/grib2/template.4.119.def deleted file mode 100644 index ef464a00f..000000000 --- a/definitions/grib2/template.4.119.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.119, Probability forecasts from large ensembles at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.probabilityLargeEnsemble.def" diff --git a/definitions/grib2/template.4.12.def b/definitions/grib2/template.4.12.def deleted file mode 100644 index 4b72f29ed..000000000 --- a/definitions/grib2/template.4.12.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.12, Derived forecasts based on all ensemble members at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.derived.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.120.def b/definitions/grib2/template.4.120.def deleted file mode 100644 index 9ad2f90bd..000000000 --- a/definitions/grib2/template.4.120.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.120, Probability forecasts from large ensembles at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.probabilityLargeEnsemble.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.121.def b/definitions/grib2/template.4.121.def deleted file mode 100644 index 73bba193b..000000000 --- a/definitions/grib2/template.4.121.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.121, Probability forecasts with spatiotemporal processing based on focal (moving window) statistics at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.probabilityLargeEnsemble.def" -include "grib2/template.4.focalStatistics.def" diff --git a/definitions/grib2/template.4.122.def b/definitions/grib2/template.4.122.def deleted file mode 100644 index 40bf98240..000000000 --- a/definitions/grib2/template.4.122.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.122, Probability forecasts with spatiotemporal processing based on focal (moving window) statistics at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.probabilityLargeEnsemble.def" -include "grib2/template.4.statistical.def" -include "grib2/template.4.focalStatistics.def" diff --git a/definitions/grib2/template.4.123.def b/definitions/grib2/template.4.123.def deleted file mode 100644 index a70b9643c..000000000 --- a/definitions/grib2/template.4.123.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.123, Probability forecasts from large ensembles with spatiotemporal processing based on focal (moving window) statistics in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" -include "grib2/template.4.probabilityLargeEnsemble.def" -include "grib2/template.4.referenceperiod.def" -include "grib2/template.4.focalStatistics.def" diff --git a/definitions/grib2/template.4.124.def b/definitions/grib2/template.4.124.def deleted file mode 100644 index a3b83980e..000000000 --- a/definitions/grib2/template.4.124.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.124, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for radionuclides - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.source.def" -include "grib2/template.4.radionuclides.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.125.def b/definitions/grib2/template.4.125.def deleted file mode 100644 index 88ebd7894..000000000 --- a/definitions/grib2/template.4.125.def +++ /dev/null @@ -1,13 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.125, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for radionuclides - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.source.def" -include "grib2/template.4.radionuclides.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.126.def b/definitions/grib2/template.4.126.def deleted file mode 100644 index fed3fbac1..000000000 --- a/definitions/grib2/template.4.126.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.126, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for radionuclides - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.source.def" -include "grib2/template.4.radionuclides.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.127.def b/definitions/grib2/template.4.127.def deleted file mode 100644 index baa754fca..000000000 --- a/definitions/grib2/template.4.127.def +++ /dev/null @@ -1,14 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.127, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for radionuclides - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.source.def" -include "grib2/template.4.radionuclides.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" - diff --git a/definitions/grib2/template.4.13.def b/definitions/grib2/template.4.13.def deleted file mode 100644 index b892c0d52..000000000 --- a/definitions/grib2/template.4.13.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.13, Derived forecasts based on a cluster of ensemble members over a rectangular area at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.derived.def" -include "grib2/template.4.rectangular_cluster.def" -include "grib2/template.4.statistical.def" -include "grib2/template.4.eps_cluster.def" diff --git a/definitions/grib2/template.4.14.def b/definitions/grib2/template.4.14.def deleted file mode 100644 index 853a0d5a9..000000000 --- a/definitions/grib2/template.4.14.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.14, Derived forecasts based on a cluster of ensemble members over a circular area at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.derived.def" -include "grib2/template.4.circular_cluster.def" -include "grib2/template.4.statistical.def" -include "grib2/template.4.eps_cluster.def" diff --git a/definitions/grib2/template.4.2.def b/definitions/grib2/template.4.2.def deleted file mode 100644 index d8cb73222..000000000 --- a/definitions/grib2/template.4.2.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.2, Derived forecast based on all ensemble members at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.derived.def" diff --git a/definitions/grib2/template.4.3.def b/definitions/grib2/template.4.3.def deleted file mode 100644 index 4c32231a2..000000000 --- a/definitions/grib2/template.4.3.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.3, Derived forecasts based on a cluster of ensemble members over a rectangular area at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.derived.def" -include "grib2/template.4.rectangular_cluster.def" -include "grib2/template.4.eps_cluster.def" diff --git a/definitions/grib2/template.4.32.def b/definitions/grib2/template.4.32.def deleted file mode 100644 index b09e799f0..000000000 --- a/definitions/grib2/template.4.32.def +++ /dev/null @@ -1,9 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.32, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.satellite.def" diff --git a/definitions/grib2/template.4.33.def b/definitions/grib2/template.4.33.def deleted file mode 100644 index 6a105c23f..000000000 --- a/definitions/grib2/template.4.33.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.33, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.satellite.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.34.def b/definitions/grib2/template.4.34.def deleted file mode 100644 index c5856ebb2..000000000 --- a/definitions/grib2/template.4.34.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.34, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.satellite.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.4.def b/definitions/grib2/template.4.4.def deleted file mode 100644 index b86e482c2..000000000 --- a/definitions/grib2/template.4.4.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.4, Derived forecasts based on a cluster of ensemble members over a circular area at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.derived.def" -include "grib2/template.4.circular_cluster.def" -include "grib2/template.4.eps_cluster.def" diff --git a/definitions/grib2/template.4.40.def b/definitions/grib2/template.4.40.def deleted file mode 100644 index bc4fd84b3..000000000 --- a/definitions/grib2/template.4.40.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.40, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.41.def b/definitions/grib2/template.4.41.def deleted file mode 100644 index 0b8787a0e..000000000 --- a/definitions/grib2/template.4.41.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.41, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.42.def b/definitions/grib2/template.4.42.def deleted file mode 100644 index 9bc4e2111..000000000 --- a/definitions/grib2/template.4.42.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.42, Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.43.def b/definitions/grib2/template.4.43.def deleted file mode 100644 index 3bb670463..000000000 --- a/definitions/grib2/template.4.43.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.43, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.45.def b/definitions/grib2/template.4.45.def deleted file mode 100644 index 6c48d108e..000000000 --- a/definitions/grib2/template.4.45.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.45, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for aerosol - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.46.def b/definitions/grib2/template.4.46.def deleted file mode 100644 index 445b16231..000000000 --- a/definitions/grib2/template.4.46.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.46, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.47.def b/definitions/grib2/template.4.47.def deleted file mode 100644 index 892820635..000000000 --- a/definitions/grib2/template.4.47.def +++ /dev/null @@ -1,14 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.47, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval -# Note: This template is deprecated. Template 4.85 should be used instead. -transient template_is_deprecated = 1 : hidden; - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.48.def b/definitions/grib2/template.4.48.def deleted file mode 100644 index 65e4d3291..000000000 --- a/definitions/grib2/template.4.48.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.48, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.optical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.49.def b/definitions/grib2/template.4.49.def deleted file mode 100644 index 40e48c7c6..000000000 --- a/definitions/grib2/template.4.49.def +++ /dev/null @@ -1,13 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.49, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.optical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.5.def b/definitions/grib2/template.4.5.def deleted file mode 100644 index ea951b9e5..000000000 --- a/definitions/grib2/template.4.5.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.5, Probability forecasts at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.probability.def" diff --git a/definitions/grib2/template.4.50.def b/definitions/grib2/template.4.50.def deleted file mode 100644 index 1630c8b0a..000000000 --- a/definitions/grib2/template.4.50.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.50, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for aerosol - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" - diff --git a/definitions/grib2/template.4.51.def b/definitions/grib2/template.4.51.def deleted file mode 100644 index 64ce2c3f8..000000000 --- a/definitions/grib2/template.4.51.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.51, Categorical forecasts at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.categorical.def" diff --git a/definitions/grib2/template.4.53.def b/definitions/grib2/template.4.53.def deleted file mode 100644 index 719887a80..000000000 --- a/definitions/grib2/template.4.53.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.53, Partitioned parameters at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.partition.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.54.def b/definitions/grib2/template.4.54.def deleted file mode 100644 index 892940830..000000000 --- a/definitions/grib2/template.4.54.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.54, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters - -include "grib2/template.4.parameter.def" -include "grib2/template.4.partition.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.55.def b/definitions/grib2/template.4.55.def deleted file mode 100644 index ad14d7a84..000000000 --- a/definitions/grib2/template.4.55.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.55, Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.tile.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.57.def b/definitions/grib2/template.4.57.def deleted file mode 100644 index 3647b7f65..000000000 --- a/definitions/grib2/template.4.57.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.57, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents based on a distribution function - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.distribution.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.58.def b/definitions/grib2/template.4.58.def deleted file mode 100644 index aaa97cae5..000000000 --- a/definitions/grib2/template.4.58.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.58, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents based on a distribution function - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.distribution.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.59.def b/definitions/grib2/template.4.59.def deleted file mode 100644 index 3795b9524..000000000 --- a/definitions/grib2/template.4.59.def +++ /dev/null @@ -1,13 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.59, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters - -# Use this instead of template 4.56 - -include "grib2/template.4.parameter.def" -include "grib2/template.4.tile.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.6.def b/definitions/grib2/template.4.6.def deleted file mode 100644 index ea94aa32b..000000000 --- a/definitions/grib2/template.4.6.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.6, Percentile forecasts at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.percentile.def" diff --git a/definitions/grib2/template.4.60.def b/definitions/grib2/template.4.60.def deleted file mode 100644 index 20ae96179..000000000 --- a/definitions/grib2/template.4.60.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.60, Individual ensemble re-forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.reforecast.def" diff --git a/definitions/grib2/template.4.61.def b/definitions/grib2/template.4.61.def deleted file mode 100644 index 4fc3886e8..000000000 --- a/definitions/grib2/template.4.61.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.61, Individual ensemble re-forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.reforecast.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.63.def b/definitions/grib2/template.4.63.def deleted file mode 100644 index 2b0396795..000000000 --- a/definitions/grib2/template.4.63.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.63, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles - -include "grib2/template.4.parameter.def" -include "grib2/template.4.tile.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.67.def b/definitions/grib2/template.4.67.def deleted file mode 100644 index 62f40d4fe..000000000 --- a/definitions/grib2/template.4.67.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.67, Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.distribution.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.68.def b/definitions/grib2/template.4.68.def deleted file mode 100644 index 60835b947..000000000 --- a/definitions/grib2/template.4.68.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.68, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.distribution.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.70.def b/definitions/grib2/template.4.70.def deleted file mode 100644 index 399e81197..000000000 --- a/definitions/grib2/template.4.70.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.70, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.postproc.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.71.def b/definitions/grib2/template.4.71.def deleted file mode 100644 index ba40285b1..000000000 --- a/definitions/grib2/template.4.71.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.71, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.postproc.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.72.def b/definitions/grib2/template.4.72.def deleted file mode 100644 index 33d58a725..000000000 --- a/definitions/grib2/template.4.72.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.72, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.postproc.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.73.def b/definitions/grib2/template.4.73.def deleted file mode 100644 index 306ea6ed0..000000000 --- a/definitions/grib2/template.4.73.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.73, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.postproc.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.76.def b/definitions/grib2/template.4.76.def deleted file mode 100644 index 11ff6b277..000000000 --- a/definitions/grib2/template.4.76.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.76, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source/sink - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.source.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.77.def b/definitions/grib2/template.4.77.def deleted file mode 100644 index 5690c99eb..000000000 --- a/definitions/grib2/template.4.77.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.77, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with a source/sink - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.source.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.78.def b/definitions/grib2/template.4.78.def deleted file mode 100644 index 88a383062..000000000 --- a/definitions/grib2/template.4.78.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.78, Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source/sink - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.source.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.79.def b/definitions/grib2/template.4.79.def deleted file mode 100644 index 0a7ba48c7..000000000 --- a/definitions/grib2/template.4.79.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.79, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source/sink - -include "grib2/template.4.parameter.def" -include "grib2/template.4.chemical.def" -include "grib2/template.4.source.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.8.def b/definitions/grib2/template.4.8.def deleted file mode 100644 index 8b14b6536..000000000 --- a/definitions/grib2/template.4.8.def +++ /dev/null @@ -1,9 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.8, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.80.def b/definitions/grib2/template.4.80.def deleted file mode 100644 index 3ebee5d44..000000000 --- a/definitions/grib2/template.4.80.def +++ /dev/null @@ -1,13 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.80, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol with source/sink - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.source.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.optical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.81.def b/definitions/grib2/template.4.81.def deleted file mode 100644 index 8b4810cb7..000000000 --- a/definitions/grib2/template.4.81.def +++ /dev/null @@ -1,14 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.81, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol with source/sink - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.source.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.optical.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" diff --git a/definitions/grib2/template.4.82.def b/definitions/grib2/template.4.82.def deleted file mode 100644 index 5d92154dd..000000000 --- a/definitions/grib2/template.4.82.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.82, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source/sink - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.source.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.83.def b/definitions/grib2/template.4.83.def deleted file mode 100644 index 395931e68..000000000 --- a/definitions/grib2/template.4.83.def +++ /dev/null @@ -1,16 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.83, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval with source/sink - -# It is recommended not to use this template. Product definition template 4.84 should be used instead because it contains an additional octet to specify the type of generating process -transient template_is_deprecated = 1 : hidden; - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.source.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.84.def b/definitions/grib2/template.4.84.def deleted file mode 100644 index a85bded9f..000000000 --- a/definitions/grib2/template.4.84.def +++ /dev/null @@ -1,13 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.84, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.source.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.85.def b/definitions/grib2/template.4.85.def deleted file mode 100644 index b6afd6e69..000000000 --- a/definitions/grib2/template.4.85.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.85, individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol - -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.86.def b/definitions/grib2/template.4.86.def deleted file mode 100644 index 957fa492a..000000000 --- a/definitions/grib2/template.4.86.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.86, Quantile forecasts at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.quantile.def" diff --git a/definitions/grib2/template.4.87.def b/definitions/grib2/template.4.87.def deleted file mode 100644 index b8e264e0f..000000000 --- a/definitions/grib2/template.4.87.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.87, Quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.quantile.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.88.def b/definitions/grib2/template.4.88.def deleted file mode 100644 index 8fd7405c1..000000000 --- a/definitions/grib2/template.4.88.def +++ /dev/null @@ -1,9 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.88, Analysis or Forecast at a horizontal level or in a horizontal layer at a local time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -# no template.4.forecast_time.def component in this template. -include "grib2/template.4.horizontal.def" -include "grib2/template.4.localtime.def" diff --git a/definitions/grib2/template.4.89.def b/definitions/grib2/template.4.89.def deleted file mode 100644 index eee84fade..000000000 --- a/definitions/grib2/template.4.89.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.89, Post-processed quantile forecasts at a horizontal level or in a horizontal layer at a point in time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.postproc.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.quantile.def" diff --git a/definitions/grib2/template.4.9.def b/definitions/grib2/template.4.9.def deleted file mode 100644 index 62774df29..000000000 --- a/definitions/grib2/template.4.9.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.9, Probability forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.probability.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.90.def b/definitions/grib2/template.4.90.def deleted file mode 100644 index 94e5cc8e4..000000000 --- a/definitions/grib2/template.4.90.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.90, Post-processed quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.postproc.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.quantile.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.91.def b/definitions/grib2/template.4.91.def deleted file mode 100644 index 207ecd911..000000000 --- a/definitions/grib2/template.4.91.def +++ /dev/null @@ -1,10 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.91, Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.categorical.def" -include "grib2/template.4.statistical.def" diff --git a/definitions/grib2/template.4.92.def b/definitions/grib2/template.4.92.def deleted file mode 100644 index d94c89015..000000000 --- a/definitions/grib2/template.4.92.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.92, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a local time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -#include "grib2/template.4.forecast_time.def" -#include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.localtime.def" diff --git a/definitions/grib2/template.4.93.def b/definitions/grib2/template.4.93.def deleted file mode 100644 index 9ff2e882d..000000000 --- a/definitions/grib2/template.4.93.def +++ /dev/null @@ -1,13 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.93, Analysis or forecast at a horizontal level or in a horizontal layer at a local time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.postproc.def" -include "grib2/template.4.generating_process.def" - -#include "grib2/template.4.forecast_time.def" -#include "grib2/template.4.point_in_time.def" - -include "grib2/template.4.horizontal.def" -include "grib2/template.4.localtime.def" diff --git a/definitions/grib2/template.4.94.def b/definitions/grib2/template.4.94.def deleted file mode 100644 index 26850a8c8..000000000 --- a/definitions/grib2/template.4.94.def +++ /dev/null @@ -1,14 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.94, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a local time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.postproc.def" -include "grib2/template.4.generating_process.def" - -#include "grib2/template.4.forecast_time.def" -#include "grib2/template.4.point_in_time.def" - -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.localtime.def" diff --git a/definitions/grib2/template.4.95.def b/definitions/grib2/template.4.95.def deleted file mode 100644 index 5ffd5e1f2..000000000 --- a/definitions/grib2/template.4.95.def +++ /dev/null @@ -1,12 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.95, Average, accumulation extreme values or other statistically processed value at a horizontal level or in a horizontal layer at a local time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" - -# no template.4.forecast_time.def component in this template. - -include "grib2/template.4.horizontal.def" -include "grib2/template.4.localtime_statistical.def" -include "grib2/template.4.localtime.def" diff --git a/definitions/grib2/template.4.96.def b/definitions/grib2/template.4.96.def deleted file mode 100644 index 043794cf4..000000000 --- a/definitions/grib2/template.4.96.def +++ /dev/null @@ -1,14 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.96, Average, accumulation, extreme values or other statistically processed values of an individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a local time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" - -#include "grib2/template.4.forecast_time.def" -#include "grib2/template.4.point_in_time.def" - -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.localtime_statistical.def" -include "grib2/template.4.localtime.def" diff --git a/definitions/grib2/template.4.97.def b/definitions/grib2/template.4.97.def deleted file mode 100644 index 1ea736ac7..000000000 --- a/definitions/grib2/template.4.97.def +++ /dev/null @@ -1,14 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.97, Average, accumulation, extreme values or other statistically processed values of post-processing analysis or forecast at a horizontal level or in a horizontal layer at a local time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.postproc.def" -include "grib2/template.4.generating_process.def" - -#include "grib2/template.4.forecast_time.def" -#include "grib2/template.4.point_in_time.def" - -include "grib2/template.4.horizontal.def" -include "grib2/template.4.localtime_statistical.def" -include "grib2/template.4.localtime.def" diff --git a/definitions/grib2/template.4.98.def b/definitions/grib2/template.4.98.def deleted file mode 100644 index 453f6689d..000000000 --- a/definitions/grib2/template.4.98.def +++ /dev/null @@ -1,15 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.98, Average, accumulation, extreme values or other statistically processed values of a post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a local time - -include "grib2/template.4.parameter.def" -include "grib2/template.4.postproc.def" -include "grib2/template.4.generating_process.def" - -#include "grib2/template.4.forecast_time.def" -#include "grib2/template.4.point_in_time.def" - -include "grib2/template.4.horizontal.def" -include "grib2/template.4.eps.def" -include "grib2/template.4.localtime_statistical.def" -include "grib2/template.4.localtime.def" diff --git a/definitions/grib2/template.4.99.def b/definitions/grib2/template.4.99.def deleted file mode 100644 index fc2d9a616..000000000 --- a/definitions/grib2/template.4.99.def +++ /dev/null @@ -1,11 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 4.99, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with explicit list of frequencies and directions - -include "grib2/template.4.parameter.def" -include "grib2/template.4.wave.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -#include "grib2/template.4.horizontal.def" -include "grib2/template.4.wave_spectra_list.def" diff --git a/definitions/grib2/template.5.0.def b/definitions/grib2/template.5.0.def deleted file mode 100644 index 709f8be74..000000000 --- a/definitions/grib2/template.5.0.def +++ /dev/null @@ -1,7 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 5.0, Grid point data - simple packing - -include "grib2/template.5.packing.def" -include "grib2/template.5.original_values.def" - diff --git a/definitions/grib2/template.5.40000.def b/definitions/grib2/template.5.40000.def deleted file mode 100644 index 7fd4303ad..000000000 --- a/definitions/grib2/template.5.40000.def +++ /dev/null @@ -1,3 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -include "grib2/template.5.40.def" diff --git a/definitions/grib2/template.5.41.def b/definitions/grib2/template.5.41.def deleted file mode 100644 index 58ebd8e34..000000000 --- a/definitions/grib2/template.5.41.def +++ /dev/null @@ -1,6 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -# TEMPLATE 5.41, Grid point data - PNG Code Stream Format - -include "grib2/template.5.packing.def" -include "grib2/template.5.original_values.def" diff --git a/definitions/grib2/template.7.40000.def b/definitions/grib2/template.7.40000.def deleted file mode 100644 index 33d9b4b8c..000000000 --- a/definitions/grib2/template.7.40000.def +++ /dev/null @@ -1,3 +0,0 @@ -# (C) Copyright 2005- ECMWF. - -include "grib2/template.7.40.def" diff --git a/definitions/grib2/template.1.0.def b/definitions/grib2/templates/template.1.0.def similarity index 57% rename from definitions/grib2/template.1.0.def rename to definitions/grib2/templates/template.1.0.def index 9c73ed2cc..a7428bdf7 100644 --- a/definitions/grib2/template.1.0.def +++ b/definitions/grib2/templates/template.1.0.def @@ -2,4 +2,4 @@ # TEMPLATE 1.0, Calendar Definition -include "grib2/template.1.calendar.def" +include "grib2/templates/template.1.calendar.def" diff --git a/definitions/grib2/template.1.1.def b/definitions/grib2/templates/template.1.1.def similarity index 59% rename from definitions/grib2/template.1.1.def rename to definitions/grib2/templates/template.1.1.def index 6d559c4d7..0354f634b 100644 --- a/definitions/grib2/template.1.1.def +++ b/definitions/grib2/templates/template.1.1.def @@ -2,4 +2,4 @@ # TEMPLATE 1.1, Paleontological Offset -include "grib2/template.1.offset.def" +include "grib2/templates/template.1.offset.def" diff --git a/definitions/grib2/templates/template.1.2.def b/definitions/grib2/templates/template.1.2.def new file mode 100644 index 000000000..06c868aa6 --- /dev/null +++ b/definitions/grib2/templates/template.1.2.def @@ -0,0 +1,6 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 1.2, Calendar Definition and Paleontological Offset + +include "grib2/templates/template.1.calendar.def" +include "grib2/templates/template.1.offset.def" diff --git a/definitions/grib2/template.1.calendar.def b/definitions/grib2/templates/template.1.calendar.def similarity index 100% rename from definitions/grib2/template.1.calendar.def rename to definitions/grib2/templates/template.1.calendar.def diff --git a/definitions/grib2/template.1.offset.def b/definitions/grib2/templates/template.1.offset.def similarity index 100% rename from definitions/grib2/template.1.offset.def rename to definitions/grib2/templates/template.1.offset.def diff --git a/definitions/grib2/template.3.0.def b/definitions/grib2/templates/template.3.0.def similarity index 50% rename from definitions/grib2/template.3.0.def rename to definitions/grib2/templates/template.3.0.def index 309391679..89a9af957 100644 --- a/definitions/grib2/template.3.0.def +++ b/definitions/grib2/templates/template.3.0.def @@ -2,5 +2,5 @@ # TEMPLATE 3.0, Latitude/longitude (or equidistant cylindrical, or Plate Carree) -include "grib2/template.3.shape_of_the_earth.def" -include "grib2/template.3.latlon.def" +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.latlon.def" diff --git a/definitions/grib2/templates/template.3.1.def b/definitions/grib2/templates/template.3.1.def new file mode 100644 index 000000000..3766935bc --- /dev/null +++ b/definitions/grib2/templates/template.3.1.def @@ -0,0 +1,7 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.1, Rotated Latitude/longitude (or equidistant cylindrical, or Plate Carree) + +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.latlon.def" +include "grib2/templates/template.3.rotation.def" diff --git a/definitions/grib2/template.3.10.def b/definitions/grib2/templates/template.3.10.def similarity index 95% rename from definitions/grib2/template.3.10.def rename to definitions/grib2/templates/template.3.10.def index 6fb8f1a46..303600551 100644 --- a/definitions/grib2/template.3.10.def +++ b/definitions/grib2/templates/template.3.10.def @@ -1,7 +1,7 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.10, Mercator -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" constant isGridded = true; @@ -27,7 +27,7 @@ signed[4] longitudeOfFirstGridPoint : edition_specific,no_copy; alias Lo1 = longitudeOfFirstGridPoint; meta geography.longitudeOfFirstGridPointInDegrees scale(longitudeOfFirstGridPoint,oneConstant,grib2divider,truncateDegrees) : dump; -include "grib2/template.3.resolution_flags.def" +include "grib2/templates/template.3.resolution_flags.def" # LaD - Latitude(s) at which the Mercator projection intersects the Earth # (Latitude(s) where Di and Dj are specified) @@ -44,7 +44,7 @@ signed[4] longitudeOfLastGridPoint: edition_specific,no_copy ; alias Lo2 = longitudeOfLastGridPoint; meta geography.longitudeOfLastGridPointInDegrees scale(longitudeOfLastGridPoint,oneConstant,grib2divider,truncateDegrees) : dump; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" # Orientation of the grid, angle between i direction on the map and the equator # NOTE 1: Limited to the range of 0 to 90 degrees; if the angle of orientation of the grid is neither 0 nor 90 degrees, diff --git a/definitions/grib2/template.3.100.def b/definitions/grib2/templates/template.3.100.def similarity index 100% rename from definitions/grib2/template.3.100.def rename to definitions/grib2/templates/template.3.100.def diff --git a/definitions/grib2/template.3.1000.def b/definitions/grib2/templates/template.3.1000.def similarity index 94% rename from definitions/grib2/template.3.1000.def rename to definitions/grib2/templates/template.3.1000.def index 8f825f393..4690bc620 100644 --- a/definitions/grib2/template.3.1000.def +++ b/definitions/grib2/templates/template.3.1000.def @@ -6,7 +6,7 @@ # and should be used only for bilateral previously agreed tests transient template_is_experimental = 1 : hidden ; -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" constant isGridded = true; @@ -27,7 +27,7 @@ alias La1 = latitudeOfFirstGridPoint; unsigned[4] longitudeOfFirstGridPoint : edition_specific; alias Lo1 = longitudeOfFirstGridPoint; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" # Latitude of last grid point signed[4] latitudeOfLastGridPoint : edition_specific; diff --git a/definitions/grib2/template.3.101.def b/definitions/grib2/templates/template.3.101.def similarity index 100% rename from definitions/grib2/template.3.101.def rename to definitions/grib2/templates/template.3.101.def diff --git a/definitions/grib2/template.3.110.def b/definitions/grib2/templates/template.3.110.def similarity index 90% rename from definitions/grib2/template.3.110.def rename to definitions/grib2/templates/template.3.110.def index fae3e5420..36aa5522b 100644 --- a/definitions/grib2/template.3.110.def +++ b/definitions/grib2/templates/template.3.110.def @@ -1,7 +1,7 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.110, Equatorial azimuthal equidistant projection -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" constant isGridded = true; @@ -37,4 +37,4 @@ unsigned[4] Dy : dump; # Projection centre flag unsigned[1] projectionCentreFlag : dump; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" diff --git a/definitions/grib2/template.3.1100.def b/definitions/grib2/templates/template.3.1100.def similarity index 94% rename from definitions/grib2/template.3.1100.def rename to definitions/grib2/templates/template.3.1100.def index de65bca94..9970228f5 100644 --- a/definitions/grib2/template.3.1100.def +++ b/definitions/grib2/templates/template.3.1100.def @@ -6,7 +6,7 @@ # and should be used only for bilateral previously agreed tests transient template_is_experimental = 1 : hidden; -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" constant isGridded = true; @@ -28,7 +28,7 @@ unsigned[4] longitudeOfFirstGridPoint : edition_specific,dump; alias Lo1 =longitudeOfFirstGridPoint; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" # La2 - latitude of last grid point signed[4] latitudeOfLastGridPoint : edition_specific,dump; diff --git a/definitions/grib2/template.3.12.def b/definitions/grib2/templates/template.3.12.def similarity index 93% rename from definitions/grib2/template.3.12.def rename to definitions/grib2/templates/template.3.12.def index fa3b2a8a0..634e6df69 100644 --- a/definitions/grib2/template.3.12.def +++ b/definitions/grib2/templates/template.3.12.def @@ -1,7 +1,7 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.12, Transverse Mercator -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" constant isGridded = true; @@ -27,7 +27,7 @@ signed[4] longitudeOfReferencePoint : edition_specific,no_copy; alias LoR = longitudeOfReferencePoint; meta geography.longitudeOfReferencePointInDegrees scale(longitudeOfReferencePoint,oneConstant,grib2divider,truncateDegrees) : dump; -include "grib2/template.3.resolution_flags.def" +include "grib2/templates/template.3.resolution_flags.def" # m - scale factor at reference point ratio of distance on map to distance on spheroid # (IEEE 32-bit floating-point values) @@ -45,7 +45,7 @@ signed[4] YR : edition_specific,no_copy ; alias falseNorthing = YR; meta geography.YRInMetres scale(YR,one,hundred) : dump; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" # Di - i-direction increment length in units of 10-2 m unsigned[4] Di : edition_specific,no_copy; diff --git a/definitions/grib2/template.3.120.def b/definitions/grib2/templates/template.3.120.def similarity index 96% rename from definitions/grib2/template.3.120.def rename to definitions/grib2/templates/template.3.120.def index e208cab7c..b5a11043d 100644 --- a/definitions/grib2/template.3.120.def +++ b/definitions/grib2/templates/template.3.120.def @@ -34,7 +34,7 @@ alias Dx = spacingOfBinsAlongRadials; unsigned[4] offsetFromOriginToInnerBound; alias Dstart = offsetFromOriginToInnerBound; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" # Octets 40-(39+4Nr) : For each of Nr radials: radials list(numberOfRadials){ diff --git a/definitions/grib2/template.3.1200.def b/definitions/grib2/templates/template.3.1200.def similarity index 100% rename from definitions/grib2/template.3.1200.def rename to definitions/grib2/templates/template.3.1200.def diff --git a/definitions/grib2/template.3.13.def b/definitions/grib2/templates/template.3.13.def similarity index 50% rename from definitions/grib2/template.3.13.def rename to definitions/grib2/templates/template.3.13.def index 1fe8f8c47..ac4e363c9 100644 --- a/definitions/grib2/template.3.13.def +++ b/definitions/grib2/templates/template.3.13.def @@ -1,5 +1,5 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.13 Mercator with modelling subdomains definition -include "grib2/template.3.10.def" -include "grib2/template.3.lam.def" +include "grib2/templates/template.3.10.def" +include "grib2/templates/template.3.lam.def" diff --git a/definitions/grib2/template.3.130.def b/definitions/grib2/templates/template.3.130.def similarity index 79% rename from definitions/grib2/template.3.130.def rename to definitions/grib2/templates/template.3.130.def index eec6dbc5b..c2e7c96cf 100644 --- a/definitions/grib2/template.3.130.def +++ b/definitions/grib2/templates/template.3.130.def @@ -6,7 +6,7 @@ constant isGridded = true; # Note: This template is deprecated. -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" points list(numberOfDataPoints) { signed[4] latitude; diff --git a/definitions/grib2/template.3.140.def b/definitions/grib2/templates/template.3.140.def similarity index 96% rename from definitions/grib2/template.3.140.def rename to definitions/grib2/templates/template.3.140.def index d5c7b4666..a732332ab 100644 --- a/definitions/grib2/template.3.140.def +++ b/definitions/grib2/templates/template.3.140.def @@ -1,7 +1,7 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.140, Lambert azimuthal equal area projection -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" constant isGridded = true; @@ -52,7 +52,7 @@ alias Dy = yDirectionGridLengthInMillimetres ; meta geography.yDirectionGridLengthInMetres scale(yDirectionGridLengthInMillimetres,one,thousand,truncateDegrees): dump; alias DyInMetres = yDirectionGridLengthInMetres; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" iterator lambert_azimuthal_equal_area( numberOfPoints,missingValue,values, diff --git a/definitions/grib2/templates/template.3.150.def b/definitions/grib2/templates/template.3.150.def new file mode 100644 index 000000000..ff3456a62 --- /dev/null +++ b/definitions/grib2/templates/template.3.150.def @@ -0,0 +1,7 @@ +# TEMPLATE 3.150 - The HEALPix grid +# See https://healpix.jpl.nasa.gov/pdf/intro.pdf + +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.resolution_flags.def" +include "grib2/templates/template.3.healpix.def" + diff --git a/definitions/grib2/templates/template.3.2.def b/definitions/grib2/templates/template.3.2.def new file mode 100644 index 000000000..507e88506 --- /dev/null +++ b/definitions/grib2/templates/template.3.2.def @@ -0,0 +1,7 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.2, Stretched Latitude/longitude (or equidistant cylindrical, or Plate Carree) + +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.latlon.def" +include "grib2/templates/template.3.stretching.def" diff --git a/definitions/grib2/template.3.20.def b/definitions/grib2/templates/template.3.20.def similarity index 96% rename from definitions/grib2/template.3.20.def rename to definitions/grib2/templates/template.3.20.def index 80b1dce80..7438b4766 100644 --- a/definitions/grib2/template.3.20.def +++ b/definitions/grib2/templates/template.3.20.def @@ -1,7 +1,7 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.20, Polar stereographic projection -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" constant isGridded = true; @@ -63,7 +63,7 @@ flags[1] projectionCentreFlag 'grib2/tables/[tablesVersion]/3.5.table' : dump; # If bit 1 is 1, then the South Pole is on the projection plane flagbit southPoleOnProjectionPlane(projectionCentreFlag,7) : dump; # WMO bit 1 -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" iterator polar_stereographic(numberOfPoints,missingValue,values, radius,Nx,Ny, diff --git a/definitions/grib2/template.3.23.def b/definitions/grib2/templates/template.3.23.def similarity index 53% rename from definitions/grib2/template.3.23.def rename to definitions/grib2/templates/template.3.23.def index 9a1087a71..30019547a 100644 --- a/definitions/grib2/template.3.23.def +++ b/definitions/grib2/templates/template.3.23.def @@ -1,5 +1,5 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.23 Polar stereographic with modelling subdomains definition -include "grib2/template.3.20.def" -include "grib2/template.3.lam.def" +include "grib2/templates/template.3.20.def" +include "grib2/templates/template.3.lam.def" diff --git a/definitions/grib2/templates/template.3.3.def b/definitions/grib2/templates/template.3.3.def new file mode 100644 index 000000000..5b612d7f7 --- /dev/null +++ b/definitions/grib2/templates/template.3.3.def @@ -0,0 +1,9 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.3, Stretched and Rotated Latitude/longitude (or equidistant cylindrical, or Plate Carree) + +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.latlon.def" +include "grib2/templates/template.3.rotation.def" +include "grib2/templates/template.3.stretching.def" + diff --git a/definitions/grib2/template.3.30.def b/definitions/grib2/templates/template.3.30.def similarity index 95% rename from definitions/grib2/template.3.30.def rename to definitions/grib2/templates/template.3.30.def index 7bd63fc00..395c52d09 100644 --- a/definitions/grib2/template.3.30.def +++ b/definitions/grib2/templates/template.3.30.def @@ -1,7 +1,7 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.30, Lambert conformal -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" constant isGridded = true; @@ -32,7 +32,7 @@ meta geography.longitudeOfFirstGridPointInDegrees alias Lo1InDegrees = longitudeOfFirstGridPointInDegrees; #meta longitudeOfFirstGridPointInMicrodegrees times(longitudeOfFirstGridPoint,oneConstant) : no_copy; -include "grib2/template.3.resolution_flags.def" +include "grib2/templates/template.3.resolution_flags.def" # LaD - Latitude where Dx and Dy are specified signed[4] LaD : edition_specific; @@ -58,7 +58,7 @@ meta geography.DyInMetres scale(Dy,one,thousand) : dump; # Projection centre flag flags[1] projectionCentreFlag 'grib2/tables/[tablesVersion]/3.5.table' : dump; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" # Latin 1 - first latitude from the pole at which the secant cone cuts the sphere signed[4] Latin1 : edition_specific; diff --git a/definitions/grib2/template.3.31.def b/definitions/grib2/templates/template.3.31.def similarity index 92% rename from definitions/grib2/template.3.31.def rename to definitions/grib2/templates/template.3.31.def index d6e85c6c3..e85af94cb 100644 --- a/definitions/grib2/template.3.31.def +++ b/definitions/grib2/templates/template.3.31.def @@ -1,7 +1,7 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.31, Albers equal area -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" constant isGridded = true; @@ -23,7 +23,7 @@ alias La1 = latitudeOfFirstGridPoint; unsigned[4] longitudeOfFirstGridPoint : edition_specific,dump; alias Lo1 = longitudeOfFirstGridPoint; -include "grib2/template.3.resolution_flags.def" +include "grib2/templates/template.3.resolution_flags.def" # LaD - Latitude where Dx and Dy are specified signed[4] LaD : dump; @@ -42,7 +42,7 @@ alias Dy = yDirectionGridLength; # Projection centre flag flags[1] projectionCentreFlag 'grib2/tables/[tablesVersion]/3.5.table' : dump; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" # Latin 1 - first latitude from the pole at which the secant cone cuts the sphere signed[4] Latin1 :edition_specific; diff --git a/definitions/grib2/template.3.33.def b/definitions/grib2/templates/template.3.33.def similarity index 53% rename from definitions/grib2/template.3.33.def rename to definitions/grib2/templates/template.3.33.def index 5c9dd93ef..e2cc830f1 100644 --- a/definitions/grib2/template.3.33.def +++ b/definitions/grib2/templates/template.3.33.def @@ -1,5 +1,5 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.33, Lambert conformal with modelling subdomains definition -include "grib2/template.3.30.def" -include "grib2/template.3.lam.def" +include "grib2/templates/template.3.30.def" +include "grib2/templates/template.3.lam.def" diff --git a/definitions/grib2/templates/template.3.4.def b/definitions/grib2/templates/template.3.4.def new file mode 100644 index 000000000..3c8d3b736 --- /dev/null +++ b/definitions/grib2/templates/template.3.4.def @@ -0,0 +1,5 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.4, Variable resolution latitude/longitude +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.latlon_vares.def" diff --git a/definitions/grib2/templates/template.3.40.def b/definitions/grib2/templates/template.3.40.def new file mode 100644 index 000000000..861ad15c3 --- /dev/null +++ b/definitions/grib2/templates/template.3.40.def @@ -0,0 +1,6 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.40, Gaussian latitude/longitude + +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.gaussian.def" diff --git a/definitions/grib2/templates/template.3.41.def b/definitions/grib2/templates/template.3.41.def new file mode 100644 index 000000000..715d940da --- /dev/null +++ b/definitions/grib2/templates/template.3.41.def @@ -0,0 +1,7 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.41, Rotated Gaussian latitude/longitude + +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.gaussian.def" +include "grib2/templates/template.3.rotation.def" diff --git a/definitions/grib2/templates/template.3.42.def b/definitions/grib2/templates/template.3.42.def new file mode 100644 index 000000000..126fd6d1f --- /dev/null +++ b/definitions/grib2/templates/template.3.42.def @@ -0,0 +1,7 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.42, Stretched Gaussian latitude/longitude + +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.gaussian.def" +include "grib2/templates/template.3.stretching.def" diff --git a/definitions/grib2/templates/template.3.43.def b/definitions/grib2/templates/template.3.43.def new file mode 100644 index 000000000..597ca5200 --- /dev/null +++ b/definitions/grib2/templates/template.3.43.def @@ -0,0 +1,8 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.43, Stretched and rotated Gaussian latitude/longitude + +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.gaussian.def" +include "grib2/templates/template.3.rotation.def" +include "grib2/templates/template.3.stretching.def" diff --git a/definitions/grib2/templates/template.3.5.def b/definitions/grib2/templates/template.3.5.def new file mode 100644 index 000000000..2e6d4ad0d --- /dev/null +++ b/definitions/grib2/templates/template.3.5.def @@ -0,0 +1,7 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.5, Variable resolution rotated latitude/longitude + +include "grib2/templates/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.latlon_vares.def" +include "grib2/templates/template.3.rotation.def" diff --git a/definitions/grib2/template.3.50.def b/definitions/grib2/templates/template.3.50.def similarity index 56% rename from definitions/grib2/template.3.50.def rename to definitions/grib2/templates/template.3.50.def index 3db24135a..b88204d29 100644 --- a/definitions/grib2/template.3.50.def +++ b/definitions/grib2/templates/template.3.50.def @@ -2,4 +2,4 @@ # TEMPLATE 3.50, Spherical harmonic coefficients -include "grib2/template.3.spherical_harmonics.def" +include "grib2/templates/template.3.spherical_harmonics.def" diff --git a/definitions/grib2/templates/template.3.51.def b/definitions/grib2/templates/template.3.51.def new file mode 100644 index 000000000..d5013b7f3 --- /dev/null +++ b/definitions/grib2/templates/template.3.51.def @@ -0,0 +1,6 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.51, Rotated spherical harmonic coefficients + +include "grib2/templates/template.3.spherical_harmonics.def" +include "grib2/templates/template.3.rotation.def" diff --git a/definitions/grib2/templates/template.3.52.def b/definitions/grib2/templates/template.3.52.def new file mode 100644 index 000000000..53d140c2f --- /dev/null +++ b/definitions/grib2/templates/template.3.52.def @@ -0,0 +1,6 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.52, Stretched spherical harmonic coefficients + +include "grib2/templates/template.3.spherical_harmonics.def" +include "grib2/templates/template.3.stretching.def" diff --git a/definitions/grib2/templates/template.3.53.def b/definitions/grib2/templates/template.3.53.def new file mode 100644 index 000000000..af3de465c --- /dev/null +++ b/definitions/grib2/templates/template.3.53.def @@ -0,0 +1,7 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 3.53, Stretched and rotated spherical harmonic coefficients + +include "grib2/templates/template.3.spherical_harmonics.def" +include "grib2/templates/template.3.rotation.def" +include "grib2/templates/template.3.stretching.def" diff --git a/definitions/grib2/template.3.61.def b/definitions/grib2/templates/template.3.61.def similarity index 94% rename from definitions/grib2/template.3.61.def rename to definitions/grib2/templates/template.3.61.def index 2da3b7a99..429e3d5bd 100644 --- a/definitions/grib2/template.3.61.def +++ b/definitions/grib2/templates/template.3.61.def @@ -5,9 +5,9 @@ transient biFourierMakeTemplate = 0; -include "grib2/template.3.bf.def" +include "grib2/templates/template.3.bf.def" -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" # La1 - latitude of first grid point signed[4] latitudeOfFirstGridPoint: edition_specific,no_copy ; diff --git a/definitions/grib2/template.3.62.def b/definitions/grib2/templates/template.3.62.def similarity index 94% rename from definitions/grib2/template.3.62.def rename to definitions/grib2/templates/template.3.62.def index 03f2808c3..d2ce7d958 100644 --- a/definitions/grib2/template.3.62.def +++ b/definitions/grib2/templates/template.3.62.def @@ -5,9 +5,9 @@ transient biFourierMakeTemplate = 0; -include "grib2/template.3.bf.def" +include "grib2/templates/template.3.bf.def" -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" # La1 - latitude of first grid point signed[4] latitudeOfFirstGridPoint : edition_specific ; diff --git a/definitions/grib2/template.3.63.def b/definitions/grib2/templates/template.3.63.def similarity index 96% rename from definitions/grib2/template.3.63.def rename to definitions/grib2/templates/template.3.63.def index 71db1eccc..42181a22c 100644 --- a/definitions/grib2/template.3.63.def +++ b/definitions/grib2/templates/template.3.63.def @@ -4,9 +4,9 @@ transient biFourierMakeTemplate = 0; -include "grib2/template.3.bf.def" +include "grib2/templates/template.3.bf.def" -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" # La1 - latitude of first grid point signed[4] latitudeOfFirstGridPoint : edition_specific; diff --git a/definitions/grib2/template.3.90.def b/definitions/grib2/templates/template.3.90.def similarity index 95% rename from definitions/grib2/template.3.90.def rename to definitions/grib2/templates/template.3.90.def index 9f8ef1198..36bd303be 100644 --- a/definitions/grib2/template.3.90.def +++ b/definitions/grib2/templates/template.3.90.def @@ -1,7 +1,7 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 3.90, Space view perspective or orthographic -include "grib2/template.3.shape_of_the_earth.def" +include "grib2/templates/template.3.shape_of_the_earth.def" constant isGridded = true; @@ -25,7 +25,7 @@ signed[4] longitudeOfSubSatellitePoint; meta geography.latitudeOfSubSatellitePointInDegrees scale(latitudeOfSubSatellitePoint,one,grib2divider,truncateDegrees) : dump; meta geography.longitudeOfSubSatellitePointInDegrees scale(longitudeOfSubSatellitePoint,one,grib2divider,truncateDegrees) : dump; -include "grib2/template.3.resolution_flags.def" +include "grib2/templates/template.3.resolution_flags.def" # dx - apparent diameter of Earth in grid lengths, in X-direction unsigned[4] dx : dump; @@ -47,7 +47,7 @@ unsigned[4] Yp : no_copy; meta geography.YpInGridLengths scale(Yp,one,thousand) : dump; alias yCoordinateOfSubSatellitePoint=YpInGridLengths; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" # Orientation of the grid; i.e. the angle between the increasing Y-axis and the meridian # of the sub-satellite point in the direction of increasing latitude diff --git a/definitions/grib2/template.3.bf.def b/definitions/grib2/templates/template.3.bf.def similarity index 100% rename from definitions/grib2/template.3.bf.def rename to definitions/grib2/templates/template.3.bf.def diff --git a/definitions/grib2/template.3.gaussian.def b/definitions/grib2/templates/template.3.gaussian.def similarity index 97% rename from definitions/grib2/template.3.gaussian.def rename to definitions/grib2/templates/template.3.gaussian.def index e243b39eb..d8053354b 100644 --- a/definitions/grib2/template.3.gaussian.def +++ b/definitions/grib2/templates/template.3.gaussian.def @@ -1,6 +1,6 @@ # (C) Copyright 2005- ECMWF. -include "grib2/template.3.grid.def" +include "grib2/templates/template.3.grid.def" # Di - i direction increment unsigned[4] iDirectionIncrement : can_be_missing; @@ -11,7 +11,7 @@ unsigned[4] N : dump; alias numberOfParallelsBetweenAPoleAndTheEquator=N ; alias geography.N=N; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" modify Ni : can_be_missing,dump; diff --git a/definitions/grib2/template.3.grid.def b/definitions/grib2/templates/template.3.grid.def similarity index 96% rename from definitions/grib2/template.3.grid.def rename to definitions/grib2/templates/template.3.grid.def index 2a317ea82..a857d5c24 100644 --- a/definitions/grib2/template.3.grid.def +++ b/definitions/grib2/templates/template.3.grid.def @@ -47,7 +47,7 @@ alias La1 = latitudeOfFirstGridPoint; signed[4] longitudeOfFirstGridPoint ; alias Lo1 = longitudeOfFirstGridPoint; -include "grib2/template.3.resolution_flags.def" +include "grib2/templates/template.3.resolution_flags.def" # La2 - latitude of last grid point signed[4] latitudeOfLastGridPoint : edition_specific; diff --git a/definitions/grib2/template.3.healpix.def b/definitions/grib2/templates/template.3.healpix.def similarity index 100% rename from definitions/grib2/template.3.healpix.def rename to definitions/grib2/templates/template.3.healpix.def diff --git a/definitions/grib2/template.3.lam.def b/definitions/grib2/templates/template.3.lam.def similarity index 100% rename from definitions/grib2/template.3.lam.def rename to definitions/grib2/templates/template.3.lam.def diff --git a/definitions/grib2/template.3.latlon.def b/definitions/grib2/templates/template.3.latlon.def similarity index 96% rename from definitions/grib2/template.3.latlon.def rename to definitions/grib2/templates/template.3.latlon.def index 407aa4eca..202488c00 100644 --- a/definitions/grib2/template.3.latlon.def +++ b/definitions/grib2/templates/template.3.latlon.def @@ -1,6 +1,6 @@ # (C) Copyright 2005- ECMWF. -include "grib2/template.3.grid.def" +include "grib2/templates/template.3.grid.def" # Di - i direction increment unsigned[4] iDirectionIncrement : can_be_missing,edition_specific; @@ -12,7 +12,7 @@ unsigned[4] jDirectionIncrement : can_be_missing,edition_specific; alias Dj = jDirectionIncrement; alias Dy = jDirectionIncrement; -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" meta g2grid g2grid( latitudeOfFirstGridPoint, diff --git a/definitions/grib2/template.3.latlon_vares.def b/definitions/grib2/templates/template.3.latlon_vares.def similarity index 91% rename from definitions/grib2/template.3.latlon_vares.def rename to definitions/grib2/templates/template.3.latlon_vares.def index 764690332..dd3f3f60f 100644 --- a/definitions/grib2/template.3.latlon_vares.def +++ b/definitions/grib2/templates/template.3.latlon_vares.def @@ -34,9 +34,9 @@ when (missing(subdivisionsOfBasicAngle) || subdivisionsOfBasicAngle == 0) { set angleDivisor = subdivisionsOfBasicAngle; } -include "grib2/template.3.resolution_flags.def" +include "grib2/templates/template.3.resolution_flags.def" -include "grib2/template.3.scanning_mode.def" +include "grib2/templates/template.3.scanning_mode.def" longitudesList list(Ni) { unsigned[4] longitude; diff --git a/definitions/grib2/template.3.resolution_flags.def b/definitions/grib2/templates/template.3.resolution_flags.def similarity index 100% rename from definitions/grib2/template.3.resolution_flags.def rename to definitions/grib2/templates/template.3.resolution_flags.def diff --git a/definitions/grib2/template.3.rotation.def b/definitions/grib2/templates/template.3.rotation.def similarity index 100% rename from definitions/grib2/template.3.rotation.def rename to definitions/grib2/templates/template.3.rotation.def diff --git a/definitions/grib2/template.3.scanning_mode.def b/definitions/grib2/templates/template.3.scanning_mode.def similarity index 100% rename from definitions/grib2/template.3.scanning_mode.def rename to definitions/grib2/templates/template.3.scanning_mode.def diff --git a/definitions/grib2/template.3.shape_of_the_earth.def b/definitions/grib2/templates/template.3.shape_of_the_earth.def similarity index 100% rename from definitions/grib2/template.3.shape_of_the_earth.def rename to definitions/grib2/templates/template.3.shape_of_the_earth.def diff --git a/definitions/grib2/template.3.spherical_harmonics.def b/definitions/grib2/templates/template.3.spherical_harmonics.def similarity index 100% rename from definitions/grib2/template.3.spherical_harmonics.def rename to definitions/grib2/templates/template.3.spherical_harmonics.def diff --git a/definitions/grib2/template.3.stretching.def b/definitions/grib2/templates/template.3.stretching.def similarity index 100% rename from definitions/grib2/template.3.stretching.def rename to definitions/grib2/templates/template.3.stretching.def diff --git a/definitions/grib2/templates/template.4.0.def b/definitions/grib2/templates/template.4.0.def new file mode 100644 index 000000000..5eb44fc77 --- /dev/null +++ b/definitions/grib2/templates/template.4.0.def @@ -0,0 +1,9 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.0, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.1.def b/definitions/grib2/templates/template.4.1.def new file mode 100644 index 000000000..959752a71 --- /dev/null +++ b/definitions/grib2/templates/template.4.1.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.1, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.10.def b/definitions/grib2/templates/template.4.10.def new file mode 100644 index 000000000..826900a39 --- /dev/null +++ b/definitions/grib2/templates/template.4.10.def @@ -0,0 +1,13 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.10, Percentile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +# This template was not validated at the time of publication and should be used with caution. +transient template_is_experimental = 1 : hidden; + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.percentile.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.100.def b/definitions/grib2/templates/template.4.100.def new file mode 100644 index 000000000..a52f903c2 --- /dev/null +++ b/definitions/grib2/templates/template.4.100.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.100, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with explicit list of frequencies and directions + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.wave.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +#include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.wave_spectra_list.def" diff --git a/definitions/grib2/template.4.1000.def b/definitions/grib2/templates/template.4.1000.def similarity index 57% rename from definitions/grib2/template.4.1000.def rename to definitions/grib2/templates/template.4.1000.def index f179ae483..1d0aaf329 100644 --- a/definitions/grib2/template.4.1000.def +++ b/definitions/grib2/templates/template.4.1000.def @@ -5,7 +5,7 @@ # and should be used only for bilateral previously agreed tests transient template_is_experimental = 1 : hidden; -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" diff --git a/definitions/grib2/template.4.1001.def b/definitions/grib2/templates/template.4.1001.def similarity index 61% rename from definitions/grib2/template.4.1001.def rename to definitions/grib2/templates/template.4.1001.def index 5fafe70f3..13188b09b 100644 --- a/definitions/grib2/template.4.1001.def +++ b/definitions/grib2/templates/template.4.1001.def @@ -5,7 +5,7 @@ # and should be used only for bilateral previously agreed tests transient template_is_experimental = 1 : hidden; -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.statistical.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/template.4.1002.def b/definitions/grib2/templates/template.4.1002.def similarity index 80% rename from definitions/grib2/template.4.1002.def rename to definitions/grib2/templates/template.4.1002.def index 08cac187c..4d31fac01 100644 --- a/definitions/grib2/template.4.1002.def +++ b/definitions/grib2/templates/template.4.1002.def @@ -2,9 +2,9 @@ # TEMPLATE 4.1002, Cross-section of analysis and forecast, averaged or otherwise statistically processed over latitude or longitude -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" codetable[1] horizontalDimensionProcessed ('4.220.table',masterDir,localDir) : dump; diff --git a/definitions/grib2/templates/template.4.101.def b/definitions/grib2/templates/template.4.101.def new file mode 100644 index 000000000..e81209c9d --- /dev/null +++ b/definitions/grib2/templates/template.4.101.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.101, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with frequencies and directions defined by formulae + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.wave.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +#include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.wave_spectra_formula.def" diff --git a/definitions/grib2/templates/template.4.102.def b/definitions/grib2/templates/template.4.102.def new file mode 100644 index 000000000..49c182bc9 --- /dev/null +++ b/definitions/grib2/templates/template.4.102.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.102, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with frequencies and directions defined by formulae + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.wave.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +#include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.wave_spectra_formula.def" diff --git a/definitions/grib2/templates/template.4.103.def b/definitions/grib2/templates/template.4.103.def new file mode 100644 index 000000000..78c261c3d --- /dev/null +++ b/definitions/grib2/templates/template.4.103.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.103, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for waves selected by period range. + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.wave_period_range.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.104.def b/definitions/grib2/templates/template.4.104.def new file mode 100644 index 000000000..6ab7b26cd --- /dev/null +++ b/definitions/grib2/templates/template.4.104.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.104, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for waves selected by period range. + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.wave_period_range.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.105.def b/definitions/grib2/templates/template.4.105.def new file mode 100644 index 000000000..58e286d72 --- /dev/null +++ b/definitions/grib2/templates/template.4.105.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.105, Analysis or forecast in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" +include "grib2/templates/template.4.referenceperiod.def" diff --git a/definitions/grib2/templates/template.4.106.def b/definitions/grib2/templates/template.4.106.def new file mode 100644 index 000000000..d542289db --- /dev/null +++ b/definitions/grib2/templates/template.4.106.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.106, Individual ensemble forecast, control and perturbed in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.referenceperiod.def" diff --git a/definitions/grib2/templates/template.4.107.def b/definitions/grib2/templates/template.4.107.def new file mode 100644 index 000000000..dc90a269e --- /dev/null +++ b/definitions/grib2/templates/template.4.107.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.107, Derived forecasts based on all ensemble members in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" +include "grib2/templates/template.4.derived.def" +include "grib2/templates/template.4.referenceperiod.def" diff --git a/definitions/grib2/templates/template.4.108.def b/definitions/grib2/templates/template.4.108.def new file mode 100644 index 000000000..a6b282341 --- /dev/null +++ b/definitions/grib2/templates/template.4.108.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.108, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for generic optical properties + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.optical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.109.def b/definitions/grib2/templates/template.4.109.def new file mode 100644 index 000000000..0304cb028 --- /dev/null +++ b/definitions/grib2/templates/template.4.109.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.109, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for generic optical properties + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.optical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.11.def b/definitions/grib2/templates/template.4.11.def new file mode 100644 index 000000000..843721d54 --- /dev/null +++ b/definitions/grib2/templates/template.4.11.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.11, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.110.def b/definitions/grib2/templates/template.4.110.def new file mode 100644 index 000000000..f511d12b6 --- /dev/null +++ b/definitions/grib2/templates/template.4.110.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.110 - Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for generic optical properties + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.optical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/template.4.1100.def b/definitions/grib2/templates/template.4.1100.def similarity index 58% rename from definitions/grib2/template.4.1100.def rename to definitions/grib2/templates/template.4.1100.def index ac65bc69f..8774a9ba7 100644 --- a/definitions/grib2/template.4.1100.def +++ b/definitions/grib2/templates/template.4.1100.def @@ -5,7 +5,7 @@ # and should be used only for bilateral previously agreed tests transient template_is_experimental = 1 : hidden; -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.1101.def b/definitions/grib2/templates/template.4.1101.def similarity index 81% rename from definitions/grib2/template.4.1101.def rename to definitions/grib2/templates/template.4.1101.def index 83e46a389..2e0137083 100644 --- a/definitions/grib2/template.4.1101.def +++ b/definitions/grib2/templates/template.4.1101.def @@ -6,10 +6,10 @@ # (Octets 35-50 are very similar to octets 43-58 of product definition template 4.8, but the meaning of some fields differs slightly) transient template_is_experimental = 1 : hidden; -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" unsigned[4] numberOfMissingInStatisticalProcess = 0 : edition_specific; alias totalNumberOfDataValuesMissingInStatisticalProcess=numberOfMissingInStatisticalProcess; @@ -25,4 +25,4 @@ codetable[1] indicatorOfUnitForTimeIncrement ('4.4.table',masterDir,localDir)=25 unsigned[4] timeIncrement=0 ; alias timeIncrementBetweenSuccessiveFields=timeIncrement; -# include "grib2/template.4.statistical.def" +# include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.111.def b/definitions/grib2/templates/template.4.111.def new file mode 100644 index 000000000..a1ab23504 --- /dev/null +++ b/definitions/grib2/templates/template.4.111.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.111, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for generic optical properties + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.optical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.112.def b/definitions/grib2/templates/template.4.112.def new file mode 100644 index 000000000..3f1f28992 --- /dev/null +++ b/definitions/grib2/templates/template.4.112.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.112, Probability forecasts in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" +include "grib2/templates/template.4.probability.def" +include "grib2/templates/template.4.referenceperiod.def" diff --git a/definitions/grib2/templates/template.4.113.def b/definitions/grib2/templates/template.4.113.def new file mode 100644 index 000000000..b2d9c4bf9 --- /dev/null +++ b/definitions/grib2/templates/template.4.113.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.113, Generalised tiles at a horizontal level or horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generalised_tile.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.114.def b/definitions/grib2/templates/template.4.114.def new file mode 100644 index 000000000..797016a80 --- /dev/null +++ b/definitions/grib2/templates/template.4.114.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.114, Average, accumulation, and/or extreme values or other statistically processed values on generalised tiles at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generalised_tile.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" \ No newline at end of file diff --git a/definitions/grib2/templates/template.4.115.def b/definitions/grib2/templates/template.4.115.def new file mode 100644 index 000000000..39b9bb781 --- /dev/null +++ b/definitions/grib2/templates/template.4.115.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.115, Individual ensemble forecast, control and perturbed on generalised tiles at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generalised_tile.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.leps.def" diff --git a/definitions/grib2/templates/template.4.116.def b/definitions/grib2/templates/template.4.116.def new file mode 100644 index 000000000..1d4e3f35e --- /dev/null +++ b/definitions/grib2/templates/template.4.116.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.116, Individual ensemble forecast, control and perturbed on generalised tiles at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generalised_tile.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.leps.def" +include "grib2/templates/template.4.statistical.def" \ No newline at end of file diff --git a/definitions/grib2/templates/template.4.117.def b/definitions/grib2/templates/template.4.117.def new file mode 100644 index 000000000..b62ee43c1 --- /dev/null +++ b/definitions/grib2/templates/template.4.117.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.117, Individual large ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.leps.def" diff --git a/definitions/grib2/templates/template.4.118.def b/definitions/grib2/templates/template.4.118.def new file mode 100644 index 000000000..7f4921c86 --- /dev/null +++ b/definitions/grib2/templates/template.4.118.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.118, Individual large ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.leps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.119.def b/definitions/grib2/templates/template.4.119.def new file mode 100644 index 000000000..beb4b1c50 --- /dev/null +++ b/definitions/grib2/templates/template.4.119.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.119, Probability forecasts from large ensembles at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.probabilityLargeEnsemble.def" diff --git a/definitions/grib2/templates/template.4.12.def b/definitions/grib2/templates/template.4.12.def new file mode 100644 index 000000000..f3aa7d369 --- /dev/null +++ b/definitions/grib2/templates/template.4.12.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.12, Derived forecasts based on all ensemble members at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.derived.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.120.def b/definitions/grib2/templates/template.4.120.def new file mode 100644 index 000000000..ac07749ca --- /dev/null +++ b/definitions/grib2/templates/template.4.120.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.120, Probability forecasts from large ensembles at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.probabilityLargeEnsemble.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.121.def b/definitions/grib2/templates/template.4.121.def new file mode 100644 index 000000000..a3d763540 --- /dev/null +++ b/definitions/grib2/templates/template.4.121.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.121, Probability forecasts with spatiotemporal processing based on focal (moving window) statistics at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.probabilityLargeEnsemble.def" +include "grib2/templates/template.4.focalStatistics.def" diff --git a/definitions/grib2/templates/template.4.122.def b/definitions/grib2/templates/template.4.122.def new file mode 100644 index 000000000..12b626cf9 --- /dev/null +++ b/definitions/grib2/templates/template.4.122.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.122, Probability forecasts with spatiotemporal processing based on focal (moving window) statistics at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.probabilityLargeEnsemble.def" +include "grib2/templates/template.4.statistical.def" +include "grib2/templates/template.4.focalStatistics.def" diff --git a/definitions/grib2/templates/template.4.123.def b/definitions/grib2/templates/template.4.123.def new file mode 100644 index 000000000..440d24d06 --- /dev/null +++ b/definitions/grib2/templates/template.4.123.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.123, Probability forecasts from large ensembles with spatiotemporal processing based on focal (moving window) statistics in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" +include "grib2/templates/template.4.probabilityLargeEnsemble.def" +include "grib2/templates/template.4.referenceperiod.def" +include "grib2/templates/template.4.focalStatistics.def" diff --git a/definitions/grib2/templates/template.4.124.def b/definitions/grib2/templates/template.4.124.def new file mode 100644 index 000000000..5cca69414 --- /dev/null +++ b/definitions/grib2/templates/template.4.124.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.124, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for radionuclides + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.radionuclides.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.125.def b/definitions/grib2/templates/template.4.125.def new file mode 100644 index 000000000..d2c26d288 --- /dev/null +++ b/definitions/grib2/templates/template.4.125.def @@ -0,0 +1,13 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.125, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for radionuclides + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.radionuclides.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.126.def b/definitions/grib2/templates/template.4.126.def new file mode 100644 index 000000000..e79081330 --- /dev/null +++ b/definitions/grib2/templates/template.4.126.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.126, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for radionuclides + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.radionuclides.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.127.def b/definitions/grib2/templates/template.4.127.def new file mode 100644 index 000000000..435339317 --- /dev/null +++ b/definitions/grib2/templates/template.4.127.def @@ -0,0 +1,14 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.127, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for radionuclides + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.radionuclides.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" + diff --git a/definitions/grib2/templates/template.4.13.def b/definitions/grib2/templates/template.4.13.def new file mode 100644 index 000000000..1731a3723 --- /dev/null +++ b/definitions/grib2/templates/template.4.13.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.13, Derived forecasts based on a cluster of ensemble members over a rectangular area at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.derived.def" +include "grib2/templates/template.4.rectangular_cluster.def" +include "grib2/templates/template.4.statistical.def" +include "grib2/templates/template.4.eps_cluster.def" diff --git a/definitions/grib2/templates/template.4.14.def b/definitions/grib2/templates/template.4.14.def new file mode 100644 index 000000000..7a68b737c --- /dev/null +++ b/definitions/grib2/templates/template.4.14.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.14, Derived forecasts based on a cluster of ensemble members over a circular area at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.derived.def" +include "grib2/templates/template.4.circular_cluster.def" +include "grib2/templates/template.4.statistical.def" +include "grib2/templates/template.4.eps_cluster.def" diff --git a/definitions/grib2/template.4.15.def b/definitions/grib2/templates/template.4.15.def similarity index 59% rename from definitions/grib2/template.4.15.def rename to definitions/grib2/templates/template.4.15.def index 9192d1154..7e6a682d7 100644 --- a/definitions/grib2/template.4.15.def +++ b/definitions/grib2/templates/template.4.15.def @@ -2,11 +2,11 @@ # TEMPLATE 4.15, Average, accumulation, extreme values, or other statistically-processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time -include "grib2/template.4.parameter.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" codetable[1] statisticalProcess 'grib2/tables/[tablesVersion]/4.10.table'; codetable[1] spatialProcessing 'grib2/tables/[tablesVersion]/4.15.table'; diff --git a/definitions/grib2/templates/template.4.2.def b/definitions/grib2/templates/template.4.2.def new file mode 100644 index 000000000..59f08e449 --- /dev/null +++ b/definitions/grib2/templates/template.4.2.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.2, Derived forecast based on all ensemble members at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.derived.def" diff --git a/definitions/grib2/template.4.20.def b/definitions/grib2/templates/template.4.20.def similarity index 100% rename from definitions/grib2/template.4.20.def rename to definitions/grib2/templates/template.4.20.def diff --git a/definitions/grib2/template.4.2000.def b/definitions/grib2/templates/template.4.2000.def similarity index 100% rename from definitions/grib2/template.4.2000.def rename to definitions/grib2/templates/template.4.2000.def diff --git a/definitions/grib2/template.4.254.def b/definitions/grib2/templates/template.4.254.def similarity index 100% rename from definitions/grib2/template.4.254.def rename to definitions/grib2/templates/template.4.254.def diff --git a/definitions/grib2/templates/template.4.3.def b/definitions/grib2/templates/template.4.3.def new file mode 100644 index 000000000..ce369a1b2 --- /dev/null +++ b/definitions/grib2/templates/template.4.3.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.3, Derived forecasts based on a cluster of ensemble members over a rectangular area at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.derived.def" +include "grib2/templates/template.4.rectangular_cluster.def" +include "grib2/templates/template.4.eps_cluster.def" diff --git a/definitions/grib2/template.4.30.def b/definitions/grib2/templates/template.4.30.def similarity index 82% rename from definitions/grib2/template.4.30.def rename to definitions/grib2/templates/template.4.30.def index 9416d4789..93db3e12b 100644 --- a/definitions/grib2/template.4.30.def +++ b/definitions/grib2/templates/template.4.30.def @@ -4,7 +4,7 @@ # Note: This template is deprecated. Template 4.31 should be used instead. transient template_is_deprecated = 1 : hidden; -include "grib2/template.4.parameter.def" +include "grib2/templates/template.4.parameter.def" codetable[1] typeOfGeneratingProcess ('4.3.table',masterDir,localDir) : dump; @@ -12,4 +12,4 @@ codetable[1] typeOfGeneratingProcess ('4.3.table',masterDir,localDir) : dump; unsigned[1] observationGeneratingProcessIdentifier : dump; alias generatingProcessIdentifier=observationGeneratingProcessIdentifier; -include "grib2/template.4.satellite_30.def" +include "grib2/templates/template.4.satellite_30.def" diff --git a/definitions/grib2/template.4.31.def b/definitions/grib2/templates/template.4.31.def similarity index 77% rename from definitions/grib2/template.4.31.def rename to definitions/grib2/templates/template.4.31.def index b9efb8761..1d1695e08 100644 --- a/definitions/grib2/template.4.31.def +++ b/definitions/grib2/templates/template.4.31.def @@ -2,7 +2,7 @@ # TEMPLATE 4.31, Satellite Product -include "grib2/template.4.parameter.def" +include "grib2/templates/template.4.parameter.def" codetable[1] typeOfGeneratingProcess ('4.3.table',masterDir,localDir) : dump; @@ -10,4 +10,4 @@ codetable[1] typeOfGeneratingProcess ('4.3.table',masterDir,localDir) : dump; unsigned[1] observationGeneratingProcessIdentifier : dump; alias generatingProcessIdentifier=observationGeneratingProcessIdentifier; -include "grib2/template.4.satellite.def" +include "grib2/templates/template.4.satellite.def" diff --git a/definitions/grib2/template.4.311.def b/definitions/grib2/templates/template.4.311.def similarity index 94% rename from definitions/grib2/template.4.311.def rename to definitions/grib2/templates/template.4.311.def index 5119e18a2..e90dd9f52 100644 --- a/definitions/grib2/template.4.311.def +++ b/definitions/grib2/templates/template.4.311.def @@ -2,7 +2,7 @@ # TEMPLATE 4.311, Satellite Product Auxiliary Information -include "grib2/template.4.parameter.def" +include "grib2/templates/template.4.parameter.def" codetable[1] typeOfGeneratingProcess ('4.3.table',masterDir,localDir) : dump; diff --git a/definitions/grib2/templates/template.4.32.def b/definitions/grib2/templates/template.4.32.def new file mode 100644 index 000000000..5da061168 --- /dev/null +++ b/definitions/grib2/templates/template.4.32.def @@ -0,0 +1,9 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.32, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.satellite.def" diff --git a/definitions/grib2/templates/template.4.33.def b/definitions/grib2/templates/template.4.33.def new file mode 100644 index 000000000..b7c42bf90 --- /dev/null +++ b/definitions/grib2/templates/template.4.33.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.33, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.satellite.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.34.def b/definitions/grib2/templates/template.4.34.def new file mode 100644 index 000000000..b4e52250b --- /dev/null +++ b/definitions/grib2/templates/template.4.34.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.34, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.satellite.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/template.4.35.def b/definitions/grib2/templates/template.4.35.def similarity index 82% rename from definitions/grib2/template.4.35.def rename to definitions/grib2/templates/template.4.35.def index 39d3fac8b..3d2bfa77d 100644 --- a/definitions/grib2/template.4.35.def +++ b/definitions/grib2/templates/template.4.35.def @@ -2,7 +2,7 @@ # TEMPLATE 4.35, satellite product with or without associated quality values -include "grib2/template.4.parameter.def" +include "grib2/templates/template.4.parameter.def" codetable[1] typeOfGeneratingProcess ('4.3.table',masterDir,localDir) : dump; @@ -12,4 +12,4 @@ alias generatingProcessIdentifier=observationGeneratingProcessIdentifier; codetable[1] qualityValueAssociatedWithParameter('4.16.table',masterDir,localDir) : dump; -include "grib2/template.4.satellite.def" +include "grib2/templates/template.4.satellite.def" diff --git a/definitions/grib2/templates/template.4.4.def b/definitions/grib2/templates/template.4.4.def new file mode 100644 index 000000000..9f01d08fa --- /dev/null +++ b/definitions/grib2/templates/template.4.4.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.4, Derived forecasts based on a cluster of ensemble members over a circular area at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.derived.def" +include "grib2/templates/template.4.circular_cluster.def" +include "grib2/templates/template.4.eps_cluster.def" diff --git a/definitions/grib2/templates/template.4.40.def b/definitions/grib2/templates/template.4.40.def new file mode 100644 index 000000000..eccdb60c1 --- /dev/null +++ b/definitions/grib2/templates/template.4.40.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.40, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.41.def b/definitions/grib2/templates/template.4.41.def new file mode 100644 index 000000000..2a5ffd8a6 --- /dev/null +++ b/definitions/grib2/templates/template.4.41.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.41, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.42.def b/definitions/grib2/templates/template.4.42.def new file mode 100644 index 000000000..e9c5fd2f0 --- /dev/null +++ b/definitions/grib2/templates/template.4.42.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.42, Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.43.def b/definitions/grib2/templates/template.4.43.def new file mode 100644 index 000000000..92aee5cfc --- /dev/null +++ b/definitions/grib2/templates/template.4.43.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.43, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/template.4.44.def b/definitions/grib2/templates/template.4.44.def similarity index 53% rename from definitions/grib2/template.4.44.def rename to definitions/grib2/templates/template.4.44.def index 1fbadeec8..6f1dfbffe 100644 --- a/definitions/grib2/template.4.44.def +++ b/definitions/grib2/templates/template.4.44.def @@ -6,14 +6,14 @@ transient template_is_deprecated = 1 : hidden; # GRIB-530: Special case for aerosol thanks to WMO error -include "grib2/template.4.parameter.def" -include "grib2/template.4.aerosol.def" -include "grib2/template.4.aerosol_size.def" -include "grib2/template.4.generating_process.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.generating_process.def" # GRIB-530: Special case for aerosol thanks to WMO error -include "grib2/template.4.forecast_time_44.def" +include "grib2/templates/template.4.forecast_time_44.def" -include "grib2/template.4.point_in_time.def" -include "grib2/template.4.horizontal.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.45.def b/definitions/grib2/templates/template.4.45.def new file mode 100644 index 000000000..9e2b7df1c --- /dev/null +++ b/definitions/grib2/templates/template.4.45.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.45, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for aerosol + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.46.def b/definitions/grib2/templates/template.4.46.def new file mode 100644 index 000000000..3fadc4a08 --- /dev/null +++ b/definitions/grib2/templates/template.4.46.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.46, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.47.def b/definitions/grib2/templates/template.4.47.def new file mode 100644 index 000000000..1d20488e2 --- /dev/null +++ b/definitions/grib2/templates/template.4.47.def @@ -0,0 +1,14 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.47, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval +# Note: This template is deprecated. Template 4.85 should be used instead. +transient template_is_deprecated = 1 : hidden; + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.48.def b/definitions/grib2/templates/template.4.48.def new file mode 100644 index 000000000..4c5516357 --- /dev/null +++ b/definitions/grib2/templates/template.4.48.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.48, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.optical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.49.def b/definitions/grib2/templates/template.4.49.def new file mode 100644 index 000000000..1e23e335a --- /dev/null +++ b/definitions/grib2/templates/template.4.49.def @@ -0,0 +1,13 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.49, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.optical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.5.def b/definitions/grib2/templates/template.4.5.def new file mode 100644 index 000000000..c06eb638c --- /dev/null +++ b/definitions/grib2/templates/template.4.5.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.5, Probability forecasts at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.probability.def" diff --git a/definitions/grib2/templates/template.4.50.def b/definitions/grib2/templates/template.4.50.def new file mode 100644 index 000000000..39adc42f5 --- /dev/null +++ b/definitions/grib2/templates/template.4.50.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.50, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for aerosol + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" + diff --git a/definitions/grib2/templates/template.4.51.def b/definitions/grib2/templates/template.4.51.def new file mode 100644 index 000000000..091e183b2 --- /dev/null +++ b/definitions/grib2/templates/template.4.51.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.51, Categorical forecasts at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.categorical.def" diff --git a/definitions/grib2/templates/template.4.53.def b/definitions/grib2/templates/template.4.53.def new file mode 100644 index 000000000..1f20fff3b --- /dev/null +++ b/definitions/grib2/templates/template.4.53.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.53, Partitioned parameters at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.partition.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.54.def b/definitions/grib2/templates/template.4.54.def new file mode 100644 index 000000000..3e86289a8 --- /dev/null +++ b/definitions/grib2/templates/template.4.54.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.54, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.partition.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.55.def b/definitions/grib2/templates/template.4.55.def new file mode 100644 index 000000000..cbe4b87ba --- /dev/null +++ b/definitions/grib2/templates/template.4.55.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.55, Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.tile.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/template.4.56.def b/definitions/grib2/templates/template.4.56.def similarity index 69% rename from definitions/grib2/template.4.56.def rename to definitions/grib2/templates/template.4.56.def index 9f48c957b..979953b74 100644 --- a/definitions/grib2/template.4.56.def +++ b/definitions/grib2/templates/template.4.56.def @@ -2,18 +2,18 @@ # Note: This template is deprecated. Template 4.59 should be used instead. transient template_is_deprecated = 1 : hidden; -include "grib2/template.4.parameter.def" -include "grib2/template.4.tile.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.tile.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" # Note: This template is missing the entry: # Type of ensemble forecast # which is present in all other templates with EPS info! Mistake by WMO? # So we cannot include the eps template due to this missing entry! -# include "grib2/template.4.eps.def" +# include "grib2/templates/template.4.eps.def" # Have to manually define the keys unsigned[1] perturbationNumber : dump; alias number=perturbationNumber; diff --git a/definitions/grib2/templates/template.4.57.def b/definitions/grib2/templates/template.4.57.def new file mode 100644 index 000000000..7b1f32c99 --- /dev/null +++ b/definitions/grib2/templates/template.4.57.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.57, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents based on a distribution function + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.distribution.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.58.def b/definitions/grib2/templates/template.4.58.def new file mode 100644 index 000000000..4dacc03d0 --- /dev/null +++ b/definitions/grib2/templates/template.4.58.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.58, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents based on a distribution function + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.distribution.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.59.def b/definitions/grib2/templates/template.4.59.def new file mode 100644 index 000000000..a6b450533 --- /dev/null +++ b/definitions/grib2/templates/template.4.59.def @@ -0,0 +1,13 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.59, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters + +# Use this instead of template 4.56 + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.tile.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.6.def b/definitions/grib2/templates/template.4.6.def new file mode 100644 index 000000000..fb3d91385 --- /dev/null +++ b/definitions/grib2/templates/template.4.6.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.6, Percentile forecasts at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.percentile.def" diff --git a/definitions/grib2/templates/template.4.60.def b/definitions/grib2/templates/template.4.60.def new file mode 100644 index 000000000..198d5f62d --- /dev/null +++ b/definitions/grib2/templates/template.4.60.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.60, Individual ensemble re-forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.reforecast.def" diff --git a/definitions/grib2/templates/template.4.61.def b/definitions/grib2/templates/template.4.61.def new file mode 100644 index 000000000..4e8d3b0bc --- /dev/null +++ b/definitions/grib2/templates/template.4.61.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.61, Individual ensemble re-forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.reforecast.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/template.4.62.def b/definitions/grib2/templates/template.4.62.def similarity index 50% rename from definitions/grib2/template.4.62.def rename to definitions/grib2/templates/template.4.62.def index 53da724c4..c868a7ffa 100644 --- a/definitions/grib2/template.4.62.def +++ b/definitions/grib2/templates/template.4.62.def @@ -2,9 +2,9 @@ # TEMPLATE 4.62, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time -include "grib2/template.4.parameter.def" -include "grib2/template.4.tile.def" -include "grib2/template.4.generating_process.def" -include "grib2/template.4.forecast_time.def" -include "grib2/template.4.horizontal.def" -include "grib2/template.4.statistical.def" +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.tile.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.63.def b/definitions/grib2/templates/template.4.63.def new file mode 100644 index 000000000..4725a9708 --- /dev/null +++ b/definitions/grib2/templates/template.4.63.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.63, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.tile.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.67.def b/definitions/grib2/templates/template.4.67.def new file mode 100644 index 000000000..874439f73 --- /dev/null +++ b/definitions/grib2/templates/template.4.67.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.67, Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.distribution.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.68.def b/definitions/grib2/templates/template.4.68.def new file mode 100644 index 000000000..cfd2b7278 --- /dev/null +++ b/definitions/grib2/templates/template.4.68.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.68, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.distribution.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/template.4.7.def b/definitions/grib2/templates/template.4.7.def similarity index 73% rename from definitions/grib2/template.4.7.def rename to definitions/grib2/templates/template.4.7.def index 7c79ced72..458763521 100644 --- a/definitions/grib2/template.4.7.def +++ b/definitions/grib2/templates/template.4.7.def @@ -1,4 +1,4 @@ # Note: This template is deprecated. Template 4.0 should be used instead. transient template_is_deprecated = 1 : hidden; -include "grib2/template.4.0.def" +include "grib2/templates/template.4.0.def" diff --git a/definitions/grib2/templates/template.4.70.def b/definitions/grib2/templates/template.4.70.def new file mode 100644 index 000000000..5415e39e3 --- /dev/null +++ b/definitions/grib2/templates/template.4.70.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.70, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.postproc.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.71.def b/definitions/grib2/templates/template.4.71.def new file mode 100644 index 000000000..03c4ff05f --- /dev/null +++ b/definitions/grib2/templates/template.4.71.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.71, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.postproc.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.72.def b/definitions/grib2/templates/template.4.72.def new file mode 100644 index 000000000..89b972b2d --- /dev/null +++ b/definitions/grib2/templates/template.4.72.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.72, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.postproc.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.73.def b/definitions/grib2/templates/template.4.73.def new file mode 100644 index 000000000..027355fb7 --- /dev/null +++ b/definitions/grib2/templates/template.4.73.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.73, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.postproc.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.76.def b/definitions/grib2/templates/template.4.76.def new file mode 100644 index 000000000..d4292a79a --- /dev/null +++ b/definitions/grib2/templates/template.4.76.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.76, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source/sink + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.77.def b/definitions/grib2/templates/template.4.77.def new file mode 100644 index 000000000..91d315705 --- /dev/null +++ b/definitions/grib2/templates/template.4.77.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.77, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with a source/sink + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.78.def b/definitions/grib2/templates/template.4.78.def new file mode 100644 index 000000000..a653ec7d1 --- /dev/null +++ b/definitions/grib2/templates/template.4.78.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.78, Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source/sink + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.79.def b/definitions/grib2/templates/template.4.79.def new file mode 100644 index 000000000..83f67c6d4 --- /dev/null +++ b/definitions/grib2/templates/template.4.79.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.79, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source/sink + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.chemical.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.8.def b/definitions/grib2/templates/template.4.8.def new file mode 100644 index 000000000..eadc85d6a --- /dev/null +++ b/definitions/grib2/templates/template.4.8.def @@ -0,0 +1,9 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.8, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.80.def b/definitions/grib2/templates/template.4.80.def new file mode 100644 index 000000000..096a2b960 --- /dev/null +++ b/definitions/grib2/templates/template.4.80.def @@ -0,0 +1,13 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.80, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol with source/sink + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.optical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" diff --git a/definitions/grib2/templates/template.4.81.def b/definitions/grib2/templates/template.4.81.def new file mode 100644 index 000000000..d518f612b --- /dev/null +++ b/definitions/grib2/templates/template.4.81.def @@ -0,0 +1,14 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.81, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol with source/sink + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.optical.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" diff --git a/definitions/grib2/templates/template.4.82.def b/definitions/grib2/templates/template.4.82.def new file mode 100644 index 000000000..003eda451 --- /dev/null +++ b/definitions/grib2/templates/template.4.82.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.82, Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source/sink + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.83.def b/definitions/grib2/templates/template.4.83.def new file mode 100644 index 000000000..ca2afdfb5 --- /dev/null +++ b/definitions/grib2/templates/template.4.83.def @@ -0,0 +1,16 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.83, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval with source/sink + +# It is recommended not to use this template. Product definition template 4.84 should be used instead because it contains an additional octet to specify the type of generating process +transient template_is_deprecated = 1 : hidden; + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.84.def b/definitions/grib2/templates/template.4.84.def new file mode 100644 index 000000000..8984cd538 --- /dev/null +++ b/definitions/grib2/templates/template.4.84.def @@ -0,0 +1,13 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.84, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.source.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.85.def b/definitions/grib2/templates/template.4.85.def new file mode 100644 index 000000000..da65b0085 --- /dev/null +++ b/definitions/grib2/templates/template.4.85.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.85, individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.aerosol.def" +include "grib2/templates/template.4.aerosol_size.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.86.def b/definitions/grib2/templates/template.4.86.def new file mode 100644 index 000000000..9e435f37b --- /dev/null +++ b/definitions/grib2/templates/template.4.86.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.86, Quantile forecasts at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.quantile.def" diff --git a/definitions/grib2/templates/template.4.87.def b/definitions/grib2/templates/template.4.87.def new file mode 100644 index 000000000..b711d3f58 --- /dev/null +++ b/definitions/grib2/templates/template.4.87.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.87, Quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.quantile.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.88.def b/definitions/grib2/templates/template.4.88.def new file mode 100644 index 000000000..5dcf28849 --- /dev/null +++ b/definitions/grib2/templates/template.4.88.def @@ -0,0 +1,9 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.88, Analysis or Forecast at a horizontal level or in a horizontal layer at a local time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +# no template.4.forecast_time.def component in this template. +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.localtime.def" diff --git a/definitions/grib2/templates/template.4.89.def b/definitions/grib2/templates/template.4.89.def new file mode 100644 index 000000000..353dad1b0 --- /dev/null +++ b/definitions/grib2/templates/template.4.89.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.89, Post-processed quantile forecasts at a horizontal level or in a horizontal layer at a point in time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.postproc.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.quantile.def" diff --git a/definitions/grib2/templates/template.4.9.def b/definitions/grib2/templates/template.4.9.def new file mode 100644 index 000000000..b84de1e61 --- /dev/null +++ b/definitions/grib2/templates/template.4.9.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.9, Probability forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.probability.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.90.def b/definitions/grib2/templates/template.4.90.def new file mode 100644 index 000000000..2cc381910 --- /dev/null +++ b/definitions/grib2/templates/template.4.90.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.90, Post-processed quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.postproc.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.quantile.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.91.def b/definitions/grib2/templates/template.4.91.def new file mode 100644 index 000000000..50c1f31a4 --- /dev/null +++ b/definitions/grib2/templates/template.4.91.def @@ -0,0 +1,10 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.91, Categorical forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.categorical.def" +include "grib2/templates/template.4.statistical.def" diff --git a/definitions/grib2/templates/template.4.92.def b/definitions/grib2/templates/template.4.92.def new file mode 100644 index 000000000..2ad564c24 --- /dev/null +++ b/definitions/grib2/templates/template.4.92.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.92, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a local time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" +#include "grib2/templates/template.4.forecast_time.def" +#include "grib2/templates/template.4.point_in_time.def" +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.localtime.def" diff --git a/definitions/grib2/templates/template.4.93.def b/definitions/grib2/templates/template.4.93.def new file mode 100644 index 000000000..0e6370e81 --- /dev/null +++ b/definitions/grib2/templates/template.4.93.def @@ -0,0 +1,13 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.93, Analysis or forecast at a horizontal level or in a horizontal layer at a local time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.postproc.def" +include "grib2/templates/template.4.generating_process.def" + +#include "grib2/templates/template.4.forecast_time.def" +#include "grib2/templates/template.4.point_in_time.def" + +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.localtime.def" diff --git a/definitions/grib2/templates/template.4.94.def b/definitions/grib2/templates/template.4.94.def new file mode 100644 index 000000000..1b7d2258e --- /dev/null +++ b/definitions/grib2/templates/template.4.94.def @@ -0,0 +1,14 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.94, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a local time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.postproc.def" +include "grib2/templates/template.4.generating_process.def" + +#include "grib2/templates/template.4.forecast_time.def" +#include "grib2/templates/template.4.point_in_time.def" + +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.localtime.def" diff --git a/definitions/grib2/templates/template.4.95.def b/definitions/grib2/templates/template.4.95.def new file mode 100644 index 000000000..356a41264 --- /dev/null +++ b/definitions/grib2/templates/template.4.95.def @@ -0,0 +1,12 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.95, Average, accumulation extreme values or other statistically processed value at a horizontal level or in a horizontal layer at a local time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" + +# no template.4.forecast_time.def component in this template. + +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.localtime_statistical.def" +include "grib2/templates/template.4.localtime.def" diff --git a/definitions/grib2/templates/template.4.96.def b/definitions/grib2/templates/template.4.96.def new file mode 100644 index 000000000..eebacd87c --- /dev/null +++ b/definitions/grib2/templates/template.4.96.def @@ -0,0 +1,14 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.96, Average, accumulation, extreme values or other statistically processed values of an individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a local time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.generating_process.def" + +#include "grib2/templates/template.4.forecast_time.def" +#include "grib2/templates/template.4.point_in_time.def" + +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.localtime_statistical.def" +include "grib2/templates/template.4.localtime.def" diff --git a/definitions/grib2/templates/template.4.97.def b/definitions/grib2/templates/template.4.97.def new file mode 100644 index 000000000..2177b586a --- /dev/null +++ b/definitions/grib2/templates/template.4.97.def @@ -0,0 +1,14 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.97, Average, accumulation, extreme values or other statistically processed values of post-processing analysis or forecast at a horizontal level or in a horizontal layer at a local time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.postproc.def" +include "grib2/templates/template.4.generating_process.def" + +#include "grib2/templates/template.4.forecast_time.def" +#include "grib2/templates/template.4.point_in_time.def" + +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.localtime_statistical.def" +include "grib2/templates/template.4.localtime.def" diff --git a/definitions/grib2/templates/template.4.98.def b/definitions/grib2/templates/template.4.98.def new file mode 100644 index 000000000..c9495e3dc --- /dev/null +++ b/definitions/grib2/templates/template.4.98.def @@ -0,0 +1,15 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.98, Average, accumulation, extreme values or other statistically processed values of a post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a local time + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.postproc.def" +include "grib2/templates/template.4.generating_process.def" + +#include "grib2/templates/template.4.forecast_time.def" +#include "grib2/templates/template.4.point_in_time.def" + +include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.eps.def" +include "grib2/templates/template.4.localtime_statistical.def" +include "grib2/templates/template.4.localtime.def" diff --git a/definitions/grib2/templates/template.4.99.def b/definitions/grib2/templates/template.4.99.def new file mode 100644 index 000000000..7e823894f --- /dev/null +++ b/definitions/grib2/templates/template.4.99.def @@ -0,0 +1,11 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 4.99, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with explicit list of frequencies and directions + +include "grib2/templates/template.4.parameter.def" +include "grib2/templates/template.4.wave.def" +include "grib2/templates/template.4.generating_process.def" +include "grib2/templates/template.4.forecast_time.def" +include "grib2/templates/template.4.point_in_time.def" +#include "grib2/templates/template.4.horizontal.def" +include "grib2/templates/template.4.wave_spectra_list.def" diff --git a/definitions/grib2/template.4.aerosol.def b/definitions/grib2/templates/template.4.aerosol.def similarity index 100% rename from definitions/grib2/template.4.aerosol.def rename to definitions/grib2/templates/template.4.aerosol.def diff --git a/definitions/grib2/template.4.aerosol_size.def b/definitions/grib2/templates/template.4.aerosol_size.def similarity index 100% rename from definitions/grib2/template.4.aerosol_size.def rename to definitions/grib2/templates/template.4.aerosol_size.def diff --git a/definitions/grib2/template.4.categorical.def b/definitions/grib2/templates/template.4.categorical.def similarity index 100% rename from definitions/grib2/template.4.categorical.def rename to definitions/grib2/templates/template.4.categorical.def diff --git a/definitions/grib2/template.4.chemical.def b/definitions/grib2/templates/template.4.chemical.def similarity index 100% rename from definitions/grib2/template.4.chemical.def rename to definitions/grib2/templates/template.4.chemical.def diff --git a/definitions/grib2/template.4.circular_cluster.def b/definitions/grib2/templates/template.4.circular_cluster.def similarity index 100% rename from definitions/grib2/template.4.circular_cluster.def rename to definitions/grib2/templates/template.4.circular_cluster.def diff --git a/definitions/grib2/template.4.derived.def b/definitions/grib2/templates/template.4.derived.def similarity index 100% rename from definitions/grib2/template.4.derived.def rename to definitions/grib2/templates/template.4.derived.def diff --git a/definitions/grib2/template.4.distribution.def b/definitions/grib2/templates/template.4.distribution.def similarity index 100% rename from definitions/grib2/template.4.distribution.def rename to definitions/grib2/templates/template.4.distribution.def diff --git a/definitions/grib2/template.4.eps.def b/definitions/grib2/templates/template.4.eps.def similarity index 100% rename from definitions/grib2/template.4.eps.def rename to definitions/grib2/templates/template.4.eps.def diff --git a/definitions/grib2/template.4.eps_cluster.def b/definitions/grib2/templates/template.4.eps_cluster.def similarity index 100% rename from definitions/grib2/template.4.eps_cluster.def rename to definitions/grib2/templates/template.4.eps_cluster.def diff --git a/definitions/grib2/template.4.focalStatistics.def b/definitions/grib2/templates/template.4.focalStatistics.def similarity index 100% rename from definitions/grib2/template.4.focalStatistics.def rename to definitions/grib2/templates/template.4.focalStatistics.def diff --git a/definitions/grib2/template.4.forecast_time.def b/definitions/grib2/templates/template.4.forecast_time.def similarity index 100% rename from definitions/grib2/template.4.forecast_time.def rename to definitions/grib2/templates/template.4.forecast_time.def diff --git a/definitions/grib2/template.4.forecast_time_44.def b/definitions/grib2/templates/template.4.forecast_time_44.def similarity index 100% rename from definitions/grib2/template.4.forecast_time_44.def rename to definitions/grib2/templates/template.4.forecast_time_44.def diff --git a/definitions/grib2/template.4.generalised_tile.def b/definitions/grib2/templates/template.4.generalised_tile.def similarity index 100% rename from definitions/grib2/template.4.generalised_tile.def rename to definitions/grib2/templates/template.4.generalised_tile.def diff --git a/definitions/grib2/template.4.generating_process.def b/definitions/grib2/templates/template.4.generating_process.def similarity index 100% rename from definitions/grib2/template.4.generating_process.def rename to definitions/grib2/templates/template.4.generating_process.def diff --git a/definitions/grib2/template.4.horizontal.def b/definitions/grib2/templates/template.4.horizontal.def similarity index 100% rename from definitions/grib2/template.4.horizontal.def rename to definitions/grib2/templates/template.4.horizontal.def diff --git a/definitions/grib2/template.4.leps.def b/definitions/grib2/templates/template.4.leps.def similarity index 100% rename from definitions/grib2/template.4.leps.def rename to definitions/grib2/templates/template.4.leps.def diff --git a/definitions/grib2/template.4.localtime.def b/definitions/grib2/templates/template.4.localtime.def similarity index 100% rename from definitions/grib2/template.4.localtime.def rename to definitions/grib2/templates/template.4.localtime.def diff --git a/definitions/grib2/template.4.localtime_statistical.def b/definitions/grib2/templates/template.4.localtime_statistical.def similarity index 100% rename from definitions/grib2/template.4.localtime_statistical.def rename to definitions/grib2/templates/template.4.localtime_statistical.def diff --git a/definitions/grib2/template.4.optical.def b/definitions/grib2/templates/template.4.optical.def similarity index 100% rename from definitions/grib2/template.4.optical.def rename to definitions/grib2/templates/template.4.optical.def diff --git a/definitions/grib2/template.4.parameter.def b/definitions/grib2/templates/template.4.parameter.def similarity index 100% rename from definitions/grib2/template.4.parameter.def rename to definitions/grib2/templates/template.4.parameter.def diff --git a/definitions/grib2/template.4.partition.def b/definitions/grib2/templates/template.4.partition.def similarity index 100% rename from definitions/grib2/template.4.partition.def rename to definitions/grib2/templates/template.4.partition.def diff --git a/definitions/grib2/template.4.percentile.def b/definitions/grib2/templates/template.4.percentile.def similarity index 100% rename from definitions/grib2/template.4.percentile.def rename to definitions/grib2/templates/template.4.percentile.def diff --git a/definitions/grib2/template.4.point_in_time.def b/definitions/grib2/templates/template.4.point_in_time.def similarity index 100% rename from definitions/grib2/template.4.point_in_time.def rename to definitions/grib2/templates/template.4.point_in_time.def diff --git a/definitions/grib2/template.4.postproc.def b/definitions/grib2/templates/template.4.postproc.def similarity index 100% rename from definitions/grib2/template.4.postproc.def rename to definitions/grib2/templates/template.4.postproc.def diff --git a/definitions/grib2/template.4.probability.def b/definitions/grib2/templates/template.4.probability.def similarity index 100% rename from definitions/grib2/template.4.probability.def rename to definitions/grib2/templates/template.4.probability.def diff --git a/definitions/grib2/template.4.probabilityLargeEnsemble.def b/definitions/grib2/templates/template.4.probabilityLargeEnsemble.def similarity index 100% rename from definitions/grib2/template.4.probabilityLargeEnsemble.def rename to definitions/grib2/templates/template.4.probabilityLargeEnsemble.def diff --git a/definitions/grib2/template.4.quantile.def b/definitions/grib2/templates/template.4.quantile.def similarity index 100% rename from definitions/grib2/template.4.quantile.def rename to definitions/grib2/templates/template.4.quantile.def diff --git a/definitions/grib2/template.4.radionuclides.def b/definitions/grib2/templates/template.4.radionuclides.def similarity index 100% rename from definitions/grib2/template.4.radionuclides.def rename to definitions/grib2/templates/template.4.radionuclides.def diff --git a/definitions/grib2/template.4.rectangular_cluster.def b/definitions/grib2/templates/template.4.rectangular_cluster.def similarity index 100% rename from definitions/grib2/template.4.rectangular_cluster.def rename to definitions/grib2/templates/template.4.rectangular_cluster.def diff --git a/definitions/grib2/template.4.referenceperiod.def b/definitions/grib2/templates/template.4.referenceperiod.def similarity index 100% rename from definitions/grib2/template.4.referenceperiod.def rename to definitions/grib2/templates/template.4.referenceperiod.def diff --git a/definitions/grib2/template.4.reforecast.def b/definitions/grib2/templates/template.4.reforecast.def similarity index 100% rename from definitions/grib2/template.4.reforecast.def rename to definitions/grib2/templates/template.4.reforecast.def diff --git a/definitions/grib2/template.4.satellite.def b/definitions/grib2/templates/template.4.satellite.def similarity index 100% rename from definitions/grib2/template.4.satellite.def rename to definitions/grib2/templates/template.4.satellite.def diff --git a/definitions/grib2/template.4.satellite_30.def b/definitions/grib2/templates/template.4.satellite_30.def similarity index 100% rename from definitions/grib2/template.4.satellite_30.def rename to definitions/grib2/templates/template.4.satellite_30.def diff --git a/definitions/grib2/template.4.source.def b/definitions/grib2/templates/template.4.source.def similarity index 100% rename from definitions/grib2/template.4.source.def rename to definitions/grib2/templates/template.4.source.def diff --git a/definitions/grib2/template.4.statistical.def b/definitions/grib2/templates/template.4.statistical.def similarity index 100% rename from definitions/grib2/template.4.statistical.def rename to definitions/grib2/templates/template.4.statistical.def diff --git a/definitions/grib2/template.4.tile.def b/definitions/grib2/templates/template.4.tile.def similarity index 100% rename from definitions/grib2/template.4.tile.def rename to definitions/grib2/templates/template.4.tile.def diff --git a/definitions/grib2/template.4.wave.def b/definitions/grib2/templates/template.4.wave.def similarity index 100% rename from definitions/grib2/template.4.wave.def rename to definitions/grib2/templates/template.4.wave.def diff --git a/definitions/grib2/template.4.wave_period_range.def b/definitions/grib2/templates/template.4.wave_period_range.def similarity index 100% rename from definitions/grib2/template.4.wave_period_range.def rename to definitions/grib2/templates/template.4.wave_period_range.def diff --git a/definitions/grib2/template.4.wave_spectra_formula.def b/definitions/grib2/templates/template.4.wave_spectra_formula.def similarity index 100% rename from definitions/grib2/template.4.wave_spectra_formula.def rename to definitions/grib2/templates/template.4.wave_spectra_formula.def diff --git a/definitions/grib2/template.4.wave_spectra_list.def b/definitions/grib2/templates/template.4.wave_spectra_list.def similarity index 100% rename from definitions/grib2/template.4.wave_spectra_list.def rename to definitions/grib2/templates/template.4.wave_spectra_list.def diff --git a/definitions/grib2/templates/template.5.0.def b/definitions/grib2/templates/template.5.0.def new file mode 100644 index 000000000..56eb4f724 --- /dev/null +++ b/definitions/grib2/templates/template.5.0.def @@ -0,0 +1,7 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 5.0, Grid point data - simple packing + +include "grib2/templates/template.5.packing.def" +include "grib2/templates/template.5.original_values.def" + diff --git a/definitions/grib2/template.5.1.def b/definitions/grib2/templates/template.5.1.def similarity index 97% rename from definitions/grib2/template.5.1.def rename to definitions/grib2/templates/template.5.1.def index 14864c9f5..923a0a28e 100644 --- a/definitions/grib2/template.5.1.def +++ b/definitions/grib2/templates/template.5.1.def @@ -5,7 +5,7 @@ # This template was not validated at the time of publication and should be used with caution transient template_is_experimental = 1 : hidden; -include "grib2/template.5.packing.def" +include "grib2/templates/template.5.packing.def" unsigned[1] matrixBitmapsPresent; # same as in edition 1 diff --git a/definitions/grib2/template.5.2.def b/definitions/grib2/templates/template.5.2.def similarity index 92% rename from definitions/grib2/template.5.2.def rename to definitions/grib2/templates/template.5.2.def index 59f7f5342..c4f200505 100644 --- a/definitions/grib2/template.5.2.def +++ b/definitions/grib2/templates/template.5.2.def @@ -2,8 +2,8 @@ # TEMPLATE 5.2, Grid point data - complex packing -include "grib2/template.5.packing.def" -include "grib2/template.5.original_values.def" +include "grib2/templates/template.5.packing.def" +include "grib2/templates/template.5.original_values.def" # Group splitting method used codetable[1] groupSplittingMethodUsed ('5.4.table',masterDir,localDir); diff --git a/definitions/grib2/template.5.200.def b/definitions/grib2/templates/template.5.200.def similarity index 100% rename from definitions/grib2/template.5.200.def rename to definitions/grib2/templates/template.5.200.def diff --git a/definitions/grib2/template.5.3.def b/definitions/grib2/templates/template.5.3.def similarity index 94% rename from definitions/grib2/template.5.3.def rename to definitions/grib2/templates/template.5.3.def index 2640883f4..16866c0fb 100644 --- a/definitions/grib2/template.5.3.def +++ b/definitions/grib2/templates/template.5.3.def @@ -2,8 +2,8 @@ # TEMPLATE 5.3, Grid point data - complex packing and spatial differencing -include "grib2/template.5.packing.def" -include "grib2/template.5.original_values.def" +include "grib2/templates/template.5.packing.def" +include "grib2/templates/template.5.original_values.def" # Group splitting method used codetable[1] groupSplittingMethodUsed ('5.4.table',masterDir,localDir); diff --git a/definitions/grib2/template.5.4.def b/definitions/grib2/templates/template.5.4.def similarity index 100% rename from definitions/grib2/template.5.4.def rename to definitions/grib2/templates/template.5.4.def diff --git a/definitions/grib2/template.5.40.def b/definitions/grib2/templates/template.5.40.def similarity index 78% rename from definitions/grib2/template.5.40.def rename to definitions/grib2/templates/template.5.40.def index 51a56b1b7..11eccf88d 100644 --- a/definitions/grib2/template.5.40.def +++ b/definitions/grib2/templates/template.5.40.def @@ -2,8 +2,8 @@ # TEMPLATE 5.40, Grid point data - JPEG 2000 Code Stream Format -include "grib2/template.5.packing.def" -include "grib2/template.5.original_values.def" +include "grib2/templates/template.5.packing.def" +include "grib2/templates/template.5.original_values.def" codetable[1] typeOfCompressionUsed ('5.40.table',masterDir,localDir) ; diff --git a/definitions/grib2/templates/template.5.40000.def b/definitions/grib2/templates/template.5.40000.def new file mode 100644 index 000000000..3875ed1a3 --- /dev/null +++ b/definitions/grib2/templates/template.5.40000.def @@ -0,0 +1,3 @@ +# (C) Copyright 2005- ECMWF. + +include "grib2/templates/template.5.40.def" diff --git a/definitions/grib2/templates/template.5.41.def b/definitions/grib2/templates/template.5.41.def new file mode 100644 index 000000000..473df3dec --- /dev/null +++ b/definitions/grib2/templates/template.5.41.def @@ -0,0 +1,6 @@ +# (C) Copyright 2005- ECMWF. + +# TEMPLATE 5.41, Grid point data - PNG Code Stream Format + +include "grib2/templates/template.5.packing.def" +include "grib2/templates/template.5.original_values.def" diff --git a/definitions/grib2/template.5.42.def b/definitions/grib2/templates/template.5.42.def similarity index 89% rename from definitions/grib2/template.5.42.def rename to definitions/grib2/templates/template.5.42.def index 401966908..ef06bec59 100644 --- a/definitions/grib2/template.5.42.def +++ b/definitions/grib2/templates/template.5.42.def @@ -2,8 +2,8 @@ # TEMPLATE 5.42, Grid point data - CCSDS recommended lossless compression -include "grib2/template.5.packing.def" -include "grib2/template.5.original_values.def" +include "grib2/templates/template.5.packing.def" +include "grib2/templates/template.5.original_values.def" unsigned[1] ccsdsFlags : dump; alias ccsdsCompressionOptionsMask=ccsdsFlags; diff --git a/definitions/grib2/template.5.50.def b/definitions/grib2/templates/template.5.50.def similarity index 71% rename from definitions/grib2/template.5.50.def rename to definitions/grib2/templates/template.5.50.def index ab444b3ec..43cf7bcce 100644 --- a/definitions/grib2/template.5.50.def +++ b/definitions/grib2/templates/template.5.50.def @@ -1,7 +1,7 @@ # (C) Copyright 2005- ECMWF. # TEMPLATE 5.50, Spectral data - simple packing -include "grib2/template.5.packing.def" +include "grib2/templates/template.5.packing.def" # Real part of (0,0) ieeefloat realPartOf00; diff --git a/definitions/grib2/template.5.50000.def b/definitions/grib2/templates/template.5.50000.def similarity index 96% rename from definitions/grib2/template.5.50000.def rename to definitions/grib2/templates/template.5.50000.def index 19c5b14da..47931f2b3 100644 --- a/definitions/grib2/template.5.50000.def +++ b/definitions/grib2/templates/template.5.50000.def @@ -2,7 +2,7 @@ # TEMPLATE 5.50000, Spherical harmonics data - complex packing (IEEE) -include "grib2/template.5.packing.def" +include "grib2/templates/template.5.packing.def" if (gribex_mode_on()) { transient computeLaplacianOperator=0 : hidden; diff --git a/definitions/grib2/template.5.50001.def b/definitions/grib2/templates/template.5.50001.def similarity index 100% rename from definitions/grib2/template.5.50001.def rename to definitions/grib2/templates/template.5.50001.def diff --git a/definitions/grib2/template.5.50002.def b/definitions/grib2/templates/template.5.50002.def similarity index 100% rename from definitions/grib2/template.5.50002.def rename to definitions/grib2/templates/template.5.50002.def diff --git a/definitions/grib2/template.5.51.def b/definitions/grib2/templates/template.5.51.def similarity index 95% rename from definitions/grib2/template.5.51.def rename to definitions/grib2/templates/template.5.51.def index f7dc292ca..1d710451c 100644 --- a/definitions/grib2/template.5.51.def +++ b/definitions/grib2/templates/template.5.51.def @@ -2,7 +2,7 @@ # TEMPLATE 5.51, Spherical harmonics data - complex packing -include "grib2/template.5.packing.def" +include "grib2/templates/template.5.packing.def" if (gribex_mode_on()) { transient computeLaplacianOperator=0 : hidden; diff --git a/definitions/grib2/template.5.53.def b/definitions/grib2/templates/template.5.53.def similarity index 95% rename from definitions/grib2/template.5.53.def rename to definitions/grib2/templates/template.5.53.def index c7b21de5f..a2c88e477 100644 --- a/definitions/grib2/template.5.53.def +++ b/definitions/grib2/templates/template.5.53.def @@ -3,7 +3,7 @@ # TEMPLATE 5.53, BiFourier coefficients data - complex packing # Spectral data for limited area models - complex packing -include "grib2/template.5.packing.def" +include "grib2/templates/template.5.packing.def" transient computeLaplacianOperator=1 : hidden; diff --git a/definitions/grib2/template.5.61.def b/definitions/grib2/templates/template.5.61.def similarity index 88% rename from definitions/grib2/template.5.61.def rename to definitions/grib2/templates/template.5.61.def index f19db39ee..8a15e4500 100644 --- a/definitions/grib2/template.5.61.def +++ b/definitions/grib2/templates/template.5.61.def @@ -7,6 +7,6 @@ transient template_is_experimental = 1 : hidden; constant typeOfPreProcessing = 1; -include "grib2/template.5.packing.def" +include "grib2/templates/template.5.packing.def" ieeefloat preProcessingParameter : read_only; diff --git a/definitions/grib2/template.5.original_values.def b/definitions/grib2/templates/template.5.original_values.def similarity index 100% rename from definitions/grib2/template.5.original_values.def rename to definitions/grib2/templates/template.5.original_values.def diff --git a/definitions/grib2/template.5.packing.def b/definitions/grib2/templates/template.5.packing.def similarity index 100% rename from definitions/grib2/template.5.packing.def rename to definitions/grib2/templates/template.5.packing.def diff --git a/definitions/grib2/template.5.second_order.def b/definitions/grib2/templates/template.5.second_order.def similarity index 100% rename from definitions/grib2/template.5.second_order.def rename to definitions/grib2/templates/template.5.second_order.def diff --git a/definitions/grib2/template.7.0.def b/definitions/grib2/templates/template.7.0.def similarity index 100% rename from definitions/grib2/template.7.0.def rename to definitions/grib2/templates/template.7.0.def diff --git a/definitions/grib2/template.7.1.def b/definitions/grib2/templates/template.7.1.def similarity index 100% rename from definitions/grib2/template.7.1.def rename to definitions/grib2/templates/template.7.1.def diff --git a/definitions/grib2/template.7.2.def b/definitions/grib2/templates/template.7.2.def similarity index 100% rename from definitions/grib2/template.7.2.def rename to definitions/grib2/templates/template.7.2.def diff --git a/definitions/grib2/template.7.200.def b/definitions/grib2/templates/template.7.200.def similarity index 100% rename from definitions/grib2/template.7.200.def rename to definitions/grib2/templates/template.7.200.def diff --git a/definitions/grib2/template.7.3.def b/definitions/grib2/templates/template.7.3.def similarity index 100% rename from definitions/grib2/template.7.3.def rename to definitions/grib2/templates/template.7.3.def diff --git a/definitions/grib2/template.7.4.def b/definitions/grib2/templates/template.7.4.def similarity index 100% rename from definitions/grib2/template.7.4.def rename to definitions/grib2/templates/template.7.4.def diff --git a/definitions/grib2/template.7.40.def b/definitions/grib2/templates/template.7.40.def similarity index 100% rename from definitions/grib2/template.7.40.def rename to definitions/grib2/templates/template.7.40.def diff --git a/definitions/grib2/templates/template.7.40000.def b/definitions/grib2/templates/template.7.40000.def new file mode 100644 index 000000000..ca196b4d9 --- /dev/null +++ b/definitions/grib2/templates/template.7.40000.def @@ -0,0 +1,3 @@ +# (C) Copyright 2005- ECMWF. + +include "grib2/templates/template.7.40.def" diff --git a/definitions/grib2/template.7.41.def b/definitions/grib2/templates/template.7.41.def similarity index 100% rename from definitions/grib2/template.7.41.def rename to definitions/grib2/templates/template.7.41.def diff --git a/definitions/grib2/template.7.42.def b/definitions/grib2/templates/template.7.42.def similarity index 100% rename from definitions/grib2/template.7.42.def rename to definitions/grib2/templates/template.7.42.def diff --git a/definitions/grib2/template.7.50.def b/definitions/grib2/templates/template.7.50.def similarity index 100% rename from definitions/grib2/template.7.50.def rename to definitions/grib2/templates/template.7.50.def diff --git a/definitions/grib2/template.7.50000.def b/definitions/grib2/templates/template.7.50000.def similarity index 100% rename from definitions/grib2/template.7.50000.def rename to definitions/grib2/templates/template.7.50000.def diff --git a/definitions/grib2/template.7.50001.def b/definitions/grib2/templates/template.7.50001.def similarity index 100% rename from definitions/grib2/template.7.50001.def rename to definitions/grib2/templates/template.7.50001.def diff --git a/definitions/grib2/template.7.50002.def b/definitions/grib2/templates/template.7.50002.def similarity index 100% rename from definitions/grib2/template.7.50002.def rename to definitions/grib2/templates/template.7.50002.def diff --git a/definitions/grib2/template.7.51.def b/definitions/grib2/templates/template.7.51.def similarity index 100% rename from definitions/grib2/template.7.51.def rename to definitions/grib2/templates/template.7.51.def diff --git a/definitions/grib2/template.7.53.def b/definitions/grib2/templates/template.7.53.def similarity index 100% rename from definitions/grib2/template.7.53.def rename to definitions/grib2/templates/template.7.53.def diff --git a/definitions/grib2/template.7.61.def b/definitions/grib2/templates/template.7.61.def similarity index 100% rename from definitions/grib2/template.7.61.def rename to definitions/grib2/templates/template.7.61.def diff --git a/definitions/grib2/template.7.second_order.def b/definitions/grib2/templates/template.7.second_order.def similarity index 100% rename from definitions/grib2/template.7.second_order.def rename to definitions/grib2/templates/template.7.second_order.def diff --git a/tests/grib2_templates.sh b/tests/grib2_templates.sh index 64b43e4ad..bb295b73a 100755 --- a/tests/grib2_templates.sh +++ b/tests/grib2_templates.sh @@ -26,7 +26,7 @@ latestOfficial=`${tools_dir}/grib_get -p tablesVersionLatestOfficial $sample2` latest_codetable_file=$ECCODES_DEFINITION_PATH/grib2/tables/$latestOfficial/4.0.table awk '$1 !~ /#/ && $1 < 65000 {print $1}' $latest_codetable_file | while read pdtn; do - if [ ! -f "$ECCODES_DEFINITION_PATH/grib2/template.4.$pdtn.def" ]; then + if [ ! -f "$ECCODES_DEFINITION_PATH/grib2/templates/template.4.$pdtn.def" ]; then echo "GRIB2 template for product definition $pdtn does not exist!" exit 1 fi diff --git a/tests/grib_list_keys.sh b/tests/grib_list_keys.sh index c58bddc96..c1d7295ed 100755 --- a/tests/grib_list_keys.sh +++ b/tests/grib_list_keys.sh @@ -16,9 +16,9 @@ tempOut=temp.$label.txt if [ -d "$ECCODES_DEFINITION_PATH" ]; then if [ -x "${tools_dir}/grib_list_keys" ]; then ${tools_dir}/grib_list_keys $ECCODES_DEFINITION_PATH/boot.def > $tempOut - ${tools_dir}/grib_list_keys $ECCODES_DEFINITION_PATH/grib2/template.4.2000.def > $tempOut - ${tools_dir}/grib_list_keys $ECCODES_DEFINITION_PATH/grib2/template.3.0.def > $tempOut - ${tools_dir}/grib_list_keys $ECCODES_DEFINITION_PATH/grib2/template.3.120.def > $tempOut + ${tools_dir}/grib_list_keys $ECCODES_DEFINITION_PATH/grib2/templates/template.4.2000.def > $tempOut + ${tools_dir}/grib_list_keys $ECCODES_DEFINITION_PATH/grib2/templates/template.3.0.def > $tempOut + ${tools_dir}/grib_list_keys $ECCODES_DEFINITION_PATH/grib2/templates/template.3.120.def > $tempOut fi fi From f50d2c5884710844494013df5d01c8d8ae61996f Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 8 Aug 2024 13:37:07 +0100 Subject: [PATCH 140/277] ECC-1858: Allow user to control encoding via optimizeScaleFactor (by default 0) --- src/accessor/grib_accessor_class_data_g22order_packing.cc | 7 +++++-- tests/grib_bitmap.sh | 2 ++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/accessor/grib_accessor_class_data_g22order_packing.cc b/src/accessor/grib_accessor_class_data_g22order_packing.cc index aefef16c8..c4949e89e 100644 --- a/src/accessor/grib_accessor_class_data_g22order_packing.cc +++ b/src/accessor/grib_accessor_class_data_g22order_packing.cc @@ -786,7 +786,7 @@ int grib_accessor_class_data_g22order_packing_t::pack_double(grib_accessor* a, c // long nvals_per_group = 0; // long nbits_per_group_val = 0; - long binary_scale_factor, decimal_scale_factor, typeOfOriginalFieldValues; + long binary_scale_factor, decimal_scale_factor, typeOfOriginalFieldValues, optimize_scale_factor; // long groupSplittingMethodUsed, numberOfGroupsOfDataValues, referenceForGroupWidths; long missingValueManagementUsed, primaryMissingValueSubstitute, secondaryMissingValueSubstitute; long numberOfBitsUsedForTheGroupWidths, numberOfBitsUsedForTheScaledGroupLengths, orderOfSpatialDifferencing; @@ -815,7 +815,10 @@ int grib_accessor_class_data_g22order_packing_t::pack_double(grib_accessor* a, c if ((err = grib_get_long_internal(gh, self->decimal_scale_factor, &decimal_scale_factor)) != GRIB_SUCCESS) return err; - int use_scale = 1; + if ((err = grib_get_long_internal(gh, self->optimize_scale_factor, &optimize_scale_factor)) != GRIB_SUCCESS) + return err; + + int use_scale = !optimize_scale_factor; if ((err = grib_get_long_internal(gh, self->binary_scale_factor, &binary_scale_factor)) != GRIB_SUCCESS) return err; diff --git a/tests/grib_bitmap.sh b/tests/grib_bitmap.sh index 36ba2cf4d..e78ccc897 100755 --- a/tests/grib_bitmap.sh +++ b/tests/grib_bitmap.sh @@ -127,6 +127,8 @@ ${tools_dir}/grib_copy -r $infile $temp2 ${tools_dir}/grib_compare -R all=0.3 -c data:n $infile $temp2 grib_check_key_equals $temp2 bitsPerValue 9 # Note: The input file has bpv=9 +${tools_dir}/grib_set -rs optimizeScaleFactor=1 $infile $temp2 +${tools_dir}/grib_compare $infile $temp2 # Simple to grid_complex tempComplex=temp.grib_bitmap.complex.grib From f5b8a9b7f13310e52cb2c50e4b943a840ae60c7c Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Thu, 8 Aug 2024 16:14:03 +0000 Subject: [PATCH 141/277] ECC-1894: GRIB2: Transfer encoding from 240016 to 26 --- definitions/grib2/localConcepts/ecmf/name.def | 6 ------ definitions/grib2/localConcepts/ecmf/paramId.def | 6 ------ definitions/grib2/localConcepts/ecmf/shortName.def | 6 ------ definitions/grib2/localConcepts/ecmf/units.def | 6 ------ definitions/grib2/name.def | 12 ++++++------ definitions/grib2/paramId.def | 12 ++++++------ definitions/grib2/shortName.def | 12 ++++++------ definitions/grib2/units.def | 12 ++++++------ 8 files changed, 24 insertions(+), 48 deletions(-) diff --git a/definitions/grib2/localConcepts/ecmf/name.def b/definitions/grib2/localConcepts/ecmf/name.def index f2d776220..1e390741a 100644 --- a/definitions/grib2/localConcepts/ecmf/name.def +++ b/definitions/grib2/localConcepts/ecmf/name.def @@ -115,12 +115,6 @@ parameterCategory = 128 ; parameterNumber = 25 ; } -#Lake cover -'Lake cover' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 26 ; - } #Snow albedo 'Snow albedo' = { localTablesVersion = 1 ; diff --git a/definitions/grib2/localConcepts/ecmf/paramId.def b/definitions/grib2/localConcepts/ecmf/paramId.def index 705e33a26..ab184ae4d 100644 --- a/definitions/grib2/localConcepts/ecmf/paramId.def +++ b/definitions/grib2/localConcepts/ecmf/paramId.def @@ -115,12 +115,6 @@ parameterCategory = 128 ; parameterNumber = 25 ; } -#Lake cover -'26' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 26 ; - } #Snow albedo '32' = { localTablesVersion = 1 ; diff --git a/definitions/grib2/localConcepts/ecmf/shortName.def b/definitions/grib2/localConcepts/ecmf/shortName.def index 78f8f2fe9..e5fa627d0 100644 --- a/definitions/grib2/localConcepts/ecmf/shortName.def +++ b/definitions/grib2/localConcepts/ecmf/shortName.def @@ -115,12 +115,6 @@ parameterCategory = 128 ; parameterNumber = 25 ; } -#Lake cover -'cl' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 26 ; - } #Snow albedo 'asn' = { localTablesVersion = 1 ; diff --git a/definitions/grib2/localConcepts/ecmf/units.def b/definitions/grib2/localConcepts/ecmf/units.def index 4f611fb61..7931fee09 100644 --- a/definitions/grib2/localConcepts/ecmf/units.def +++ b/definitions/grib2/localConcepts/ecmf/units.def @@ -115,12 +115,6 @@ parameterCategory = 128 ; parameterNumber = 25 ; } -#Lake cover -'(0 - 1)' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 26 ; - } #Snow albedo '(0 - 1)' = { localTablesVersion = 1 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index e7ff266d0..9db74ef7c 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -181,6 +181,12 @@ parameterCategory = 2 ; parameterNumber = 45 ; } +#Lake cover +'Lake cover' = { + discipline = 1 ; + parameterCategory = 2 ; + parameterNumber = 2 ; + } #Low vegetation cover 'Low vegetation cover' = { discipline = 2 ; @@ -5416,12 +5422,6 @@ parameterCategory = 0 ; parameterNumber = 12 ; } -#Water fraction -'Water fraction' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 2 ; - } #Days since last observation 'Days since last observation' = { discipline = 0 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 9fa1fe993..670e477af 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -181,6 +181,12 @@ parameterCategory = 2 ; parameterNumber = 45 ; } +#Lake cover +'26' = { + discipline = 1 ; + parameterCategory = 2 ; + parameterNumber = 2 ; + } #Low vegetation cover '27' = { discipline = 2 ; @@ -5416,12 +5422,6 @@ parameterCategory = 0 ; parameterNumber = 12 ; } -#Water fraction -'240016' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 2 ; - } #Days since last observation '240017' = { discipline = 0 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 51823f5a7..81e6cd53a 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -181,6 +181,12 @@ parameterCategory = 2 ; parameterNumber = 45 ; } +#Lake cover +'cl' = { + discipline = 1 ; + parameterCategory = 2 ; + parameterNumber = 2 ; + } #Low vegetation cover 'cvl' = { discipline = 2 ; @@ -5416,12 +5422,6 @@ parameterCategory = 0 ; parameterNumber = 12 ; } -#Water fraction -'fldfrc' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 2 ; - } #Days since last observation 'dslr' = { discipline = 0 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index 6ed54fc31..b6ebdbf3f 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -181,6 +181,12 @@ parameterCategory = 2 ; parameterNumber = 45 ; } +#Lake cover +'(0 - 1)' = { + discipline = 1 ; + parameterCategory = 2 ; + parameterNumber = 2 ; + } #Low vegetation cover '(0 - 1)' = { discipline = 2 ; @@ -5416,12 +5422,6 @@ parameterCategory = 0 ; parameterNumber = 12 ; } -#Water fraction -'(0 - 1)' = { - discipline = 1 ; - parameterCategory = 2 ; - parameterNumber = 2 ; - } #Days since last observation 'Integer' = { discipline = 0 ; From eac06e88532f0bf8ef6d0562e2a23a90ca08e19c Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 9 Aug 2024 14:27:16 +0100 Subject: [PATCH 142/277] ECC-1899: API function to allow setting debug level --- fortran/eccodes_f90_tail.f90 | 6 ++++++ fortran/grib_api_externals.h | 2 +- fortran/grib_f90_tail.f90 | 7 +++++++ fortran/grib_fortran.cc | 15 ++++++++++++--- fortran/grib_fortran_prototypes.h | 1 + src/eccodes.cc | 5 +++++ src/eccodes.h | 2 ++ src/grib_api.h | 2 ++ tests/unit_tests.cc | 26 ++++++++++++++++++++++++++ 9 files changed, 62 insertions(+), 4 deletions(-) diff --git a/fortran/eccodes_f90_tail.f90 b/fortran/eccodes_f90_tail.f90 index fcc0c860b..05d59beb5 100644 --- a/fortran/eccodes_f90_tail.f90 +++ b/fortran/eccodes_f90_tail.f90 @@ -2765,6 +2765,12 @@ subroutine codes_skip_read_only(iterid, status) call grib_skip_read_only(iterid, status) end subroutine codes_skip_read_only + !> Set debug mode + subroutine codes_set_debug(mode) + integer(kind=kindOfInt), intent(in) :: mode + call grib_set_debug(mode) + end subroutine codes_set_debug + !> Set the definition path !> !> In case of error, if the status parameter (optional) is not given, the program will diff --git a/fortran/grib_api_externals.h b/fortran/grib_api_externals.h index f789fb92e..fd3d6c10a 100644 --- a/fortran/grib_api_externals.h +++ b/fortran/grib_api_externals.h @@ -79,7 +79,7 @@ integer, external :: grib_f_set_int, grib_f_set_int_array, & integer, external :: grib_f_get_message_size, grib_f_copy_message, grib_f_count_in_file integer, external :: grib_f_write, grib_f_multi_write, grib_f_multi_append integer, external :: grib_f_clone, grib_f_copy_namespace -external :: grib_f_check +external :: grib_f_check , grib_f_set_debug integer, external :: grib_f_util_sections_copy integer, external :: grib_f_set_definitions_path, grib_f_set_samples_path integer, external :: grib_f_julian_to_datetime, grib_f_datetime_to_julian, grib_f_copy_key diff --git a/fortran/grib_f90_tail.f90 b/fortran/grib_f90_tail.f90 index c178eedbe..be1a574ff 100644 --- a/fortran/grib_f90_tail.f90 +++ b/fortran/grib_f90_tail.f90 @@ -3177,6 +3177,13 @@ subroutine grib_skip_read_only(iterid, status) end if end subroutine grib_skip_read_only + !> Set debug mode + subroutine grib_set_debug(mode) + integer(kind=kindOfInt), intent(in) :: mode + call grib_f_set_debug(mode) + end subroutine grib_set_debug + + !> Set the definition path !> !> In case of error, if the status parameter (optional) is not given, the program will diff --git a/fortran/grib_fortran.cc b/fortran/grib_fortran.cc index 972118384..1539bc9db 100644 --- a/fortran/grib_fortran.cc +++ b/fortran/grib_fortran.cc @@ -975,8 +975,9 @@ int grib_f_close_file_(int* fid) /*****************************************************************************/ static int file_count=0; -void grib_f_write_on_fail(int* gid) { - grib_context* c=grib_context_get_default(); +void grib_f_write_on_fail(int* gid) +{ + grib_context* c = grib_context_get_default(); if (c->write_on_fail) { char filename[100]={0,}; grib_handle* h=NULL; @@ -993,7 +994,8 @@ void grib_f_write_on_fail(int* gid) { if (h) grib_write_message(h,filename,"w"); } } -void grib_f_write_on_fail_(int* gid) { +void grib_f_write_on_fail_(int* gid) +{ grib_f_write_on_fail(gid); } /*****************************************************************************/ @@ -2890,6 +2892,13 @@ int codes_f_bufr_multi_element_constant_arrays_off_(void) return GRIB_SUCCESS; } +/*****************************************************************************/ +void grib_f_set_debug_(int mode) +{ + grib_context* c = grib_context_get_default(); + grib_context_set_debug(c, mode); +} + /*****************************************************************************/ int grib_f_set_definitions_path_(char* path, int len) { diff --git a/fortran/grib_fortran_prototypes.h b/fortran/grib_fortran_prototypes.h index 4eb0a313d..7af6b2101 100644 --- a/fortran/grib_fortran_prototypes.h +++ b/fortran/grib_fortran_prototypes.h @@ -309,6 +309,7 @@ int grib_f_multi_append__(int *ingid, int *sec, int *mgid); int codes_f_bufr_keys_iterator_new_(int* gid,int* iterid); int grib_f_read_file_(int* fid, void* buffer, size_t* nbytes); int codes_f_bufr_keys_iterator_delete_(int* iterid); +void grib_f_set_debug_(int mode); int grib_f_set_definitions_path_(char* path, int len); int grib_f_read_any_from_file_(int* fid, void* buffer, size_t* nbytes); int any_f_new_from_file_(int* fid, int* gid); diff --git a/src/eccodes.cc b/src/eccodes.cc index 9ec6d8073..779690790 100644 --- a/src/eccodes.cc +++ b/src/eccodes.cc @@ -585,6 +585,11 @@ void codes_context_set_samples_path(grib_context* c, const char* path) grib_context_set_samples_path(c, path); } +void codes_context_set_debug(grib_context* c, int mode) +{ + grib_context_set_debug(c, mode); +} + void codes_context_set_memory_proc(grib_context* c, grib_malloc_proc p_malloc, grib_free_proc p_free, grib_realloc_proc p_realloc) { grib_context_set_memory_proc(c, p_malloc, p_free, p_realloc); diff --git a/src/eccodes.h b/src/eccodes.h index f0b110b86..0c8f7193c 100644 --- a/src/eccodes.h +++ b/src/eccodes.h @@ -1174,6 +1174,8 @@ void codes_context_set_definitions_path(codes_context* c, const char* path); */ void codes_context_set_samples_path(codes_context* c, const char* path); +void codes_context_set_debug(grib_context* c, int mode); + /** * Sets memory procedures of the context * diff --git a/src/grib_api.h b/src/grib_api.h index 84566b108..09601899f 100644 --- a/src/grib_api.h +++ b/src/grib_api.h @@ -1169,6 +1169,8 @@ void grib_context_set_definitions_path(grib_context* c, const char* path); */ void grib_context_set_samples_path(grib_context* c, const char* path); +void grib_context_set_debug(grib_context* c, int mode); + /** * Sets memory procedures of the context * diff --git a/tests/unit_tests.cc b/tests/unit_tests.cc index 22a394548..d1575301a 100644 --- a/tests/unit_tests.cc +++ b/tests/unit_tests.cc @@ -742,10 +742,36 @@ void test_codes_get_error_message() Assert( STR_EQUAL(errmsg, "Unknown error -6666")); } +void test_codes_context_set_debug() +{ + printf("Running %s ...\n", __func__); + grib_context* context = NULL; + int err = 0; + + printf("\tEnable debugging...\n"); + grib_context_set_debug(context, -1); + + grib_handle* h = grib_handle_new_from_samples(context, "GRIB2"); + err = grib_set_long(h, "paramId", 167); + Assert(!err); + + printf("\tDisable debugging...\n"); + grib_context_set_debug(context, 0); + + err = grib_set_long(h, "edition", 1); + Assert(!err); + printf("\tEnable debugging again (verbose)...\n"); + grib_context_set_debug(context, 1); + grib_handle_delete(h); + + grib_context_set_debug(context, 0); +} + int main(int argc, char** argv) { printf("Doing unit tests. ecCodes version = %ld\n", grib_get_api_version()); + test_codes_context_set_debug(); test_codes_get_error_message(); test_iarray(); From 137136b8939df7f3a373f5e27ff49e8be0dc672a Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 9 Aug 2024 16:00:32 +0100 Subject: [PATCH 143/277] ECC-1899: Functor for filter --- src/grib_expression_class_functor.cc | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/grib_expression_class_functor.cc b/src/grib_expression_class_functor.cc index 332d219ce..0f1d80214 100644 --- a/src/grib_expression_class_functor.cc +++ b/src/grib_expression_class_functor.cc @@ -98,9 +98,9 @@ static int evaluate_long(grib_expression* g, grib_handle* h, long* lres) { grib_expression_functor* e = (grib_expression_functor*)g; - if (STR_EQUAL(e->name, "lookup")) { - return GRIB_SUCCESS; - } + // if (STR_EQUAL(e->name, "lookup")) { + // return GRIB_SUCCESS; + // } if (STR_EQUAL(e->name, "new")) { *lres = h->loader != NULL; @@ -128,6 +128,14 @@ static int evaluate_long(grib_expression* g, grib_handle* h, long* lres) return GRIB_INVALID_ARGUMENT; } + if (STR_EQUAL(e->name, "debug_mode")) { + const int n = grib_arguments_get_count(e->args); + if (n != 1) return GRIB_INVALID_ARGUMENT; + const int dmode = grib_arguments_get_long(h, e->args, 0); + grib_context_set_debug(0, dmode); + return GRIB_SUCCESS; + } + if (STR_EQUAL(e->name, "missing")) { const char* keyName = grib_arguments_get_name(h, e->args, 0); if (keyName) { From 89ec3a19eba627d77236fefd3a913ebf36bdf158 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 9 Aug 2024 17:25:51 +0100 Subject: [PATCH 144/277] ECC-1899: Test --- tests/grib_filter.sh | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/grib_filter.sh b/tests/grib_filter.sh index 4f4ab00be..fce1a6f0b 100755 --- a/tests/grib_filter.sh +++ b/tests/grib_filter.sh @@ -301,6 +301,23 @@ ${tools_dir}/grib_filter $tempFilt $input cd .. rm -rf $tempDir +# Use of debug_mode functor +cat >$tempFilt < $tempOut 2>&1 +# 2m temperature has typeOfFirstFixedSurface of 103 +grep -q "ECCODES DEBUG about to set key/value pair: typeOfFirstFixedSurface=103" $tempOut +grep -q "grib_set_long_internal .* year=1999" $tempOut + + # Use of 'defined' functor cat >$tempFilt < Date: Sat, 10 Aug 2024 13:15:28 +0100 Subject: [PATCH 145/277] Testing: Coverage --- tests/CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index b6194fc61..dfb3799b5 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -30,7 +30,6 @@ list(APPEND test_c_bins grib_keys_iter grib_keys_iter_skip grib_geo_iter - gauss_sub grib_nearest_test grib_util_set_spec grib_util_set_spec2 @@ -61,7 +60,6 @@ list(APPEND test_c_bins codes_codetable codes_get_string grib_sh_ieee64 - grib_ieee grib_set_bytes grib_copy_message grib_packing_order From 6899fe8f90c18501aed89a62c222b2840a1a9bbf Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 10 Aug 2024 13:18:12 +0100 Subject: [PATCH 146/277] GRIB2: Concept for productDefinitionTemplate --- .../productDefinitionTemplateConcept.def | 24 +++++++++++++++++++ definitions/grib2/section.4.def | 2 ++ 2 files changed, 26 insertions(+) create mode 100644 definitions/grib2/productDefinitionTemplateConcept.def diff --git a/definitions/grib2/productDefinitionTemplateConcept.def b/definitions/grib2/productDefinitionTemplateConcept.def new file mode 100644 index 000000000..8e61b16f0 --- /dev/null +++ b/definitions/grib2/productDefinitionTemplateConcept.def @@ -0,0 +1,24 @@ +# Concept for the Product Definition Template +'base_deterministic_instantaneous' = {productDefinitionTemplateNumber=0;} +'base_ensemble_instantaneous' = {productDefinitionTemplateNumber=1;} +'base_deterministic_statistically_processed' = {productDefinitionTemplateNumber=8;} +'base_ensemble_statistically_processed' = {productDefinitionTemplateNumber=11;} + +'chemical_deterministic_instantaneous' = {productDefinitionTemplateNumber=40;} +'chemical_ensemble_instantaneous' = {productDefinitionTemplateNumber=41;} +'chemical_deterministic_statistically_processed' = {productDefinitionTemplateNumber=42;} +'chemical_ensemble_statistically_processed' = {productDefinitionTemplateNumber=43;} + +'chemical_srcsink_deterministic_instantaneous' = {productDefinitionTemplateNumber=76;} +'chemical_srcsink_ensemble_instantaneous' = {productDefinitionTemplateNumber=77;} +'chemical_srcsink_deterministic_statistically_processed' = {productDefinitionTemplateNumber=78;} +'chemical_srcsink_ensemble_statistically_processed' = {productDefinitionTemplateNumber=79;} + + +'aerosol_optical_deterministic_instantaneous' = {productDefinitionTemplateNumber=48;} +'aerosol_optical_ensemble_instantaneous' = {productDefinitionTemplateNumber=49;} + +'postproc_deterministic_instantaneous' = {productDefinitionTemplateNumber=70;} +'postproc_ensemble_instantaneous' = {productDefinitionTemplateNumber=71;} +'postproc_deterministic_statistically_processed' = {productDefinitionTemplateNumber=72;} +'postproc_ensemble_statistically_processed' = {productDefinitionTemplateNumber=73;} diff --git a/definitions/grib2/section.4.def b/definitions/grib2/section.4.def index 52d54dfa5..3ccdde8c2 100644 --- a/definitions/grib2/section.4.def +++ b/definitions/grib2/section.4.def @@ -75,6 +75,8 @@ if (defined(marsStream) && defined(marsType)) { template_nofail marsKeywords1 "mars/grib.[marsStream:s].[marsType:s].def"; } +concept productDefinitionTemplateName(unknown, "productDefinitionTemplateConcept.def", conceptsDir2,conceptsDir1): no_copy; + template parameters "grib2/parameters.def"; # Hook for local extras From 5fa6a7452d9b3c2e04c0cb6751372ae12da044a8 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 10 Aug 2024 14:02:42 +0100 Subject: [PATCH 147/277] Testing: BUFR descriptor checks --- tests/bufr_check_descriptors.sh | 73 +++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) diff --git a/tests/bufr_check_descriptors.sh b/tests/bufr_check_descriptors.sh index 091d6f373..6fad71125 100755 --- a/tests/bufr_check_descriptors.sh +++ b/tests/bufr_check_descriptors.sh @@ -10,7 +10,80 @@ . ./include.ctest.sh +label="bufr_check_descriptors_test" +tempInput=temp.$label.table +tempText=temp.$label.txt + for file in `find ${ECCODES_DEFINITION_PATH}/bufr/ -name 'element.table' -print` do ${test_dir}/bufr_check_descriptors $file done + +# Check we detect bad inputs +# --------------------------- +echo "abc" > $tempInput +set +e +${test_dir}/bufr_check_descriptors $tempInput >$tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Number of columns .* required miniumum" $tempText + + +echo "a|b|c|d|e|f|g|h" > $tempInput +set +e +${test_dir}/bufr_check_descriptors $tempInput >$tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "descriptor code .* is not numeric" $tempText + + +echo "1234567|b|c|d|e|f|g|h" > $tempInput +set +e +${test_dir}/bufr_check_descriptors $tempInput >$tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "descriptor code .* is not 6 digits" $tempText + + +echo "010192|depthOfRoots|rubbish|DEPTH OF ROOTS|m|2|0|10" > $tempInput +set +e +${test_dir}/bufr_check_descriptors $tempInput >$tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "descriptor key type .* is not valid" $tempText +rm -f $tempText + +echo "010192|depthOfRoots|double|DEPTH OF ROOTS|m|x|0|0" > $tempInput +set +e +${test_dir}/bufr_check_descriptors $tempInput >$tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "descriptor scale .* is not numeric" $tempText + + +echo "010192|depthOfRoots|double|DEPTH OF ROOTS|m|0|a|0" > $tempInput +set +e +${test_dir}/bufr_check_descriptors $tempInput >$tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "descriptor reference .* is not numeric" $tempText + + +echo "010192|depthOfRoots|double|DEPTH OF ROOTS|m|0|0|p" > $tempInput +set +e +${test_dir}/bufr_check_descriptors $tempInput >$tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +cat $tempText +grep -q "descriptor width" $tempText + + +# Clean up +rm -f $tempInput $tempText From a210b14ec6f18b4ea5777303c86158e9eab6f83c Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 10 Aug 2024 20:25:07 +0100 Subject: [PATCH 148/277] Cosmetics --- src/action_class_close.cc | 11 +++++------ src/action_class_concept.cc | 8 ++++---- src/action_class_hash_array.cc | 3 +-- 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/action_class_close.cc b/src/action_class_close.cc index 3c8d51900..dfe635890 100644 --- a/src/action_class_close.cc +++ b/src/action_class_close.cc @@ -91,18 +91,17 @@ grib_action* grib_action_create_close(grib_context* context, char* filename) static int execute(grib_action* act, grib_handle* h) { - char filename[2048] = {0,}; - size_t len = 2048; grib_action_close* self = (grib_action_close*)act; - int err = 0; - grib_file* file = 0; - err = grib_get_string(h, self->filename, filename, &len); + char filename[2048] = {0,}; + size_t len = sizeof(filename); + + int err = grib_get_string(h, self->filename, filename, &len); /* fprintf(stderr,"++++ name %s\n",filename); */ if (err) return err; /* grib_file_close(filename,1,&err); */ - file = grib_get_file(filename, &err); + grib_file* file = grib_get_file(filename, &err); if (err) return err; if (file) diff --git a/src/action_class_concept.cc b/src/action_class_concept.cc index b88600887..7b75f2634 100644 --- a/src/action_class_concept.cc +++ b/src/action_class_concept.cc @@ -317,10 +317,10 @@ static grib_concept_value* get_concept(grib_handle* h, grib_action_concept* self static int concept_condition_expression_true(grib_handle* h, grib_concept_condition* c, char* exprVal) { - long lval; - long lres = 0; - int ok = 0; - int err = 0; + long lval = 0; + long lres = 0; + int ok = 0; + int err = 0; const int type = grib_expression_native_type(h, c->expression); switch (type) { diff --git a/src/action_class_hash_array.cc b/src/action_class_hash_array.cc index fd1e52976..72cf1c047 100644 --- a/src/action_class_hash_array.cc +++ b/src/action_class_hash_array.cc @@ -231,7 +231,6 @@ static grib_hash_array_value* get_hash_array_impl(grib_handle* h, grib_action* a char key[4096] = {0,}; char* full = 0; int id; - int err; grib_action_hash_array* self = (grib_action_hash_array*)a; grib_context* context = ((grib_action*)self)->context; @@ -245,7 +244,7 @@ static grib_hash_array_value* get_hash_array_impl(grib_handle* h, grib_action* a snprintf(buf, 4096, "%s/%s", masterDir, self->basename); - err = grib_recompose_name(h, NULL, buf, master, 1); + int err = grib_recompose_name(h, NULL, buf, master, 1); if (err) { grib_context_log(context, GRIB_LOG_ERROR, "unable to build name of directory %s", self->masterDir); From 29f64e6cf3f2651b9cd6805dff498c400fbf1e5d Mon Sep 17 00:00:00 2001 From: shahramn Date: Sun, 11 Aug 2024 12:27:10 +0100 Subject: [PATCH 149/277] Cosmetics --- src/action_class_alias.cc | 1 - src/action_class_assert.cc | 3 --- src/action_class_concept.cc | 1 - src/action_class_hash_array.cc | 3 --- src/action_class_if.cc | 1 - src/action_class_when.cc | 3 --- src/grib_dumper.cc | 3 --- src/grib_dumper_class_default.cc | 5 ----- src/grib_dumper_class_serialize.cc | 4 ---- src/grib_iterator_class_gaussian.cc | 3 --- src/grib_iterator_class_latlon_reduced.cc | 5 ----- src/grib_parse_utils.cc | 2 -- src/grib_query.cc | 6 ++---- 13 files changed, 2 insertions(+), 38 deletions(-) diff --git a/src/action_class_alias.cc b/src/action_class_alias.cc index 014a3f47c..bcc2f799c 100644 --- a/src/action_class_alias.cc +++ b/src/action_class_alias.cc @@ -10,7 +10,6 @@ /*************************************************************************** * Jean Baptiste Filippi - 01.11.2005 * - * Enrico Fucile * ***************************************************************************/ #include "grib_api_internal.h" /* diff --git a/src/action_class_assert.cc b/src/action_class_assert.cc index 66cf04f56..b19330505 100644 --- a/src/action_class_assert.cc +++ b/src/action_class_assert.cc @@ -8,9 +8,6 @@ * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. */ -/*************************************************************************** - * Enrico Fucile * - ***************************************************************************/ #include "grib_api_internal.h" /* diff --git a/src/action_class_concept.cc b/src/action_class_concept.cc index 7b75f2634..d974e7ab9 100644 --- a/src/action_class_concept.cc +++ b/src/action_class_concept.cc @@ -10,7 +10,6 @@ /*************************************************************************** * Jean Baptiste Filippi - 01.11.2005 * - * Enrico Fucile * ***************************************************************************/ #include "grib_api_internal.h" /* diff --git a/src/action_class_hash_array.cc b/src/action_class_hash_array.cc index 72cf1c047..9a61f9e56 100644 --- a/src/action_class_hash_array.cc +++ b/src/action_class_hash_array.cc @@ -8,9 +8,6 @@ * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. */ -/*************************************************************************** - * Enrico Fucile 2012 * - ***************************************************************************/ #include "grib_api_internal.h" /* This is used by make_class.pl diff --git a/src/action_class_if.cc b/src/action_class_if.cc index ec99ba315..8a07b901b 100644 --- a/src/action_class_if.cc +++ b/src/action_class_if.cc @@ -10,7 +10,6 @@ /*************************************************************************** * Jean Baptiste Filippi - 01.11.2005 * - * Enrico Fucile * ***************************************************************************/ #include "grib_api_internal.h" /* diff --git a/src/action_class_when.cc b/src/action_class_when.cc index 640e75aab..359890f73 100644 --- a/src/action_class_when.cc +++ b/src/action_class_when.cc @@ -8,9 +8,6 @@ * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. */ -/*************************************************************************** - * Enrico Fucile * - ***************************************************************************/ #include "grib_api_internal.h" /* This is used by make_class.pl diff --git a/src/grib_dumper.cc b/src/grib_dumper.cc index 1a8be288b..bfebdc2d3 100644 --- a/src/grib_dumper.cc +++ b/src/grib_dumper.cc @@ -8,9 +8,6 @@ * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. */ -/************************************** - * Enrico Fucile - **************************************/ #include "grib_api_internal.h" #if GRIB_PTHREADS diff --git a/src/grib_dumper_class_default.cc b/src/grib_dumper_class_default.cc index 819344cbe..7a7442959 100644 --- a/src/grib_dumper_class_default.cc +++ b/src/grib_dumper_class_default.cc @@ -8,11 +8,6 @@ * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. */ -/************************************** - * Enrico Fucile - **************************************/ - - #include "grib_api_internal.h" #include /* diff --git a/src/grib_dumper_class_serialize.cc b/src/grib_dumper_class_serialize.cc index 57f10cee0..4df3af737 100644 --- a/src/grib_dumper_class_serialize.cc +++ b/src/grib_dumper_class_serialize.cc @@ -7,10 +7,6 @@ * In applying this licence, ECMWF does not waive the privileges and immunities granted to it by * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. */ -/************************************** - * Enrico Fucile - **************************************/ - #include "grib_api_internal.h" #include diff --git a/src/grib_iterator_class_gaussian.cc b/src/grib_iterator_class_gaussian.cc index 20807be96..714aa4d35 100644 --- a/src/grib_iterator_class_gaussian.cc +++ b/src/grib_iterator_class_gaussian.cc @@ -7,9 +7,6 @@ * In applying this licence, ECMWF does not waive the privileges and immunities granted to it by * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. */ -/************************************** - * Enrico Fucile - **************************************/ #include "grib_api_internal.h" #include diff --git a/src/grib_iterator_class_latlon_reduced.cc b/src/grib_iterator_class_latlon_reduced.cc index c27dcb2d1..53252dd88 100644 --- a/src/grib_iterator_class_latlon_reduced.cc +++ b/src/grib_iterator_class_latlon_reduced.cc @@ -8,11 +8,6 @@ * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. */ -/************************************** - * Enrico Fucile - **************************************/ - - #include "grib_api_internal.h" #include diff --git a/src/grib_parse_utils.cc b/src/grib_parse_utils.cc index ed65572d5..555c869b9 100644 --- a/src/grib_parse_utils.cc +++ b/src/grib_parse_utils.cc @@ -10,8 +10,6 @@ /*************************************************************************** * Jean Baptiste Filippi - 01.11.2005 * - * Enrico Fucile - * * ***************************************************************************/ #include "grib_api_internal.h" diff --git a/src/grib_query.cc b/src/grib_query.cc index a1209efaf..5c0961700 100644 --- a/src/grib_query.cc +++ b/src/grib_query.cc @@ -8,11 +8,9 @@ * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. */ -/*************************************************************************** - * Enrico Fucile +/************************************************************************** * Jean Baptiste Filippi - 01.11.2005 * - * * - ***************************************************************************/ + **************************************************************************/ #include "grib_api_internal.h" #include "accessor/grib_accessor_class_bufr_data_array.h" From 1db00568787bb6c0d4e6968de1ac98a396803d76 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 12 Aug 2024 09:31:36 +0000 Subject: [PATCH 150/277] ECC-1882: GRIB2: Adapt recently added On-Demand DT encodings to fit generalised approach --- definitions/grib1/localConcepts/ecmf/name.def | 5 - .../grib1/localConcepts/ecmf/paramId.def | 5 - .../grib1/localConcepts/ecmf/shortName.def | 5 - .../grib1/localConcepts/ecmf/units.def | 5 - definitions/grib2/name.def | 104 +++++++++--------- definitions/grib2/paramId.def | 104 +++++++++--------- definitions/grib2/shortName.def | 104 +++++++++--------- definitions/grib2/units.def | 104 +++++++++--------- 8 files changed, 208 insertions(+), 228 deletions(-) diff --git a/definitions/grib1/localConcepts/ecmf/name.def b/definitions/grib1/localConcepts/ecmf/name.def index 77d5535a7..5c89d1280 100644 --- a/definitions/grib1/localConcepts/ecmf/name.def +++ b/definitions/grib1/localConcepts/ecmf/name.def @@ -15024,11 +15024,6 @@ table2Version = 172 ; indicatorOfParameter = 147 ; } -#Time-mean surface net radiation flux (SW and LW) -'Time-mean surface net radiation flux (SW and LW)' = { - table2Version = 172 ; - indicatorOfParameter = 149 ; - } #Mean short-wave heating rate 'Mean short-wave heating rate' = { table2Version = 172 ; diff --git a/definitions/grib1/localConcepts/ecmf/paramId.def b/definitions/grib1/localConcepts/ecmf/paramId.def index 0ea5b7ea3..f4dd85c70 100644 --- a/definitions/grib1/localConcepts/ecmf/paramId.def +++ b/definitions/grib1/localConcepts/ecmf/paramId.def @@ -15024,11 +15024,6 @@ table2Version = 172 ; indicatorOfParameter = 147 ; } -#Time-mean surface net radiation flux (SW and LW) -'172149' = { - table2Version = 172 ; - indicatorOfParameter = 149 ; - } #Mean short-wave heating rate '172153' = { table2Version = 172 ; diff --git a/definitions/grib1/localConcepts/ecmf/shortName.def b/definitions/grib1/localConcepts/ecmf/shortName.def index 4eb5e6f67..176da8fca 100644 --- a/definitions/grib1/localConcepts/ecmf/shortName.def +++ b/definitions/grib1/localConcepts/ecmf/shortName.def @@ -15024,11 +15024,6 @@ table2Version = 172 ; indicatorOfParameter = 147 ; } -#Time-mean surface net radiation flux (SW and LW) -'msnrf' = { - table2Version = 172 ; - indicatorOfParameter = 149 ; - } #Mean short-wave heating rate 'mswhr' = { table2Version = 172 ; diff --git a/definitions/grib1/localConcepts/ecmf/units.def b/definitions/grib1/localConcepts/ecmf/units.def index bc63e7cd7..dae3279fd 100644 --- a/definitions/grib1/localConcepts/ecmf/units.def +++ b/definitions/grib1/localConcepts/ecmf/units.def @@ -15024,11 +15024,6 @@ table2Version = 172 ; indicatorOfParameter = 147 ; } -#Time-mean surface net radiation flux (SW and LW) -'W m**-2' = { - table2Version = 172 ; - indicatorOfParameter = 149 ; - } #Mean short-wave heating rate 'K s**-1' = { table2Version = 172 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 9db74ef7c..182b8fe4e 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -3539,14 +3539,6 @@ parameterNumber = 46 ; typeOfFirstFixedSurface = 8 ; } -#Time-mean top net radiation flux (SW and LW) -'Time-mean top net radiation flux (SW and LW)' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } #Global irradiance on tilted surfaces 'Global irradiance on tilted surfaces' = { discipline = 0 ; @@ -3705,22 +3697,6 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Maximum total column integrated graupel (snow pellets) -'Maximum total column integrated graupel (snow pellets)' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 74 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 2 ; - } -#Minimum visibility -'Minimum visibility' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 0 ; - typeOfStatisticalProcessing = 3 ; - } #Geometric height of theta level above ground 'Geometric height of theta level above ground' = { discipline = 0 ; @@ -3845,26 +3821,6 @@ parameterNumber = 16 ; typeOfFirstFixedSurface = 1 ; } -#Time-maximum 2 metre relative humidity -'Time-maximum 2 metre relative humidity' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - } -#Time-minimum 2 metre relative humidity -'Time-minimum 2 metre relative humidity' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 3 ; - } #Surface roughness for heat 'Surface roughness for heat' = { discipline = 0 ; @@ -5127,6 +5083,22 @@ parameterNumber = 12 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean surface net radiation flux (SW and LW) +'Time-mean surface net radiation flux (SW and LW)' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 46 ; + typeOfFirstFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean top net radiation flux (SW and LW) +'Time-mean top net radiation flux (SW and LW)' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 46 ; + typeOfFirstFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean mean sea level pressure 'Time-mean mean sea level pressure' = { discipline = 0 ; @@ -5348,6 +5320,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum 2 metre relative humidity +'Time-maximum 2 metre relative humidity' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; + } #Time-maximum most-unstable CAPE 'Time-maximum most-unstable CAPE' = { discipline = 0 ; @@ -5358,6 +5340,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum total column vertically-integrated graupel (snow pellets) +'Time-maximum total column vertically-integrated graupel (snow pellets)' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture 'Time-minimum volumetric soil moisture' = { discipline = 2 ; @@ -5365,6 +5356,23 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum 2 metre relative humidity +'Time-minimum 2 metre relative humidity' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 3 ; + } +#Time-minimum visibility +'Time-minimum visibility' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 0 ; + typeOfStatisticalProcessing = 3 ; + } #Time-minimum most-unstable CAPE 'Time-minimum most-unstable CAPE' = { discipline = 0 ; @@ -11061,14 +11069,6 @@ parameterNumber = 40 ; typeOfStatisticalProcessing = 1 ; } -#Time-mean surface net radiation flux (SW and LW) -'Time-mean surface net radiation flux (SW and LW)' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } #Surface runoff 'Surface runoff' = { discipline = 2 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 670e477af..601455452 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -3539,14 +3539,6 @@ parameterNumber = 46 ; typeOfFirstFixedSurface = 8 ; } -#Time-mean top net radiation flux (SW and LW) -'231020' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } #Global irradiance on tilted surfaces '231021' = { discipline = 0 ; @@ -3705,22 +3697,6 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Maximum total column integrated graupel (snow pellets) -'231042' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 74 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 2 ; - } -#Minimum visibility -'231043' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 0 ; - typeOfStatisticalProcessing = 3 ; - } #Geometric height of theta level above ground '231044' = { discipline = 0 ; @@ -3845,26 +3821,6 @@ parameterNumber = 16 ; typeOfFirstFixedSurface = 1 ; } -#Time-maximum 2 metre relative humidity -'231061' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - } -#Time-minimum 2 metre relative humidity -'231062' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 3 ; - } #Surface roughness for heat '231063' = { discipline = 0 ; @@ -5127,6 +5083,22 @@ parameterNumber = 12 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean surface net radiation flux (SW and LW) +'235149' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 46 ; + typeOfFirstFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean top net radiation flux (SW and LW) +'235150' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 46 ; + typeOfFirstFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean mean sea level pressure '235151' = { discipline = 0 ; @@ -5348,6 +5320,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum 2 metre relative humidity +'237092' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; + } #Time-maximum most-unstable CAPE '237117' = { discipline = 0 ; @@ -5358,6 +5340,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum total column vertically-integrated graupel (snow pellets) +'237120' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture '238077' = { discipline = 2 ; @@ -5365,6 +5356,23 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum 2 metre relative humidity +'238092' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 3 ; + } +#Time-minimum visibility +'238105' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 0 ; + typeOfStatisticalProcessing = 3 ; + } #Time-minimum most-unstable CAPE '238117' = { discipline = 0 ; @@ -11061,14 +11069,6 @@ parameterNumber = 40 ; typeOfStatisticalProcessing = 1 ; } -#Time-mean surface net radiation flux (SW and LW) -'172149' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } #Surface runoff '174008' = { discipline = 2 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 81e6cd53a..1ae881b50 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -3539,14 +3539,6 @@ parameterNumber = 46 ; typeOfFirstFixedSurface = 8 ; } -#Time-mean top net radiation flux (SW and LW) -'mtnrf' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } #Global irradiance on tilted surfaces 'gits' = { discipline = 0 ; @@ -3705,22 +3697,6 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Maximum total column integrated graupel (snow pellets) -'maxtcg' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 74 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 2 ; - } -#Minimum visibility -'minvis' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 0 ; - typeOfStatisticalProcessing = 3 ; - } #Geometric height of theta level above ground 'hthg' = { discipline = 0 ; @@ -3845,26 +3821,6 @@ parameterNumber = 16 ; typeOfFirstFixedSurface = 1 ; } -#Time-maximum 2 metre relative humidity -'mx2r' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - } -#Time-minimum 2 metre relative humidity -'mn2r' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 3 ; - } #Surface roughness for heat 'srhe' = { discipline = 0 ; @@ -5127,6 +5083,22 @@ parameterNumber = 12 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean surface net radiation flux (SW and LW) +'avg_snrf' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 46 ; + typeOfFirstFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean top net radiation flux (SW and LW) +'avg_tnrf' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 46 ; + typeOfFirstFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean mean sea level pressure 'avg_msl' = { discipline = 0 ; @@ -5348,6 +5320,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum 2 metre relative humidity +'max_2r' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; + } #Time-maximum most-unstable CAPE 'max_mucape' = { discipline = 0 ; @@ -5358,6 +5340,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum total column vertically-integrated graupel (snow pellets) +'max_tcolg' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture 'min_vsw' = { discipline = 2 ; @@ -5365,6 +5356,23 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum 2 metre relative humidity +'min_2r' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 3 ; + } +#Time-minimum visibility +'min_vis' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 0 ; + typeOfStatisticalProcessing = 3 ; + } #Time-minimum most-unstable CAPE 'min_mucape' = { discipline = 0 ; @@ -11061,14 +11069,6 @@ parameterNumber = 40 ; typeOfStatisticalProcessing = 1 ; } -#Time-mean surface net radiation flux (SW and LW) -'msnrf' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } #Surface runoff 'sro' = { discipline = 2 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index b6ebdbf3f..a6cda2c83 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -3539,14 +3539,6 @@ parameterNumber = 46 ; typeOfFirstFixedSurface = 8 ; } -#Time-mean top net radiation flux (SW and LW) -'W m**-2' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 8 ; - typeOfStatisticalProcessing = 0 ; - } #Global irradiance on tilted surfaces 'W m**-2' = { discipline = 0 ; @@ -3705,22 +3697,6 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Maximum total column integrated graupel (snow pellets) -'kg m**-2' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 74 ; - typeOfFirstFixedSurface = 1 ; - typeOfSecondFixedSurface = 8 ; - typeOfStatisticalProcessing = 2 ; - } -#Minimum visibility -'m' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 0 ; - typeOfStatisticalProcessing = 3 ; - } #Geometric height of theta level above ground 'm' = { discipline = 0 ; @@ -3845,26 +3821,6 @@ parameterNumber = 16 ; typeOfFirstFixedSurface = 1 ; } -#Time-maximum 2 metre relative humidity -'%' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - } -#Time-minimum 2 metre relative humidity -'%' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 3 ; - } #Surface roughness for heat 'm' = { discipline = 0 ; @@ -5127,6 +5083,22 @@ parameterNumber = 12 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean surface net radiation flux (SW and LW) +'W m**-2' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 46 ; + typeOfFirstFixedSurface = 1 ; + typeOfStatisticalProcessing = 0 ; + } +#Time-mean top net radiation flux (SW and LW) +'W m**-2' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 46 ; + typeOfFirstFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean mean sea level pressure 'Pa' = { discipline = 0 ; @@ -5348,6 +5320,16 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum 2 metre relative humidity +'%' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; + } #Time-maximum most-unstable CAPE 'J kg**-1' = { discipline = 0 ; @@ -5358,6 +5340,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum total column vertically-integrated graupel (snow pellets) +'kg m**-2' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture 'm**3 m**-3' = { discipline = 2 ; @@ -5365,6 +5356,23 @@ parameterNumber = 25 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum 2 metre relative humidity +'%' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 3 ; + } +#Time-minimum visibility +'m' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 0 ; + typeOfStatisticalProcessing = 3 ; + } #Time-minimum most-unstable CAPE 'J kg**-1' = { discipline = 0 ; @@ -11061,14 +11069,6 @@ parameterNumber = 40 ; typeOfStatisticalProcessing = 1 ; } -#Time-mean surface net radiation flux (SW and LW) -'W m**-2' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 46 ; - typeOfFirstFixedSurface = 1 ; - typeOfStatisticalProcessing = 0 ; - } #Surface runoff 'kg m**-2' = { discipline = 2 ; From 11a4563c8b50d50e6b1083aff31f5e3d337aba97 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 12 Aug 2024 11:54:59 +0100 Subject: [PATCH 151/277] ECC-1899: Fix the Fortran call --- fortran/eccodes_f90_tail.f90 | 6 +++--- fortran/grib_f90_tail.f90 | 6 +++--- fortran/grib_fortran.cc | 5 +++-- fortran/grib_fortran_prototypes.h | 2 +- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/fortran/eccodes_f90_tail.f90 b/fortran/eccodes_f90_tail.f90 index 05d59beb5..4ecf52d03 100644 --- a/fortran/eccodes_f90_tail.f90 +++ b/fortran/eccodes_f90_tail.f90 @@ -2766,9 +2766,9 @@ subroutine codes_skip_read_only(iterid, status) end subroutine codes_skip_read_only !> Set debug mode - subroutine codes_set_debug(mode) - integer(kind=kindOfInt), intent(in) :: mode - call grib_set_debug(mode) + subroutine codes_set_debug(dmode) + integer(kind=kindOfInt), intent(in) :: dmode + call grib_set_debug(dmode) end subroutine codes_set_debug !> Set the definition path diff --git a/fortran/grib_f90_tail.f90 b/fortran/grib_f90_tail.f90 index be1a574ff..790ae3ace 100644 --- a/fortran/grib_f90_tail.f90 +++ b/fortran/grib_f90_tail.f90 @@ -3178,9 +3178,9 @@ subroutine grib_skip_read_only(iterid, status) end subroutine grib_skip_read_only !> Set debug mode - subroutine grib_set_debug(mode) - integer(kind=kindOfInt), intent(in) :: mode - call grib_f_set_debug(mode) + subroutine grib_set_debug(dmode) + integer(kind=kindOfInt), intent(in) :: dmode + call grib_f_set_debug(dmode) end subroutine grib_set_debug diff --git a/fortran/grib_fortran.cc b/fortran/grib_fortran.cc index 1539bc9db..84fe48997 100644 --- a/fortran/grib_fortran.cc +++ b/fortran/grib_fortran.cc @@ -2893,10 +2893,11 @@ int codes_f_bufr_multi_element_constant_arrays_off_(void) } /*****************************************************************************/ -void grib_f_set_debug_(int mode) +void grib_f_set_debug_(int* dmode) { + Assert(dmode); grib_context* c = grib_context_get_default(); - grib_context_set_debug(c, mode); + grib_context_set_debug(c, *dmode); } /*****************************************************************************/ diff --git a/fortran/grib_fortran_prototypes.h b/fortran/grib_fortran_prototypes.h index 7af6b2101..499ed6237 100644 --- a/fortran/grib_fortran_prototypes.h +++ b/fortran/grib_fortran_prototypes.h @@ -309,7 +309,7 @@ int grib_f_multi_append__(int *ingid, int *sec, int *mgid); int codes_f_bufr_keys_iterator_new_(int* gid,int* iterid); int grib_f_read_file_(int* fid, void* buffer, size_t* nbytes); int codes_f_bufr_keys_iterator_delete_(int* iterid); -void grib_f_set_debug_(int mode); +void grib_f_set_debug_(int* mode); int grib_f_set_definitions_path_(char* path, int len); int grib_f_read_any_from_file_(int* fid, void* buffer, size_t* nbytes); int any_f_new_from_file_(int* fid, int* gid); From 9c40c63f46047b574f6a300a299e5cb9791be1e9 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 12 Aug 2024 09:49:26 +0000 Subject: [PATCH 152/277] ECC-1895: GRIB2: Time processed equivalents for total column integrated graupel --- .../grib2/localConcepts/uerra/name.def | 9 ++++++ .../grib2/localConcepts/uerra/paramId.def | 9 ++++++ .../grib2/localConcepts/uerra/shortName.def | 9 ++++++ .../grib2/localConcepts/uerra/units.def | 9 ++++++ definitions/grib2/name.def | 31 +++++++++++++++++-- definitions/grib2/paramId.def | 29 ++++++++++++++++- definitions/grib2/shortName.def | 29 ++++++++++++++++- definitions/grib2/units.def | 29 ++++++++++++++++- 8 files changed, 149 insertions(+), 5 deletions(-) diff --git a/definitions/grib2/localConcepts/uerra/name.def b/definitions/grib2/localConcepts/uerra/name.def index da1a828b1..01f895fb5 100644 --- a/definitions/grib2/localConcepts/uerra/name.def +++ b/definitions/grib2/localConcepts/uerra/name.def @@ -367,6 +367,15 @@ scaleFactorOfFirstFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Total column vertically-integrated graupel (snow pellets) +'Total column vertically-integrated graupel (snow pellets)' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Precipitation type 'Precipitation type' = { discipline = 0 ; diff --git a/definitions/grib2/localConcepts/uerra/paramId.def b/definitions/grib2/localConcepts/uerra/paramId.def index 729478df6..aeed988df 100644 --- a/definitions/grib2/localConcepts/uerra/paramId.def +++ b/definitions/grib2/localConcepts/uerra/paramId.def @@ -367,6 +367,15 @@ scaleFactorOfFirstFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Total column vertically-integrated graupel (snow pellets) +'260001' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Precipitation type '260015' = { discipline = 0 ; diff --git a/definitions/grib2/localConcepts/uerra/shortName.def b/definitions/grib2/localConcepts/uerra/shortName.def index b16b48100..5a58eed8b 100644 --- a/definitions/grib2/localConcepts/uerra/shortName.def +++ b/definitions/grib2/localConcepts/uerra/shortName.def @@ -367,6 +367,15 @@ scaleFactorOfFirstFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Total column vertically-integrated graupel (snow pellets) +'tcolg' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Precipitation type 'ptype' = { discipline = 0 ; diff --git a/definitions/grib2/localConcepts/uerra/units.def b/definitions/grib2/localConcepts/uerra/units.def index f86099f59..e7a5e35d0 100644 --- a/definitions/grib2/localConcepts/uerra/units.def +++ b/definitions/grib2/localConcepts/uerra/units.def @@ -367,6 +367,15 @@ scaleFactorOfFirstFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Total column vertically-integrated graupel (snow pellets) +'kg m**-2' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Precipitation type '(Code table 4.201)' = { discipline = 0 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 182b8fe4e..501d48d81 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -5008,6 +5008,15 @@ scaleFactorOfSecondFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean total column vertically-integrated graupel (snow pellets) +'Time-mean total column vertically-integrated graupel (snow pellets)' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'Time-mean geopotential' = { discipline = 0 ; @@ -5383,6 +5392,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum total column vertically-integrated graupel (snow pellets) +'Time-minimum total column vertically-integrated graupel (snow pellets)' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture 'Time-standard-deviation volumetric soil moisture' = { discipline = 2 ; @@ -5400,6 +5418,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 6 ; } +#Time-standard-deviation total column vertically-integrated graupel (snow pellets) +'Time-standard-deviation total column vertically-integrated graupel (snow pellets)' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 6 ; + } #Cross sectional area of flow in channel 'Cross sectional area of flow in channel' = { discipline = 1 ; @@ -5646,8 +5673,8 @@ gridDefinitionTemplateNumber = 101 ; numberOfGridInReference = 5 ; } -#Total column graupel -'Total column graupel' = { +#Total column vertically-integrated graupel (snow pellets) +'Total column vertically-integrated graupel (snow pellets)' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 74 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 601455452..8a9350a1d 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -5008,6 +5008,15 @@ scaleFactorOfSecondFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean total column vertically-integrated graupel (snow pellets) +'235120' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential '235129' = { discipline = 0 ; @@ -5383,6 +5392,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum total column vertically-integrated graupel (snow pellets) +'238120' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture '239077' = { discipline = 2 ; @@ -5400,6 +5418,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 6 ; } +#Time-standard-deviation total column vertically-integrated graupel (snow pellets) +'239120' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 6 ; + } #Cross sectional area of flow in channel '240011' = { discipline = 1 ; @@ -5646,7 +5673,7 @@ gridDefinitionTemplateNumber = 101 ; numberOfGridInReference = 5 ; } -#Total column graupel +#Total column vertically-integrated graupel (snow pellets) '260001' = { discipline = 0 ; parameterCategory = 1 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 1ae881b50..ff991e8c6 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -5008,6 +5008,15 @@ scaleFactorOfSecondFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean total column vertically-integrated graupel (snow pellets) +'avg_tcolg' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'avg_z' = { discipline = 0 ; @@ -5383,6 +5392,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum total column vertically-integrated graupel (snow pellets) +'min_tcolg' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture 'std_vsw' = { discipline = 2 ; @@ -5400,6 +5418,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 6 ; } +#Time-standard-deviation total column vertically-integrated graupel (snow pellets) +'std_tcolg' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 6 ; + } #Cross sectional area of flow in channel 'chcross' = { discipline = 1 ; @@ -5646,7 +5673,7 @@ gridDefinitionTemplateNumber = 101 ; numberOfGridInReference = 5 ; } -#Total column graupel +#Total column vertically-integrated graupel (snow pellets) 'tcolg' = { discipline = 0 ; parameterCategory = 1 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index a6cda2c83..19fd21f3e 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -5008,6 +5008,15 @@ scaleFactorOfSecondFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean total column vertically-integrated graupel (snow pellets) +'kg m**-2' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 0 ; + } #Time-mean geopotential 'm**2 s**-2' = { discipline = 0 ; @@ -5383,6 +5392,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum total column vertically-integrated graupel (snow pellets) +'kg m**-2' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture 'm**3 m**-3' = { discipline = 2 ; @@ -5400,6 +5418,15 @@ scaleFactorOfFirstFixedSurface = missing() ; typeOfStatisticalProcessing = 6 ; } +#Time-standard-deviation total column vertically-integrated graupel (snow pellets) +'kg m**-2' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 74 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + typeOfStatisticalProcessing = 6 ; + } #Cross sectional area of flow in channel 'm**2' = { discipline = 1 ; @@ -5646,7 +5673,7 @@ gridDefinitionTemplateNumber = 101 ; numberOfGridInReference = 5 ; } -#Total column graupel +#Total column vertically-integrated graupel (snow pellets) 'kg m**-2' = { discipline = 0 ; parameterCategory = 1 ; From 9b203f1184c7a939eee80846c822f1ec149b25da Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 12 Aug 2024 11:12:46 +0000 Subject: [PATCH 153/277] Change assertion into proper error --- .../grib_accessor_class_data_complex_packing.cc | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/accessor/grib_accessor_class_data_complex_packing.cc b/src/accessor/grib_accessor_class_data_complex_packing.cc index 81e402303..d3cf71a34 100644 --- a/src/accessor/grib_accessor_class_data_complex_packing.cc +++ b/src/accessor/grib_accessor_class_data_complex_packing.cc @@ -752,8 +752,15 @@ static int unpack_real(grib_accessor* a, T* val, size_t* len) mmax++; } - Assert(*len >= i); - *len = i; + //Assert(*len >= i); + if (*len < i) { + grib_context_log(a->context, GRIB_LOG_ERROR, "%s::%s: Invalid values *len=%zu and i=%zu.", + cclass_name, __func__, *len, i); + grib_context_log(a->context, GRIB_LOG_ERROR, "Make sure your array is large enough."); + ret = GRIB_ARRAY_TOO_SMALL; + } else { + *len = i; + } grib_context_free(a->context, scals); From 76e625675e28f965ffae90acbd502c8294e57135 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 12 Aug 2024 12:20:11 +0000 Subject: [PATCH 154/277] ECC-1882: cfVarNames fixed --- definitions/grib2/cfVarName.def | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index 892a27e9b..9b7627d2b 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -187,7 +187,7 @@ scaleFactorOfFirstFixedSurface = 0 ; } #Time-maximum 2 metre relative humidity -'mx2r' = { +'max_2r' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 1 ; @@ -197,7 +197,7 @@ typeOfStatisticalProcessing = 2 ; } #Time-minimum 2 metre relative humidity -'mn2r' = { +'min_2r' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 1 ; From de8e34b00a799ae5acbf30ed80156806dff19505 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 12 Aug 2024 15:04:15 +0000 Subject: [PATCH 155/277] ECC-1880: GRIB2: Additions & modifications of instantaneous parameters for generalised time processing approach (part 1) --- .../localConcepts/ecmf/cfVarName.legacy.def | 42 +++ .../grib2/localConcepts/ecmf/name.legacy.def | 42 +++ .../localConcepts/ecmf/paramId.legacy.def | 42 +++ .../localConcepts/ecmf/shortName.legacy.def | 42 +++ .../grib2/localConcepts/ecmf/units.legacy.def | 42 +++ definitions/grib2/name.def | 348 ++++++++++++++++++ definitions/grib2/paramId.def | 348 ++++++++++++++++++ definitions/grib2/shortName.def | 348 ++++++++++++++++++ definitions/grib2/units.def | 348 ++++++++++++++++++ 9 files changed, 1602 insertions(+) create mode 100644 definitions/grib2/localConcepts/ecmf/cfVarName.legacy.def diff --git a/definitions/grib2/localConcepts/ecmf/cfVarName.legacy.def b/definitions/grib2/localConcepts/ecmf/cfVarName.legacy.def new file mode 100644 index 000000000..5f471d93c --- /dev/null +++ b/definitions/grib2/localConcepts/ecmf/cfVarName.legacy.def @@ -0,0 +1,42 @@ +#Magnitude of turbulent surface stress +'p48.172' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 48 ; +} +#Mean large-scale precipitation fraction +'mlspfr' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 50 ; +} +#Boundary layer dissipation +'bldrate' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 145 ; +} +#Mean sunshine duration rate +'msdr' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 189 ; +} +#Longitudinal component of gravity wave stress +'p195.172' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 195 ; +} +#Meridional component of gravity wave stress +'p196.172' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 196 ; +} +#Gravity wave dissipation +'gwdrate' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 197 ; +} diff --git a/definitions/grib2/localConcepts/ecmf/name.legacy.def b/definitions/grib2/localConcepts/ecmf/name.legacy.def index 28b2586ef..7d8d36d0f 100644 --- a/definitions/grib2/localConcepts/ecmf/name.legacy.def +++ b/definitions/grib2/localConcepts/ecmf/name.legacy.def @@ -1777,3 +1777,45 @@ parameterCategory = 140 ; parameterNumber = 254 ; } +#Magnitude of turbulent surface stress +'Magnitude of turbulent surface stress' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 48 ; +} +#Mean large-scale precipitation fraction +'Mean large-scale precipitation fraction' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 50 ; +} +#Boundary layer dissipation +'Boundary layer dissipation' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 145 ; +} +#Mean sunshine duration rate +'Mean sunshine duration rate' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 189 ; +} +#Longitudinal component of gravity wave stress +'Longitudinal component of gravity wave stress' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 195 ; +} +#Meridional component of gravity wave stress +'Meridional component of gravity wave stress' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 196 ; +} +#Gravity wave dissipation +'Gravity wave dissipation' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 197 ; +} diff --git a/definitions/grib2/localConcepts/ecmf/paramId.legacy.def b/definitions/grib2/localConcepts/ecmf/paramId.legacy.def index df813254f..4d746c798 100644 --- a/definitions/grib2/localConcepts/ecmf/paramId.legacy.def +++ b/definitions/grib2/localConcepts/ecmf/paramId.legacy.def @@ -1777,3 +1777,45 @@ parameterCategory = 140 ; parameterNumber = 254 ; } +#Magnitude of turbulent surface stress +'172048' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 48 ; +} +#Mean large-scale precipitation fraction +'172050' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 50 ; +} +#Boundary layer dissipation +'172145' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 145 ; +} +#Mean sunshine duration rate +'172189' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 189 ; +} +#Longitudinal component of gravity wave stress +'172195' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 195 ; +} +#Meridional component of gravity wave stress +'172196' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 196 ; +} +#Gravity wave dissipation +'172197' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 197 ; +} diff --git a/definitions/grib2/localConcepts/ecmf/shortName.legacy.def b/definitions/grib2/localConcepts/ecmf/shortName.legacy.def index 498f6a3c1..c954c06c9 100644 --- a/definitions/grib2/localConcepts/ecmf/shortName.legacy.def +++ b/definitions/grib2/localConcepts/ecmf/shortName.legacy.def @@ -1777,3 +1777,45 @@ parameterCategory = 140 ; parameterNumber = 254 ; } +#Magnitude of turbulent surface stress +'~' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 48 ; +} +#Mean large-scale precipitation fraction +'mlspfr' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 50 ; +} +#Boundary layer dissipation +'bldrate' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 145 ; +} +#Mean sunshine duration rate +'msdr' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 189 ; +} +#Longitudinal component of gravity wave stress +'~' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 195 ; +} +#Meridional component of gravity wave stress +'~' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 196 ; +} +#Gravity wave dissipation +'gwdrate' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 197 ; +} diff --git a/definitions/grib2/localConcepts/ecmf/units.legacy.def b/definitions/grib2/localConcepts/ecmf/units.legacy.def index d7675c4d6..953b96cc0 100644 --- a/definitions/grib2/localConcepts/ecmf/units.legacy.def +++ b/definitions/grib2/localConcepts/ecmf/units.legacy.def @@ -1777,3 +1777,45 @@ parameterCategory = 140 ; parameterNumber = 254 ; } +#Magnitude of turbulent surface stress +'N m**-2' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 48 ; +} +#Mean large-scale precipitation fraction +'~' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 50 ; +} +#Boundary layer dissipation +'W m**-2' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 145 ; +} +#Mean sunshine duration rate +'s s**-1' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 189 ; +} +#Longitudinal component of gravity wave stress +'N m**-2' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 195 ; +} +#Meridional component of gravity wave stress +'N m**-2' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 196 ; +} +#Gravity wave dissipation +'W m**-2' = { + discipline = 192 ; + parameterCategory = 172 ; + parameterNumber = 197 ; +} diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 501d48d81..c5b34813d 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -1345,6 +1345,159 @@ scaledValueOfSecondFixedSurface = 300 ; scaleFactorOfSecondFixedSurface = 0 ; } +#Total column vertically-integrated divergence of water geopotential flux +'Total column vertically-integrated divergence of water geopotential flux' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 42 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward enthalpy flux +'Total column vertically-integrated eastward enthalpy flux' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 5 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward enthalpy flux +'Total column vertically-integrated northward enthalpy flux' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of enthalpy flux +'Total column vertically-integrated divergence of enthalpy flux' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 13 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of water enthalpy flux +'Total column vertically-integrated divergence of water enthalpy flux' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of water vapour flux +'Total column vertically-integrated divergence of water vapour flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 160 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of cloud liquid water flux +'Total column vertically-integrated divergence of cloud liquid water flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 161 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of cloud ice water flux +'Total column vertically-integrated divergence of cloud ice water flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 162 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of rain flux +'Total column vertically-integrated divergence of rain flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 163 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of snow flux +'Total column vertically-integrated divergence of snow flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 164 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward cloud liquid water flux +'Total column vertically-integrated eastward cloud liquid water flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 152 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward cloud liquid water flux +'Total column vertically-integrated northward cloud liquid water flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 153 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward cloud ice water flux +'Total column vertically-integrated eastward cloud ice water flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 154 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward cloud ice water flux +'Total column vertically-integrated northward cloud ice water flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 155 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward rain flux +'Total column vertically-integrated eastward rain flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 156 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward rain flux +'Total column vertically-integrated northward rain flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 157 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward snow flux +'Total column vertically-integrated eastward snow flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 158 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward snow flux +'Total column vertically-integrated northward snow flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 159 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated net source of ozone +'Total column vertically-integrated net source of ozone' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 81 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } #Total column vertically-integrated water enthalpy 'Total column vertically-integrated water enthalpy' = { discipline = 0 ; @@ -1353,6 +1506,90 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Temperature tendency due to short-wave radiation +'Temperature tendency due to short-wave radiation' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + } +#Temperature tendency due to long-wave radiation +'Temperature tendency due to long-wave radiation' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 23 ; + } +#Temperature tendency due to short-wave radiation, clear sky +'Temperature tendency due to short-wave radiation, clear sky' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 24 ; + } +#Temperature tendency due to long-wave radiation, clear sky +'Temperature tendency due to long-wave radiation, clear sky' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + } +#Updraught mass flux +'Updraught mass flux' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 27 ; + } +#Downdraught mass flux +'Downdraught mass flux' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 28 ; + } +#Updraught detrainment rate +'Updraught detrainment rate' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 29 ; + } +#Downdraught detrainment rate +'Downdraught detrainment rate' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 30 ; + } +#Total precipitation flux +'Total precipitation flux' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 52 ; + } +#Turbulent diffusion coefficient for heat +'Turbulent diffusion coefficient for heat' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 20 ; + } +#Temperature tendency due to parametrisations +'Temperature tendency due to parametrisations' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 26 ; + } +#Specific humidity tendency due to parametrisations +'Specific humidity tendency due to parametrisations' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 108 ; + } +#Eastward wind tendency due to parametrisations +'Eastward wind tendency due to parametrisations' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 39 ; + } +#Northward wind tendency due to parametrisations +'Northward wind tendency due to parametrisations' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 40 ; + } #2 metre specific humidity '2 metre specific humidity' = { discipline = 0 ; @@ -3835,6 +4072,13 @@ parameterNumber = 48 ; typeOfFirstFixedSurface = 1 ; } +#Snow evaporation rate water equivalent +'Snow evaporation rate water equivalent' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 148 ; + typeOfFirstFixedSurface = 1 ; + } #Burned area 'Burned area' = { discipline = 2 ; @@ -7604,6 +7848,110 @@ scaledValueOfSecondFixedSurface = 1 ; scaleFactorOfSecondFixedSurface = 0 ; } +#Surface photosynthetically active radiation flux, clear sky +'Surface photosynthetically active radiation flux, clear sky' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 60 ; + typeOfFirstFixedSurface = 1 ; + } +#Surface direct normal short-wave radiation flux +'Surface direct normal short-wave radiation flux' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 54 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 255 ; + } +#Instantaneous magnitude of turbulent surface stress +'Instantaneous magnitude of turbulent surface stress' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 58 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous boundary layer dissipation +'Instantaneous boundary layer dissipation' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 20 ; + } +#Top net short-wave radiation flux +'Top net short-wave radiation flux' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 9 ; + typeOfFirstFixedSurface = 8 ; + } +#Top net long-wave radiation flux +'Top net long-wave radiation flux' = { + discipline = 0 ; + parameterCategory = 5 ; + parameterNumber = 5 ; + typeOfFirstFixedSurface = 8 ; + } +#Instantaneous gravity wave dissipation +'Instantaneous gravity wave dissipation' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 23 ; + } +#Top net short-wave radiation flux, clear sky +'Top net short-wave radiation flux, clear sky' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 11 ; + typeOfFirstFixedSurface = 8 ; + } +#Top net long-wave radiation flux, clear sky +'Top net long-wave radiation flux, clear sky' = { + discipline = 0 ; + parameterCategory = 5 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 8 ; + } +#Top downward short-wave radiation flux +'Top downward short-wave radiation flux' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 7 ; + typeOfFirstFixedSurface = 8 ; + } +#Surface direct short-wave radiation flux, clear sky +'Surface direct short-wave radiation flux, clear sky' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 61 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous eastward turbulent surface stress due to orographic form drag +'Instantaneous eastward turbulent surface stress due to orographic form drag' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 64 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous northward turbulent surface stress due to orographic form drag +'Instantaneous northward turbulent surface stress due to orographic form drag' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 65 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous eastward turbulent surface stress due to surface roughness +'Instantaneous eastward turbulent surface stress due to surface roughness' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 66 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous northward turbulent surface stress due to surface roughness +'Instantaneous northward turbulent surface stress due to surface roughness' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 67 ; + typeOfFirstFixedSurface = 1 ; + } #Universal thermal climate index 'Universal thermal climate index' = { discipline = 20 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 8a9350a1d..5f20eaa1a 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -1345,6 +1345,159 @@ scaledValueOfSecondFixedSurface = 300 ; scaleFactorOfSecondFixedSurface = 0 ; } +#Total column vertically-integrated divergence of water geopotential flux +'162031' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 42 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward enthalpy flux +'162032' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 5 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward enthalpy flux +'162033' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of enthalpy flux +'162034' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 13 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of water enthalpy flux +'162035' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of water vapour flux +'162036' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 160 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of cloud liquid water flux +'162037' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 161 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of cloud ice water flux +'162038' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 162 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of rain flux +'162039' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 163 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of snow flux +'162040' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 164 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward cloud liquid water flux +'162041' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 152 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward cloud liquid water flux +'162042' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 153 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward cloud ice water flux +'162043' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 154 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward cloud ice water flux +'162044' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 155 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward rain flux +'162046' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 156 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward rain flux +'162047' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 157 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward snow flux +'162048' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 158 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward snow flux +'162049' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 159 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated net source of ozone +'162050' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 81 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } #Total column vertically-integrated water enthalpy '162093' = { discipline = 0 ; @@ -1353,6 +1506,90 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Temperature tendency due to short-wave radiation +'162150' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + } +#Temperature tendency due to long-wave radiation +'162151' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 23 ; + } +#Temperature tendency due to short-wave radiation, clear sky +'162152' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 24 ; + } +#Temperature tendency due to long-wave radiation, clear sky +'162153' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + } +#Updraught mass flux +'162154' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 27 ; + } +#Downdraught mass flux +'162155' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 28 ; + } +#Updraught detrainment rate +'162156' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 29 ; + } +#Downdraught detrainment rate +'162157' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 30 ; + } +#Total precipitation flux +'162158' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 52 ; + } +#Turbulent diffusion coefficient for heat +'162159' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 20 ; + } +#Temperature tendency due to parametrisations +'162160' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 26 ; + } +#Specific humidity tendency due to parametrisations +'162161' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 108 ; + } +#Eastward wind tendency due to parametrisations +'162162' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 39 ; + } +#Northward wind tendency due to parametrisations +'162163' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 40 ; + } #2 metre specific humidity '174096' = { discipline = 0 ; @@ -3835,6 +4072,13 @@ parameterNumber = 48 ; typeOfFirstFixedSurface = 1 ; } +#Snow evaporation rate water equivalent +'231065' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 148 ; + typeOfFirstFixedSurface = 1 ; + } #Burned area '232000' = { discipline = 2 ; @@ -7604,6 +7848,110 @@ scaledValueOfSecondFixedSurface = 1 ; scaleFactorOfSecondFixedSurface = 0 ; } +#Surface photosynthetically active radiation flux, clear sky +'260667' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 60 ; + typeOfFirstFixedSurface = 1 ; + } +#Surface direct normal short-wave radiation flux +'260668' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 54 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 255 ; + } +#Instantaneous magnitude of turbulent surface stress +'260669' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 58 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous boundary layer dissipation +'260670' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 20 ; + } +#Top net short-wave radiation flux +'260671' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 9 ; + typeOfFirstFixedSurface = 8 ; + } +#Top net long-wave radiation flux +'260672' = { + discipline = 0 ; + parameterCategory = 5 ; + parameterNumber = 5 ; + typeOfFirstFixedSurface = 8 ; + } +#Instantaneous gravity wave dissipation +'260673' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 23 ; + } +#Top net short-wave radiation flux, clear sky +'260674' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 11 ; + typeOfFirstFixedSurface = 8 ; + } +#Top net long-wave radiation flux, clear sky +'260675' = { + discipline = 0 ; + parameterCategory = 5 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 8 ; + } +#Top downward short-wave radiation flux +'260676' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 7 ; + typeOfFirstFixedSurface = 8 ; + } +#Surface direct short-wave radiation flux, clear sky +'260677' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 61 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous eastward turbulent surface stress due to orographic form drag +'260678' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 64 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous northward turbulent surface stress due to orographic form drag +'260679' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 65 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous eastward turbulent surface stress due to surface roughness +'260680' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 66 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous northward turbulent surface stress due to surface roughness +'260681' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 67 ; + typeOfFirstFixedSurface = 1 ; + } #Universal thermal climate index '261001' = { discipline = 20 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index ff991e8c6..7364f5e19 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -1345,6 +1345,159 @@ scaledValueOfSecondFixedSurface = 300 ; scaleFactorOfSecondFixedSurface = 0 ; } +#Total column vertically-integrated divergence of water geopotential flux +'viwgd' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 42 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward enthalpy flux +'viee' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 5 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward enthalpy flux +'vien' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of enthalpy flux +'vied' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 13 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of water enthalpy flux +'viwed' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of water vapour flux +'viwvd' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 160 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of cloud liquid water flux +'viclwd' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 161 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of cloud ice water flux +'viciwd' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 162 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of rain flux +'vird' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 163 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of snow flux +'visd' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 164 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward cloud liquid water flux +'viclwe' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 152 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward cloud liquid water flux +'viclwn' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 153 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward cloud ice water flux +'viciwe' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 154 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward cloud ice water flux +'viciwn' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 155 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward rain flux +'vire' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 156 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward rain flux +'virn' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 157 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward snow flux +'vise' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 158 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward snow flux +'visn' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 159 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated net source of ozone +'vions' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 81 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } #Total column vertically-integrated water enthalpy 'viwe' = { discipline = 0 ; @@ -1353,6 +1506,90 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Temperature tendency due to short-wave radiation +'ttswr' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + } +#Temperature tendency due to long-wave radiation +'ttlwr' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 23 ; + } +#Temperature tendency due to short-wave radiation, clear sky +'ttswrcs' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 24 ; + } +#Temperature tendency due to long-wave radiation, clear sky +'ttlwrcs' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + } +#Updraught mass flux +'umf' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 27 ; + } +#Downdraught mass flux +'dmf' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 28 ; + } +#Updraught detrainment rate +'udr' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 29 ; + } +#Downdraught detrainment rate +'ddr' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 30 ; + } +#Total precipitation flux +'tpf' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 52 ; + } +#Turbulent diffusion coefficient for heat +'tdch' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 20 ; + } +#Temperature tendency due to parametrisations +'ttpm' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 26 ; + } +#Specific humidity tendency due to parametrisations +'qtpm' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 108 ; + } +#Eastward wind tendency due to parametrisations +'utpm' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 39 ; + } +#Northward wind tendency due to parametrisations +'vtpm' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 40 ; + } #2 metre specific humidity '2sh' = { discipline = 0 ; @@ -3835,6 +4072,13 @@ parameterNumber = 48 ; typeOfFirstFixedSurface = 1 ; } +#Snow evaporation rate water equivalent +'esrwe' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 148 ; + typeOfFirstFixedSurface = 1 ; + } #Burned area 'fba' = { discipline = 2 ; @@ -7604,6 +7848,110 @@ scaledValueOfSecondFixedSurface = 1 ; scaleFactorOfSecondFixedSurface = 0 ; } +#Surface photosynthetically active radiation flux, clear sky +'parcsf' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 60 ; + typeOfFirstFixedSurface = 1 ; + } +#Surface direct normal short-wave radiation flux +'sdirnswrf' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 54 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 255 ; + } +#Instantaneous magnitude of turbulent surface stress +'imagss' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 58 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous boundary layer dissipation +'ibld' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 20 ; + } +#Top net short-wave radiation flux +'tnswrf' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 9 ; + typeOfFirstFixedSurface = 8 ; + } +#Top net long-wave radiation flux +'tnlwrf' = { + discipline = 0 ; + parameterCategory = 5 ; + parameterNumber = 5 ; + typeOfFirstFixedSurface = 8 ; + } +#Instantaneous gravity wave dissipation +'igwd' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 23 ; + } +#Top net short-wave radiation flux, clear sky +'tnswrfcs' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 11 ; + typeOfFirstFixedSurface = 8 ; + } +#Top net long-wave radiation flux, clear sky +'tnlwrcs' = { + discipline = 0 ; + parameterCategory = 5 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 8 ; + } +#Top downward short-wave radiation flux +'tdswrf' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 7 ; + typeOfFirstFixedSurface = 8 ; + } +#Surface direct short-wave radiation flux, clear sky +'sdirswrfcs' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 61 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous eastward turbulent surface stress due to orographic form drag +'ietssofd' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 64 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous northward turbulent surface stress due to orographic form drag +'intssofd' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 65 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous eastward turbulent surface stress due to surface roughness +'ietsssr' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 66 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous northward turbulent surface stress due to surface roughness +'intsssr' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 67 ; + typeOfFirstFixedSurface = 1 ; + } #Universal thermal climate index 'utci' = { discipline = 20 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index 19fd21f3e..48f69386d 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -1345,6 +1345,159 @@ scaledValueOfSecondFixedSurface = 300 ; scaleFactorOfSecondFixedSurface = 0 ; } +#Total column vertically-integrated divergence of water geopotential flux +'W m**-2' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 42 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward enthalpy flux +'W m**-1' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 5 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward enthalpy flux +'W m**-1' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of enthalpy flux +'W m**-2' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 13 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of water enthalpy flux +'W m**-2' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 18 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of water vapour flux +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 160 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of cloud liquid water flux +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 161 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of cloud ice water flux +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 162 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of rain flux +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 163 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated divergence of snow flux +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 164 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward cloud liquid water flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 152 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward cloud liquid water flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 153 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward cloud ice water flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 154 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward cloud ice water flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 155 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward rain flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 156 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward rain flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 157 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated eastward snow flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 158 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated northward snow flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 159 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Total column vertically-integrated net source of ozone +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 81 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } #Total column vertically-integrated water enthalpy 'J m**-2' = { discipline = 0 ; @@ -1353,6 +1506,90 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Temperature tendency due to short-wave radiation +'K s**-1' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 22 ; + } +#Temperature tendency due to long-wave radiation +'K s**-1' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 23 ; + } +#Temperature tendency due to short-wave radiation, clear sky +'K s**-1' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 24 ; + } +#Temperature tendency due to long-wave radiation, clear sky +'K s**-1' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 25 ; + } +#Updraught mass flux +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 27 ; + } +#Downdraught mass flux +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 28 ; + } +#Updraught detrainment rate +'kg m**-3 s**-1' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 29 ; + } +#Downdraught detrainment rate +'kg m**-3 s**-1' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 30 ; + } +#Total precipitation flux +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 52 ; + } +#Turbulent diffusion coefficient for heat +'m**2 s**-1' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 20 ; + } +#Temperature tendency due to parametrisations +'K s**-1' = { + discipline = 0 ; + parameterCategory = 0 ; + parameterNumber = 26 ; + } +#Specific humidity tendency due to parametrisations +'kg kg**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 108 ; + } +#Eastward wind tendency due to parametrisations +'m s**-2' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 39 ; + } +#Northward wind tendency due to parametrisations +'m s**-2' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 40 ; + } #2 metre specific humidity 'kg kg**-1' = { discipline = 0 ; @@ -3835,6 +4072,13 @@ parameterNumber = 48 ; typeOfFirstFixedSurface = 1 ; } +#Snow evaporation rate water equivalent +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 148 ; + typeOfFirstFixedSurface = 1 ; + } #Burned area '%' = { discipline = 2 ; @@ -7604,6 +7848,110 @@ scaledValueOfSecondFixedSurface = 1 ; scaleFactorOfSecondFixedSurface = 0 ; } +#Surface photosynthetically active radiation flux, clear sky +'W m**-2' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 60 ; + typeOfFirstFixedSurface = 1 ; + } +#Surface direct normal short-wave radiation flux +'W m**-2' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 54 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 255 ; + } +#Instantaneous magnitude of turbulent surface stress +'N m**-2' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 58 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous boundary layer dissipation +'W m**-2' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 20 ; + } +#Top net short-wave radiation flux +'W m**-2' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 9 ; + typeOfFirstFixedSurface = 8 ; + } +#Top net long-wave radiation flux +'W m**-2' = { + discipline = 0 ; + parameterCategory = 5 ; + parameterNumber = 5 ; + typeOfFirstFixedSurface = 8 ; + } +#Instantaneous gravity wave dissipation +'W m**-2' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 23 ; + } +#Top net short-wave radiation flux, clear sky +'W m**-2' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 11 ; + typeOfFirstFixedSurface = 8 ; + } +#Top net long-wave radiation flux, clear sky +'W m**-2' = { + discipline = 0 ; + parameterCategory = 5 ; + parameterNumber = 6 ; + typeOfFirstFixedSurface = 8 ; + } +#Top downward short-wave radiation flux +'W m**-2' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 7 ; + typeOfFirstFixedSurface = 8 ; + } +#Surface direct short-wave radiation flux, clear sky +'W m**-2' = { + discipline = 0 ; + parameterCategory = 4 ; + parameterNumber = 61 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous eastward turbulent surface stress due to orographic form drag +'N m**-2' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 64 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous northward turbulent surface stress due to orographic form drag +'N m**-2' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 65 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous eastward turbulent surface stress due to surface roughness +'N m**-2' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 66 ; + typeOfFirstFixedSurface = 1 ; + } +#Instantaneous northward turbulent surface stress due to surface roughness +'N m**-2' = { + discipline = 0 ; + parameterCategory = 2 ; + parameterNumber = 67 ; + typeOfFirstFixedSurface = 1 ; + } #Universal thermal climate index 'K' = { discipline = 20 ; From a1679fff755484f83d6edad9a489120f1f3d7d9f Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 12 Aug 2024 15:27:32 +0000 Subject: [PATCH 156/277] ECC-1880: GRIB2: Additions & modifications of instantaneous parameters for generalised time processing approach (part 2) --- .../grib1/localConcepts/ecmf/shortName.def | 6 +- .../grib2/localConcepts/era/shortName.def | 6 +- definitions/grib2/name.def | 123 ++++++++++++++++++ definitions/grib2/paramId.def | 123 ++++++++++++++++++ definitions/grib2/shortName.def | 123 ++++++++++++++++++ definitions/grib2/units.def | 123 ++++++++++++++++++ 6 files changed, 498 insertions(+), 6 deletions(-) diff --git a/definitions/grib1/localConcepts/ecmf/shortName.def b/definitions/grib1/localConcepts/ecmf/shortName.def index 176da8fca..54bee8119 100644 --- a/definitions/grib1/localConcepts/ecmf/shortName.def +++ b/definitions/grib1/localConcepts/ecmf/shortName.def @@ -13780,12 +13780,12 @@ indicatorOfParameter = 74 ; } #Vertical integral of eastward total energy flux -'vitoee' = { +'vitee' = { table2Version = 162 ; indicatorOfParameter = 75 ; } #Vertical integral of northward total energy flux -'vitoen' = { +'viten' = { table2Version = 162 ; indicatorOfParameter = 76 ; } @@ -13825,7 +13825,7 @@ indicatorOfParameter = 85 ; } #Vertical integral of divergence of total energy flux -'vitoed' = { +'vited' = { table2Version = 162 ; indicatorOfParameter = 86 ; } diff --git a/definitions/grib2/localConcepts/era/shortName.def b/definitions/grib2/localConcepts/era/shortName.def index 088ae3b62..eed1dffc3 100644 --- a/definitions/grib2/localConcepts/era/shortName.def +++ b/definitions/grib2/localConcepts/era/shortName.def @@ -687,13 +687,13 @@ parameterNumber = 74 ; } #Vertical integral of eastward total energy flux -'vitoee' = { +'vitee' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 75 ; } #Vertical integral of northward total energy flux -'vitoen' = { +'viten' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 76 ; @@ -735,7 +735,7 @@ parameterNumber = 85 ; } #Vertical integral of divergence of total energy flux -'vitoed' = { +'vited' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 86 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index c5b34813d..6ab3901fb 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -11306,6 +11306,38 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of eastward mass flux +'Vertical integral of eastward mass flux' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 36 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward mass flux +'Vertical integral of northward mass flux' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 37 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward kinetic energy flux +'Vertical integral of eastward kinetic energy flux' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 9 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward kinetic energy flux +'Vertical integral of northward kinetic energy flux' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } #Vertical integral of eastward heat flux 'Vertical integral of eastward heat flux' = { discipline = 0 ; @@ -11338,6 +11370,72 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of eastward geopotential flux +'Vertical integral of eastward geopotential flux' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 40 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward geopotential flux +'Vertical integral of northward geopotential flux' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 41 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward total energy flux +'Vertical integral of eastward total energy flux' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 11 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward total energy flux +'Vertical integral of northward total energy flux' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 12 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward ozone flux +'Vertical integral of eastward ozone flux' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 78 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } +#Vertical integral of northward ozone flux +'Vertical integral of northward ozone flux' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 79 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } +#Vertical integral of divergence of mass flux +'Vertical integral of divergence of mass flux' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 35 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of kinetic energy flux +'Vertical integral of divergence of kinetic energy flux' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 16 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } #Vertically integrated moisture divergence flux 'Vertically integrated moisture divergence flux' = { discipline = 0 ; @@ -11346,6 +11444,31 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of divergence of geopotential flux +'Vertical integral of divergence of geopotential flux' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 43 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of total energy flux +'Vertical integral of divergence of total energy flux' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 17 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of ozone flux +'Vertical integral of divergence of ozone flux' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 80 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } #Time-integrated temperature tendency due to short-wave radiation 'Time-integrated temperature tendency due to short-wave radiation' = { discipline = 0 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 5f20eaa1a..fcafec803 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -11306,6 +11306,38 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of eastward mass flux +'162065' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 36 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward mass flux +'162066' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 37 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward kinetic energy flux +'162067' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 9 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward kinetic energy flux +'162068' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } #Vertical integral of eastward heat flux '162069' = { discipline = 0 ; @@ -11338,6 +11370,72 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of eastward geopotential flux +'162073' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 40 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward geopotential flux +'162074' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 41 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward total energy flux +'162075' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 11 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward total energy flux +'162076' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 12 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward ozone flux +'162077' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 78 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } +#Vertical integral of northward ozone flux +'162078' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 79 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } +#Vertical integral of divergence of mass flux +'162081' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 35 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of kinetic energy flux +'162082' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 16 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } #Vertically integrated moisture divergence flux '162084' = { discipline = 0 ; @@ -11346,6 +11444,31 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of divergence of geopotential flux +'162085' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 43 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of total energy flux +'162086' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 17 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of ozone flux +'162087' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 80 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } #Time-integrated temperature tendency due to short-wave radiation '162100' = { discipline = 0 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 7364f5e19..5ac01bed5 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -11306,6 +11306,38 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of eastward mass flux +'vimae' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 36 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward mass flux +'viman' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 37 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward kinetic energy flux +'vikee' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 9 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward kinetic energy flux +'viken' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } #Vertical integral of eastward heat flux 'vithee' = { discipline = 0 ; @@ -11338,6 +11370,72 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of eastward geopotential flux +'vige' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 40 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward geopotential flux +'vign' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 41 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward total energy flux +'vitee' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 11 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward total energy flux +'viten' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 12 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward ozone flux +'vioze' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 78 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } +#Vertical integral of northward ozone flux +'viozn' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 79 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } +#Vertical integral of divergence of mass flux +'vimad' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 35 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of kinetic energy flux +'viked' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 16 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } #Vertically integrated moisture divergence flux 'viwvd' = { discipline = 0 ; @@ -11346,6 +11444,31 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of divergence of geopotential flux +'vigd' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 43 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of total energy flux +'vited' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 17 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of ozone flux +'viozd' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 80 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } #Time-integrated temperature tendency due to short-wave radiation 'srta' = { discipline = 0 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index 48f69386d..8ace3232b 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -11306,6 +11306,38 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of eastward mass flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 36 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward mass flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 37 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward kinetic energy flux +'W m**-1' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 9 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward kinetic energy flux +'W m**-1' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } #Vertical integral of eastward heat flux 'W m**-1' = { discipline = 0 ; @@ -11338,6 +11370,72 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of eastward geopotential flux +'W m**-1' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 40 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward geopotential flux +'W m**-1' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 41 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward total energy flux +'W m**-1' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 11 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of northward total energy flux +'W m**-1' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 12 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of eastward ozone flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 78 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } +#Vertical integral of northward ozone flux +'kg m**-1 s**-1' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 79 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } +#Vertical integral of divergence of mass flux +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 35 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of kinetic energy flux +'W m**-2' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 16 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } #Vertically integrated moisture divergence flux 'kg m**-2 s**-1' = { discipline = 0 ; @@ -11346,6 +11444,31 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } +#Vertical integral of divergence of geopotential flux +'W m**-2' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 43 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of total energy flux +'W m**-2' = { + discipline = 0 ; + parameterCategory = 21 ; + parameterNumber = 17 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + } +#Vertical integral of divergence of ozone flux +'kg m**-2 s**-1' = { + discipline = 0 ; + parameterCategory = 20 ; + parameterNumber = 80 ; + typeOfFirstFixedSurface = 1 ; + typeOfSecondFixedSurface = 8 ; + constituentType = 0 ; + } #Time-integrated temperature tendency due to short-wave radiation 'K' = { discipline = 0 ; From dd6c68e94d801e9825fefb35983e6fd631b9ef4c Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 12 Aug 2024 15:42:20 +0000 Subject: [PATCH 157/277] ECC-1886: Exclude retired parameters --- definitions/create_def.pl | 1 + 1 file changed, 1 insertion(+) diff --git a/definitions/create_def.pl b/definitions/create_def.pl index 6d2f72602..2a76658be 100755 --- a/definitions/create_def.pl +++ b/definitions/create_def.pl @@ -199,6 +199,7 @@ sub create_cfVarName { centre.abbreviation,param_id,attribute.name,attribute_value,param.name,param.shortName from param,grib_encoding,grib,attribute,centre,units where param.hide_def=0 and + param.retired=0 and grib_encoding.id=grib.encoding_id and param.id=grib_encoding.param_id and attribute.id=grib.attribute_id and From 3e617ab7df8c1a1f7b0a5b342753830c1f3559c3 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 12 Aug 2024 15:44:02 +0000 Subject: [PATCH 158/277] ECC-1882: cfVarNames fixed properly --- definitions/grib2/cfVarName.def | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index 9b7627d2b..ecfe94186 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -186,26 +186,6 @@ scaledValueOfFirstFixedSurface = 100 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Time-maximum 2 metre relative humidity -'max_2r' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 2 ; - } -#Time-minimum 2 metre relative humidity -'min_2r' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 1 ; - typeOfFirstFixedSurface = 103 ; - scaledValueOfFirstFixedSurface = 2 ; - scaleFactorOfFirstFixedSurface = 0 ; - typeOfStatisticalProcessing = 3 ; - } #Time-mean sea ice area fraction 'avg_ci' = { discipline = 10 ; From 9f0432deb0d0f57c8ac002b2d14236980d444674 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 12 Aug 2024 16:52:26 +0000 Subject: [PATCH 159/277] ECC-1880: GRIB2: Additions & modifications of instantaneous parameters for generalised time processing approach (part 3) --- .../grib1/localConcepts/ecmf/cfName.def | 24 +-- definitions/grib1/localConcepts/ecmf/name.def | 88 +++++----- .../grib1/localConcepts/ecmf/paramId.def | 44 ++--- .../grib1/localConcepts/ecmf/shortName.def | 48 +++--- .../grib1/localConcepts/ecmf/units.def | 46 +++--- definitions/grib1/localConcepts/rjtd/name.def | 16 +- .../grib1/localConcepts/rjtd/paramId.def | 8 +- .../grib1/localConcepts/rjtd/shortName.def | 16 +- .../grib1/localConcepts/rjtd/units.def | 8 +- definitions/grib2/cfName.def | 6 +- definitions/grib2/localConcepts/era6/name.def | 12 +- .../grib2/localConcepts/era6/paramId.def | 6 +- .../grib2/localConcepts/era6/shortName.def | 6 +- .../grib2/localConcepts/era6/units.def | 6 +- definitions/grib2/localConcepts/kwbc/name.def | 24 +-- .../grib2/localConcepts/kwbc/paramId.def | 12 +- .../grib2/localConcepts/kwbc/shortName.def | 26 +-- .../grib2/localConcepts/kwbc/units.def | 12 +- definitions/grib2/name.def | 154 ++++++++++-------- definitions/grib2/paramId.def | 90 ++++++---- definitions/grib2/shortName.def | 144 +++++++++------- definitions/grib2/units.def | 92 +++++++---- 22 files changed, 496 insertions(+), 392 deletions(-) diff --git a/definitions/grib1/localConcepts/ecmf/cfName.def b/definitions/grib1/localConcepts/ecmf/cfName.def index f1377da79..77263d572 100644 --- a/definitions/grib1/localConcepts/ecmf/cfName.def +++ b/definitions/grib1/localConcepts/ecmf/cfName.def @@ -284,62 +284,62 @@ table2Version = 180 ; indicatorOfParameter = 144 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation 'kinetic_energy_dissipation_in_atmosphere_boundary_layer' = { table2Version = 128 ; indicatorOfParameter = 145 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation 'kinetic_energy_dissipation_in_atmosphere_boundary_layer' = { table2Version = 160 ; indicatorOfParameter = 145 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'surface_upward_sensible_heat_flux' = { table2Version = 128 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'surface_upward_sensible_heat_flux' = { table2Version = 160 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'surface_upward_sensible_heat_flux' = { table2Version = 170 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'surface_upward_sensible_heat_flux' = { table2Version = 180 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'surface_upward_sensible_heat_flux' = { table2Version = 190 ; indicatorOfParameter = 146 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'surface_upward_latent_heat_flux' = { table2Version = 128 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'surface_upward_latent_heat_flux' = { table2Version = 160 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'surface_upward_latent_heat_flux' = { table2Version = 170 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'surface_upward_latent_heat_flux' = { table2Version = 180 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'surface_upward_latent_heat_flux' = { table2Version = 190 ; indicatorOfParameter = 147 ; diff --git a/definitions/grib1/localConcepts/ecmf/name.def b/definitions/grib1/localConcepts/ecmf/name.def index 5c89d1280..403b30e84 100644 --- a/definitions/grib1/localConcepts/ecmf/name.def +++ b/definitions/grib1/localConcepts/ecmf/name.def @@ -284,13 +284,13 @@ table2Version = 128 ; indicatorOfParameter = 46 ; } -#Direct solar radiation -'Direct solar radiation' = { +#Surface direct normal short-wave (solar) radiation +'Surface direct normal short-wave (solar) radiation' = { table2Version = 128 ; indicatorOfParameter = 47 ; } -#Magnitude of turbulent surface stress -'Magnitude of turbulent surface stress' = { +#Time-integrated magnitude of turbulent surface stress +'Time-integrated magnitude of turbulent surface stress' = { table2Version = 128 ; indicatorOfParameter = 48 ; } @@ -334,8 +334,8 @@ table2Version = 128 ; indicatorOfParameter = 56 ; } -#Downward UV radiation at the surface -'Downward UV radiation at the surface' = { +#Surface downward UV radiation +'Surface downward UV radiation' = { table2Version = 128 ; indicatorOfParameter = 57 ; } @@ -989,63 +989,63 @@ table2Version = 180 ; indicatorOfParameter = 144 ; } -#Boundary layer dissipation -'Boundary layer dissipation' = { +#Time-integrated boundary layer dissipation +'Time-integrated boundary layer dissipation' = { table2Version = 128 ; indicatorOfParameter = 145 ; } -#Boundary layer dissipation -'Boundary layer dissipation' = { +#Time-integrated boundary layer dissipation +'Time-integrated boundary layer dissipation' = { table2Version = 160 ; indicatorOfParameter = 145 ; } -#Surface sensible heat flux -'Surface sensible heat flux' = { +#Time-integrated surface sensible heat net flux +'Time-integrated surface sensible heat net flux' = { table2Version = 128 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux -'Surface sensible heat flux' = { +#Time-integrated surface sensible heat net flux +'Time-integrated surface sensible heat net flux' = { table2Version = 160 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux -'Surface sensible heat flux' = { +#Time-integrated surface sensible heat net flux +'Time-integrated surface sensible heat net flux' = { table2Version = 170 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux -'Surface sensible heat flux' = { +#Time-integrated surface sensible heat net flux +'Time-integrated surface sensible heat net flux' = { table2Version = 180 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux -'Surface sensible heat flux' = { +#Time-integrated surface sensible heat net flux +'Time-integrated surface sensible heat net flux' = { table2Version = 190 ; indicatorOfParameter = 146 ; } -#Surface latent heat flux -'Surface latent heat flux' = { +#Time-integrated surface latent heat net flux +'Time-integrated surface latent heat net flux' = { table2Version = 128 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux -'Surface latent heat flux' = { +#Time-integrated surface latent heat net flux +'Time-integrated surface latent heat net flux' = { table2Version = 160 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux -'Surface latent heat flux' = { +#Time-integrated surface latent heat net flux +'Time-integrated surface latent heat net flux' = { table2Version = 170 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux -'Surface latent heat flux' = { +#Time-integrated surface latent heat net flux +'Time-integrated surface latent heat net flux' = { table2Version = 180 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux -'Surface latent heat flux' = { +#Time-integrated surface latent heat net flux +'Time-integrated surface latent heat net flux' = { table2Version = 190 ; indicatorOfParameter = 147 ; } @@ -1894,8 +1894,8 @@ table2Version = 160 ; indicatorOfParameter = 230 ; } -#Instantaneous surface sensible heat flux -'Instantaneous surface sensible heat flux' = { +#Instantaneous surface sensible heat net flux +'Instantaneous surface sensible heat net flux' = { table2Version = 128 ; indicatorOfParameter = 231 ; } @@ -9879,8 +9879,8 @@ table2Version = 228 ; indicatorOfParameter = 20 ; } -#Total sky direct short-wave (solar) radiation at surface -'Total sky direct short-wave (solar) radiation at surface' = { +#Surface direct short-wave (solar) radiation +'Surface direct short-wave (solar) radiation' = { table2Version = 228 ; indicatorOfParameter = 21 ; } @@ -10039,18 +10039,18 @@ table2Version = 228 ; indicatorOfParameter = 82 ; } -#Flux of Carbon Dioxide Net Ecosystem Exchange -'Flux of Carbon Dioxide Net Ecosystem Exchange' = { +#Carbon dioxide net ecosystem exchange flux +'Carbon dioxide net ecosystem exchange flux' = { table2Version = 228 ; indicatorOfParameter = 83 ; } -#Flux of Carbon Dioxide Gross Primary Production -'Flux of Carbon Dioxide Gross Primary Production' = { +#Carbon dioxide gross primary production flux +'Carbon dioxide gross primary production flux' = { table2Version = 228 ; indicatorOfParameter = 84 ; } -#Flux of Carbon Dioxide Ecosystem Respiration -'Flux of Carbon Dioxide Ecosystem Respiration' = { +#Carbon dioxide ecosystem respiration flux +'Carbon dioxide ecosystem respiration flux' = { table2Version = 228 ; indicatorOfParameter = 85 ; } @@ -10104,8 +10104,8 @@ table2Version = 228 ; indicatorOfParameter = 216 ; } -#Instantaneous large-scale surface precipitation fraction -'Instantaneous large-scale surface precipitation fraction' = { +#Instantaneous large-scale precipitation fraction +'Instantaneous large-scale precipitation fraction' = { table2Version = 228 ; indicatorOfParameter = 217 ; } @@ -13814,8 +13814,8 @@ table2Version = 162 ; indicatorOfParameter = 83 ; } -#Vertically integrated moisture divergence flux -'Vertically integrated moisture divergence flux' = { +#Total column vertically-integrated moisture divergence flux +'Total column vertically-integrated moisture divergence flux' = { table2Version = 162 ; indicatorOfParameter = 84 ; } diff --git a/definitions/grib1/localConcepts/ecmf/paramId.def b/definitions/grib1/localConcepts/ecmf/paramId.def index f4dd85c70..e89a9a96a 100644 --- a/definitions/grib1/localConcepts/ecmf/paramId.def +++ b/definitions/grib1/localConcepts/ecmf/paramId.def @@ -284,12 +284,12 @@ table2Version = 128 ; indicatorOfParameter = 46 ; } -#Direct solar radiation +#Surface direct normal short-wave (solar) radiation '47' = { table2Version = 128 ; indicatorOfParameter = 47 ; } -#Magnitude of turbulent surface stress +#Time-integrated magnitude of turbulent surface stress '48' = { table2Version = 128 ; indicatorOfParameter = 48 ; @@ -334,7 +334,7 @@ table2Version = 128 ; indicatorOfParameter = 56 ; } -#Downward UV radiation at the surface +#Surface downward UV radiation '57' = { table2Version = 128 ; indicatorOfParameter = 57 ; @@ -989,62 +989,62 @@ table2Version = 180 ; indicatorOfParameter = 144 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation '145' = { table2Version = 128 ; indicatorOfParameter = 145 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation '145' = { table2Version = 160 ; indicatorOfParameter = 145 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux '146' = { table2Version = 128 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux '146' = { table2Version = 160 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux '146' = { table2Version = 170 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux '146' = { table2Version = 180 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux '146' = { table2Version = 190 ; indicatorOfParameter = 146 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux '147' = { table2Version = 128 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux '147' = { table2Version = 160 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux '147' = { table2Version = 170 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux '147' = { table2Version = 180 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux '147' = { table2Version = 190 ; indicatorOfParameter = 147 ; @@ -1894,7 +1894,7 @@ table2Version = 160 ; indicatorOfParameter = 230 ; } -#Instantaneous surface sensible heat flux +#Instantaneous surface sensible heat net flux '231' = { table2Version = 128 ; indicatorOfParameter = 231 ; @@ -9879,7 +9879,7 @@ table2Version = 228 ; indicatorOfParameter = 20 ; } -#Total sky direct short-wave (solar) radiation at surface +#Surface direct short-wave (solar) radiation '228021' = { table2Version = 228 ; indicatorOfParameter = 21 ; @@ -10039,17 +10039,17 @@ table2Version = 228 ; indicatorOfParameter = 82 ; } -#Flux of Carbon Dioxide Net Ecosystem Exchange +#Carbon dioxide net ecosystem exchange flux '228083' = { table2Version = 228 ; indicatorOfParameter = 83 ; } -#Flux of Carbon Dioxide Gross Primary Production +#Carbon dioxide gross primary production flux '228084' = { table2Version = 228 ; indicatorOfParameter = 84 ; } -#Flux of Carbon Dioxide Ecosystem Respiration +#Carbon dioxide ecosystem respiration flux '228085' = { table2Version = 228 ; indicatorOfParameter = 85 ; @@ -10104,7 +10104,7 @@ table2Version = 228 ; indicatorOfParameter = 216 ; } -#Instantaneous large-scale surface precipitation fraction +#Instantaneous large-scale precipitation fraction '228217' = { table2Version = 228 ; indicatorOfParameter = 217 ; @@ -13814,7 +13814,7 @@ table2Version = 162 ; indicatorOfParameter = 83 ; } -#Vertically integrated moisture divergence flux +#Total column vertically-integrated moisture divergence flux '162084' = { table2Version = 162 ; indicatorOfParameter = 84 ; diff --git a/definitions/grib1/localConcepts/ecmf/shortName.def b/definitions/grib1/localConcepts/ecmf/shortName.def index 54bee8119..c3429bc9d 100644 --- a/definitions/grib1/localConcepts/ecmf/shortName.def +++ b/definitions/grib1/localConcepts/ecmf/shortName.def @@ -284,12 +284,12 @@ table2Version = 128 ; indicatorOfParameter = 46 ; } -#Direct solar radiation +#Surface direct normal short-wave (solar) radiation 'dsrp' = { table2Version = 128 ; indicatorOfParameter = 47 ; } -#Magnitude of turbulent surface stress +#Time-integrated magnitude of turbulent surface stress 'magss' = { table2Version = 128 ; indicatorOfParameter = 48 ; @@ -334,7 +334,7 @@ table2Version = 128 ; indicatorOfParameter = 56 ; } -#Downward UV radiation at the surface +#Surface downward UV radiation 'uvb' = { table2Version = 128 ; indicatorOfParameter = 57 ; @@ -989,62 +989,62 @@ table2Version = 180 ; indicatorOfParameter = 144 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation 'bld' = { table2Version = 128 ; indicatorOfParameter = 145 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation 'bld' = { table2Version = 160 ; indicatorOfParameter = 145 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'sshf' = { table2Version = 128 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'sshf' = { table2Version = 160 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'sshf' = { table2Version = 170 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'sshf' = { table2Version = 180 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'sshf' = { table2Version = 190 ; indicatorOfParameter = 146 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'slhf' = { table2Version = 128 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'slhf' = { table2Version = 160 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'slhf' = { table2Version = 170 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'slhf' = { table2Version = 180 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'slhf' = { table2Version = 190 ; indicatorOfParameter = 147 ; @@ -1894,7 +1894,7 @@ table2Version = 160 ; indicatorOfParameter = 230 ; } -#Instantaneous surface sensible heat flux +#Instantaneous surface sensible heat net flux 'ishf' = { table2Version = 128 ; indicatorOfParameter = 231 ; @@ -9879,7 +9879,7 @@ table2Version = 228 ; indicatorOfParameter = 20 ; } -#Total sky direct short-wave (solar) radiation at surface +#Surface direct short-wave (solar) radiation 'fdir' = { table2Version = 228 ; indicatorOfParameter = 21 ; @@ -10039,17 +10039,17 @@ table2Version = 228 ; indicatorOfParameter = 82 ; } -#Flux of Carbon Dioxide Net Ecosystem Exchange +#Carbon dioxide net ecosystem exchange flux 'fco2nee' = { table2Version = 228 ; indicatorOfParameter = 83 ; } -#Flux of Carbon Dioxide Gross Primary Production +#Carbon dioxide gross primary production flux 'fco2gpp' = { table2Version = 228 ; indicatorOfParameter = 84 ; } -#Flux of Carbon Dioxide Ecosystem Respiration +#Carbon dioxide ecosystem respiration flux 'fco2rec' = { table2Version = 228 ; indicatorOfParameter = 85 ; @@ -10104,7 +10104,7 @@ table2Version = 228 ; indicatorOfParameter = 216 ; } -#Instantaneous large-scale surface precipitation fraction +#Instantaneous large-scale precipitation fraction 'ilspf' = { table2Version = 228 ; indicatorOfParameter = 217 ; @@ -13485,7 +13485,7 @@ indicatorOfParameter = 184 ; } #Skin reservoir content -'srcrea' = { +'srcon' = { table2Version = 160 ; indicatorOfParameter = 198 ; } @@ -13814,8 +13814,8 @@ table2Version = 162 ; indicatorOfParameter = 83 ; } -#Vertically integrated moisture divergence flux -'viwvd' = { +#Total column vertically-integrated moisture divergence flux +'vimdf' = { table2Version = 162 ; indicatorOfParameter = 84 ; } diff --git a/definitions/grib1/localConcepts/ecmf/units.def b/definitions/grib1/localConcepts/ecmf/units.def index dae3279fd..0217a43b1 100644 --- a/definitions/grib1/localConcepts/ecmf/units.def +++ b/definitions/grib1/localConcepts/ecmf/units.def @@ -284,12 +284,12 @@ table2Version = 128 ; indicatorOfParameter = 46 ; } -#Direct solar radiation +#Surface direct normal short-wave (solar) radiation 'J m**-2' = { table2Version = 128 ; indicatorOfParameter = 47 ; } -#Magnitude of turbulent surface stress +#Time-integrated magnitude of turbulent surface stress 'N m**-2 s' = { table2Version = 128 ; indicatorOfParameter = 48 ; @@ -334,7 +334,7 @@ table2Version = 128 ; indicatorOfParameter = 56 ; } -#Downward UV radiation at the surface +#Surface downward UV radiation 'J m**-2' = { table2Version = 128 ; indicatorOfParameter = 57 ; @@ -989,62 +989,62 @@ table2Version = 180 ; indicatorOfParameter = 144 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation 'J m**-2' = { table2Version = 128 ; indicatorOfParameter = 145 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation 'J m**-2' = { table2Version = 160 ; indicatorOfParameter = 145 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'J m**-2' = { table2Version = 128 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'J m**-2' = { table2Version = 160 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'J m**-2' = { table2Version = 170 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'J m**-2' = { table2Version = 180 ; indicatorOfParameter = 146 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'J m**-2' = { table2Version = 190 ; indicatorOfParameter = 146 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'J m**-2' = { table2Version = 128 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'J m**-2' = { table2Version = 160 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'J m**-2' = { table2Version = 170 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'J m**-2' = { table2Version = 180 ; indicatorOfParameter = 147 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'J m**-2' = { table2Version = 190 ; indicatorOfParameter = 147 ; @@ -1894,7 +1894,7 @@ table2Version = 160 ; indicatorOfParameter = 230 ; } -#Instantaneous surface sensible heat flux +#Instantaneous surface sensible heat net flux 'W m**-2' = { table2Version = 128 ; indicatorOfParameter = 231 ; @@ -9879,7 +9879,7 @@ table2Version = 228 ; indicatorOfParameter = 20 ; } -#Total sky direct short-wave (solar) radiation at surface +#Surface direct short-wave (solar) radiation 'J m**-2' = { table2Version = 228 ; indicatorOfParameter = 21 ; @@ -10039,17 +10039,17 @@ table2Version = 228 ; indicatorOfParameter = 82 ; } -#Flux of Carbon Dioxide Net Ecosystem Exchange +#Carbon dioxide net ecosystem exchange flux 'kg m**-2 s**-1' = { table2Version = 228 ; indicatorOfParameter = 83 ; } -#Flux of Carbon Dioxide Gross Primary Production +#Carbon dioxide gross primary production flux 'kg m**-2 s**-1' = { table2Version = 228 ; indicatorOfParameter = 84 ; } -#Flux of Carbon Dioxide Ecosystem Respiration +#Carbon dioxide ecosystem respiration flux 'kg m**-2 s**-1' = { table2Version = 228 ; indicatorOfParameter = 85 ; @@ -10104,8 +10104,8 @@ table2Version = 228 ; indicatorOfParameter = 216 ; } -#Instantaneous large-scale surface precipitation fraction -'(0 - 1)' = { +#Instantaneous large-scale precipitation fraction +'Proportion' = { table2Version = 228 ; indicatorOfParameter = 217 ; } @@ -13814,7 +13814,7 @@ table2Version = 162 ; indicatorOfParameter = 83 ; } -#Vertically integrated moisture divergence flux +#Total column vertically-integrated moisture divergence flux 'kg m**-2 s**-1' = { table2Version = 162 ; indicatorOfParameter = 84 ; diff --git a/definitions/grib1/localConcepts/rjtd/name.def b/definitions/grib1/localConcepts/rjtd/name.def index d23af9d8e..284c4b0b7 100644 --- a/definitions/grib1/localConcepts/rjtd/name.def +++ b/definitions/grib1/localConcepts/rjtd/name.def @@ -218,23 +218,23 @@ table2Version = 200 ; indicatorOfParameter = 219 ; } -#Downward short-wave radiation flux -'Downward short-wave radiation flux' = { +#Surface downward short-wave radiation flux +'Surface downward short-wave radiation flux' = { table2Version = 200 ; indicatorOfParameter = 204 ; } -#Upward short-wave radiation flux -'Upward short-wave radiation flux' = { +#Surface upward short-wave radiation flux +'Surface upward short-wave radiation flux' = { table2Version = 200 ; indicatorOfParameter = 211 ; } -#Downward long-wave radiation flux -'Downward long-wave radiation flux' = { +#Surface downward long-wave radiation flux +'Surface downward long-wave radiation flux' = { table2Version = 200 ; indicatorOfParameter = 205 ; } -#Upward long-wave radiation flux -'Upward long-wave radiation flux' = { +#Surface upward long-wave radiation flux +'Surface upward long-wave radiation flux' = { table2Version = 200 ; indicatorOfParameter = 212 ; } diff --git a/definitions/grib1/localConcepts/rjtd/paramId.def b/definitions/grib1/localConcepts/rjtd/paramId.def index d08f41247..640b96537 100644 --- a/definitions/grib1/localConcepts/rjtd/paramId.def +++ b/definitions/grib1/localConcepts/rjtd/paramId.def @@ -218,22 +218,22 @@ table2Version = 200 ; indicatorOfParameter = 219 ; } -#Downward short-wave radiation flux +#Surface downward short-wave radiation flux '260087' = { table2Version = 200 ; indicatorOfParameter = 204 ; } -#Upward short-wave radiation flux +#Surface upward short-wave radiation flux '260088' = { table2Version = 200 ; indicatorOfParameter = 211 ; } -#Downward long-wave radiation flux +#Surface downward long-wave radiation flux '260097' = { table2Version = 200 ; indicatorOfParameter = 205 ; } -#Upward long-wave radiation flux +#Surface upward long-wave radiation flux '260098' = { table2Version = 200 ; indicatorOfParameter = 212 ; diff --git a/definitions/grib1/localConcepts/rjtd/shortName.def b/definitions/grib1/localConcepts/rjtd/shortName.def index 10b57b914..6ddcc6e86 100644 --- a/definitions/grib1/localConcepts/rjtd/shortName.def +++ b/definitions/grib1/localConcepts/rjtd/shortName.def @@ -218,23 +218,23 @@ table2Version = 200 ; indicatorOfParameter = 219 ; } -#Downward short-wave radiation flux -'dswrf' = { +#Surface downward short-wave radiation flux +'sdswrf' = { table2Version = 200 ; indicatorOfParameter = 204 ; } -#Upward short-wave radiation flux -'uswrf' = { +#Surface upward short-wave radiation flux +'suswrf' = { table2Version = 200 ; indicatorOfParameter = 211 ; } -#Downward long-wave radiation flux -'dlwrf' = { +#Surface downward long-wave radiation flux +'sdlwrf' = { table2Version = 200 ; indicatorOfParameter = 205 ; } -#Upward long-wave radiation flux -'ulwrf' = { +#Surface upward long-wave radiation flux +'sulwrf' = { table2Version = 200 ; indicatorOfParameter = 212 ; } diff --git a/definitions/grib1/localConcepts/rjtd/units.def b/definitions/grib1/localConcepts/rjtd/units.def index 8e177dd35..b3df8c50e 100644 --- a/definitions/grib1/localConcepts/rjtd/units.def +++ b/definitions/grib1/localConcepts/rjtd/units.def @@ -218,22 +218,22 @@ table2Version = 200 ; indicatorOfParameter = 219 ; } -#Downward short-wave radiation flux +#Surface downward short-wave radiation flux 'W m**-2' = { table2Version = 200 ; indicatorOfParameter = 204 ; } -#Upward short-wave radiation flux +#Surface upward short-wave radiation flux 'W m**-2' = { table2Version = 200 ; indicatorOfParameter = 211 ; } -#Downward long-wave radiation flux +#Surface downward long-wave radiation flux 'W m**-2' = { table2Version = 200 ; indicatorOfParameter = 205 ; } -#Upward long-wave radiation flux +#Surface upward long-wave radiation flux 'W m**-2' = { table2Version = 200 ; indicatorOfParameter = 212 ; diff --git a/definitions/grib2/cfName.def b/definitions/grib2/cfName.def index c48900633..4ebf8d332 100644 --- a/definitions/grib2/cfName.def +++ b/definitions/grib2/cfName.def @@ -63,14 +63,14 @@ parameterCategory = 2 ; parameterNumber = 12 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation 'kinetic_energy_dissipation_in_atmosphere_boundary_layer' = { discipline = 0 ; parameterCategory = 2 ; parameterNumber = 20 ; typeOfStatisticalProcessing = 1 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'surface_upward_sensible_heat_flux' = { discipline = 0 ; parameterCategory = 0 ; @@ -78,7 +78,7 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 1 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'surface_upward_latent_heat_flux' = { discipline = 0 ; parameterCategory = 0 ; diff --git a/definitions/grib2/localConcepts/era6/name.def b/definitions/grib2/localConcepts/era6/name.def index af79f7845..6115bfbef 100644 --- a/definitions/grib2/localConcepts/era6/name.def +++ b/definitions/grib2/localConcepts/era6/name.def @@ -350,24 +350,24 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Net Ecosystem Exchange -'Flux of Carbon Dioxide Net Ecosystem Exchange' = { +#Carbon dioxide net ecosystem exchange flux +'Carbon dioxide net ecosystem exchange flux' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 59 ; constituentType = 3 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Gross Primary Production -'Flux of Carbon Dioxide Gross Primary Production' = { +#Carbon dioxide gross primary production flux +'Carbon dioxide gross primary production flux' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 60 ; constituentType = 3 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Ecosystem Respiration -'Flux of Carbon Dioxide Ecosystem Respiration' = { +#Carbon dioxide ecosystem respiration flux +'Carbon dioxide ecosystem respiration flux' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 61 ; diff --git a/definitions/grib2/localConcepts/era6/paramId.def b/definitions/grib2/localConcepts/era6/paramId.def index efa120d15..00d86b9ba 100644 --- a/definitions/grib2/localConcepts/era6/paramId.def +++ b/definitions/grib2/localConcepts/era6/paramId.def @@ -350,7 +350,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Net Ecosystem Exchange +#Carbon dioxide net ecosystem exchange flux '228083' = { discipline = 2 ; parameterCategory = 0 ; @@ -358,7 +358,7 @@ constituentType = 3 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Gross Primary Production +#Carbon dioxide gross primary production flux '228084' = { discipline = 2 ; parameterCategory = 0 ; @@ -366,7 +366,7 @@ constituentType = 3 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Ecosystem Respiration +#Carbon dioxide ecosystem respiration flux '228085' = { discipline = 2 ; parameterCategory = 0 ; diff --git a/definitions/grib2/localConcepts/era6/shortName.def b/definitions/grib2/localConcepts/era6/shortName.def index 118656c0f..6976a2397 100644 --- a/definitions/grib2/localConcepts/era6/shortName.def +++ b/definitions/grib2/localConcepts/era6/shortName.def @@ -350,7 +350,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Net Ecosystem Exchange +#Carbon dioxide net ecosystem exchange flux 'fco2nee' = { discipline = 2 ; parameterCategory = 0 ; @@ -358,7 +358,7 @@ constituentType = 3 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Gross Primary Production +#Carbon dioxide gross primary production flux 'fco2gpp' = { discipline = 2 ; parameterCategory = 0 ; @@ -366,7 +366,7 @@ constituentType = 3 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Ecosystem Respiration +#Carbon dioxide ecosystem respiration flux 'fco2rec' = { discipline = 2 ; parameterCategory = 0 ; diff --git a/definitions/grib2/localConcepts/era6/units.def b/definitions/grib2/localConcepts/era6/units.def index edd86225f..edadfafe8 100644 --- a/definitions/grib2/localConcepts/era6/units.def +++ b/definitions/grib2/localConcepts/era6/units.def @@ -350,7 +350,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Net Ecosystem Exchange +#Carbon dioxide net ecosystem exchange flux 'kg m**-2 s**-1' = { discipline = 2 ; parameterCategory = 0 ; @@ -358,7 +358,7 @@ constituentType = 3 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Gross Primary Production +#Carbon dioxide gross primary production flux 'kg m**-2 s**-1' = { discipline = 2 ; parameterCategory = 0 ; @@ -366,7 +366,7 @@ constituentType = 3 ; is_chemical = 1 ; } -#Flux of Carbon Dioxide Ecosystem Respiration +#Carbon dioxide ecosystem respiration flux 'kg m**-2 s**-1' = { discipline = 2 ; parameterCategory = 0 ; diff --git a/definitions/grib2/localConcepts/kwbc/name.def b/definitions/grib2/localConcepts/kwbc/name.def index 2f6a1c3be..56b7b2087 100644 --- a/definitions/grib2/localConcepts/kwbc/name.def +++ b/definitions/grib2/localConcepts/kwbc/name.def @@ -143,14 +143,14 @@ parameterCategory = 3 ; parameterNumber = 193 ; } -#Zonal flux of gravity wave stress -'Zonal flux of gravity wave stress' = { +#Instantaneous eastward gravity wave surface stress +'Instantaneous eastward gravity wave surface stress' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 194 ; } -#Meridional flux of gravity wave stress -'Meridional flux of gravity wave stress' = { +#Instantaneous northward gravity wave surface stress +'Instantaneous northward gravity wave surface stress' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 195 ; @@ -161,14 +161,14 @@ parameterCategory = 3 ; parameterNumber = 197 ; } -#Downward short-wave radiation flux -'Downward short-wave radiation flux' = { +#Surface downward short-wave radiation flux +'Surface downward short-wave radiation flux' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 192 ; } -#Upward short-wave radiation flux -'Upward short-wave radiation flux' = { +#Surface upward short-wave radiation flux +'Surface upward short-wave radiation flux' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 193 ; @@ -179,14 +179,14 @@ parameterCategory = 7 ; parameterNumber = 196 ; } -#Downward long-wave radiation flux -'Downward long-wave radiation flux' = { +#Surface downward long-wave radiation flux +'Surface downward long-wave radiation flux' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 192 ; } -#Upward long-wave radiation flux -'Upward long-wave radiation flux' = { +#Surface upward long-wave radiation flux +'Surface upward long-wave radiation flux' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 193 ; diff --git a/definitions/grib2/localConcepts/kwbc/paramId.def b/definitions/grib2/localConcepts/kwbc/paramId.def index 8add9d28a..78837c822 100644 --- a/definitions/grib2/localConcepts/kwbc/paramId.def +++ b/definitions/grib2/localConcepts/kwbc/paramId.def @@ -143,13 +143,13 @@ parameterCategory = 3 ; parameterNumber = 193 ; } -#Zonal flux of gravity wave stress +#Instantaneous eastward gravity wave surface stress '260081' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 194 ; } -#Meridional flux of gravity wave stress +#Instantaneous northward gravity wave surface stress '260082' = { discipline = 0 ; parameterCategory = 3 ; @@ -161,13 +161,13 @@ parameterCategory = 3 ; parameterNumber = 197 ; } -#Downward short-wave radiation flux +#Surface downward short-wave radiation flux '260087' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 192 ; } -#Upward short-wave radiation flux +#Surface upward short-wave radiation flux '260088' = { discipline = 0 ; parameterCategory = 4 ; @@ -179,13 +179,13 @@ parameterCategory = 7 ; parameterNumber = 196 ; } -#Downward long-wave radiation flux +#Surface downward long-wave radiation flux '260097' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 192 ; } -#Upward long-wave radiation flux +#Surface upward long-wave radiation flux '260098' = { discipline = 0 ; parameterCategory = 5 ; diff --git a/definitions/grib2/localConcepts/kwbc/shortName.def b/definitions/grib2/localConcepts/kwbc/shortName.def index 9c925f00e..96c2ed66e 100644 --- a/definitions/grib2/localConcepts/kwbc/shortName.def +++ b/definitions/grib2/localConcepts/kwbc/shortName.def @@ -48,7 +48,7 @@ parameterNumber = 195 ; } #Convective precipitation rate -'cprat' = { +'cpr' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 196 ; @@ -143,14 +143,14 @@ parameterCategory = 3 ; parameterNumber = 193 ; } -#Zonal flux of gravity wave stress -'u-gwd' = { +#Instantaneous eastward gravity wave surface stress +'iegwss' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 194 ; } -#Meridional flux of gravity wave stress -'v-gwd' = { +#Instantaneous northward gravity wave surface stress +'ingwss' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 195 ; @@ -161,14 +161,14 @@ parameterCategory = 3 ; parameterNumber = 197 ; } -#Downward short-wave radiation flux -'dswrf' = { +#Surface downward short-wave radiation flux +'sdswrf' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 192 ; } -#Upward short-wave radiation flux -'uswrf' = { +#Surface upward short-wave radiation flux +'suswrf' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 193 ; @@ -179,14 +179,14 @@ parameterCategory = 7 ; parameterNumber = 196 ; } -#Downward long-wave radiation flux -'dlwrf' = { +#Surface downward long-wave radiation flux +'sdlwrf' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 192 ; } -#Upward long-wave radiation flux -'ulwrf' = { +#Surface upward long-wave radiation flux +'sulwrf' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 193 ; diff --git a/definitions/grib2/localConcepts/kwbc/units.def b/definitions/grib2/localConcepts/kwbc/units.def index 37c4a287a..cc5ed58da 100644 --- a/definitions/grib2/localConcepts/kwbc/units.def +++ b/definitions/grib2/localConcepts/kwbc/units.def @@ -143,13 +143,13 @@ parameterCategory = 3 ; parameterNumber = 193 ; } -#Zonal flux of gravity wave stress +#Instantaneous eastward gravity wave surface stress 'N m**-2' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 194 ; } -#Meridional flux of gravity wave stress +#Instantaneous northward gravity wave surface stress 'N m**-2' = { discipline = 0 ; parameterCategory = 3 ; @@ -161,13 +161,13 @@ parameterCategory = 3 ; parameterNumber = 197 ; } -#Downward short-wave radiation flux +#Surface downward short-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 192 ; } -#Upward short-wave radiation flux +#Surface upward short-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; @@ -179,13 +179,13 @@ parameterCategory = 7 ; parameterNumber = 196 ; } -#Downward long-wave radiation flux +#Surface downward long-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 192 ; } -#Upward long-wave radiation flux +#Surface upward long-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 5 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 6ab3901fb..d8c5a96fe 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -237,8 +237,8 @@ parameterCategory = 3 ; parameterNumber = 0 ; } -#Direct solar radiation -'Direct solar radiation' = { +#Surface direct normal short-wave (solar) radiation +'Surface direct normal short-wave (solar) radiation' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 54 ; @@ -246,8 +246,8 @@ typeOfSecondFixedSurface = 255 ; typeOfStatisticalProcessing = 1 ; } -#Magnitude of turbulent surface stress -'Magnitude of turbulent surface stress' = { +#Time-integrated magnitude of turbulent surface stress +'Time-integrated magnitude of turbulent surface stress' = { discipline = 0 ; parameterCategory = 2 ; parameterNumber = 58 ; @@ -284,8 +284,8 @@ parameterCategory = 3 ; parameterNumber = 0 ; } -#Downward UV radiation at the surface -'Downward UV radiation at the surface' = { +#Surface downward UV radiation +'Surface downward UV radiation' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 12 ; @@ -463,23 +463,23 @@ parameterCategory = 2 ; parameterNumber = 12 ; } -#Boundary layer dissipation -'Boundary layer dissipation' = { +#Time-integrated boundary layer dissipation +'Time-integrated boundary layer dissipation' = { discipline = 0 ; parameterCategory = 2 ; parameterNumber = 20 ; typeOfStatisticalProcessing = 1 ; } -#Surface sensible heat flux -'Surface sensible heat flux' = { +#Time-integrated surface sensible heat net flux +'Time-integrated surface sensible heat net flux' = { discipline = 0 ; parameterCategory = 0 ; parameterNumber = 11 ; typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 1 ; } -#Surface latent heat flux -'Surface latent heat flux' = { +#Time-integrated surface latent heat net flux +'Time-integrated surface latent heat net flux' = { discipline = 0 ; parameterCategory = 0 ; parameterNumber = 10 ; @@ -813,8 +813,8 @@ parameterNumber = 63 ; typeOfFirstFixedSurface = 1 ; } -#Instantaneous surface sensible heat flux -'Instantaneous surface sensible heat flux' = { +#Instantaneous surface sensible heat net flux +'Instantaneous surface sensible heat net flux' = { discipline = 0 ; parameterCategory = 0 ; parameterNumber = 11 ; @@ -3052,8 +3052,8 @@ scaledValueOfFirstFixedSurface = 26315 ; scaleFactorOfFirstFixedSurface = 2 ; } -#Total sky direct short-wave (solar) radiation at surface -'Total sky direct short-wave (solar) radiation at surface' = { +#Surface direct short-wave (solar) radiation +'Surface direct short-wave (solar) radiation' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 13 ; @@ -3427,8 +3427,8 @@ parameterCategory = 0 ; parameterNumber = 33 ; } -#Instantaneous large-scale surface precipitation fraction -'Instantaneous large-scale surface precipitation fraction' = { +#Instantaneous large-scale precipitation fraction +'Instantaneous large-scale precipitation fraction' = { discipline = 0 ; parameterCategory = 6 ; parameterNumber = 36 ; @@ -4301,8 +4301,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of mass flux -'Time integrated, vertically integrated divergence of mass flux' = { +#Time-integrated, total column vertically-integrated divergence of mass flux +'Time-integrated, total column vertically-integrated divergence of mass flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 35 ; @@ -4310,8 +4310,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward mass flux -'Time integrated, vertically integrated eastward mass flux' = { +#Time-integrated, total column vertically-integrated eastward mass flux +'Time-integrated, total column vertically-integrated eastward mass flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 36 ; @@ -4319,8 +4319,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward mass flux -'Time integrated, vertically integrated northward mass flux' = { +#Time-integrated, total column vertically-integrated northward mass flux +'Time-integrated, total column vertically-integrated northward mass flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 37 ; @@ -5925,11 +5925,12 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Latent heat net flux -'Latent heat net flux' = { +#Surface latent heat net flux +'Surface latent heat net flux' = { discipline = 0 ; parameterCategory = 0 ; parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; } #Heat index 'Heat index' = { @@ -6112,6 +6113,7 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 37 ; + typeOfFirstFixedSurface = 1 ; } #Horizontal moisture divergence 'Horizontal moisture divergence' = { @@ -6205,12 +6207,14 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 53 ; + typeOfFirstFixedSurface = 1 ; } #Large scale precipitation rate 'Large scale precipitation rate' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 54 ; + typeOfFirstFixedSurface = 1 ; } #Total snowfall rate 'Total snowfall rate' = { @@ -6253,6 +6257,7 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 67 ; + typeOfFirstFixedSurface = 1 ; } #Ice pellets precipitation rate 'Ice pellets precipitation rate' = { @@ -6356,17 +6361,19 @@ parameterCategory = 3 ; parameterNumber = 15 ; } -#Zonal flux of gravity wave stress -'Zonal flux of gravity wave stress' = { +#Instantaneous eastward gravity wave surface stress +'Instantaneous eastward gravity wave surface stress' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 16 ; + typeOfFirstFixedSurface = 1 ; } -#Meridional flux of gravity wave stress -'Meridional flux of gravity wave stress' = { +#Instantaneous northward gravity wave surface stress +'Instantaneous northward gravity wave surface stress' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 17 ; + typeOfFirstFixedSurface = 1 ; } #5-wave geopotential height anomaly '5-wave geopotential height anomaly' = { @@ -6380,41 +6387,47 @@ parameterCategory = 4 ; parameterNumber = 1 ; } -#Downward short-wave radiation flux -'Downward short-wave radiation flux' = { +#Surface downward short-wave radiation flux +'Surface downward short-wave radiation flux' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 7 ; + typeOfFirstFixedSurface = 1 ; } -#Upward short-wave radiation flux -'Upward short-wave radiation flux' = { +#Surface upward short-wave radiation flux +'Surface upward short-wave radiation flux' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 8 ; + typeOfFirstFixedSurface = 1 ; } -#Net short wave radiation flux -'Net short wave radiation flux' = { +#Surface net short-wave radiation flux +'Surface net short-wave radiation flux' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 9 ; + typeOfFirstFixedSurface = 1 ; } -#Photosynthetically active radiation -'Photosynthetically active radiation' = { +#Surface photosynthetically active radiation flux +'Surface photosynthetically active radiation flux' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; } -#Net short-wave radiation flux, clear sky -'Net short-wave radiation flux, clear sky' = { +#Surface net short-wave radiation flux, clear sky +'Surface net short-wave radiation flux, clear sky' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 11 ; + typeOfFirstFixedSurface = 1 ; } -#Downward UV radiation -'Downward UV radiation' = { +#Surface downward UV radiation flux +'Surface downward UV radiation flux' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 12 ; + typeOfFirstFixedSurface = 1 ; } #UV index (under clear sky) 'UV index (under clear sky)' = { @@ -6440,29 +6453,33 @@ parameterCategory = 5 ; parameterNumber = 1 ; } -#Downward long-wave radiation flux -'Downward long-wave radiation flux' = { +#Surface downward long-wave radiation flux +'Surface downward long-wave radiation flux' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 3 ; + typeOfFirstFixedSurface = 1 ; } -#Upward long-wave radiation flux -'Upward long-wave radiation flux' = { +#Surface upward long-wave radiation flux +'Surface upward long-wave radiation flux' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 4 ; + typeOfFirstFixedSurface = 1 ; } -#Net long wave radiation flux -'Net long wave radiation flux' = { +#Surface net long-wave radiation flux +'Surface net long-wave radiation flux' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 5 ; + typeOfFirstFixedSurface = 1 ; } -#Net long-wave radiation flux, clear sky -'Net long-wave radiation flux, clear sky' = { +#Surface net long-wave radiation flux, clear sky +'Surface net long-wave radiation flux, clear sky' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 6 ; + typeOfFirstFixedSurface = 1 ; } #Cloud Ice 'Cloud Ice' = { @@ -6571,6 +6588,7 @@ discipline = 0 ; parameterCategory = 6 ; parameterNumber = 24 ; + typeOfFirstFixedSurface = 1 ; } #Horizontal extent of cumulonimbus (CB) 'Horizontal extent of cumulonimbus (CB)' = { @@ -7272,17 +7290,19 @@ scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Direct short wave radiation flux -'Direct short wave radiation flux' = { +#Surface direct short-wave radiation flux +'Surface direct short-wave radiation flux' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 13 ; + typeOfFirstFixedSurface = 1 ; } -#Diffuse short wave radiation flux -'Diffuse short wave radiation flux' = { +#Surface diffuse short-wave radiation flux +'Surface diffuse short-wave radiation flux' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 14 ; + typeOfFirstFixedSurface = 1 ; } #Fraction of snow cover 'Fraction of snow cover' = { @@ -7380,23 +7400,26 @@ parameterCategory = 3 ; parameterNumber = 18 ; } -#Downward short-wave radiation flux, clear sky -'Downward short-wave radiation flux, clear sky' = { +#Surface downward short-wave radiation flux, clear sky +'Surface downward short-wave radiation flux, clear sky' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 52 ; + typeOfFirstFixedSurface = 1 ; } -#Upward short-wave radiation flux, clear sky -'Upward short-wave radiation flux, clear sky' = { +#Surface upward short-wave radiation flux, clear sky +'Surface upward short-wave radiation flux, clear sky' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 53 ; + typeOfFirstFixedSurface = 1 ; } -#Downward long-wave radiation flux, clear sky -'Downward long-wave radiation flux, clear sky' = { +#Surface downward long-wave radiation flux, clear sky +'Surface downward long-wave radiation flux, clear sky' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 8 ; + typeOfFirstFixedSurface = 1 ; } #Soil heat flux 'Soil heat flux' = { @@ -7450,15 +7473,17 @@ discipline = 2 ; parameterCategory = 0 ; parameterNumber = 39 ; + typeOfFirstFixedSurface = 1 ; } #Potential evapotranspiration rate 'Potential evapotranspiration rate' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 40 ; + typeOfFirstFixedSurface = 1 ; } -#Water runoff and drainage rate -'Water runoff and drainage rate' = { +#Runoff rate water equivalent (surface plus subsurface) +'Runoff rate water equivalent (surface plus subsurface)' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 42 ; @@ -7468,6 +7493,7 @@ discipline = 2 ; parameterCategory = 0 ; parameterNumber = 41 ; + typeOfFirstFixedSurface = 1 ; } #Forecast albedo 'Forecast albedo' = { @@ -11436,8 +11462,8 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertically integrated moisture divergence flux -'Vertically integrated moisture divergence flux' = { +#Total column vertically-integrated moisture divergence flux +'Total column vertically-integrated moisture divergence flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 165 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index fcafec803..526405e73 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -237,7 +237,7 @@ parameterCategory = 3 ; parameterNumber = 0 ; } -#Direct solar radiation +#Surface direct normal short-wave (solar) radiation '47' = { discipline = 0 ; parameterCategory = 4 ; @@ -246,7 +246,7 @@ typeOfSecondFixedSurface = 255 ; typeOfStatisticalProcessing = 1 ; } -#Magnitude of turbulent surface stress +#Time-integrated magnitude of turbulent surface stress '48' = { discipline = 0 ; parameterCategory = 2 ; @@ -284,7 +284,7 @@ parameterCategory = 3 ; parameterNumber = 0 ; } -#Downward UV radiation at the surface +#Surface downward UV radiation '57' = { discipline = 0 ; parameterCategory = 4 ; @@ -463,14 +463,14 @@ parameterCategory = 2 ; parameterNumber = 12 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation '145' = { discipline = 0 ; parameterCategory = 2 ; parameterNumber = 20 ; typeOfStatisticalProcessing = 1 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux '146' = { discipline = 0 ; parameterCategory = 0 ; @@ -478,7 +478,7 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 1 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux '147' = { discipline = 0 ; parameterCategory = 0 ; @@ -813,7 +813,7 @@ parameterNumber = 63 ; typeOfFirstFixedSurface = 1 ; } -#Instantaneous surface sensible heat flux +#Instantaneous surface sensible heat net flux '231' = { discipline = 0 ; parameterCategory = 0 ; @@ -3052,7 +3052,7 @@ scaledValueOfFirstFixedSurface = 26315 ; scaleFactorOfFirstFixedSurface = 2 ; } -#Total sky direct short-wave (solar) radiation at surface +#Surface direct short-wave (solar) radiation '228021' = { discipline = 0 ; parameterCategory = 4 ; @@ -3427,7 +3427,7 @@ parameterCategory = 0 ; parameterNumber = 33 ; } -#Instantaneous large-scale surface precipitation fraction +#Instantaneous large-scale precipitation fraction '228217' = { discipline = 0 ; parameterCategory = 6 ; @@ -4301,7 +4301,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of mass flux +#Time-integrated, total column vertically-integrated divergence of mass flux '233014' = { discipline = 0 ; parameterCategory = 3 ; @@ -4310,7 +4310,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward mass flux +#Time-integrated, total column vertically-integrated eastward mass flux '233015' = { discipline = 0 ; parameterCategory = 3 ; @@ -4319,7 +4319,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward mass flux +#Time-integrated, total column vertically-integrated northward mass flux '233016' = { discipline = 0 ; parameterCategory = 3 ; @@ -5925,11 +5925,12 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Latent heat net flux +#Surface latent heat net flux '260002' = { discipline = 0 ; parameterCategory = 0 ; parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; } #Heat index '260004' = { @@ -6112,6 +6113,7 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 37 ; + typeOfFirstFixedSurface = 1 ; } #Horizontal moisture divergence '260034' = { @@ -6205,12 +6207,14 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 53 ; + typeOfFirstFixedSurface = 1 ; } #Large scale precipitation rate '260050' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 54 ; + typeOfFirstFixedSurface = 1 ; } #Total snowfall rate '260053' = { @@ -6253,6 +6257,7 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 67 ; + typeOfFirstFixedSurface = 1 ; } #Ice pellets precipitation rate '260061' = { @@ -6356,17 +6361,19 @@ parameterCategory = 3 ; parameterNumber = 15 ; } -#Zonal flux of gravity wave stress +#Instantaneous eastward gravity wave surface stress '260081' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 16 ; + typeOfFirstFixedSurface = 1 ; } -#Meridional flux of gravity wave stress +#Instantaneous northward gravity wave surface stress '260082' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 17 ; + typeOfFirstFixedSurface = 1 ; } #5-wave geopotential height anomaly '260084' = { @@ -6380,41 +6387,47 @@ parameterCategory = 4 ; parameterNumber = 1 ; } -#Downward short-wave radiation flux +#Surface downward short-wave radiation flux '260087' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 7 ; + typeOfFirstFixedSurface = 1 ; } -#Upward short-wave radiation flux +#Surface upward short-wave radiation flux '260088' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 8 ; + typeOfFirstFixedSurface = 1 ; } -#Net short wave radiation flux +#Surface net short-wave radiation flux '260089' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 9 ; + typeOfFirstFixedSurface = 1 ; } -#Photosynthetically active radiation +#Surface photosynthetically active radiation flux '260090' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; } -#Net short-wave radiation flux, clear sky +#Surface net short-wave radiation flux, clear sky '260091' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 11 ; + typeOfFirstFixedSurface = 1 ; } -#Downward UV radiation +#Surface downward UV radiation flux '260092' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 12 ; + typeOfFirstFixedSurface = 1 ; } #UV index (under clear sky) '260093' = { @@ -6440,29 +6453,33 @@ parameterCategory = 5 ; parameterNumber = 1 ; } -#Downward long-wave radiation flux +#Surface downward long-wave radiation flux '260097' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 3 ; + typeOfFirstFixedSurface = 1 ; } -#Upward long-wave radiation flux +#Surface upward long-wave radiation flux '260098' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 4 ; + typeOfFirstFixedSurface = 1 ; } -#Net long wave radiation flux +#Surface net long-wave radiation flux '260099' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 5 ; + typeOfFirstFixedSurface = 1 ; } -#Net long-wave radiation flux, clear sky +#Surface net long-wave radiation flux, clear sky '260100' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 6 ; + typeOfFirstFixedSurface = 1 ; } #Cloud Ice '260101' = { @@ -6571,6 +6588,7 @@ discipline = 0 ; parameterCategory = 6 ; parameterNumber = 24 ; + typeOfFirstFixedSurface = 1 ; } #Horizontal extent of cumulonimbus (CB) '260120' = { @@ -7272,17 +7290,19 @@ scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Direct short wave radiation flux +#Surface direct short-wave radiation flux '260262' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 13 ; + typeOfFirstFixedSurface = 1 ; } -#Diffuse short wave radiation flux +#Surface diffuse short-wave radiation flux '260263' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 14 ; + typeOfFirstFixedSurface = 1 ; } #Fraction of snow cover '260289' = { @@ -7380,23 +7400,26 @@ parameterCategory = 3 ; parameterNumber = 18 ; } -#Downward short-wave radiation flux, clear sky +#Surface downward short-wave radiation flux, clear sky '260361' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 52 ; + typeOfFirstFixedSurface = 1 ; } -#Upward short-wave radiation flux, clear sky +#Surface upward short-wave radiation flux, clear sky '260362' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 53 ; + typeOfFirstFixedSurface = 1 ; } -#Downward long-wave radiation flux, clear sky +#Surface downward long-wave radiation flux, clear sky '260363' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 8 ; + typeOfFirstFixedSurface = 1 ; } #Soil heat flux '260364' = { @@ -7450,14 +7473,16 @@ discipline = 2 ; parameterCategory = 0 ; parameterNumber = 39 ; + typeOfFirstFixedSurface = 1 ; } #Potential evapotranspiration rate '260436' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 40 ; + typeOfFirstFixedSurface = 1 ; } -#Water runoff and drainage rate +#Runoff rate water equivalent (surface plus subsurface) '260443' = { discipline = 2 ; parameterCategory = 0 ; @@ -7468,6 +7493,7 @@ discipline = 2 ; parameterCategory = 0 ; parameterNumber = 41 ; + typeOfFirstFixedSurface = 1 ; } #Forecast albedo '260509' = { @@ -11436,7 +11462,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertically integrated moisture divergence flux +#Total column vertically-integrated moisture divergence flux '162084' = { discipline = 0 ; parameterCategory = 1 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 5ac01bed5..ecaa6ff1f 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -237,7 +237,7 @@ parameterCategory = 3 ; parameterNumber = 0 ; } -#Direct solar radiation +#Surface direct normal short-wave (solar) radiation 'dsrp' = { discipline = 0 ; parameterCategory = 4 ; @@ -246,7 +246,7 @@ typeOfSecondFixedSurface = 255 ; typeOfStatisticalProcessing = 1 ; } -#Magnitude of turbulent surface stress +#Time-integrated magnitude of turbulent surface stress 'magss' = { discipline = 0 ; parameterCategory = 2 ; @@ -284,7 +284,7 @@ parameterCategory = 3 ; parameterNumber = 0 ; } -#Downward UV radiation at the surface +#Surface downward UV radiation 'uvb' = { discipline = 0 ; parameterCategory = 4 ; @@ -463,14 +463,14 @@ parameterCategory = 2 ; parameterNumber = 12 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation 'bld' = { discipline = 0 ; parameterCategory = 2 ; parameterNumber = 20 ; typeOfStatisticalProcessing = 1 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'sshf' = { discipline = 0 ; parameterCategory = 0 ; @@ -478,7 +478,7 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 1 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'slhf' = { discipline = 0 ; parameterCategory = 0 ; @@ -813,7 +813,7 @@ parameterNumber = 63 ; typeOfFirstFixedSurface = 1 ; } -#Instantaneous surface sensible heat flux +#Instantaneous surface sensible heat net flux 'ishf' = { discipline = 0 ; parameterCategory = 0 ; @@ -3052,7 +3052,7 @@ scaledValueOfFirstFixedSurface = 26315 ; scaleFactorOfFirstFixedSurface = 2 ; } -#Total sky direct short-wave (solar) radiation at surface +#Surface direct short-wave (solar) radiation 'fdir' = { discipline = 0 ; parameterCategory = 4 ; @@ -3427,7 +3427,7 @@ parameterCategory = 0 ; parameterNumber = 33 ; } -#Instantaneous large-scale surface precipitation fraction +#Instantaneous large-scale precipitation fraction 'ilspf' = { discipline = 0 ; parameterCategory = 6 ; @@ -4301,8 +4301,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of mass flux -'tvimd' = { +#Time-integrated, total column vertically-integrated divergence of mass flux +'tvimad' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 35 ; @@ -4310,8 +4310,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward mass flux -'tvime' = { +#Time-integrated, total column vertically-integrated eastward mass flux +'tvimae' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 36 ; @@ -4319,8 +4319,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward mass flux -'tvimn' = { +#Time-integrated, total column vertically-integrated northward mass flux +'tviman' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 37 ; @@ -5925,11 +5925,12 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Latent heat net flux -'lhtfl' = { +#Surface latent heat net flux +'slhtf' = { discipline = 0 ; parameterCategory = 0 ; parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; } #Heat index 'heatx' = { @@ -6108,10 +6109,11 @@ parameterNumber = 36 ; } #Convective precipitation rate -'cprat' = { +'cpr' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 37 ; + typeOfFirstFixedSurface = 1 ; } #Horizontal moisture divergence 'mdiv' = { @@ -6205,12 +6207,14 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 53 ; + typeOfFirstFixedSurface = 1 ; } #Large scale precipitation rate 'lsprate' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 54 ; + typeOfFirstFixedSurface = 1 ; } #Total snowfall rate 'tsrate' = { @@ -6253,6 +6257,7 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 67 ; + typeOfFirstFixedSurface = 1 ; } #Ice pellets precipitation rate 'iprate' = { @@ -6356,17 +6361,19 @@ parameterCategory = 3 ; parameterNumber = 15 ; } -#Zonal flux of gravity wave stress -'u-gwd' = { +#Instantaneous eastward gravity wave surface stress +'iegwss' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 16 ; + typeOfFirstFixedSurface = 1 ; } -#Meridional flux of gravity wave stress -'v-gwd' = { +#Instantaneous northward gravity wave surface stress +'ingwss' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 17 ; + typeOfFirstFixedSurface = 1 ; } #5-wave geopotential height anomaly '5wava' = { @@ -6380,41 +6387,47 @@ parameterCategory = 4 ; parameterNumber = 1 ; } -#Downward short-wave radiation flux -'dswrf' = { +#Surface downward short-wave radiation flux +'sdswrf' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 7 ; + typeOfFirstFixedSurface = 1 ; } -#Upward short-wave radiation flux -'uswrf' = { +#Surface upward short-wave radiation flux +'suswrf' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 8 ; + typeOfFirstFixedSurface = 1 ; } -#Net short wave radiation flux -'nswrf' = { +#Surface net short-wave radiation flux +'snswrf' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 9 ; + typeOfFirstFixedSurface = 1 ; } -#Photosynthetically active radiation -'photar' = { +#Surface photosynthetically active radiation flux +'sparf' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; } -#Net short-wave radiation flux, clear sky -'nswrfcs' = { +#Surface net short-wave radiation flux, clear sky +'snswrfcs' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 11 ; + typeOfFirstFixedSurface = 1 ; } -#Downward UV radiation -'dwuvr' = { +#Surface downward UV radiation flux +'sduvrf' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 12 ; + typeOfFirstFixedSurface = 1 ; } #UV index (under clear sky) 'uviucs' = { @@ -6440,29 +6453,33 @@ parameterCategory = 5 ; parameterNumber = 1 ; } -#Downward long-wave radiation flux -'dlwrf' = { +#Surface downward long-wave radiation flux +'sdlwrf' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 3 ; + typeOfFirstFixedSurface = 1 ; } -#Upward long-wave radiation flux -'ulwrf' = { +#Surface upward long-wave radiation flux +'sulwrf' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 4 ; + typeOfFirstFixedSurface = 1 ; } -#Net long wave radiation flux -'nlwrf' = { +#Surface net long-wave radiation flux +'snlwrf' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 5 ; + typeOfFirstFixedSurface = 1 ; } -#Net long-wave radiation flux, clear sky -'nlwrcs' = { +#Surface net long-wave radiation flux, clear sky +'snlwrcs' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 6 ; + typeOfFirstFixedSurface = 1 ; } #Cloud Ice 'cice' = { @@ -6571,6 +6588,7 @@ discipline = 0 ; parameterCategory = 6 ; parameterNumber = 24 ; + typeOfFirstFixedSurface = 1 ; } #Horizontal extent of cumulonimbus (CB) '~' = { @@ -7272,17 +7290,19 @@ scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Direct short wave radiation flux -'dirswrf' = { +#Surface direct short-wave radiation flux +'sdirswrf' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 13 ; + typeOfFirstFixedSurface = 1 ; } -#Diffuse short wave radiation flux -'difswrf' = { +#Surface diffuse short-wave radiation flux +'sdifswrf' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 14 ; + typeOfFirstFixedSurface = 1 ; } #Fraction of snow cover 'fscov' = { @@ -7380,23 +7400,26 @@ parameterCategory = 3 ; parameterNumber = 18 ; } -#Downward short-wave radiation flux, clear sky -'dswrf_cs' = { +#Surface downward short-wave radiation flux, clear sky +'sdswrfcs' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 52 ; + typeOfFirstFixedSurface = 1 ; } -#Upward short-wave radiation flux, clear sky -'uswrf_cs' = { +#Surface upward short-wave radiation flux, clear sky +'suswrfcs' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 53 ; + typeOfFirstFixedSurface = 1 ; } -#Downward long-wave radiation flux, clear sky -'dlwrf_cs' = { +#Surface downward long-wave radiation flux, clear sky +'sdlwrfcs' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 8 ; + typeOfFirstFixedSurface = 1 ; } #Soil heat flux 'sohf' = { @@ -7446,19 +7469,21 @@ typeOfStatisticalProcessing = 1 ; } #Evapotranspiration rate -'et' = { +'etr' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 39 ; + typeOfFirstFixedSurface = 1 ; } #Potential evapotranspiration rate -'pet' = { +'petr' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 40 ; + typeOfFirstFixedSurface = 1 ; } -#Water runoff and drainage rate -'rod' = { +#Runoff rate water equivalent (surface plus subsurface) +'rorwe' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 42 ; @@ -7468,6 +7493,7 @@ discipline = 2 ; parameterCategory = 0 ; parameterNumber = 41 ; + typeOfFirstFixedSurface = 1 ; } #Forecast albedo 'al' = { @@ -11253,7 +11279,7 @@ parameterNumber = 98 ; } #Skin reservoir content -'srcrea' = { +'srcon' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 50 ; @@ -11436,8 +11462,8 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertically integrated moisture divergence flux -'viwvd' = { +#Total column vertically-integrated moisture divergence flux +'vimdf' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 165 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index 8ace3232b..091b8b5d3 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -237,7 +237,7 @@ parameterCategory = 3 ; parameterNumber = 0 ; } -#Direct solar radiation +#Surface direct normal short-wave (solar) radiation 'J m**-2' = { discipline = 0 ; parameterCategory = 4 ; @@ -246,7 +246,7 @@ typeOfSecondFixedSurface = 255 ; typeOfStatisticalProcessing = 1 ; } -#Magnitude of turbulent surface stress +#Time-integrated magnitude of turbulent surface stress 'N m**-2 s' = { discipline = 0 ; parameterCategory = 2 ; @@ -284,7 +284,7 @@ parameterCategory = 3 ; parameterNumber = 0 ; } -#Downward UV radiation at the surface +#Surface downward UV radiation 'J m**-2' = { discipline = 0 ; parameterCategory = 4 ; @@ -463,14 +463,14 @@ parameterCategory = 2 ; parameterNumber = 12 ; } -#Boundary layer dissipation +#Time-integrated boundary layer dissipation 'J m**-2' = { discipline = 0 ; parameterCategory = 2 ; parameterNumber = 20 ; typeOfStatisticalProcessing = 1 ; } -#Surface sensible heat flux +#Time-integrated surface sensible heat net flux 'J m**-2' = { discipline = 0 ; parameterCategory = 0 ; @@ -478,7 +478,7 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 1 ; } -#Surface latent heat flux +#Time-integrated surface latent heat net flux 'J m**-2' = { discipline = 0 ; parameterCategory = 0 ; @@ -813,7 +813,7 @@ parameterNumber = 63 ; typeOfFirstFixedSurface = 1 ; } -#Instantaneous surface sensible heat flux +#Instantaneous surface sensible heat net flux 'W m**-2' = { discipline = 0 ; parameterCategory = 0 ; @@ -3052,7 +3052,7 @@ scaledValueOfFirstFixedSurface = 26315 ; scaleFactorOfFirstFixedSurface = 2 ; } -#Total sky direct short-wave (solar) radiation at surface +#Surface direct short-wave (solar) radiation 'J m**-2' = { discipline = 0 ; parameterCategory = 4 ; @@ -3427,8 +3427,8 @@ parameterCategory = 0 ; parameterNumber = 33 ; } -#Instantaneous large-scale surface precipitation fraction -'(0 - 1)' = { +#Instantaneous large-scale precipitation fraction +'Proportion' = { discipline = 0 ; parameterCategory = 6 ; parameterNumber = 36 ; @@ -4301,7 +4301,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of mass flux +#Time-integrated, total column vertically-integrated divergence of mass flux 'kg m**-2' = { discipline = 0 ; parameterCategory = 3 ; @@ -4310,7 +4310,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward mass flux +#Time-integrated, total column vertically-integrated eastward mass flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 3 ; @@ -4319,7 +4319,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward mass flux +#Time-integrated, total column vertically-integrated northward mass flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 3 ; @@ -5925,11 +5925,12 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Latent heat net flux +#Surface latent heat net flux 'W m**-2' = { discipline = 0 ; parameterCategory = 0 ; parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; } #Heat index 'K' = { @@ -6112,6 +6113,7 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 37 ; + typeOfFirstFixedSurface = 1 ; } #Horizontal moisture divergence 'kg kg**-1 s**-1' = { @@ -6205,12 +6207,14 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 53 ; + typeOfFirstFixedSurface = 1 ; } #Large scale precipitation rate 'kg m**-2 s**-1' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 54 ; + typeOfFirstFixedSurface = 1 ; } #Total snowfall rate 'm s**-1' = { @@ -6253,6 +6257,7 @@ discipline = 0 ; parameterCategory = 1 ; parameterNumber = 67 ; + typeOfFirstFixedSurface = 1 ; } #Ice pellets precipitation rate 'kg m**-2 s**-1' = { @@ -6356,17 +6361,19 @@ parameterCategory = 3 ; parameterNumber = 15 ; } -#Zonal flux of gravity wave stress +#Instantaneous eastward gravity wave surface stress 'N m**-2' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 16 ; + typeOfFirstFixedSurface = 1 ; } -#Meridional flux of gravity wave stress +#Instantaneous northward gravity wave surface stress 'N m**-2' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 17 ; + typeOfFirstFixedSurface = 1 ; } #5-wave geopotential height anomaly 'gpm' = { @@ -6380,41 +6387,47 @@ parameterCategory = 4 ; parameterNumber = 1 ; } -#Downward short-wave radiation flux +#Surface downward short-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 7 ; + typeOfFirstFixedSurface = 1 ; } -#Upward short-wave radiation flux +#Surface upward short-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 8 ; + typeOfFirstFixedSurface = 1 ; } -#Net short wave radiation flux +#Surface net short-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 9 ; + typeOfFirstFixedSurface = 1 ; } -#Photosynthetically active radiation +#Surface photosynthetically active radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 10 ; + typeOfFirstFixedSurface = 1 ; } -#Net short-wave radiation flux, clear sky +#Surface net short-wave radiation flux, clear sky 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 11 ; + typeOfFirstFixedSurface = 1 ; } -#Downward UV radiation +#Surface downward UV radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 12 ; + typeOfFirstFixedSurface = 1 ; } #UV index (under clear sky) 'Numeric' = { @@ -6440,29 +6453,33 @@ parameterCategory = 5 ; parameterNumber = 1 ; } -#Downward long-wave radiation flux +#Surface downward long-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 3 ; + typeOfFirstFixedSurface = 1 ; } -#Upward long-wave radiation flux +#Surface upward long-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 4 ; + typeOfFirstFixedSurface = 1 ; } -#Net long wave radiation flux +#Surface net long-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 5 ; + typeOfFirstFixedSurface = 1 ; } -#Net long-wave radiation flux, clear sky +#Surface net long-wave radiation flux, clear sky 'W m**-2' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 6 ; + typeOfFirstFixedSurface = 1 ; } #Cloud Ice 'kg m**-2' = { @@ -6571,6 +6588,7 @@ discipline = 0 ; parameterCategory = 6 ; parameterNumber = 24 ; + typeOfFirstFixedSurface = 1 ; } #Horizontal extent of cumulonimbus (CB) '%' = { @@ -7272,17 +7290,19 @@ scaledValueOfFirstFixedSurface = 10 ; scaleFactorOfFirstFixedSurface = 0 ; } -#Direct short wave radiation flux +#Surface direct short-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 13 ; + typeOfFirstFixedSurface = 1 ; } -#Diffuse short wave radiation flux +#Surface diffuse short-wave radiation flux 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 14 ; + typeOfFirstFixedSurface = 1 ; } #Fraction of snow cover 'Proportion' = { @@ -7380,23 +7400,26 @@ parameterCategory = 3 ; parameterNumber = 18 ; } -#Downward short-wave radiation flux, clear sky +#Surface downward short-wave radiation flux, clear sky 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 52 ; + typeOfFirstFixedSurface = 1 ; } -#Upward short-wave radiation flux, clear sky +#Surface upward short-wave radiation flux, clear sky 'W m**-2' = { discipline = 0 ; parameterCategory = 4 ; parameterNumber = 53 ; + typeOfFirstFixedSurface = 1 ; } -#Downward long-wave radiation flux, clear sky +#Surface downward long-wave radiation flux, clear sky 'W m**-2' = { discipline = 0 ; parameterCategory = 5 ; parameterNumber = 8 ; + typeOfFirstFixedSurface = 1 ; } #Soil heat flux 'W m**-2' = { @@ -7450,14 +7473,16 @@ discipline = 2 ; parameterCategory = 0 ; parameterNumber = 39 ; + typeOfFirstFixedSurface = 1 ; } #Potential evapotranspiration rate 'kg m**-2 s**-1' = { discipline = 2 ; parameterCategory = 0 ; parameterNumber = 40 ; + typeOfFirstFixedSurface = 1 ; } -#Water runoff and drainage rate +#Runoff rate water equivalent (surface plus subsurface) 'kg m**-2 s**-1' = { discipline = 2 ; parameterCategory = 0 ; @@ -7468,6 +7493,7 @@ discipline = 2 ; parameterCategory = 0 ; parameterNumber = 41 ; + typeOfFirstFixedSurface = 1 ; } #Forecast albedo '%' = { @@ -11436,7 +11462,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertically integrated moisture divergence flux +#Total column vertically-integrated moisture divergence flux 'kg m**-2 s**-1' = { discipline = 0 ; parameterCategory = 1 ; From fcc21c05c8d2b9bbcaec18217a32216f19940df3 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Tue, 13 Aug 2024 13:13:07 +0000 Subject: [PATCH 160/277] ECC-1880: GRIB2: Additions & modifications of instantaneous parameters for generalised time processing approach (part 4) --- definitions/grib1/localConcepts/ecmf/name.def | 140 ++++++++-------- .../grib1/localConcepts/ecmf/paramId.def | 70 ++++---- .../grib1/localConcepts/ecmf/shortName.def | 70 ++++---- .../grib1/localConcepts/ecmf/units.def | 70 ++++---- definitions/grib1/localConcepts/rjtd/name.def | 16 +- .../grib1/localConcepts/rjtd/paramId.def | 8 +- .../grib1/localConcepts/rjtd/shortName.def | 8 +- .../grib1/localConcepts/rjtd/units.def | 8 +- definitions/grib2/cfVarName.def | 20 +++ definitions/grib2/localConcepts/era/name.def | 84 +++++----- .../grib2/localConcepts/era/paramId.def | 42 ++--- .../grib2/localConcepts/era/shortName.def | 42 ++--- definitions/grib2/localConcepts/era/units.def | 42 ++--- definitions/grib2/localConcepts/era6/name.def | 16 +- .../grib2/localConcepts/era6/paramId.def | 8 +- .../grib2/localConcepts/era6/shortName.def | 8 +- .../grib2/localConcepts/era6/units.def | 8 +- definitions/grib2/name.def | 156 +++++++++--------- definitions/grib2/paramId.def | 78 ++++----- definitions/grib2/shortName.def | 78 ++++----- definitions/grib2/units.def | 78 ++++----- 21 files changed, 535 insertions(+), 515 deletions(-) diff --git a/definitions/grib1/localConcepts/ecmf/name.def b/definitions/grib1/localConcepts/ecmf/name.def index 403b30e84..eb319acb5 100644 --- a/definitions/grib1/localConcepts/ecmf/name.def +++ b/definitions/grib1/localConcepts/ecmf/name.def @@ -3584,38 +3584,38 @@ table2Version = 162 ; indicatorOfParameter = 45 ; } -#Vertical integral of divergence of cloud liquid water flux -'Vertical integral of divergence of cloud liquid water flux' = { +#Total column vertically-integrated divergence of cloud liquid water flux +'Total column vertically-integrated divergence of cloud liquid water flux' = { table2Version = 162 ; indicatorOfParameter = 79 ; } -#Vertical integral of divergence of cloud frozen water flux -'Vertical integral of divergence of cloud frozen water flux' = { +#Total column vertically-integrated divergence of cloud frozen water flux +'Total column vertically-integrated divergence of cloud frozen water flux' = { table2Version = 162 ; indicatorOfParameter = 80 ; } -#Vertical integral of eastward cloud liquid water flux -'Vertical integral of eastward cloud liquid water flux' = { +#Total column vertically-integrated eastward cloud liquid water flux +'Total column vertically-integrated eastward cloud liquid water flux' = { table2Version = 162 ; indicatorOfParameter = 88 ; } -#Vertical integral of northward cloud liquid water flux -'Vertical integral of northward cloud liquid water flux' = { +#Total column vertically-integrated northward cloud liquid water flux +'Total column vertically-integrated northward cloud liquid water flux' = { table2Version = 162 ; indicatorOfParameter = 89 ; } -#Vertical integral of eastward cloud frozen water flux -'Vertical integral of eastward cloud frozen water flux' = { +#Total column vertically-integrated eastward cloud frozen water flux +'Total column vertically-integrated eastward cloud frozen water flux' = { table2Version = 162 ; indicatorOfParameter = 90 ; } -#Vertical integral of northward cloud frozen water flux -'Vertical integral of northward cloud frozen water flux ' = { +#Total column vertically-integrated northward cloud frozen water flux +'Total column vertically-integrated northward cloud frozen water flux ' = { table2Version = 162 ; indicatorOfParameter = 91 ; } -#Vertical integral of mass tendency -'Vertical integral of mass tendency' = { +#Total column vertically-integrated mass tendency +'Total column vertically-integrated mass tendency' = { table2Version = 162 ; indicatorOfParameter = 92 ; } @@ -13669,33 +13669,33 @@ table2Version = 162 ; indicatorOfParameter = 51 ; } -#Vertical integral of mass of atmosphere -'Vertical integral of mass of atmosphere' = { +#Total column vertically-integrated mass of atmosphere +'Total column vertically-integrated mass of atmosphere' = { table2Version = 162 ; indicatorOfParameter = 53 ; } -#Vertical integral of temperature -'Vertical integral of temperature' = { +#Total column vertically-integrated temperature +'Total column vertically-integrated temperature' = { table2Version = 162 ; indicatorOfParameter = 54 ; } -#Vertical integral of water vapour -'Vertical integral of water vapour' = { +#Total column vertically-integrated water vapour +'Total column vertically-integrated water vapour' = { table2Version = 162 ; indicatorOfParameter = 55 ; } -#Vertical integral of cloud liquid water -'Vertical integral of cloud liquid water' = { +#Total column vertically-integrated cloud liquid water +'Total column vertically-integrated cloud liquid water' = { table2Version = 162 ; indicatorOfParameter = 56 ; } -#Vertical integral of cloud frozen water -'Vertical integral of cloud frozen water' = { +#Total column vertically-integrated cloud frozen water +'Total column vertically-integrated cloud frozen water' = { table2Version = 162 ; indicatorOfParameter = 57 ; } -#Vertical integral of ozone -'Vertical integral of ozone' = { +#Total column vertically-integrated ozone +'Total column vertically-integrated ozone' = { table2Version = 162 ; indicatorOfParameter = 58 ; } @@ -13714,8 +13714,8 @@ table2Version = 162 ; indicatorOfParameter = 61 ; } -#Vertical integral of potential+internal+latent energy -'Vertical integral of potential+internal+latent energy' = { +#Total column vertically-integrated potential+internal+latent energy +'Total column vertically-integrated potential+internal+latent energy' = { table2Version = 162 ; indicatorOfParameter = 62 ; } @@ -13724,93 +13724,93 @@ table2Version = 162 ; indicatorOfParameter = 63 ; } -#Vertical integral of energy conversion -'Vertical integral of energy conversion' = { +#Total column vertically-integrated energy conversion +'Total column vertically-integrated energy conversion' = { table2Version = 162 ; indicatorOfParameter = 64 ; } -#Vertical integral of eastward mass flux -'Vertical integral of eastward mass flux' = { +#Total column vertically-integrated eastward mass flux +'Total column vertically-integrated eastward mass flux' = { table2Version = 162 ; indicatorOfParameter = 65 ; } -#Vertical integral of northward mass flux -'Vertical integral of northward mass flux' = { +#Total column vertically-integrated northward mass flux +'Total column vertically-integrated northward mass flux' = { table2Version = 162 ; indicatorOfParameter = 66 ; } -#Vertical integral of eastward kinetic energy flux -'Vertical integral of eastward kinetic energy flux' = { +#Total column vertically-integrated eastward kinetic energy flux +'Total column vertically-integrated eastward kinetic energy flux' = { table2Version = 162 ; indicatorOfParameter = 67 ; } -#Vertical integral of northward kinetic energy flux -'Vertical integral of northward kinetic energy flux' = { +#Total column vertically-integrated northward kinetic energy flux +'Total column vertically-integrated northward kinetic energy flux' = { table2Version = 162 ; indicatorOfParameter = 68 ; } -#Vertical integral of eastward heat flux -'Vertical integral of eastward heat flux' = { +#Total column vertically-integrated eastward heat flux +'Total column vertically-integrated eastward heat flux' = { table2Version = 162 ; indicatorOfParameter = 69 ; } -#Vertical integral of northward heat flux -'Vertical integral of northward heat flux' = { +#Total column vertically-integrated northward heat flux +'Total column vertically-integrated northward heat flux' = { table2Version = 162 ; indicatorOfParameter = 70 ; } -#Vertical integral of eastward water vapour flux -'Vertical integral of eastward water vapour flux' = { +#Total column vertically-integrated eastward water vapour flux +'Total column vertically-integrated eastward water vapour flux' = { table2Version = 162 ; indicatorOfParameter = 71 ; } -#Vertical integral of northward water vapour flux -'Vertical integral of northward water vapour flux' = { +#Total column vertically-integrated northward water vapour flux +'Total column vertically-integrated northward water vapour flux' = { table2Version = 162 ; indicatorOfParameter = 72 ; } -#Vertical integral of eastward geopotential flux -'Vertical integral of eastward geopotential flux' = { +#Total column vertically-integrated eastward geopotential flux +'Total column vertically-integrated eastward geopotential flux' = { table2Version = 162 ; indicatorOfParameter = 73 ; } -#Vertical integral of northward geopotential flux -'Vertical integral of northward geopotential flux' = { +#Total column vertically-integrated northward geopotential flux +'Total column vertically-integrated northward geopotential flux' = { table2Version = 162 ; indicatorOfParameter = 74 ; } -#Vertical integral of eastward total energy flux -'Vertical integral of eastward total energy flux' = { +#Total column vertically-integrated eastward total energy flux +'Total column vertically-integrated eastward total energy flux' = { table2Version = 162 ; indicatorOfParameter = 75 ; } -#Vertical integral of northward total energy flux -'Vertical integral of northward total energy flux' = { +#Total column vertically-integrated northward total energy flux +'Total column vertically-integrated northward total energy flux' = { table2Version = 162 ; indicatorOfParameter = 76 ; } -#Vertical integral of eastward ozone flux -'Vertical integral of eastward ozone flux' = { +#Total column vertically-integrated eastward ozone flux +'Total column vertically-integrated eastward ozone flux' = { table2Version = 162 ; indicatorOfParameter = 77 ; } -#Vertical integral of northward ozone flux -'Vertical integral of northward ozone flux' = { +#Total column vertically-integrated northward ozone flux +'Total column vertically-integrated northward ozone flux' = { table2Version = 162 ; indicatorOfParameter = 78 ; } -#Vertical integral of divergence of mass flux -'Vertical integral of divergence of mass flux' = { +#Total column vertically-integrated divergence of mass flux +'Total column vertically-integrated divergence of mass flux' = { table2Version = 162 ; indicatorOfParameter = 81 ; } -#Vertical integral of divergence of kinetic energy flux -'Vertical integral of divergence of kinetic energy flux' = { +#Total column vertically-integrated divergence of kinetic energy flux +'Total column vertically-integrated divergence of kinetic energy flux' = { table2Version = 162 ; indicatorOfParameter = 82 ; } -#Vertical integral of divergence of thermal energy flux -'Vertical integral of divergence of thermal energy flux' = { +#Total column vertically-integrated divergence of thermal energy flux +'Total column vertically-integrated divergence of thermal energy flux' = { table2Version = 162 ; indicatorOfParameter = 83 ; } @@ -13819,18 +13819,18 @@ table2Version = 162 ; indicatorOfParameter = 84 ; } -#Vertical integral of divergence of geopotential flux -'Vertical integral of divergence of geopotential flux' = { +#Total column vertically-integrated divergence of geopotential flux +'Total column vertically-integrated divergence of geopotential flux' = { table2Version = 162 ; indicatorOfParameter = 85 ; } -#Vertical integral of divergence of total energy flux -'Vertical integral of divergence of total energy flux' = { +#Total column vertically-integrated divergence of total energy flux +'Total column vertically-integrated divergence of total energy flux' = { table2Version = 162 ; indicatorOfParameter = 86 ; } -#Vertical integral of divergence of ozone flux -'Vertical integral of divergence of ozone flux' = { +#Total column vertically-integrated divergence of ozone flux +'Total column vertically-integrated divergence of ozone flux' = { table2Version = 162 ; indicatorOfParameter = 87 ; } diff --git a/definitions/grib1/localConcepts/ecmf/paramId.def b/definitions/grib1/localConcepts/ecmf/paramId.def index e89a9a96a..6301ec4ff 100644 --- a/definitions/grib1/localConcepts/ecmf/paramId.def +++ b/definitions/grib1/localConcepts/ecmf/paramId.def @@ -3584,37 +3584,37 @@ table2Version = 162 ; indicatorOfParameter = 45 ; } -#Vertical integral of divergence of cloud liquid water flux +#Total column vertically-integrated divergence of cloud liquid water flux '162079' = { table2Version = 162 ; indicatorOfParameter = 79 ; } -#Vertical integral of divergence of cloud frozen water flux +#Total column vertically-integrated divergence of cloud frozen water flux '162080' = { table2Version = 162 ; indicatorOfParameter = 80 ; } -#Vertical integral of eastward cloud liquid water flux +#Total column vertically-integrated eastward cloud liquid water flux '162088' = { table2Version = 162 ; indicatorOfParameter = 88 ; } -#Vertical integral of northward cloud liquid water flux +#Total column vertically-integrated northward cloud liquid water flux '162089' = { table2Version = 162 ; indicatorOfParameter = 89 ; } -#Vertical integral of eastward cloud frozen water flux +#Total column vertically-integrated eastward cloud frozen water flux '162090' = { table2Version = 162 ; indicatorOfParameter = 90 ; } -#Vertical integral of northward cloud frozen water flux +#Total column vertically-integrated northward cloud frozen water flux '162091' = { table2Version = 162 ; indicatorOfParameter = 91 ; } -#Vertical integral of mass tendency +#Total column vertically-integrated mass tendency '162092' = { table2Version = 162 ; indicatorOfParameter = 92 ; @@ -13669,32 +13669,32 @@ table2Version = 162 ; indicatorOfParameter = 51 ; } -#Vertical integral of mass of atmosphere +#Total column vertically-integrated mass of atmosphere '162053' = { table2Version = 162 ; indicatorOfParameter = 53 ; } -#Vertical integral of temperature +#Total column vertically-integrated temperature '162054' = { table2Version = 162 ; indicatorOfParameter = 54 ; } -#Vertical integral of water vapour +#Total column vertically-integrated water vapour '162055' = { table2Version = 162 ; indicatorOfParameter = 55 ; } -#Vertical integral of cloud liquid water +#Total column vertically-integrated cloud liquid water '162056' = { table2Version = 162 ; indicatorOfParameter = 56 ; } -#Vertical integral of cloud frozen water +#Total column vertically-integrated cloud frozen water '162057' = { table2Version = 162 ; indicatorOfParameter = 57 ; } -#Vertical integral of ozone +#Total column vertically-integrated ozone '162058' = { table2Version = 162 ; indicatorOfParameter = 58 ; @@ -13714,7 +13714,7 @@ table2Version = 162 ; indicatorOfParameter = 61 ; } -#Vertical integral of potential+internal+latent energy +#Total column vertically-integrated potential+internal+latent energy '162062' = { table2Version = 162 ; indicatorOfParameter = 62 ; @@ -13724,92 +13724,92 @@ table2Version = 162 ; indicatorOfParameter = 63 ; } -#Vertical integral of energy conversion +#Total column vertically-integrated energy conversion '162064' = { table2Version = 162 ; indicatorOfParameter = 64 ; } -#Vertical integral of eastward mass flux +#Total column vertically-integrated eastward mass flux '162065' = { table2Version = 162 ; indicatorOfParameter = 65 ; } -#Vertical integral of northward mass flux +#Total column vertically-integrated northward mass flux '162066' = { table2Version = 162 ; indicatorOfParameter = 66 ; } -#Vertical integral of eastward kinetic energy flux +#Total column vertically-integrated eastward kinetic energy flux '162067' = { table2Version = 162 ; indicatorOfParameter = 67 ; } -#Vertical integral of northward kinetic energy flux +#Total column vertically-integrated northward kinetic energy flux '162068' = { table2Version = 162 ; indicatorOfParameter = 68 ; } -#Vertical integral of eastward heat flux +#Total column vertically-integrated eastward heat flux '162069' = { table2Version = 162 ; indicatorOfParameter = 69 ; } -#Vertical integral of northward heat flux +#Total column vertically-integrated northward heat flux '162070' = { table2Version = 162 ; indicatorOfParameter = 70 ; } -#Vertical integral of eastward water vapour flux +#Total column vertically-integrated eastward water vapour flux '162071' = { table2Version = 162 ; indicatorOfParameter = 71 ; } -#Vertical integral of northward water vapour flux +#Total column vertically-integrated northward water vapour flux '162072' = { table2Version = 162 ; indicatorOfParameter = 72 ; } -#Vertical integral of eastward geopotential flux +#Total column vertically-integrated eastward geopotential flux '162073' = { table2Version = 162 ; indicatorOfParameter = 73 ; } -#Vertical integral of northward geopotential flux +#Total column vertically-integrated northward geopotential flux '162074' = { table2Version = 162 ; indicatorOfParameter = 74 ; } -#Vertical integral of eastward total energy flux +#Total column vertically-integrated eastward total energy flux '162075' = { table2Version = 162 ; indicatorOfParameter = 75 ; } -#Vertical integral of northward total energy flux +#Total column vertically-integrated northward total energy flux '162076' = { table2Version = 162 ; indicatorOfParameter = 76 ; } -#Vertical integral of eastward ozone flux +#Total column vertically-integrated eastward ozone flux '162077' = { table2Version = 162 ; indicatorOfParameter = 77 ; } -#Vertical integral of northward ozone flux +#Total column vertically-integrated northward ozone flux '162078' = { table2Version = 162 ; indicatorOfParameter = 78 ; } -#Vertical integral of divergence of mass flux +#Total column vertically-integrated divergence of mass flux '162081' = { table2Version = 162 ; indicatorOfParameter = 81 ; } -#Vertical integral of divergence of kinetic energy flux +#Total column vertically-integrated divergence of kinetic energy flux '162082' = { table2Version = 162 ; indicatorOfParameter = 82 ; } -#Vertical integral of divergence of thermal energy flux +#Total column vertically-integrated divergence of thermal energy flux '162083' = { table2Version = 162 ; indicatorOfParameter = 83 ; @@ -13819,17 +13819,17 @@ table2Version = 162 ; indicatorOfParameter = 84 ; } -#Vertical integral of divergence of geopotential flux +#Total column vertically-integrated divergence of geopotential flux '162085' = { table2Version = 162 ; indicatorOfParameter = 85 ; } -#Vertical integral of divergence of total energy flux +#Total column vertically-integrated divergence of total energy flux '162086' = { table2Version = 162 ; indicatorOfParameter = 86 ; } -#Vertical integral of divergence of ozone flux +#Total column vertically-integrated divergence of ozone flux '162087' = { table2Version = 162 ; indicatorOfParameter = 87 ; diff --git a/definitions/grib1/localConcepts/ecmf/shortName.def b/definitions/grib1/localConcepts/ecmf/shortName.def index c3429bc9d..c7fde21ea 100644 --- a/definitions/grib1/localConcepts/ecmf/shortName.def +++ b/definitions/grib1/localConcepts/ecmf/shortName.def @@ -3584,37 +3584,37 @@ table2Version = 162 ; indicatorOfParameter = 45 ; } -#Vertical integral of divergence of cloud liquid water flux +#Total column vertically-integrated divergence of cloud liquid water flux 'vilwd' = { table2Version = 162 ; indicatorOfParameter = 79 ; } -#Vertical integral of divergence of cloud frozen water flux +#Total column vertically-integrated divergence of cloud frozen water flux 'viiwd' = { table2Version = 162 ; indicatorOfParameter = 80 ; } -#Vertical integral of eastward cloud liquid water flux +#Total column vertically-integrated eastward cloud liquid water flux 'vilwe' = { table2Version = 162 ; indicatorOfParameter = 88 ; } -#Vertical integral of northward cloud liquid water flux +#Total column vertically-integrated northward cloud liquid water flux 'vilwn' = { table2Version = 162 ; indicatorOfParameter = 89 ; } -#Vertical integral of eastward cloud frozen water flux +#Total column vertically-integrated eastward cloud frozen water flux 'viiwe' = { table2Version = 162 ; indicatorOfParameter = 90 ; } -#Vertical integral of northward cloud frozen water flux +#Total column vertically-integrated northward cloud frozen water flux 'viiwn' = { table2Version = 162 ; indicatorOfParameter = 91 ; } -#Vertical integral of mass tendency +#Total column vertically-integrated mass tendency 'vimat' = { table2Version = 162 ; indicatorOfParameter = 92 ; @@ -13669,32 +13669,32 @@ table2Version = 162 ; indicatorOfParameter = 51 ; } -#Vertical integral of mass of atmosphere +#Total column vertically-integrated mass of atmosphere 'vima' = { table2Version = 162 ; indicatorOfParameter = 53 ; } -#Vertical integral of temperature +#Total column vertically-integrated temperature 'vit' = { table2Version = 162 ; indicatorOfParameter = 54 ; } -#Vertical integral of water vapour +#Total column vertically-integrated water vapour 'viwv' = { table2Version = 162 ; indicatorOfParameter = 55 ; } -#Vertical integral of cloud liquid water +#Total column vertically-integrated cloud liquid water 'vilw' = { table2Version = 162 ; indicatorOfParameter = 56 ; } -#Vertical integral of cloud frozen water +#Total column vertically-integrated cloud frozen water 'viiw' = { table2Version = 162 ; indicatorOfParameter = 57 ; } -#Vertical integral of ozone +#Total column vertically-integrated ozone 'vioz' = { table2Version = 162 ; indicatorOfParameter = 58 ; @@ -13714,7 +13714,7 @@ table2Version = 162 ; indicatorOfParameter = 61 ; } -#Vertical integral of potential+internal+latent energy +#Total column vertically-integrated potential+internal+latent energy 'vipile' = { table2Version = 162 ; indicatorOfParameter = 62 ; @@ -13724,92 +13724,92 @@ table2Version = 162 ; indicatorOfParameter = 63 ; } -#Vertical integral of energy conversion +#Total column vertically-integrated energy conversion 'viec' = { table2Version = 162 ; indicatorOfParameter = 64 ; } -#Vertical integral of eastward mass flux +#Total column vertically-integrated eastward mass flux 'vimae' = { table2Version = 162 ; indicatorOfParameter = 65 ; } -#Vertical integral of northward mass flux +#Total column vertically-integrated northward mass flux 'viman' = { table2Version = 162 ; indicatorOfParameter = 66 ; } -#Vertical integral of eastward kinetic energy flux +#Total column vertically-integrated eastward kinetic energy flux 'vikee' = { table2Version = 162 ; indicatorOfParameter = 67 ; } -#Vertical integral of northward kinetic energy flux +#Total column vertically-integrated northward kinetic energy flux 'viken' = { table2Version = 162 ; indicatorOfParameter = 68 ; } -#Vertical integral of eastward heat flux +#Total column vertically-integrated eastward heat flux 'vithee' = { table2Version = 162 ; indicatorOfParameter = 69 ; } -#Vertical integral of northward heat flux +#Total column vertically-integrated northward heat flux 'vithen' = { table2Version = 162 ; indicatorOfParameter = 70 ; } -#Vertical integral of eastward water vapour flux +#Total column vertically-integrated eastward water vapour flux 'viwve' = { table2Version = 162 ; indicatorOfParameter = 71 ; } -#Vertical integral of northward water vapour flux +#Total column vertically-integrated northward water vapour flux 'viwvn' = { table2Version = 162 ; indicatorOfParameter = 72 ; } -#Vertical integral of eastward geopotential flux +#Total column vertically-integrated eastward geopotential flux 'vige' = { table2Version = 162 ; indicatorOfParameter = 73 ; } -#Vertical integral of northward geopotential flux +#Total column vertically-integrated northward geopotential flux 'vign' = { table2Version = 162 ; indicatorOfParameter = 74 ; } -#Vertical integral of eastward total energy flux +#Total column vertically-integrated eastward total energy flux 'vitee' = { table2Version = 162 ; indicatorOfParameter = 75 ; } -#Vertical integral of northward total energy flux +#Total column vertically-integrated northward total energy flux 'viten' = { table2Version = 162 ; indicatorOfParameter = 76 ; } -#Vertical integral of eastward ozone flux +#Total column vertically-integrated eastward ozone flux 'vioze' = { table2Version = 162 ; indicatorOfParameter = 77 ; } -#Vertical integral of northward ozone flux +#Total column vertically-integrated northward ozone flux 'viozn' = { table2Version = 162 ; indicatorOfParameter = 78 ; } -#Vertical integral of divergence of mass flux +#Total column vertically-integrated divergence of mass flux 'vimad' = { table2Version = 162 ; indicatorOfParameter = 81 ; } -#Vertical integral of divergence of kinetic energy flux +#Total column vertically-integrated divergence of kinetic energy flux 'viked' = { table2Version = 162 ; indicatorOfParameter = 82 ; } -#Vertical integral of divergence of thermal energy flux +#Total column vertically-integrated divergence of thermal energy flux 'vithed' = { table2Version = 162 ; indicatorOfParameter = 83 ; @@ -13819,17 +13819,17 @@ table2Version = 162 ; indicatorOfParameter = 84 ; } -#Vertical integral of divergence of geopotential flux +#Total column vertically-integrated divergence of geopotential flux 'vigd' = { table2Version = 162 ; indicatorOfParameter = 85 ; } -#Vertical integral of divergence of total energy flux +#Total column vertically-integrated divergence of total energy flux 'vited' = { table2Version = 162 ; indicatorOfParameter = 86 ; } -#Vertical integral of divergence of ozone flux +#Total column vertically-integrated divergence of ozone flux 'viozd' = { table2Version = 162 ; indicatorOfParameter = 87 ; diff --git a/definitions/grib1/localConcepts/ecmf/units.def b/definitions/grib1/localConcepts/ecmf/units.def index 0217a43b1..ae33fd2ee 100644 --- a/definitions/grib1/localConcepts/ecmf/units.def +++ b/definitions/grib1/localConcepts/ecmf/units.def @@ -3584,37 +3584,37 @@ table2Version = 162 ; indicatorOfParameter = 45 ; } -#Vertical integral of divergence of cloud liquid water flux +#Total column vertically-integrated divergence of cloud liquid water flux 'kg m**-2 s**-1' = { table2Version = 162 ; indicatorOfParameter = 79 ; } -#Vertical integral of divergence of cloud frozen water flux +#Total column vertically-integrated divergence of cloud frozen water flux 'kg m**-2 s**-1' = { table2Version = 162 ; indicatorOfParameter = 80 ; } -#Vertical integral of eastward cloud liquid water flux +#Total column vertically-integrated eastward cloud liquid water flux 'kg m**-1 s**-1' = { table2Version = 162 ; indicatorOfParameter = 88 ; } -#Vertical integral of northward cloud liquid water flux +#Total column vertically-integrated northward cloud liquid water flux 'kg m**-1 s**-1' = { table2Version = 162 ; indicatorOfParameter = 89 ; } -#Vertical integral of eastward cloud frozen water flux +#Total column vertically-integrated eastward cloud frozen water flux 'kg m**-1 s**-1' = { table2Version = 162 ; indicatorOfParameter = 90 ; } -#Vertical integral of northward cloud frozen water flux +#Total column vertically-integrated northward cloud frozen water flux 'kg m**-1 s**-1' = { table2Version = 162 ; indicatorOfParameter = 91 ; } -#Vertical integral of mass tendency +#Total column vertically-integrated mass tendency 'kg m**-2 s**-1' = { table2Version = 162 ; indicatorOfParameter = 92 ; @@ -13669,32 +13669,32 @@ table2Version = 162 ; indicatorOfParameter = 51 ; } -#Vertical integral of mass of atmosphere +#Total column vertically-integrated mass of atmosphere 'kg m**-2' = { table2Version = 162 ; indicatorOfParameter = 53 ; } -#Vertical integral of temperature +#Total column vertically-integrated temperature 'K kg m**-2' = { table2Version = 162 ; indicatorOfParameter = 54 ; } -#Vertical integral of water vapour +#Total column vertically-integrated water vapour 'kg m**-2' = { table2Version = 162 ; indicatorOfParameter = 55 ; } -#Vertical integral of cloud liquid water +#Total column vertically-integrated cloud liquid water 'kg m**-2' = { table2Version = 162 ; indicatorOfParameter = 56 ; } -#Vertical integral of cloud frozen water +#Total column vertically-integrated cloud frozen water 'kg m**-2' = { table2Version = 162 ; indicatorOfParameter = 57 ; } -#Vertical integral of ozone +#Total column vertically-integrated ozone 'kg m**-2' = { table2Version = 162 ; indicatorOfParameter = 58 ; @@ -13714,7 +13714,7 @@ table2Version = 162 ; indicatorOfParameter = 61 ; } -#Vertical integral of potential+internal+latent energy +#Total column vertically-integrated potential+internal+latent energy 'J m**-2' = { table2Version = 162 ; indicatorOfParameter = 62 ; @@ -13724,92 +13724,92 @@ table2Version = 162 ; indicatorOfParameter = 63 ; } -#Vertical integral of energy conversion +#Total column vertically-integrated energy conversion 'W m**-2' = { table2Version = 162 ; indicatorOfParameter = 64 ; } -#Vertical integral of eastward mass flux +#Total column vertically-integrated eastward mass flux 'kg m**-1 s**-1' = { table2Version = 162 ; indicatorOfParameter = 65 ; } -#Vertical integral of northward mass flux +#Total column vertically-integrated northward mass flux 'kg m**-1 s**-1' = { table2Version = 162 ; indicatorOfParameter = 66 ; } -#Vertical integral of eastward kinetic energy flux +#Total column vertically-integrated eastward kinetic energy flux 'W m**-1' = { table2Version = 162 ; indicatorOfParameter = 67 ; } -#Vertical integral of northward kinetic energy flux +#Total column vertically-integrated northward kinetic energy flux 'W m**-1' = { table2Version = 162 ; indicatorOfParameter = 68 ; } -#Vertical integral of eastward heat flux +#Total column vertically-integrated eastward heat flux 'W m**-1' = { table2Version = 162 ; indicatorOfParameter = 69 ; } -#Vertical integral of northward heat flux +#Total column vertically-integrated northward heat flux 'W m**-1' = { table2Version = 162 ; indicatorOfParameter = 70 ; } -#Vertical integral of eastward water vapour flux +#Total column vertically-integrated eastward water vapour flux 'kg m**-1 s**-1' = { table2Version = 162 ; indicatorOfParameter = 71 ; } -#Vertical integral of northward water vapour flux +#Total column vertically-integrated northward water vapour flux 'kg m**-1 s**-1' = { table2Version = 162 ; indicatorOfParameter = 72 ; } -#Vertical integral of eastward geopotential flux +#Total column vertically-integrated eastward geopotential flux 'W m**-1' = { table2Version = 162 ; indicatorOfParameter = 73 ; } -#Vertical integral of northward geopotential flux +#Total column vertically-integrated northward geopotential flux 'W m**-1' = { table2Version = 162 ; indicatorOfParameter = 74 ; } -#Vertical integral of eastward total energy flux +#Total column vertically-integrated eastward total energy flux 'W m**-1' = { table2Version = 162 ; indicatorOfParameter = 75 ; } -#Vertical integral of northward total energy flux +#Total column vertically-integrated northward total energy flux 'W m**-1' = { table2Version = 162 ; indicatorOfParameter = 76 ; } -#Vertical integral of eastward ozone flux +#Total column vertically-integrated eastward ozone flux 'kg m**-1 s**-1' = { table2Version = 162 ; indicatorOfParameter = 77 ; } -#Vertical integral of northward ozone flux +#Total column vertically-integrated northward ozone flux 'kg m**-1 s**-1' = { table2Version = 162 ; indicatorOfParameter = 78 ; } -#Vertical integral of divergence of mass flux +#Total column vertically-integrated divergence of mass flux 'kg m**-2 s**-1' = { table2Version = 162 ; indicatorOfParameter = 81 ; } -#Vertical integral of divergence of kinetic energy flux +#Total column vertically-integrated divergence of kinetic energy flux 'W m**-2' = { table2Version = 162 ; indicatorOfParameter = 82 ; } -#Vertical integral of divergence of thermal energy flux +#Total column vertically-integrated divergence of thermal energy flux 'W m**-2' = { table2Version = 162 ; indicatorOfParameter = 83 ; @@ -13819,17 +13819,17 @@ table2Version = 162 ; indicatorOfParameter = 84 ; } -#Vertical integral of divergence of geopotential flux +#Total column vertically-integrated divergence of geopotential flux 'W m**-2' = { table2Version = 162 ; indicatorOfParameter = 85 ; } -#Vertical integral of divergence of total energy flux +#Total column vertically-integrated divergence of total energy flux 'W m**-2' = { table2Version = 162 ; indicatorOfParameter = 86 ; } -#Vertical integral of divergence of ozone flux +#Total column vertically-integrated divergence of ozone flux 'kg m**-2 s**-1' = { table2Version = 162 ; indicatorOfParameter = 87 ; diff --git a/definitions/grib1/localConcepts/rjtd/name.def b/definitions/grib1/localConcepts/rjtd/name.def index 284c4b0b7..3b4fa8db8 100644 --- a/definitions/grib1/localConcepts/rjtd/name.def +++ b/definitions/grib1/localConcepts/rjtd/name.def @@ -910,23 +910,23 @@ table2Version = 200 ; indicatorOfParameter = 87 ; } -#Vertical integral of eastward heat flux -'Vertical integral of eastward heat flux' = { +#Total column vertically-integrated eastward heat flux +'Total column vertically-integrated eastward heat flux' = { table2Version = 200 ; indicatorOfParameter = 190 ; } -#Vertical integral of northward heat flux -'Vertical integral of northward heat flux' = { +#Total column vertically-integrated northward heat flux +'Total column vertically-integrated northward heat flux' = { table2Version = 200 ; indicatorOfParameter = 191 ; } -#Vertical integral of eastward water vapour flux -'Vertical integral of eastward water vapour flux' = { +#Total column vertically-integrated eastward water vapour flux +'Total column vertically-integrated eastward water vapour flux' = { table2Version = 200 ; indicatorOfParameter = 157 ; } -#Vertical integral of northward water vapour flux -'Vertical integral of northward water vapour flux' = { +#Total column vertically-integrated northward water vapour flux +'Total column vertically-integrated northward water vapour flux' = { table2Version = 200 ; indicatorOfParameter = 152 ; } diff --git a/definitions/grib1/localConcepts/rjtd/paramId.def b/definitions/grib1/localConcepts/rjtd/paramId.def index 640b96537..392359de9 100644 --- a/definitions/grib1/localConcepts/rjtd/paramId.def +++ b/definitions/grib1/localConcepts/rjtd/paramId.def @@ -910,22 +910,22 @@ table2Version = 200 ; indicatorOfParameter = 87 ; } -#Vertical integral of eastward heat flux +#Total column vertically-integrated eastward heat flux '162069' = { table2Version = 200 ; indicatorOfParameter = 190 ; } -#Vertical integral of northward heat flux +#Total column vertically-integrated northward heat flux '162070' = { table2Version = 200 ; indicatorOfParameter = 191 ; } -#Vertical integral of eastward water vapour flux +#Total column vertically-integrated eastward water vapour flux '162071' = { table2Version = 200 ; indicatorOfParameter = 157 ; } -#Vertical integral of northward water vapour flux +#Total column vertically-integrated northward water vapour flux '162072' = { table2Version = 200 ; indicatorOfParameter = 152 ; diff --git a/definitions/grib1/localConcepts/rjtd/shortName.def b/definitions/grib1/localConcepts/rjtd/shortName.def index 6ddcc6e86..766592e9b 100644 --- a/definitions/grib1/localConcepts/rjtd/shortName.def +++ b/definitions/grib1/localConcepts/rjtd/shortName.def @@ -910,22 +910,22 @@ table2Version = 200 ; indicatorOfParameter = 87 ; } -#Vertical integral of eastward heat flux +#Total column vertically-integrated eastward heat flux 'vithee' = { table2Version = 200 ; indicatorOfParameter = 190 ; } -#Vertical integral of northward heat flux +#Total column vertically-integrated northward heat flux 'vithen' = { table2Version = 200 ; indicatorOfParameter = 191 ; } -#Vertical integral of eastward water vapour flux +#Total column vertically-integrated eastward water vapour flux 'viwve' = { table2Version = 200 ; indicatorOfParameter = 157 ; } -#Vertical integral of northward water vapour flux +#Total column vertically-integrated northward water vapour flux 'viwvn' = { table2Version = 200 ; indicatorOfParameter = 152 ; diff --git a/definitions/grib1/localConcepts/rjtd/units.def b/definitions/grib1/localConcepts/rjtd/units.def index b3df8c50e..81ef6cf02 100644 --- a/definitions/grib1/localConcepts/rjtd/units.def +++ b/definitions/grib1/localConcepts/rjtd/units.def @@ -910,22 +910,22 @@ table2Version = 200 ; indicatorOfParameter = 87 ; } -#Vertical integral of eastward heat flux +#Total column vertically-integrated eastward heat flux 'W m**-1' = { table2Version = 200 ; indicatorOfParameter = 190 ; } -#Vertical integral of northward heat flux +#Total column vertically-integrated northward heat flux 'W m**-1' = { table2Version = 200 ; indicatorOfParameter = 191 ; } -#Vertical integral of eastward water vapour flux +#Total column vertically-integrated eastward water vapour flux 'kg m**-1 s**-1' = { table2Version = 200 ; indicatorOfParameter = 157 ; } -#Vertical integral of northward water vapour flux +#Total column vertically-integrated northward water vapour flux 'kg m**-1 s**-1' = { table2Version = 200 ; indicatorOfParameter = 152 ; diff --git a/definitions/grib2/cfVarName.def b/definitions/grib2/cfVarName.def index ecfe94186..6ce0a95b5 100644 --- a/definitions/grib2/cfVarName.def +++ b/definitions/grib2/cfVarName.def @@ -245,6 +245,26 @@ scaleFactorOfFirstFixedSurface = 0 ; typeOfStatisticalProcessing = 0 ; } +#Time-maximum 2 metre relative humidity +'max_2r' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 2 ; + } +#Time-minimum 2 metre relative humidity +'min_2r' = { + discipline = 0 ; + parameterCategory = 1 ; + parameterNumber = 1 ; + typeOfFirstFixedSurface = 103 ; + scaledValueOfFirstFixedSurface = 2 ; + scaleFactorOfFirstFixedSurface = 0 ; + typeOfStatisticalProcessing = 3 ; + } #5-wave geopotential height 'wavh5' = { discipline = 0 ; diff --git a/definitions/grib2/localConcepts/era/name.def b/definitions/grib2/localConcepts/era/name.def index 82944f3b2..1ed54baae 100644 --- a/definitions/grib2/localConcepts/era/name.def +++ b/definitions/grib2/localConcepts/era/name.def @@ -620,128 +620,128 @@ parameterCategory = 162 ; parameterNumber = 51 ; } -#Vertical integral of temperature -'Vertical integral of temperature' = { +#Total column vertically-integrated temperature +'Total column vertically-integrated temperature' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 54 ; } -#Vertical integral of cloud liquid water -'Vertical integral of cloud liquid water' = { +#Total column vertically-integrated cloud liquid water +'Total column vertically-integrated cloud liquid water' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 56 ; } -#Vertical integral of cloud frozen water -'Vertical integral of cloud frozen water' = { +#Total column vertically-integrated cloud frozen water +'Total column vertically-integrated cloud frozen water' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 57 ; } -#Vertical integral of ozone -'Vertical integral of ozone' = { +#Total column vertically-integrated ozone +'Total column vertically-integrated ozone' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 58 ; } -#Vertical integral of energy conversion -'Vertical integral of energy conversion' = { +#Total column vertically-integrated energy conversion +'Total column vertically-integrated energy conversion' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 64 ; } -#Vertical integral of eastward mass flux -'Vertical integral of eastward mass flux' = { +#Total column vertically-integrated eastward mass flux +'Total column vertically-integrated eastward mass flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 65 ; } -#Vertical integral of northward mass flux -'Vertical integral of northward mass flux' = { +#Total column vertically-integrated northward mass flux +'Total column vertically-integrated northward mass flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 66 ; } -#Vertical integral of eastward kinetic energy flux -'Vertical integral of eastward kinetic energy flux' = { +#Total column vertically-integrated eastward kinetic energy flux +'Total column vertically-integrated eastward kinetic energy flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 67 ; } -#Vertical integral of northward kinetic energy flux -'Vertical integral of northward kinetic energy flux' = { +#Total column vertically-integrated northward kinetic energy flux +'Total column vertically-integrated northward kinetic energy flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 68 ; } -#Vertical integral of eastward geopotential flux -'Vertical integral of eastward geopotential flux' = { +#Total column vertically-integrated eastward geopotential flux +'Total column vertically-integrated eastward geopotential flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 73 ; } -#Vertical integral of northward geopotential flux -'Vertical integral of northward geopotential flux' = { +#Total column vertically-integrated northward geopotential flux +'Total column vertically-integrated northward geopotential flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 74 ; } -#Vertical integral of eastward total energy flux -'Vertical integral of eastward total energy flux' = { +#Total column vertically-integrated eastward total energy flux +'Total column vertically-integrated eastward total energy flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 75 ; } -#Vertical integral of northward total energy flux -'Vertical integral of northward total energy flux' = { +#Total column vertically-integrated northward total energy flux +'Total column vertically-integrated northward total energy flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 76 ; } -#Vertical integral of eastward ozone flux -'Vertical integral of eastward ozone flux' = { +#Total column vertically-integrated eastward ozone flux +'Total column vertically-integrated eastward ozone flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 77 ; } -#Vertical integral of northward ozone flux -'Vertical integral of northward ozone flux' = { +#Total column vertically-integrated northward ozone flux +'Total column vertically-integrated northward ozone flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 78 ; } -#Vertical integral of divergence of mass flux -'Vertical integral of divergence of mass flux' = { +#Total column vertically-integrated divergence of mass flux +'Total column vertically-integrated divergence of mass flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 81 ; } -#Vertical integral of divergence of kinetic energy flux -'Vertical integral of divergence of kinetic energy flux' = { +#Total column vertically-integrated divergence of kinetic energy flux +'Total column vertically-integrated divergence of kinetic energy flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 82 ; } -#Vertical integral of divergence of thermal energy flux -'Vertical integral of divergence of thermal energy flux' = { +#Total column vertically-integrated divergence of thermal energy flux +'Total column vertically-integrated divergence of thermal energy flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 83 ; } -#Vertical integral of divergence of geopotential flux -'Vertical integral of divergence of geopotential flux' = { +#Total column vertically-integrated divergence of geopotential flux +'Total column vertically-integrated divergence of geopotential flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 85 ; } -#Vertical integral of divergence of total energy flux -'Vertical integral of divergence of total energy flux' = { +#Total column vertically-integrated divergence of total energy flux +'Total column vertically-integrated divergence of total energy flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 86 ; } -#Vertical integral of divergence of ozone flux -'Vertical integral of divergence of ozone flux' = { +#Total column vertically-integrated divergence of ozone flux +'Total column vertically-integrated divergence of ozone flux' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 87 ; diff --git a/definitions/grib2/localConcepts/era/paramId.def b/definitions/grib2/localConcepts/era/paramId.def index b4c978e14..592523141 100644 --- a/definitions/grib2/localConcepts/era/paramId.def +++ b/definitions/grib2/localConcepts/era/paramId.def @@ -620,127 +620,127 @@ parameterCategory = 162 ; parameterNumber = 51 ; } -#Vertical integral of temperature +#Total column vertically-integrated temperature '162054' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 54 ; } -#Vertical integral of cloud liquid water +#Total column vertically-integrated cloud liquid water '162056' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 56 ; } -#Vertical integral of cloud frozen water +#Total column vertically-integrated cloud frozen water '162057' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 57 ; } -#Vertical integral of ozone +#Total column vertically-integrated ozone '162058' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 58 ; } -#Vertical integral of energy conversion +#Total column vertically-integrated energy conversion '162064' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 64 ; } -#Vertical integral of eastward mass flux +#Total column vertically-integrated eastward mass flux '162065' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 65 ; } -#Vertical integral of northward mass flux +#Total column vertically-integrated northward mass flux '162066' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 66 ; } -#Vertical integral of eastward kinetic energy flux +#Total column vertically-integrated eastward kinetic energy flux '162067' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 67 ; } -#Vertical integral of northward kinetic energy flux +#Total column vertically-integrated northward kinetic energy flux '162068' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 68 ; } -#Vertical integral of eastward geopotential flux +#Total column vertically-integrated eastward geopotential flux '162073' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 73 ; } -#Vertical integral of northward geopotential flux +#Total column vertically-integrated northward geopotential flux '162074' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 74 ; } -#Vertical integral of eastward total energy flux +#Total column vertically-integrated eastward total energy flux '162075' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 75 ; } -#Vertical integral of northward total energy flux +#Total column vertically-integrated northward total energy flux '162076' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 76 ; } -#Vertical integral of eastward ozone flux +#Total column vertically-integrated eastward ozone flux '162077' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 77 ; } -#Vertical integral of northward ozone flux +#Total column vertically-integrated northward ozone flux '162078' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 78 ; } -#Vertical integral of divergence of mass flux +#Total column vertically-integrated divergence of mass flux '162081' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 81 ; } -#Vertical integral of divergence of kinetic energy flux +#Total column vertically-integrated divergence of kinetic energy flux '162082' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 82 ; } -#Vertical integral of divergence of thermal energy flux +#Total column vertically-integrated divergence of thermal energy flux '162083' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 83 ; } -#Vertical integral of divergence of geopotential flux +#Total column vertically-integrated divergence of geopotential flux '162085' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 85 ; } -#Vertical integral of divergence of total energy flux +#Total column vertically-integrated divergence of total energy flux '162086' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 86 ; } -#Vertical integral of divergence of ozone flux +#Total column vertically-integrated divergence of ozone flux '162087' = { discipline = 192 ; parameterCategory = 162 ; diff --git a/definitions/grib2/localConcepts/era/shortName.def b/definitions/grib2/localConcepts/era/shortName.def index eed1dffc3..41390b397 100644 --- a/definitions/grib2/localConcepts/era/shortName.def +++ b/definitions/grib2/localConcepts/era/shortName.def @@ -620,127 +620,127 @@ parameterCategory = 162 ; parameterNumber = 51 ; } -#Vertical integral of temperature +#Total column vertically-integrated temperature 'vit' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 54 ; } -#Vertical integral of cloud liquid water +#Total column vertically-integrated cloud liquid water 'vilw' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 56 ; } -#Vertical integral of cloud frozen water +#Total column vertically-integrated cloud frozen water 'viiw' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 57 ; } -#Vertical integral of ozone +#Total column vertically-integrated ozone 'vioz' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 58 ; } -#Vertical integral of energy conversion +#Total column vertically-integrated energy conversion 'viec' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 64 ; } -#Vertical integral of eastward mass flux +#Total column vertically-integrated eastward mass flux 'vimae' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 65 ; } -#Vertical integral of northward mass flux +#Total column vertically-integrated northward mass flux 'viman' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 66 ; } -#Vertical integral of eastward kinetic energy flux +#Total column vertically-integrated eastward kinetic energy flux 'vikee' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 67 ; } -#Vertical integral of northward kinetic energy flux +#Total column vertically-integrated northward kinetic energy flux 'viken' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 68 ; } -#Vertical integral of eastward geopotential flux +#Total column vertically-integrated eastward geopotential flux 'vige' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 73 ; } -#Vertical integral of northward geopotential flux +#Total column vertically-integrated northward geopotential flux 'vign' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 74 ; } -#Vertical integral of eastward total energy flux +#Total column vertically-integrated eastward total energy flux 'vitee' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 75 ; } -#Vertical integral of northward total energy flux +#Total column vertically-integrated northward total energy flux 'viten' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 76 ; } -#Vertical integral of eastward ozone flux +#Total column vertically-integrated eastward ozone flux 'vioze' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 77 ; } -#Vertical integral of northward ozone flux +#Total column vertically-integrated northward ozone flux 'viozn' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 78 ; } -#Vertical integral of divergence of mass flux +#Total column vertically-integrated divergence of mass flux 'vimad' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 81 ; } -#Vertical integral of divergence of kinetic energy flux +#Total column vertically-integrated divergence of kinetic energy flux 'viked' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 82 ; } -#Vertical integral of divergence of thermal energy flux +#Total column vertically-integrated divergence of thermal energy flux 'vithed' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 83 ; } -#Vertical integral of divergence of geopotential flux +#Total column vertically-integrated divergence of geopotential flux 'vigd' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 85 ; } -#Vertical integral of divergence of total energy flux +#Total column vertically-integrated divergence of total energy flux 'vited' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 86 ; } -#Vertical integral of divergence of ozone flux +#Total column vertically-integrated divergence of ozone flux 'viozd' = { discipline = 192 ; parameterCategory = 162 ; diff --git a/definitions/grib2/localConcepts/era/units.def b/definitions/grib2/localConcepts/era/units.def index 28ac983af..171b1f44d 100644 --- a/definitions/grib2/localConcepts/era/units.def +++ b/definitions/grib2/localConcepts/era/units.def @@ -620,127 +620,127 @@ parameterCategory = 162 ; parameterNumber = 51 ; } -#Vertical integral of temperature +#Total column vertically-integrated temperature 'K kg m**-2' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 54 ; } -#Vertical integral of cloud liquid water +#Total column vertically-integrated cloud liquid water 'kg m**-2' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 56 ; } -#Vertical integral of cloud frozen water +#Total column vertically-integrated cloud frozen water 'kg m**-2' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 57 ; } -#Vertical integral of ozone +#Total column vertically-integrated ozone 'kg m**-2' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 58 ; } -#Vertical integral of energy conversion +#Total column vertically-integrated energy conversion 'W m**-2' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 64 ; } -#Vertical integral of eastward mass flux +#Total column vertically-integrated eastward mass flux 'kg m**-1 s**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 65 ; } -#Vertical integral of northward mass flux +#Total column vertically-integrated northward mass flux 'kg m**-1 s**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 66 ; } -#Vertical integral of eastward kinetic energy flux +#Total column vertically-integrated eastward kinetic energy flux 'W m**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 67 ; } -#Vertical integral of northward kinetic energy flux +#Total column vertically-integrated northward kinetic energy flux 'W m**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 68 ; } -#Vertical integral of eastward geopotential flux +#Total column vertically-integrated eastward geopotential flux 'W m**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 73 ; } -#Vertical integral of northward geopotential flux +#Total column vertically-integrated northward geopotential flux 'W m**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 74 ; } -#Vertical integral of eastward total energy flux +#Total column vertically-integrated eastward total energy flux 'W m**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 75 ; } -#Vertical integral of northward total energy flux +#Total column vertically-integrated northward total energy flux 'W m**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 76 ; } -#Vertical integral of eastward ozone flux +#Total column vertically-integrated eastward ozone flux 'kg m**-1 s**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 77 ; } -#Vertical integral of northward ozone flux +#Total column vertically-integrated northward ozone flux 'kg m**-1 s**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 78 ; } -#Vertical integral of divergence of mass flux +#Total column vertically-integrated divergence of mass flux 'kg m**-2 s**-1' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 81 ; } -#Vertical integral of divergence of kinetic energy flux +#Total column vertically-integrated divergence of kinetic energy flux 'W m**-2' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 82 ; } -#Vertical integral of divergence of thermal energy flux +#Total column vertically-integrated divergence of thermal energy flux 'W m**-2' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 83 ; } -#Vertical integral of divergence of geopotential flux +#Total column vertically-integrated divergence of geopotential flux 'W m**-2' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 85 ; } -#Vertical integral of divergence of total energy flux +#Total column vertically-integrated divergence of total energy flux 'W m**-2' = { discipline = 192 ; parameterCategory = 162 ; parameterNumber = 86 ; } -#Vertical integral of divergence of ozone flux +#Total column vertically-integrated divergence of ozone flux 'kg m**-2 s**-1' = { discipline = 192 ; parameterCategory = 162 ; diff --git a/definitions/grib2/localConcepts/era6/name.def b/definitions/grib2/localConcepts/era6/name.def index 6115bfbef..b8857e1c1 100644 --- a/definitions/grib2/localConcepts/era6/name.def +++ b/definitions/grib2/localConcepts/era6/name.def @@ -392,8 +392,8 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward ozone flux -'Time integrated, vertically integrated eastward ozone flux' = { +#Time-integrated total column vertically-integrated eastward ozone flux +'Time-integrated total column vertically-integrated eastward ozone flux' = { discipline = 0 ; parameterCategory = 20 ; parameterNumber = 78 ; @@ -403,8 +403,8 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated northward ozone flux -'Time integrated, vertically integrated northward ozone flux' = { +#Time-integrated total column vertically-integrated northward ozone flux +'Time-integrated total column vertically-integrated northward ozone flux' = { discipline = 0 ; parameterCategory = 20 ; parameterNumber = 79 ; @@ -414,8 +414,8 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated divergence of ozone flux -'Time integrated, vertically integrated divergence of ozone flux' = { +#Time-integrated total column vertically-integrated divergence of ozone flux +'Time-integrated total column vertically-integrated divergence of ozone flux' = { discipline = 0 ; parameterCategory = 20 ; parameterNumber = 80 ; @@ -425,8 +425,8 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated net source of ozone -'Time integrated, vertically integrated net source of ozone' = { +#Time-integrated total column vertically-integrated net source of ozone +'Time-integrated total column vertically-integrated net source of ozone' = { discipline = 0 ; parameterCategory = 20 ; parameterNumber = 81 ; diff --git a/definitions/grib2/localConcepts/era6/paramId.def b/definitions/grib2/localConcepts/era6/paramId.def index 00d86b9ba..b288a4d9e 100644 --- a/definitions/grib2/localConcepts/era6/paramId.def +++ b/definitions/grib2/localConcepts/era6/paramId.def @@ -392,7 +392,7 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward ozone flux +#Time-integrated total column vertically-integrated eastward ozone flux '233032' = { discipline = 0 ; parameterCategory = 20 ; @@ -403,7 +403,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated northward ozone flux +#Time-integrated total column vertically-integrated northward ozone flux '233033' = { discipline = 0 ; parameterCategory = 20 ; @@ -414,7 +414,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated divergence of ozone flux +#Time-integrated total column vertically-integrated divergence of ozone flux '233034' = { discipline = 0 ; parameterCategory = 20 ; @@ -425,7 +425,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated net source of ozone +#Time-integrated total column vertically-integrated net source of ozone '233035' = { discipline = 0 ; parameterCategory = 20 ; diff --git a/definitions/grib2/localConcepts/era6/shortName.def b/definitions/grib2/localConcepts/era6/shortName.def index 6976a2397..02dd1e85c 100644 --- a/definitions/grib2/localConcepts/era6/shortName.def +++ b/definitions/grib2/localConcepts/era6/shortName.def @@ -392,7 +392,7 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward ozone flux +#Time-integrated total column vertically-integrated eastward ozone flux 'tvioze' = { discipline = 0 ; parameterCategory = 20 ; @@ -403,7 +403,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated northward ozone flux +#Time-integrated total column vertically-integrated northward ozone flux 'tviozn' = { discipline = 0 ; parameterCategory = 20 ; @@ -414,7 +414,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated divergence of ozone flux +#Time-integrated total column vertically-integrated divergence of ozone flux 'tviozd' = { discipline = 0 ; parameterCategory = 20 ; @@ -425,7 +425,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated net source of ozone +#Time-integrated total column vertically-integrated net source of ozone 'tvions' = { discipline = 0 ; parameterCategory = 20 ; diff --git a/definitions/grib2/localConcepts/era6/units.def b/definitions/grib2/localConcepts/era6/units.def index edadfafe8..f6cb25b31 100644 --- a/definitions/grib2/localConcepts/era6/units.def +++ b/definitions/grib2/localConcepts/era6/units.def @@ -392,7 +392,7 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward ozone flux +#Time-integrated total column vertically-integrated eastward ozone flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 20 ; @@ -403,7 +403,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated northward ozone flux +#Time-integrated total column vertically-integrated northward ozone flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 20 ; @@ -414,7 +414,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated divergence of ozone flux +#Time-integrated total column vertically-integrated divergence of ozone flux 'kg m**-2' = { discipline = 0 ; parameterCategory = 20 ; @@ -425,7 +425,7 @@ typeOfStatisticalProcessing = 1 ; is_chemical = 1 ; } -#Time integrated, vertically integrated net source of ozone +#Time-integrated total column vertically-integrated net source of ozone 'kg m**-2' = { discipline = 0 ; parameterCategory = 20 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index d8c5a96fe..56d6adccc 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -4301,8 +4301,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated divergence of mass flux -'Time-integrated, total column vertically-integrated divergence of mass flux' = { +#Time-integrated total column vertically-integrated divergence of mass flux +'Time-integrated total column vertically-integrated divergence of mass flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 35 ; @@ -4310,8 +4310,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated eastward mass flux -'Time-integrated, total column vertically-integrated eastward mass flux' = { +#Time-integrated total column vertically-integrated eastward mass flux +'Time-integrated total column vertically-integrated eastward mass flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 36 ; @@ -4319,8 +4319,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated northward mass flux -'Time-integrated, total column vertically-integrated northward mass flux' = { +#Time-integrated total column vertically-integrated northward mass flux +'Time-integrated total column vertically-integrated northward mass flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 37 ; @@ -4328,8 +4328,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of water vapour flux -'Time integrated, vertically integrated divergence of water vapour flux' = { +#Time-integrated total column vertically-integrated divergence of water vapour flux +'Time-integrated total column vertically-integrated divergence of water vapour flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 160 ; @@ -4337,8 +4337,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of cloud liquid water flux -'Time integrated, vertically integrated divergence of cloud liquid water flux' = { +#Time-integrated total column vertically-integrated divergence of cloud liquid water flux +'Time-integrated total column vertically-integrated divergence of cloud liquid water flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 161 ; @@ -4346,8 +4346,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of cloud ice water flux -'Time integrated, vertically integrated divergence of cloud ice water flux' = { +#Time-integrated total column vertically-integrated divergence of cloud ice water flux +'Time-integrated total column vertically-integrated divergence of cloud ice water flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 162 ; @@ -4355,8 +4355,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of rain flux -'Time integrated, vertically integrated divergence of rain flux' = { +#Time-integrated total column vertically-integrated divergence of rain flux +'Time-integrated total column vertically-integrated divergence of rain flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 163 ; @@ -4364,8 +4364,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of snow flux -'Time integrated, vertically integrated divergence of snow flux' = { +#Time-integrated total column vertically-integrated divergence of snow flux +'Time-integrated total column vertically-integrated divergence of snow flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 164 ; @@ -4373,8 +4373,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward water vapour flux -'Time integrated, vertically integrated eastward water vapour flux' = { +#Time-integrated total column vertically-integrated eastward water vapour flux +'Time-integrated total column vertically-integrated eastward water vapour flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 150 ; @@ -4382,8 +4382,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward water vapour flux -'Time integrated, vertically integrated northward water vapour flux' = { +#Time-integrated total column vertically-integrated northward water vapour flux +'Time-integrated total column vertically-integrated northward water vapour flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 151 ; @@ -4391,8 +4391,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward cloud liquid water flux -'Time integrated, vertically integrated eastward cloud liquid water flux' = { +#Time-integrated total column vertically-integrated eastward cloud liquid water flux +'Time-integrated total column vertically-integrated eastward cloud liquid water flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 152 ; @@ -4400,8 +4400,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward cloud liquid water flux -'Time integrated, vertically integrated northward cloud liquid water flux' = { +#Time-integrated total column vertically-integrated northward cloud liquid water flux +'Time-integrated total column vertically-integrated northward cloud liquid water flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 153 ; @@ -4409,8 +4409,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward cloud ice water flux -'Time integrated, vertically integrated eastward cloud ice water flux' = { +#Time-integrated total column vertically-integrated eastward cloud ice water flux +'Time-integrated total column vertically-integrated eastward cloud ice water flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 154 ; @@ -4418,8 +4418,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward cloud ice water flux -'Time integrated, vertically integrated northward cloud ice water flux' = { +#Time-integrated total column vertically-integrated northward cloud ice water flux +'Time-integrated total column vertically-integrated northward cloud ice water flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 155 ; @@ -4427,8 +4427,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward rain flux -'Time integrated, vertically integrated eastward rain flux' = { +#Time-integrated total column vertically-integrated eastward rain flux +'Time-integrated total column vertically-integrated eastward rain flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 156 ; @@ -4436,8 +4436,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward rain flux -'Time integrated, vertically integrated northward rain flux' = { +#Time-integrated total column vertically-integrated northward rain flux +'Time-integrated total column vertically-integrated northward rain flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 157 ; @@ -4445,8 +4445,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward snow flux -'Time integrated, vertically integrated eastward snow flux' = { +#Time-integrated total column vertically-integrated eastward snow flux +'Time-integrated total column vertically-integrated eastward snow flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 158 ; @@ -4454,8 +4454,8 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward snow flux -'Time integrated, vertically integrated northward snow flux' = { +#Time-integrated total column vertically-integrated northward snow flux +'Time-integrated total column vertically-integrated northward snow flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 159 ; @@ -11284,8 +11284,8 @@ parameterCategory = 0 ; parameterNumber = 50 ; } -#Vertical integral of mass of atmosphere -'Vertical integral of mass of atmosphere' = { +#Total column vertically-integrated mass of atmosphere +'Total column vertically-integrated mass of atmosphere' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 39 ; @@ -11316,8 +11316,8 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of potential+internal+latent energy -'Vertical integral of potential+internal+latent energy' = { +#Total column vertically-integrated potential+internal+latent energy +'Total column vertically-integrated potential+internal+latent energy' = { discipline = 0 ; parameterCategory = 21 ; parameterNumber = 21 ; @@ -11332,104 +11332,104 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward mass flux -'Vertical integral of eastward mass flux' = { +#Total column vertically-integrated eastward mass flux +'Total column vertically-integrated eastward mass flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 36 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward mass flux -'Vertical integral of northward mass flux' = { +#Total column vertically-integrated northward mass flux +'Total column vertically-integrated northward mass flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 37 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward kinetic energy flux -'Vertical integral of eastward kinetic energy flux' = { +#Total column vertically-integrated eastward kinetic energy flux +'Total column vertically-integrated eastward kinetic energy flux' = { discipline = 0 ; parameterCategory = 21 ; parameterNumber = 9 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward kinetic energy flux -'Vertical integral of northward kinetic energy flux' = { +#Total column vertically-integrated northward kinetic energy flux +'Total column vertically-integrated northward kinetic energy flux' = { discipline = 0 ; parameterCategory = 21 ; parameterNumber = 10 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward heat flux -'Vertical integral of eastward heat flux' = { +#Total column vertically-integrated eastward heat flux +'Total column vertically-integrated eastward heat flux' = { discipline = 0 ; parameterCategory = 21 ; parameterNumber = 19 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward heat flux -'Vertical integral of northward heat flux' = { +#Total column vertically-integrated northward heat flux +'Total column vertically-integrated northward heat flux' = { discipline = 0 ; parameterCategory = 21 ; parameterNumber = 20 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward water vapour flux -'Vertical integral of eastward water vapour flux' = { +#Total column vertically-integrated eastward water vapour flux +'Total column vertically-integrated eastward water vapour flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 150 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward water vapour flux -'Vertical integral of northward water vapour flux' = { +#Total column vertically-integrated northward water vapour flux +'Total column vertically-integrated northward water vapour flux' = { discipline = 0 ; parameterCategory = 1 ; parameterNumber = 151 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward geopotential flux -'Vertical integral of eastward geopotential flux' = { +#Total column vertically-integrated eastward geopotential flux +'Total column vertically-integrated eastward geopotential flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 40 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward geopotential flux -'Vertical integral of northward geopotential flux' = { +#Total column vertically-integrated northward geopotential flux +'Total column vertically-integrated northward geopotential flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 41 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward total energy flux -'Vertical integral of eastward total energy flux' = { +#Total column vertically-integrated eastward total energy flux +'Total column vertically-integrated eastward total energy flux' = { discipline = 0 ; parameterCategory = 21 ; parameterNumber = 11 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward total energy flux -'Vertical integral of northward total energy flux' = { +#Total column vertically-integrated northward total energy flux +'Total column vertically-integrated northward total energy flux' = { discipline = 0 ; parameterCategory = 21 ; parameterNumber = 12 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward ozone flux -'Vertical integral of eastward ozone flux' = { +#Total column vertically-integrated eastward ozone flux +'Total column vertically-integrated eastward ozone flux' = { discipline = 0 ; parameterCategory = 20 ; parameterNumber = 78 ; @@ -11437,8 +11437,8 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; } -#Vertical integral of northward ozone flux -'Vertical integral of northward ozone flux' = { +#Total column vertically-integrated northward ozone flux +'Total column vertically-integrated northward ozone flux' = { discipline = 0 ; parameterCategory = 20 ; parameterNumber = 79 ; @@ -11446,16 +11446,16 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; } -#Vertical integral of divergence of mass flux -'Vertical integral of divergence of mass flux' = { +#Total column vertically-integrated divergence of mass flux +'Total column vertically-integrated divergence of mass flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 35 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of kinetic energy flux -'Vertical integral of divergence of kinetic energy flux' = { +#Total column vertically-integrated divergence of kinetic energy flux +'Total column vertically-integrated divergence of kinetic energy flux' = { discipline = 0 ; parameterCategory = 21 ; parameterNumber = 16 ; @@ -11470,24 +11470,24 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of geopotential flux -'Vertical integral of divergence of geopotential flux' = { +#Total column vertically-integrated divergence of geopotential flux +'Total column vertically-integrated divergence of geopotential flux' = { discipline = 0 ; parameterCategory = 3 ; parameterNumber = 43 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of total energy flux -'Vertical integral of divergence of total energy flux' = { +#Total column vertically-integrated divergence of total energy flux +'Total column vertically-integrated divergence of total energy flux' = { discipline = 0 ; parameterCategory = 21 ; parameterNumber = 17 ; typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of ozone flux -'Vertical integral of divergence of ozone flux' = { +#Total column vertically-integrated divergence of ozone flux +'Total column vertically-integrated divergence of ozone flux' = { discipline = 0 ; parameterCategory = 20 ; parameterNumber = 80 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 526405e73..6d5c38537 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -4301,7 +4301,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated divergence of mass flux +#Time-integrated total column vertically-integrated divergence of mass flux '233014' = { discipline = 0 ; parameterCategory = 3 ; @@ -4310,7 +4310,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated eastward mass flux +#Time-integrated total column vertically-integrated eastward mass flux '233015' = { discipline = 0 ; parameterCategory = 3 ; @@ -4319,7 +4319,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated northward mass flux +#Time-integrated total column vertically-integrated northward mass flux '233016' = { discipline = 0 ; parameterCategory = 3 ; @@ -4328,7 +4328,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of water vapour flux +#Time-integrated total column vertically-integrated divergence of water vapour flux '233017' = { discipline = 0 ; parameterCategory = 1 ; @@ -4337,7 +4337,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of cloud liquid water flux +#Time-integrated total column vertically-integrated divergence of cloud liquid water flux '233018' = { discipline = 0 ; parameterCategory = 1 ; @@ -4346,7 +4346,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of cloud ice water flux +#Time-integrated total column vertically-integrated divergence of cloud ice water flux '233019' = { discipline = 0 ; parameterCategory = 1 ; @@ -4355,7 +4355,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of rain flux +#Time-integrated total column vertically-integrated divergence of rain flux '233020' = { discipline = 0 ; parameterCategory = 1 ; @@ -4364,7 +4364,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of snow flux +#Time-integrated total column vertically-integrated divergence of snow flux '233021' = { discipline = 0 ; parameterCategory = 1 ; @@ -4373,7 +4373,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward water vapour flux +#Time-integrated total column vertically-integrated eastward water vapour flux '233022' = { discipline = 0 ; parameterCategory = 1 ; @@ -4382,7 +4382,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward water vapour flux +#Time-integrated total column vertically-integrated northward water vapour flux '233023' = { discipline = 0 ; parameterCategory = 1 ; @@ -4391,7 +4391,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward cloud liquid water flux +#Time-integrated total column vertically-integrated eastward cloud liquid water flux '233024' = { discipline = 0 ; parameterCategory = 1 ; @@ -4400,7 +4400,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward cloud liquid water flux +#Time-integrated total column vertically-integrated northward cloud liquid water flux '233025' = { discipline = 0 ; parameterCategory = 1 ; @@ -4409,7 +4409,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward cloud ice water flux +#Time-integrated total column vertically-integrated eastward cloud ice water flux '233026' = { discipline = 0 ; parameterCategory = 1 ; @@ -4418,7 +4418,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward cloud ice water flux +#Time-integrated total column vertically-integrated northward cloud ice water flux '233027' = { discipline = 0 ; parameterCategory = 1 ; @@ -4427,7 +4427,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward rain flux +#Time-integrated total column vertically-integrated eastward rain flux '233028' = { discipline = 0 ; parameterCategory = 1 ; @@ -4436,7 +4436,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward rain flux +#Time-integrated total column vertically-integrated northward rain flux '233029' = { discipline = 0 ; parameterCategory = 1 ; @@ -4445,7 +4445,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward snow flux +#Time-integrated total column vertically-integrated eastward snow flux '233030' = { discipline = 0 ; parameterCategory = 1 ; @@ -4454,7 +4454,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward snow flux +#Time-integrated total column vertically-integrated northward snow flux '233031' = { discipline = 0 ; parameterCategory = 1 ; @@ -11284,7 +11284,7 @@ parameterCategory = 0 ; parameterNumber = 50 ; } -#Vertical integral of mass of atmosphere +#Total column vertically-integrated mass of atmosphere '162053' = { discipline = 0 ; parameterCategory = 3 ; @@ -11316,7 +11316,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of potential+internal+latent energy +#Total column vertically-integrated potential+internal+latent energy '162062' = { discipline = 0 ; parameterCategory = 21 ; @@ -11332,7 +11332,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward mass flux +#Total column vertically-integrated eastward mass flux '162065' = { discipline = 0 ; parameterCategory = 3 ; @@ -11340,7 +11340,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward mass flux +#Total column vertically-integrated northward mass flux '162066' = { discipline = 0 ; parameterCategory = 3 ; @@ -11348,7 +11348,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward kinetic energy flux +#Total column vertically-integrated eastward kinetic energy flux '162067' = { discipline = 0 ; parameterCategory = 21 ; @@ -11356,7 +11356,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward kinetic energy flux +#Total column vertically-integrated northward kinetic energy flux '162068' = { discipline = 0 ; parameterCategory = 21 ; @@ -11364,7 +11364,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward heat flux +#Total column vertically-integrated eastward heat flux '162069' = { discipline = 0 ; parameterCategory = 21 ; @@ -11372,7 +11372,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward heat flux +#Total column vertically-integrated northward heat flux '162070' = { discipline = 0 ; parameterCategory = 21 ; @@ -11380,7 +11380,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward water vapour flux +#Total column vertically-integrated eastward water vapour flux '162071' = { discipline = 0 ; parameterCategory = 1 ; @@ -11388,7 +11388,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward water vapour flux +#Total column vertically-integrated northward water vapour flux '162072' = { discipline = 0 ; parameterCategory = 1 ; @@ -11396,7 +11396,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward geopotential flux +#Total column vertically-integrated eastward geopotential flux '162073' = { discipline = 0 ; parameterCategory = 3 ; @@ -11404,7 +11404,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward geopotential flux +#Total column vertically-integrated northward geopotential flux '162074' = { discipline = 0 ; parameterCategory = 3 ; @@ -11412,7 +11412,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward total energy flux +#Total column vertically-integrated eastward total energy flux '162075' = { discipline = 0 ; parameterCategory = 21 ; @@ -11420,7 +11420,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward total energy flux +#Total column vertically-integrated northward total energy flux '162076' = { discipline = 0 ; parameterCategory = 21 ; @@ -11428,7 +11428,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward ozone flux +#Total column vertically-integrated eastward ozone flux '162077' = { discipline = 0 ; parameterCategory = 20 ; @@ -11437,7 +11437,7 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; } -#Vertical integral of northward ozone flux +#Total column vertically-integrated northward ozone flux '162078' = { discipline = 0 ; parameterCategory = 20 ; @@ -11446,7 +11446,7 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; } -#Vertical integral of divergence of mass flux +#Total column vertically-integrated divergence of mass flux '162081' = { discipline = 0 ; parameterCategory = 3 ; @@ -11454,7 +11454,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of kinetic energy flux +#Total column vertically-integrated divergence of kinetic energy flux '162082' = { discipline = 0 ; parameterCategory = 21 ; @@ -11470,7 +11470,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of geopotential flux +#Total column vertically-integrated divergence of geopotential flux '162085' = { discipline = 0 ; parameterCategory = 3 ; @@ -11478,7 +11478,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of total energy flux +#Total column vertically-integrated divergence of total energy flux '162086' = { discipline = 0 ; parameterCategory = 21 ; @@ -11486,7 +11486,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of ozone flux +#Total column vertically-integrated divergence of ozone flux '162087' = { discipline = 0 ; parameterCategory = 20 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index ecaa6ff1f..78d215c1c 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -4301,7 +4301,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated divergence of mass flux +#Time-integrated total column vertically-integrated divergence of mass flux 'tvimad' = { discipline = 0 ; parameterCategory = 3 ; @@ -4310,7 +4310,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated eastward mass flux +#Time-integrated total column vertically-integrated eastward mass flux 'tvimae' = { discipline = 0 ; parameterCategory = 3 ; @@ -4319,7 +4319,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated northward mass flux +#Time-integrated total column vertically-integrated northward mass flux 'tviman' = { discipline = 0 ; parameterCategory = 3 ; @@ -4328,7 +4328,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of water vapour flux +#Time-integrated total column vertically-integrated divergence of water vapour flux 'tviwvd' = { discipline = 0 ; parameterCategory = 1 ; @@ -4337,7 +4337,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of cloud liquid water flux +#Time-integrated total column vertically-integrated divergence of cloud liquid water flux 'tviclwd' = { discipline = 0 ; parameterCategory = 1 ; @@ -4346,7 +4346,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of cloud ice water flux +#Time-integrated total column vertically-integrated divergence of cloud ice water flux 'tviciwd' = { discipline = 0 ; parameterCategory = 1 ; @@ -4355,7 +4355,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of rain flux +#Time-integrated total column vertically-integrated divergence of rain flux 'tvird' = { discipline = 0 ; parameterCategory = 1 ; @@ -4364,7 +4364,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of snow flux +#Time-integrated total column vertically-integrated divergence of snow flux 'tvisd' = { discipline = 0 ; parameterCategory = 1 ; @@ -4373,7 +4373,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward water vapour flux +#Time-integrated total column vertically-integrated eastward water vapour flux 'tviwve' = { discipline = 0 ; parameterCategory = 1 ; @@ -4382,7 +4382,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward water vapour flux +#Time-integrated total column vertically-integrated northward water vapour flux 'tviwvn' = { discipline = 0 ; parameterCategory = 1 ; @@ -4391,7 +4391,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward cloud liquid water flux +#Time-integrated total column vertically-integrated eastward cloud liquid water flux 'tviclwe' = { discipline = 0 ; parameterCategory = 1 ; @@ -4400,7 +4400,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward cloud liquid water flux +#Time-integrated total column vertically-integrated northward cloud liquid water flux 'tviclwn' = { discipline = 0 ; parameterCategory = 1 ; @@ -4409,7 +4409,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward cloud ice water flux +#Time-integrated total column vertically-integrated eastward cloud ice water flux 'tviciwe' = { discipline = 0 ; parameterCategory = 1 ; @@ -4418,7 +4418,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward cloud ice water flux +#Time-integrated total column vertically-integrated northward cloud ice water flux 'tviciwn' = { discipline = 0 ; parameterCategory = 1 ; @@ -4427,7 +4427,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward rain flux +#Time-integrated total column vertically-integrated eastward rain flux 'tvire' = { discipline = 0 ; parameterCategory = 1 ; @@ -4436,7 +4436,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward rain flux +#Time-integrated total column vertically-integrated northward rain flux 'tvirn' = { discipline = 0 ; parameterCategory = 1 ; @@ -4445,7 +4445,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward snow flux +#Time-integrated total column vertically-integrated eastward snow flux 'tvise' = { discipline = 0 ; parameterCategory = 1 ; @@ -4454,7 +4454,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward snow flux +#Time-integrated total column vertically-integrated northward snow flux 'tvisn' = { discipline = 0 ; parameterCategory = 1 ; @@ -11284,7 +11284,7 @@ parameterCategory = 0 ; parameterNumber = 50 ; } -#Vertical integral of mass of atmosphere +#Total column vertically-integrated mass of atmosphere 'vima' = { discipline = 0 ; parameterCategory = 3 ; @@ -11316,7 +11316,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of potential+internal+latent energy +#Total column vertically-integrated potential+internal+latent energy 'vipile' = { discipline = 0 ; parameterCategory = 21 ; @@ -11332,7 +11332,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward mass flux +#Total column vertically-integrated eastward mass flux 'vimae' = { discipline = 0 ; parameterCategory = 3 ; @@ -11340,7 +11340,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward mass flux +#Total column vertically-integrated northward mass flux 'viman' = { discipline = 0 ; parameterCategory = 3 ; @@ -11348,7 +11348,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward kinetic energy flux +#Total column vertically-integrated eastward kinetic energy flux 'vikee' = { discipline = 0 ; parameterCategory = 21 ; @@ -11356,7 +11356,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward kinetic energy flux +#Total column vertically-integrated northward kinetic energy flux 'viken' = { discipline = 0 ; parameterCategory = 21 ; @@ -11364,7 +11364,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward heat flux +#Total column vertically-integrated eastward heat flux 'vithee' = { discipline = 0 ; parameterCategory = 21 ; @@ -11372,7 +11372,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward heat flux +#Total column vertically-integrated northward heat flux 'vithen' = { discipline = 0 ; parameterCategory = 21 ; @@ -11380,7 +11380,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward water vapour flux +#Total column vertically-integrated eastward water vapour flux 'viwve' = { discipline = 0 ; parameterCategory = 1 ; @@ -11388,7 +11388,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward water vapour flux +#Total column vertically-integrated northward water vapour flux 'viwvn' = { discipline = 0 ; parameterCategory = 1 ; @@ -11396,7 +11396,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward geopotential flux +#Total column vertically-integrated eastward geopotential flux 'vige' = { discipline = 0 ; parameterCategory = 3 ; @@ -11404,7 +11404,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward geopotential flux +#Total column vertically-integrated northward geopotential flux 'vign' = { discipline = 0 ; parameterCategory = 3 ; @@ -11412,7 +11412,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward total energy flux +#Total column vertically-integrated eastward total energy flux 'vitee' = { discipline = 0 ; parameterCategory = 21 ; @@ -11420,7 +11420,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward total energy flux +#Total column vertically-integrated northward total energy flux 'viten' = { discipline = 0 ; parameterCategory = 21 ; @@ -11428,7 +11428,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward ozone flux +#Total column vertically-integrated eastward ozone flux 'vioze' = { discipline = 0 ; parameterCategory = 20 ; @@ -11437,7 +11437,7 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; } -#Vertical integral of northward ozone flux +#Total column vertically-integrated northward ozone flux 'viozn' = { discipline = 0 ; parameterCategory = 20 ; @@ -11446,7 +11446,7 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; } -#Vertical integral of divergence of mass flux +#Total column vertically-integrated divergence of mass flux 'vimad' = { discipline = 0 ; parameterCategory = 3 ; @@ -11454,7 +11454,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of kinetic energy flux +#Total column vertically-integrated divergence of kinetic energy flux 'viked' = { discipline = 0 ; parameterCategory = 21 ; @@ -11470,7 +11470,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of geopotential flux +#Total column vertically-integrated divergence of geopotential flux 'vigd' = { discipline = 0 ; parameterCategory = 3 ; @@ -11478,7 +11478,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of total energy flux +#Total column vertically-integrated divergence of total energy flux 'vited' = { discipline = 0 ; parameterCategory = 21 ; @@ -11486,7 +11486,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of ozone flux +#Total column vertically-integrated divergence of ozone flux 'viozd' = { discipline = 0 ; parameterCategory = 20 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index 091b8b5d3..22b733ff6 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -4301,7 +4301,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated divergence of mass flux +#Time-integrated total column vertically-integrated divergence of mass flux 'kg m**-2' = { discipline = 0 ; parameterCategory = 3 ; @@ -4310,7 +4310,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated eastward mass flux +#Time-integrated total column vertically-integrated eastward mass flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 3 ; @@ -4319,7 +4319,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time-integrated, total column vertically-integrated northward mass flux +#Time-integrated total column vertically-integrated northward mass flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 3 ; @@ -4328,7 +4328,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of water vapour flux +#Time-integrated total column vertically-integrated divergence of water vapour flux 'kg m**-2' = { discipline = 0 ; parameterCategory = 1 ; @@ -4337,7 +4337,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of cloud liquid water flux +#Time-integrated total column vertically-integrated divergence of cloud liquid water flux 'kg m**-2' = { discipline = 0 ; parameterCategory = 1 ; @@ -4346,7 +4346,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of cloud ice water flux +#Time-integrated total column vertically-integrated divergence of cloud ice water flux 'kg m**-2' = { discipline = 0 ; parameterCategory = 1 ; @@ -4355,7 +4355,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of rain flux +#Time-integrated total column vertically-integrated divergence of rain flux 'kg m**-2' = { discipline = 0 ; parameterCategory = 1 ; @@ -4364,7 +4364,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated divergence of snow flux +#Time-integrated total column vertically-integrated divergence of snow flux 'kg m**-2' = { discipline = 0 ; parameterCategory = 1 ; @@ -4373,7 +4373,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward water vapour flux +#Time-integrated total column vertically-integrated eastward water vapour flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -4382,7 +4382,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward water vapour flux +#Time-integrated total column vertically-integrated northward water vapour flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -4391,7 +4391,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward cloud liquid water flux +#Time-integrated total column vertically-integrated eastward cloud liquid water flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -4400,7 +4400,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward cloud liquid water flux +#Time-integrated total column vertically-integrated northward cloud liquid water flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -4409,7 +4409,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward cloud ice water flux +#Time-integrated total column vertically-integrated eastward cloud ice water flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -4418,7 +4418,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward cloud ice water flux +#Time-integrated total column vertically-integrated northward cloud ice water flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -4427,7 +4427,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward rain flux +#Time-integrated total column vertically-integrated eastward rain flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -4436,7 +4436,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward rain flux +#Time-integrated total column vertically-integrated northward rain flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -4445,7 +4445,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated eastward snow flux +#Time-integrated total column vertically-integrated eastward snow flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -4454,7 +4454,7 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 1 ; } -#Time integrated, vertically integrated northward snow flux +#Time-integrated total column vertically-integrated northward snow flux 'kg m**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -11284,7 +11284,7 @@ parameterCategory = 0 ; parameterNumber = 50 ; } -#Vertical integral of mass of atmosphere +#Total column vertically-integrated mass of atmosphere 'kg m**-2' = { discipline = 0 ; parameterCategory = 3 ; @@ -11316,7 +11316,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of potential+internal+latent energy +#Total column vertically-integrated potential+internal+latent energy 'J m**-2' = { discipline = 0 ; parameterCategory = 21 ; @@ -11332,7 +11332,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward mass flux +#Total column vertically-integrated eastward mass flux 'kg m**-1 s**-1' = { discipline = 0 ; parameterCategory = 3 ; @@ -11340,7 +11340,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward mass flux +#Total column vertically-integrated northward mass flux 'kg m**-1 s**-1' = { discipline = 0 ; parameterCategory = 3 ; @@ -11348,7 +11348,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward kinetic energy flux +#Total column vertically-integrated eastward kinetic energy flux 'W m**-1' = { discipline = 0 ; parameterCategory = 21 ; @@ -11356,7 +11356,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward kinetic energy flux +#Total column vertically-integrated northward kinetic energy flux 'W m**-1' = { discipline = 0 ; parameterCategory = 21 ; @@ -11364,7 +11364,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward heat flux +#Total column vertically-integrated eastward heat flux 'W m**-1' = { discipline = 0 ; parameterCategory = 21 ; @@ -11372,7 +11372,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward heat flux +#Total column vertically-integrated northward heat flux 'W m**-1' = { discipline = 0 ; parameterCategory = 21 ; @@ -11380,7 +11380,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward water vapour flux +#Total column vertically-integrated eastward water vapour flux 'kg m**-1 s**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -11388,7 +11388,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward water vapour flux +#Total column vertically-integrated northward water vapour flux 'kg m**-1 s**-1' = { discipline = 0 ; parameterCategory = 1 ; @@ -11396,7 +11396,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward geopotential flux +#Total column vertically-integrated eastward geopotential flux 'W m**-1' = { discipline = 0 ; parameterCategory = 3 ; @@ -11404,7 +11404,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward geopotential flux +#Total column vertically-integrated northward geopotential flux 'W m**-1' = { discipline = 0 ; parameterCategory = 3 ; @@ -11412,7 +11412,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward total energy flux +#Total column vertically-integrated eastward total energy flux 'W m**-1' = { discipline = 0 ; parameterCategory = 21 ; @@ -11420,7 +11420,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of northward total energy flux +#Total column vertically-integrated northward total energy flux 'W m**-1' = { discipline = 0 ; parameterCategory = 21 ; @@ -11428,7 +11428,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of eastward ozone flux +#Total column vertically-integrated eastward ozone flux 'kg m**-1 s**-1' = { discipline = 0 ; parameterCategory = 20 ; @@ -11437,7 +11437,7 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; } -#Vertical integral of northward ozone flux +#Total column vertically-integrated northward ozone flux 'kg m**-1 s**-1' = { discipline = 0 ; parameterCategory = 20 ; @@ -11446,7 +11446,7 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; } -#Vertical integral of divergence of mass flux +#Total column vertically-integrated divergence of mass flux 'kg m**-2 s**-1' = { discipline = 0 ; parameterCategory = 3 ; @@ -11454,7 +11454,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of kinetic energy flux +#Total column vertically-integrated divergence of kinetic energy flux 'W m**-2' = { discipline = 0 ; parameterCategory = 21 ; @@ -11470,7 +11470,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of geopotential flux +#Total column vertically-integrated divergence of geopotential flux 'W m**-2' = { discipline = 0 ; parameterCategory = 3 ; @@ -11478,7 +11478,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of total energy flux +#Total column vertically-integrated divergence of total energy flux 'W m**-2' = { discipline = 0 ; parameterCategory = 21 ; @@ -11486,7 +11486,7 @@ typeOfFirstFixedSurface = 1 ; typeOfSecondFixedSurface = 8 ; } -#Vertical integral of divergence of ozone flux +#Total column vertically-integrated divergence of ozone flux 'kg m**-2 s**-1' = { discipline = 0 ; parameterCategory = 20 ; From c79e5c92e24a855e55bca9f3ce8488d85b9e1f2c Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 13 Aug 2024 14:13:52 +0100 Subject: [PATCH 161/277] GRIB2: Concept for productDefinitionTemplate (Robert's input) --- .../productDefinitionTemplateConcept.def | 33 ++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/definitions/grib2/productDefinitionTemplateConcept.def b/definitions/grib2/productDefinitionTemplateConcept.def index 8e61b16f0..46920f499 100644 --- a/definitions/grib2/productDefinitionTemplateConcept.def +++ b/definitions/grib2/productDefinitionTemplateConcept.def @@ -14,11 +14,42 @@ 'chemical_srcsink_deterministic_statistically_processed' = {productDefinitionTemplateNumber=78;} 'chemical_srcsink_ensemble_statistically_processed' = {productDefinitionTemplateNumber=79;} - 'aerosol_optical_deterministic_instantaneous' = {productDefinitionTemplateNumber=48;} 'aerosol_optical_ensemble_instantaneous' = {productDefinitionTemplateNumber=49;} +'aerosol_deterministic_instantaneous' = {productDefinitionTemplateNumber=50;} +'aerosol_deterministic_statistically_processed' = {productDefinitionTemplateNumber=46;} +'aerosol_ensemble_instantaneous' = {productDefinitionTemplateNumber=45;} +'aerosol_ensemble_statistically_processed' = {productDefinitionTemplateNumber=85;} + 'postproc_deterministic_instantaneous' = {productDefinitionTemplateNumber=70;} 'postproc_ensemble_instantaneous' = {productDefinitionTemplateNumber=71;} 'postproc_deterministic_statistically_processed' = {productDefinitionTemplateNumber=72;} 'postproc_ensemble_statistically_processed' = {productDefinitionTemplateNumber=73;} + +'quantile_forecast_instantaneous' = {productDefinitionTemplateNumber=86;} +'quantile_forecast_statistically_processed' = {productDefinitionTemplateNumber=87;} + +'postproc_quantile_forecast_instantaneous' = {productDefinitionTemplateNumber=89;} +'postproc_quantile_forecast_statistically_processed' = {productDefinitionTemplateNumber=90;} + +'wavespectra_list_deterministic_instantaneous' = {productDefinitionTemplateNumber=99;} +'wavespectra_list_ensemble_instantaneous' = {productDefinitionTemplateNumber=100;} + +'wavespectra_formulae_deterministic_instantaneous' = {productDefinitionTemplateNumber=101;} +'wavespectra_formulae_ensemble_instantaneous' = {productDefinitionTemplateNumber=102;} + +'waves_period_range_deterministic_instantaneous' = {productDefinitionTemplateNumber=103;} +'waves_period_range_ensemble_instantaneous' = {productDefinitionTemplateNumber=104;} + + +'referencePeriod_relation_deterministic_instantaneous' = {productDefinitionTemplateNumber=105;} +'referencePeriod_relation_ensemble_instantaneous' = {productDefinitionTemplateNumber=106;} +'referencePeriod_relation_derived_instantaneous' = {productDefinitionTemplateNumber=107;} +'referencePeriod_relation_probability_instantaneous' = {productDefinitionTemplateNumber=112;} + +'probability_forecast_instantaneous' = {productDefinitionTemplateNumber=5;} +'probability_forecast_statistically_processed' = {productDefinitionTemplateNumber=9;} + +'categorical_forecast_instantaneous' = {productDefinitionTemplateNumber=51;} +'categorical_forecast_statistically_processed' = {productDefinitionTemplateNumber=91;} From 146be3258fbca8ae9ab26430d06a3c125ff1e162 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Tue, 13 Aug 2024 13:29:38 +0000 Subject: [PATCH 162/277] ECC-1880: Revert the legacy settings --- .../grib2/localConcepts/ecmf/name.legacy.def | 42 ------------------- .../localConcepts/ecmf/paramId.legacy.def | 42 ------------------- .../localConcepts/ecmf/shortName.legacy.def | 42 ------------------- .../grib2/localConcepts/ecmf/units.legacy.def | 42 ------------------- 4 files changed, 168 deletions(-) diff --git a/definitions/grib2/localConcepts/ecmf/name.legacy.def b/definitions/grib2/localConcepts/ecmf/name.legacy.def index 7d8d36d0f..28b2586ef 100644 --- a/definitions/grib2/localConcepts/ecmf/name.legacy.def +++ b/definitions/grib2/localConcepts/ecmf/name.legacy.def @@ -1777,45 +1777,3 @@ parameterCategory = 140 ; parameterNumber = 254 ; } -#Magnitude of turbulent surface stress -'Magnitude of turbulent surface stress' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 48 ; -} -#Mean large-scale precipitation fraction -'Mean large-scale precipitation fraction' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 50 ; -} -#Boundary layer dissipation -'Boundary layer dissipation' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 145 ; -} -#Mean sunshine duration rate -'Mean sunshine duration rate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 189 ; -} -#Longitudinal component of gravity wave stress -'Longitudinal component of gravity wave stress' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 195 ; -} -#Meridional component of gravity wave stress -'Meridional component of gravity wave stress' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 196 ; -} -#Gravity wave dissipation -'Gravity wave dissipation' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 197 ; -} diff --git a/definitions/grib2/localConcepts/ecmf/paramId.legacy.def b/definitions/grib2/localConcepts/ecmf/paramId.legacy.def index 4d746c798..df813254f 100644 --- a/definitions/grib2/localConcepts/ecmf/paramId.legacy.def +++ b/definitions/grib2/localConcepts/ecmf/paramId.legacy.def @@ -1777,45 +1777,3 @@ parameterCategory = 140 ; parameterNumber = 254 ; } -#Magnitude of turbulent surface stress -'172048' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 48 ; -} -#Mean large-scale precipitation fraction -'172050' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 50 ; -} -#Boundary layer dissipation -'172145' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 145 ; -} -#Mean sunshine duration rate -'172189' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 189 ; -} -#Longitudinal component of gravity wave stress -'172195' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 195 ; -} -#Meridional component of gravity wave stress -'172196' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 196 ; -} -#Gravity wave dissipation -'172197' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 197 ; -} diff --git a/definitions/grib2/localConcepts/ecmf/shortName.legacy.def b/definitions/grib2/localConcepts/ecmf/shortName.legacy.def index c954c06c9..498f6a3c1 100644 --- a/definitions/grib2/localConcepts/ecmf/shortName.legacy.def +++ b/definitions/grib2/localConcepts/ecmf/shortName.legacy.def @@ -1777,45 +1777,3 @@ parameterCategory = 140 ; parameterNumber = 254 ; } -#Magnitude of turbulent surface stress -'~' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 48 ; -} -#Mean large-scale precipitation fraction -'mlspfr' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 50 ; -} -#Boundary layer dissipation -'bldrate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 145 ; -} -#Mean sunshine duration rate -'msdr' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 189 ; -} -#Longitudinal component of gravity wave stress -'~' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 195 ; -} -#Meridional component of gravity wave stress -'~' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 196 ; -} -#Gravity wave dissipation -'gwdrate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 197 ; -} diff --git a/definitions/grib2/localConcepts/ecmf/units.legacy.def b/definitions/grib2/localConcepts/ecmf/units.legacy.def index 953b96cc0..d7675c4d6 100644 --- a/definitions/grib2/localConcepts/ecmf/units.legacy.def +++ b/definitions/grib2/localConcepts/ecmf/units.legacy.def @@ -1777,45 +1777,3 @@ parameterCategory = 140 ; parameterNumber = 254 ; } -#Magnitude of turbulent surface stress -'N m**-2' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 48 ; -} -#Mean large-scale precipitation fraction -'~' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 50 ; -} -#Boundary layer dissipation -'W m**-2' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 145 ; -} -#Mean sunshine duration rate -'s s**-1' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 189 ; -} -#Longitudinal component of gravity wave stress -'N m**-2' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 195 ; -} -#Meridional component of gravity wave stress -'N m**-2' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 196 ; -} -#Gravity wave dissipation -'W m**-2' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 197 ; -} From 14986da02c3c7a21e54b9392b846459f1530458f Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Tue, 13 Aug 2024 14:57:08 +0000 Subject: [PATCH 163/277] ECC-1880: GRIB2: Additions & modifications of instantaneous parameters for generalised time processing approach (part 5) --- definitions/grib1/localConcepts/ecmf/name.def | 5 -- .../grib1/localConcepts/ecmf/paramId.def | 5 -- .../grib1/localConcepts/ecmf/shortName.def | 5 -- .../grib1/localConcepts/ecmf/units.def | 5 -- definitions/grib2/localConcepts/ecmf/name.def | 54 ------------------- .../grib2/localConcepts/ecmf/paramId.def | 54 ------------------- .../grib2/localConcepts/ecmf/shortName.def | 54 ------------------- .../grib2/localConcepts/ecmf/units.def | 54 ------------------- definitions/grib2/name.def | 12 ----- definitions/grib2/paramId.def | 12 ----- definitions/grib2/shortName.def | 12 ----- definitions/grib2/units.def | 12 ----- 12 files changed, 284 deletions(-) diff --git a/definitions/grib1/localConcepts/ecmf/name.def b/definitions/grib1/localConcepts/ecmf/name.def index eb319acb5..07bd12578 100644 --- a/definitions/grib1/localConcepts/ecmf/name.def +++ b/definitions/grib1/localConcepts/ecmf/name.def @@ -14984,11 +14984,6 @@ table2Version = 172 ; indicatorOfParameter = 45 ; } -#Magnitude of turbulent surface stress -'Magnitude of turbulent surface stress' = { - table2Version = 172 ; - indicatorOfParameter = 48 ; - } #Mean large-scale precipitation fraction 'Mean large-scale precipitation fraction' = { table2Version = 172 ; diff --git a/definitions/grib1/localConcepts/ecmf/paramId.def b/definitions/grib1/localConcepts/ecmf/paramId.def index 6301ec4ff..3347f26b7 100644 --- a/definitions/grib1/localConcepts/ecmf/paramId.def +++ b/definitions/grib1/localConcepts/ecmf/paramId.def @@ -14984,11 +14984,6 @@ table2Version = 172 ; indicatorOfParameter = 45 ; } -#Magnitude of turbulent surface stress -'172048' = { - table2Version = 172 ; - indicatorOfParameter = 48 ; - } #Mean large-scale precipitation fraction '172050' = { table2Version = 172 ; diff --git a/definitions/grib1/localConcepts/ecmf/shortName.def b/definitions/grib1/localConcepts/ecmf/shortName.def index c7fde21ea..fb32662bd 100644 --- a/definitions/grib1/localConcepts/ecmf/shortName.def +++ b/definitions/grib1/localConcepts/ecmf/shortName.def @@ -14984,11 +14984,6 @@ table2Version = 172 ; indicatorOfParameter = 45 ; } -#Magnitude of turbulent surface stress -'~' = { - table2Version = 172 ; - indicatorOfParameter = 48 ; - } #Mean large-scale precipitation fraction 'mlspfr' = { table2Version = 172 ; diff --git a/definitions/grib1/localConcepts/ecmf/units.def b/definitions/grib1/localConcepts/ecmf/units.def index ae33fd2ee..6ec4e8064 100644 --- a/definitions/grib1/localConcepts/ecmf/units.def +++ b/definitions/grib1/localConcepts/ecmf/units.def @@ -14984,11 +14984,6 @@ table2Version = 172 ; indicatorOfParameter = 45 ; } -#Magnitude of turbulent surface stress -'N m**-2' = { - table2Version = 172 ; - indicatorOfParameter = 48 ; - } #Mean large-scale precipitation fraction '~' = { table2Version = 172 ; diff --git a/definitions/grib2/localConcepts/ecmf/name.def b/definitions/grib2/localConcepts/ecmf/name.def index 1e390741a..8d00d429a 100644 --- a/definitions/grib2/localConcepts/ecmf/name.def +++ b/definitions/grib2/localConcepts/ecmf/name.def @@ -266,18 +266,6 @@ parameterCategory = 128 ; parameterNumber = 71 ; } -#Instantaneous surface solar radiation downwards -'Instantaneous surface solar radiation downwards' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 72 ; - } -#Instantaneous surface thermal radiation downwards -'Instantaneous surface thermal radiation downwards' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 73 ; - } #Experimental product 'Experimental product' = { discipline = 192 ; @@ -18782,18 +18770,6 @@ parameterCategory = 172 ; parameterNumber = 45 ; } -#Magnitude of turbulent surface stress -'Magnitude of turbulent surface stress' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 48 ; - } -#Mean large-scale precipitation fraction -'Mean large-scale precipitation fraction' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 50 ; - } #Mean large-scale precipitation rate 'Mean large-scale precipitation rate' = { localTablesVersion = 1 ; @@ -18821,12 +18797,6 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } -#Boundary layer dissipation -'Boundary layer dissipation' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 145 ; - } #Mean short-wave heating rate 'Mean short-wave heating rate' = { discipline = 192 ; @@ -18848,30 +18818,6 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } -#Mean sunshine duration rate -'Mean sunshine duration rate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 189 ; - } -#Longitudinal component of gravity wave stress -'Longitudinal component of gravity wave stress' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 195 ; - } -#Meridional component of gravity wave stress -'Meridional component of gravity wave stress' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 196 ; - } -#Gravity wave dissipation -'Gravity wave dissipation' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 197 ; - } #Mean runoff rate 'Mean runoff rate' = { localTablesVersion = 1 ; diff --git a/definitions/grib2/localConcepts/ecmf/paramId.def b/definitions/grib2/localConcepts/ecmf/paramId.def index ab184ae4d..b4e5a0c5f 100644 --- a/definitions/grib2/localConcepts/ecmf/paramId.def +++ b/definitions/grib2/localConcepts/ecmf/paramId.def @@ -266,18 +266,6 @@ parameterCategory = 128 ; parameterNumber = 71 ; } -#Instantaneous surface solar radiation downwards -'72' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 72 ; - } -#Instantaneous surface thermal radiation downwards -'73' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 73 ; - } #Experimental product '80' = { discipline = 192 ; @@ -18782,18 +18770,6 @@ parameterCategory = 172 ; parameterNumber = 45 ; } -#Magnitude of turbulent surface stress -'172048' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 48 ; - } -#Mean large-scale precipitation fraction -'172050' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 50 ; - } #Mean large-scale precipitation rate '172142' = { localTablesVersion = 1 ; @@ -18821,12 +18797,6 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } -#Boundary layer dissipation -'172145' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 145 ; - } #Mean short-wave heating rate '172153' = { discipline = 192 ; @@ -18848,30 +18818,6 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } -#Mean sunshine duration rate -'172189' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 189 ; - } -#Longitudinal component of gravity wave stress -'172195' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 195 ; - } -#Meridional component of gravity wave stress -'172196' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 196 ; - } -#Gravity wave dissipation -'172197' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 197 ; - } #Mean runoff rate '172205' = { localTablesVersion = 1 ; diff --git a/definitions/grib2/localConcepts/ecmf/shortName.def b/definitions/grib2/localConcepts/ecmf/shortName.def index e5fa627d0..2f124dd73 100644 --- a/definitions/grib2/localConcepts/ecmf/shortName.def +++ b/definitions/grib2/localConcepts/ecmf/shortName.def @@ -266,18 +266,6 @@ parameterCategory = 128 ; parameterNumber = 71 ; } -#Instantaneous surface solar radiation downwards -'issrd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 72 ; - } -#Instantaneous surface thermal radiation downwards -'istrd' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 73 ; - } #Experimental product '~' = { discipline = 192 ; @@ -18782,18 +18770,6 @@ parameterCategory = 172 ; parameterNumber = 45 ; } -#Magnitude of turbulent surface stress -'~' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 48 ; - } -#Mean large-scale precipitation fraction -'mlspfr' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 50 ; - } #Mean large-scale precipitation rate 'mlsprt' = { localTablesVersion = 1 ; @@ -18821,12 +18797,6 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } -#Boundary layer dissipation -'bldrate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 145 ; - } #Mean short-wave heating rate 'mswhr' = { discipline = 192 ; @@ -18848,30 +18818,6 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } -#Mean sunshine duration rate -'msdr' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 189 ; - } -#Longitudinal component of gravity wave stress -'~' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 195 ; - } -#Meridional component of gravity wave stress -'~' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 196 ; - } -#Gravity wave dissipation -'gwdrate' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 197 ; - } #Mean runoff rate 'mrort' = { localTablesVersion = 1 ; diff --git a/definitions/grib2/localConcepts/ecmf/units.def b/definitions/grib2/localConcepts/ecmf/units.def index 7931fee09..c8c65ba8a 100644 --- a/definitions/grib2/localConcepts/ecmf/units.def +++ b/definitions/grib2/localConcepts/ecmf/units.def @@ -266,18 +266,6 @@ parameterCategory = 128 ; parameterNumber = 71 ; } -#Instantaneous surface solar radiation downwards -'W m**-2' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 72 ; - } -#Instantaneous surface thermal radiation downwards -'W m**-2' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 73 ; - } #Experimental product '~' = { discipline = 192 ; @@ -18782,18 +18770,6 @@ parameterCategory = 172 ; parameterNumber = 45 ; } -#Magnitude of turbulent surface stress -'N m**-2' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 48 ; - } -#Mean large-scale precipitation fraction -'~' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 50 ; - } #Mean large-scale precipitation rate 'm s**-1' = { localTablesVersion = 1 ; @@ -18821,12 +18797,6 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } -#Boundary layer dissipation -'W m**-2' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 145 ; - } #Mean short-wave heating rate 'K s**-1' = { discipline = 192 ; @@ -18848,30 +18818,6 @@ typeOfFirstFixedSurface = 1 ; typeOfStatisticalProcessing = 0 ; } -#Mean sunshine duration rate -'s s**-1' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 189 ; - } -#Longitudinal component of gravity wave stress -'N m**-2' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 195 ; - } -#Meridional component of gravity wave stress -'N m**-2' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 196 ; - } -#Gravity wave dissipation -'W m**-2' = { - discipline = 192 ; - parameterCategory = 172 ; - parameterNumber = 197 ; - } #Mean runoff rate 'm s**-1' = { localTablesVersion = 1 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 56d6adccc..ba2128aa3 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -6441,18 +6441,6 @@ parameterCategory = 4 ; parameterNumber = 51 ; } -#Net long wave radiation flux (surface) -'Net long wave radiation flux (surface)' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 0 ; - } -#Net long wave radiation flux (top of atmosphere) -'Net long wave radiation flux (top of atmosphere)' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 1 ; - } #Surface downward long-wave radiation flux 'Surface downward long-wave radiation flux' = { discipline = 0 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 6d5c38537..559dfa569 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -6441,18 +6441,6 @@ parameterCategory = 4 ; parameterNumber = 51 ; } -#Net long wave radiation flux (surface) -'260095' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 0 ; - } -#Net long wave radiation flux (top of atmosphere) -'260096' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 1 ; - } #Surface downward long-wave radiation flux '260097' = { discipline = 0 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 78d215c1c..d3938a656 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -6441,18 +6441,6 @@ parameterCategory = 4 ; parameterNumber = 51 ; } -#Net long wave radiation flux (surface) -'nlwrs' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 0 ; - } -#Net long wave radiation flux (top of atmosphere) -'nlwrt' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 1 ; - } #Surface downward long-wave radiation flux 'sdlwrf' = { discipline = 0 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index 22b733ff6..d71fda3c2 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -6441,18 +6441,6 @@ parameterCategory = 4 ; parameterNumber = 51 ; } -#Net long wave radiation flux (surface) -'W m**-2' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 0 ; - } -#Net long wave radiation flux (top of atmosphere) -'W m**-2' = { - discipline = 0 ; - parameterCategory = 5 ; - parameterNumber = 1 ; - } #Surface downward long-wave radiation flux 'W m**-2' = { discipline = 0 ; From d9af67b46a331ab3ad4e0103074eafe5a0e9ebe4 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 13 Aug 2024 16:24:02 +0100 Subject: [PATCH 164/277] ECC-1880: Conversion from grib1 to grib2 --- .../grib1/localConcepts/ecmf/paramIdForConversion.def | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/definitions/grib1/localConcepts/ecmf/paramIdForConversion.def b/definitions/grib1/localConcepts/ecmf/paramIdForConversion.def index 07b7d5a83..050690c5c 100644 --- a/definitions/grib1/localConcepts/ecmf/paramIdForConversion.def +++ b/definitions/grib1/localConcepts/ecmf/paramIdForConversion.def @@ -35,3 +35,11 @@ 262139 = {gribTablesVersionNo=151; indicatorOfParameter=132; centre=98;} # 151131 262140 = {gribTablesVersionNo=151; indicatorOfParameter=131; centre=98;} +# +260087 = {gribTablesVersionNo=128; indicatorOfParameter=72; centre=98;} +260097 = {gribTablesVersionNo=128; indicatorOfParameter=73; centre=98;} +235026 = {gribTablesVersionNo=172; indicatorOfParameter=50; centre=98;} +235032 = {gribTablesVersionNo=172; indicatorOfParameter=145; centre=98;} +235045 = {gribTablesVersionNo=172; indicatorOfParameter=195; centre=98;} +235046 = {gribTablesVersionNo=172; indicatorOfParameter=196; centre=98;} +235047 = {gribTablesVersionNo=172; indicatorOfParameter=197; centre=98;} From 92fc7c938ab4b96cb9b4d309c5237c5e5dfda2be Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 13 Aug 2024 16:32:01 +0100 Subject: [PATCH 165/277] ECC-1880: Conversion from grib1 to grib2 --- tests/grib_ecc-1806.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/grib_ecc-1806.sh b/tests/grib_ecc-1806.sh index e08f667a6..f512ff5c4 100755 --- a/tests/grib_ecc-1806.sh +++ b/tests/grib_ecc-1806.sh @@ -55,5 +55,8 @@ test_conversion 172178 235039 mtnswrf test_conversion 172179 235040 mtnlwrf test_conversion 151175 262118 sc300m +test_conversion 72 260087 sdswrf +test_conversion 73 260097 sdlwrf + # Clean up rm -f $tempGrib1 $tempGrib2 $tempLog From d1835db760264747c5912529e0be045a5f959230 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Tue, 13 Aug 2024 16:54:07 +0000 Subject: [PATCH 166/277] Unused data member --- src/accessor/grib_accessor_class_g2date.h | 1 - 1 file changed, 1 deletion(-) diff --git a/src/accessor/grib_accessor_class_g2date.h b/src/accessor/grib_accessor_class_g2date.h index e6981665c..b1676bcd2 100644 --- a/src/accessor/grib_accessor_class_g2date.h +++ b/src/accessor/grib_accessor_class_g2date.h @@ -17,7 +17,6 @@ class grib_accessor_g2date_t : public grib_accessor_long_t { public: /* Members defined in g2date */ - const char* century; const char* year; const char* month; const char* day; From 55e8fe9ab3ce5c9a558f6738eb277340dce63ecf Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 13 Aug 2024 20:03:08 +0100 Subject: [PATCH 167/277] Testing: productDefinitionTemplate concept uniqueness --- tests/CMakeLists.txt | 1 + tests/grib2_product_templates.sh | 58 ++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100755 tests/grib2_product_templates.sh diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index dfb3799b5..d4fc34dbf 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -164,6 +164,7 @@ if( HAVE_BUILD_TOOLS ) grib_spectral grib_levtype grib_typeOfLevel + grib2_product_templates grib_grid_unstructured grib_grid_lambert_conformal grib_grid_polar_stereographic diff --git a/tests/grib2_product_templates.sh b/tests/grib2_product_templates.sh new file mode 100755 index 000000000..29e70a96c --- /dev/null +++ b/tests/grib2_product_templates.sh @@ -0,0 +1,58 @@ +#!/bin/sh +# (C) Copyright 2005- ECMWF. +# +# This software is licensed under the terms of the Apache Licence Version 2.0 +# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. +# +# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by +# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. +# + +. ./include.ctest.sh + +label="grib2_product_templates_test" +tempText=temp.$label.txt +tempGribA=temp.$label.A.grib +tempGribB=temp.$label.B.grib + +if [ ! -d "$ECCODES_DEFINITION_PATH" ]; then + echo "Test $0 disabled. No definitions directory" + exit 0 +fi + +sample_g2=$ECCODES_SAMPLES_PATH/GRIB2.tmpl +def_file="$ECCODES_DEFINITION_PATH/grib2/productDefinitionTemplateConcept.def" + +# Ensure all productDefinitionTemplateNumber values are unique +# ------------------------------------------------------------ +rm -f $tempText + +# uniq -d outputs a single copy of each line that is repeated in the input +awk -F= '$0 ~ /product/ {print $3}' $def_file | tr -d ';} ' | sort -n | uniq -d > $tempText + +if [ -s "$tempText" ]; then + # File exists and has a size greater than zero + echo "ERROR: Duplicate PDT number found in $def_file" >&2 + cat $tempText + exit 1 +else + echo "No duplicates in $def_file" +fi + +# Ensure all strings are unique +# ------------------------------ +rm -f $tempText +grep "^'" $def_file | awk -F= '{print $1}' | tr -d "' " | sort | uniq -d > $tempText +cat $tempText +if [ -s "$tempText" ]; then + # File exists and has a size greater than zero + echo "ERROR: Duplicate string found in $def_file" >&2 + cat $tempText + exit 1 +else + echo "No duplicates in $def_file" +fi + + +# Clean up +rm -f $tempText $tempGribA $tempGribB From caced72efc30140d704f02915bbd725dfa2dd557 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Wed, 14 Aug 2024 08:55:42 +0000 Subject: [PATCH 168/277] ECC-1901: GRIB2: remove is_chemical from ERA6 pseudo-centre parameters --- definitions/grib2/localConcepts/era6/name.def | 13 ------------- definitions/grib2/localConcepts/era6/paramId.def | 13 ------------- definitions/grib2/localConcepts/era6/shortName.def | 13 ------------- definitions/grib2/localConcepts/era6/units.def | 13 ------------- 4 files changed, 52 deletions(-) diff --git a/definitions/grib2/localConcepts/era6/name.def b/definitions/grib2/localConcepts/era6/name.def index b8857e1c1..635f9c0da 100644 --- a/definitions/grib2/localConcepts/era6/name.def +++ b/definitions/grib2/localConcepts/era6/name.def @@ -330,7 +330,6 @@ parameterNumber = 59 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Accumulated Carbon Dioxide Gross Primary Production 'Accumulated Carbon Dioxide Gross Primary Production' = { @@ -339,7 +338,6 @@ parameterNumber = 60 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Accumulated Carbon Dioxide Ecosystem Respiration 'Accumulated Carbon Dioxide Ecosystem Respiration' = { @@ -348,7 +346,6 @@ parameterNumber = 61 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Carbon dioxide net ecosystem exchange flux 'Carbon dioxide net ecosystem exchange flux' = { @@ -356,7 +353,6 @@ parameterCategory = 0 ; parameterNumber = 59 ; constituentType = 3 ; - is_chemical = 1 ; } #Carbon dioxide gross primary production flux 'Carbon dioxide gross primary production flux' = { @@ -364,7 +360,6 @@ parameterCategory = 0 ; parameterNumber = 60 ; constituentType = 3 ; - is_chemical = 1 ; } #Carbon dioxide ecosystem respiration flux 'Carbon dioxide ecosystem respiration flux' = { @@ -372,7 +367,6 @@ parameterCategory = 0 ; parameterNumber = 61 ; constituentType = 3 ; - is_chemical = 1 ; } #Accumulated freezing rain 'Accumulated freezing rain' = { @@ -401,7 +395,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated northward ozone flux 'Time-integrated total column vertically-integrated northward ozone flux' = { @@ -412,7 +405,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated divergence of ozone flux 'Time-integrated total column vertically-integrated divergence of ozone flux' = { @@ -423,7 +415,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated net source of ozone 'Time-integrated total column vertically-integrated net source of ozone' = { @@ -434,7 +425,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Mean carbon dioxide net ecosystem exchange flux 'Mean carbon dioxide net ecosystem exchange flux' = { @@ -443,7 +433,6 @@ parameterNumber = 59 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Mean carbon dioxide gross primary production flux 'Mean carbon dioxide gross primary production flux' = { @@ -452,7 +441,6 @@ parameterNumber = 60 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Mean carbon dioxide ecosystem respiration flux 'Mean carbon dioxide ecosystem respiration flux' = { @@ -461,7 +449,6 @@ parameterNumber = 61 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Time-mean logarithm of surface pressure 'Time-mean logarithm of surface pressure' = { diff --git a/definitions/grib2/localConcepts/era6/paramId.def b/definitions/grib2/localConcepts/era6/paramId.def index b288a4d9e..2e1ceceb7 100644 --- a/definitions/grib2/localConcepts/era6/paramId.def +++ b/definitions/grib2/localConcepts/era6/paramId.def @@ -330,7 +330,6 @@ parameterNumber = 59 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Accumulated Carbon Dioxide Gross Primary Production '228081' = { @@ -339,7 +338,6 @@ parameterNumber = 60 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Accumulated Carbon Dioxide Ecosystem Respiration '228082' = { @@ -348,7 +346,6 @@ parameterNumber = 61 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Carbon dioxide net ecosystem exchange flux '228083' = { @@ -356,7 +353,6 @@ parameterCategory = 0 ; parameterNumber = 59 ; constituentType = 3 ; - is_chemical = 1 ; } #Carbon dioxide gross primary production flux '228084' = { @@ -364,7 +360,6 @@ parameterCategory = 0 ; parameterNumber = 60 ; constituentType = 3 ; - is_chemical = 1 ; } #Carbon dioxide ecosystem respiration flux '228085' = { @@ -372,7 +367,6 @@ parameterCategory = 0 ; parameterNumber = 61 ; constituentType = 3 ; - is_chemical = 1 ; } #Accumulated freezing rain '228216' = { @@ -401,7 +395,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated northward ozone flux '233033' = { @@ -412,7 +405,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated divergence of ozone flux '233034' = { @@ -423,7 +415,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated net source of ozone '233035' = { @@ -434,7 +425,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Mean carbon dioxide net ecosystem exchange flux '235062' = { @@ -443,7 +433,6 @@ parameterNumber = 59 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Mean carbon dioxide gross primary production flux '235063' = { @@ -452,7 +441,6 @@ parameterNumber = 60 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Mean carbon dioxide ecosystem respiration flux '235064' = { @@ -461,7 +449,6 @@ parameterNumber = 61 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Time-mean logarithm of surface pressure '235152' = { diff --git a/definitions/grib2/localConcepts/era6/shortName.def b/definitions/grib2/localConcepts/era6/shortName.def index 02dd1e85c..769ddfe09 100644 --- a/definitions/grib2/localConcepts/era6/shortName.def +++ b/definitions/grib2/localConcepts/era6/shortName.def @@ -330,7 +330,6 @@ parameterNumber = 59 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Accumulated Carbon Dioxide Gross Primary Production 'aco2gpp' = { @@ -339,7 +338,6 @@ parameterNumber = 60 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Accumulated Carbon Dioxide Ecosystem Respiration 'aco2rec' = { @@ -348,7 +346,6 @@ parameterNumber = 61 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Carbon dioxide net ecosystem exchange flux 'fco2nee' = { @@ -356,7 +353,6 @@ parameterCategory = 0 ; parameterNumber = 59 ; constituentType = 3 ; - is_chemical = 1 ; } #Carbon dioxide gross primary production flux 'fco2gpp' = { @@ -364,7 +360,6 @@ parameterCategory = 0 ; parameterNumber = 60 ; constituentType = 3 ; - is_chemical = 1 ; } #Carbon dioxide ecosystem respiration flux 'fco2rec' = { @@ -372,7 +367,6 @@ parameterCategory = 0 ; parameterNumber = 61 ; constituentType = 3 ; - is_chemical = 1 ; } #Accumulated freezing rain 'fzra' = { @@ -401,7 +395,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated northward ozone flux 'tviozn' = { @@ -412,7 +405,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated divergence of ozone flux 'tviozd' = { @@ -423,7 +415,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated net source of ozone 'tvions' = { @@ -434,7 +425,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Mean carbon dioxide net ecosystem exchange flux 'mcdneef' = { @@ -443,7 +433,6 @@ parameterNumber = 59 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Mean carbon dioxide gross primary production flux 'mcdgppf' = { @@ -452,7 +441,6 @@ parameterNumber = 60 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Mean carbon dioxide ecosystem respiration flux 'mcderf' = { @@ -461,7 +449,6 @@ parameterNumber = 61 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Time-mean logarithm of surface pressure 'avg_lnsp' = { diff --git a/definitions/grib2/localConcepts/era6/units.def b/definitions/grib2/localConcepts/era6/units.def index f6cb25b31..ada2d609f 100644 --- a/definitions/grib2/localConcepts/era6/units.def +++ b/definitions/grib2/localConcepts/era6/units.def @@ -330,7 +330,6 @@ parameterNumber = 59 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Accumulated Carbon Dioxide Gross Primary Production 'kg m**-2' = { @@ -339,7 +338,6 @@ parameterNumber = 60 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Accumulated Carbon Dioxide Ecosystem Respiration 'kg m**-2' = { @@ -348,7 +346,6 @@ parameterNumber = 61 ; constituentType = 3 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Carbon dioxide net ecosystem exchange flux 'kg m**-2 s**-1' = { @@ -356,7 +353,6 @@ parameterCategory = 0 ; parameterNumber = 59 ; constituentType = 3 ; - is_chemical = 1 ; } #Carbon dioxide gross primary production flux 'kg m**-2 s**-1' = { @@ -364,7 +360,6 @@ parameterCategory = 0 ; parameterNumber = 60 ; constituentType = 3 ; - is_chemical = 1 ; } #Carbon dioxide ecosystem respiration flux 'kg m**-2 s**-1' = { @@ -372,7 +367,6 @@ parameterCategory = 0 ; parameterNumber = 61 ; constituentType = 3 ; - is_chemical = 1 ; } #Accumulated freezing rain 'm' = { @@ -401,7 +395,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated northward ozone flux 'kg m**-1' = { @@ -412,7 +405,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated divergence of ozone flux 'kg m**-2' = { @@ -423,7 +415,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Time-integrated total column vertically-integrated net source of ozone 'kg m**-2' = { @@ -434,7 +425,6 @@ typeOfSecondFixedSurface = 8 ; constituentType = 0 ; typeOfStatisticalProcessing = 1 ; - is_chemical = 1 ; } #Mean carbon dioxide net ecosystem exchange flux 'kg m**-2 s**-1' = { @@ -443,7 +433,6 @@ parameterNumber = 59 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Mean carbon dioxide gross primary production flux 'kg m**-2 s**-1' = { @@ -452,7 +441,6 @@ parameterNumber = 60 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Mean carbon dioxide ecosystem respiration flux 'kg m**-2 s**-1' = { @@ -461,7 +449,6 @@ parameterNumber = 61 ; constituentType = 3 ; typeOfStatisticalProcessing = 0 ; - is_chemical = 1 ; } #Time-mean logarithm of surface pressure 'Numeric' = { From 098592568fbe5fd98fa25eec1d78ef851d1bdd63 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Wed, 14 Aug 2024 10:44:05 +0000 Subject: [PATCH 169/277] ECC-1902: GRIB2: Parameter cleanup in preparation for the addition of statistically processed parameters --- definitions/grib1/localConcepts/ecmf/name.def | 80 --------- .../grib1/localConcepts/ecmf/paramId.def | 80 --------- .../grib1/localConcepts/ecmf/shortName.def | 80 --------- .../grib1/localConcepts/ecmf/units.def | 90 +--------- definitions/grib1/localConcepts/rjtd/name.def | 5 - .../grib1/localConcepts/rjtd/paramId.def | 5 - .../grib1/localConcepts/rjtd/shortName.def | 5 - .../grib1/localConcepts/rjtd/units.def | 5 - definitions/grib2/localConcepts/ecmf/name.def | 144 ---------------- .../grib2/localConcepts/ecmf/paramId.def | 144 ---------------- .../grib2/localConcepts/ecmf/shortName.def | 144 ---------------- .../grib2/localConcepts/ecmf/units.def | 154 +----------------- definitions/grib2/name.def | 42 ----- definitions/grib2/paramId.def | 42 ----- definitions/grib2/shortName.def | 42 ----- definitions/grib2/units.def | 42 ----- 16 files changed, 10 insertions(+), 1094 deletions(-) diff --git a/definitions/grib1/localConcepts/ecmf/name.def b/definitions/grib1/localConcepts/ecmf/name.def index 07bd12578..86e2052b0 100644 --- a/definitions/grib1/localConcepts/ecmf/name.def +++ b/definitions/grib1/localConcepts/ecmf/name.def @@ -2374,16 +2374,6 @@ table2Version = 200 ; indicatorOfParameter = 67 ; } -#Minimum stomatal resistance, low vegetation -'Minimum stomatal resistance, low vegetation' = { - table2Version = 200 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'Minimum stomatal resistance, high vegetation' = { - table2Version = 200 ; - indicatorOfParameter = 69 ; - } #Biome cover, low vegetation 'Biome cover, low vegetation' = { table2Version = 200 ; @@ -10544,21 +10534,6 @@ table2Version = 235 ; indicatorOfParameter = 64 ; } -#Mean rain rate -'Mean rain rate' = { - table2Version = 235 ; - indicatorOfParameter = 65 ; - } -#Mean convective rain rate -'Mean convective rain rate' = { - table2Version = 235 ; - indicatorOfParameter = 66 ; - } -#Mean large-scale rain rate -'Mean large-scale rain rate' = { - table2Version = 235 ; - indicatorOfParameter = 67 ; - } #Mean surface downward short-wave radiation flux, clear sky 'Mean surface downward short-wave radiation flux, clear sky' = { table2Version = 235 ; @@ -10874,16 +10849,6 @@ table2Version = 129 ; indicatorOfParameter = 67 ; } -#Minimum stomatal resistance, low vegetation -'Minimum stomatal resistance, low vegetation' = { - table2Version = 129 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'Minimum stomatal resistance, high vegetation' = { - table2Version = 129 ; - indicatorOfParameter = 69 ; - } #Biome cover, low vegetation 'Biome cover, low vegetation' = { table2Version = 129 ; @@ -13494,36 +13459,16 @@ table2Version = 160 ; indicatorOfParameter = 199 ; } -#Maximum temperature at 2 metres during averaging time -'Maximum temperature at 2 metres during averaging time' = { - table2Version = 160 ; - indicatorOfParameter = 201 ; - } -#Minimum temperature at 2 metres during averaging time -'Minimum temperature at 2 metres during averaging time' = { - table2Version = 160 ; - indicatorOfParameter = 202 ; - } #Runoff 'Runoff' = { table2Version = 160 ; indicatorOfParameter = 205 ; } -#Standard deviation of geopotential -'Standard deviation of geopotential' = { - table2Version = 160 ; - indicatorOfParameter = 206 ; - } #Covariance of temperature and geopotential 'Covariance of temperature and geopotential' = { table2Version = 160 ; indicatorOfParameter = 207 ; } -#Standard deviation of temperature -'Standard deviation of temperature' = { - table2Version = 160 ; - indicatorOfParameter = 208 ; - } #Covariance of specific humidity and geopotential 'Covariance of specific humidity and geopotential' = { table2Version = 160 ; @@ -13534,11 +13479,6 @@ table2Version = 160 ; indicatorOfParameter = 210 ; } -#Standard deviation of specific humidity -'Standard deviation of specific humidity' = { - table2Version = 160 ; - indicatorOfParameter = 211 ; - } #Covariance of U component and geopotential 'Covariance of U component and geopotential' = { table2Version = 160 ; @@ -13554,11 +13494,6 @@ table2Version = 160 ; indicatorOfParameter = 214 ; } -#Standard deviation of U velocity -'Standard deviation of U velocity' = { - table2Version = 160 ; - indicatorOfParameter = 215 ; - } #Covariance of V component and geopotential 'Covariance of V component and geopotential' = { table2Version = 160 ; @@ -13579,11 +13514,6 @@ table2Version = 160 ; indicatorOfParameter = 219 ; } -#Standard deviation of V component -'Standard deviation of V component' = { - table2Version = 160 ; - indicatorOfParameter = 220 ; - } #Covariance of W component and geopotential 'Covariance of W component and geopotential' = { table2Version = 160 ; @@ -13609,11 +13539,6 @@ table2Version = 160 ; indicatorOfParameter = 225 ; } -#Standard deviation of vertical velocity -'Standard deviation of vertical velocity' = { - table2Version = 160 ; - indicatorOfParameter = 226 ; - } #Instantaneous surface heat flux 'Instantaneous surface heat flux' = { table2Version = 160 ; @@ -16039,11 +15964,6 @@ table2Version = 201 ; indicatorOfParameter = 113 ; } -#deviation of pressure from reference value -'deviation of pressure from reference value' = { - table2Version = 201 ; - indicatorOfParameter = 139 ; - } #coefficient of horizontal diffusion 'coefficient of horizontal diffusion' = { table2Version = 201 ; diff --git a/definitions/grib1/localConcepts/ecmf/paramId.def b/definitions/grib1/localConcepts/ecmf/paramId.def index 3347f26b7..0067a92f6 100644 --- a/definitions/grib1/localConcepts/ecmf/paramId.def +++ b/definitions/grib1/localConcepts/ecmf/paramId.def @@ -2374,16 +2374,6 @@ table2Version = 200 ; indicatorOfParameter = 67 ; } -#Minimum stomatal resistance, low vegetation -'200068' = { - table2Version = 200 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'200069' = { - table2Version = 200 ; - indicatorOfParameter = 69 ; - } #Biome cover, low vegetation '200070' = { table2Version = 200 ; @@ -10544,21 +10534,6 @@ table2Version = 235 ; indicatorOfParameter = 64 ; } -#Mean rain rate -'235065' = { - table2Version = 235 ; - indicatorOfParameter = 65 ; - } -#Mean convective rain rate -'235066' = { - table2Version = 235 ; - indicatorOfParameter = 66 ; - } -#Mean large-scale rain rate -'235067' = { - table2Version = 235 ; - indicatorOfParameter = 67 ; - } #Mean surface downward short-wave radiation flux, clear sky '235068' = { table2Version = 235 ; @@ -10874,16 +10849,6 @@ table2Version = 129 ; indicatorOfParameter = 67 ; } -#Minimum stomatal resistance, low vegetation -'129068' = { - table2Version = 129 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'129069' = { - table2Version = 129 ; - indicatorOfParameter = 69 ; - } #Biome cover, low vegetation '129070' = { table2Version = 129 ; @@ -13494,36 +13459,16 @@ table2Version = 160 ; indicatorOfParameter = 199 ; } -#Maximum temperature at 2 metres during averaging time -'160201' = { - table2Version = 160 ; - indicatorOfParameter = 201 ; - } -#Minimum temperature at 2 metres during averaging time -'160202' = { - table2Version = 160 ; - indicatorOfParameter = 202 ; - } #Runoff '160205' = { table2Version = 160 ; indicatorOfParameter = 205 ; } -#Standard deviation of geopotential -'160206' = { - table2Version = 160 ; - indicatorOfParameter = 206 ; - } #Covariance of temperature and geopotential '160207' = { table2Version = 160 ; indicatorOfParameter = 207 ; } -#Standard deviation of temperature -'160208' = { - table2Version = 160 ; - indicatorOfParameter = 208 ; - } #Covariance of specific humidity and geopotential '160209' = { table2Version = 160 ; @@ -13534,11 +13479,6 @@ table2Version = 160 ; indicatorOfParameter = 210 ; } -#Standard deviation of specific humidity -'160211' = { - table2Version = 160 ; - indicatorOfParameter = 211 ; - } #Covariance of U component and geopotential '160212' = { table2Version = 160 ; @@ -13554,11 +13494,6 @@ table2Version = 160 ; indicatorOfParameter = 214 ; } -#Standard deviation of U velocity -'160215' = { - table2Version = 160 ; - indicatorOfParameter = 215 ; - } #Covariance of V component and geopotential '160216' = { table2Version = 160 ; @@ -13579,11 +13514,6 @@ table2Version = 160 ; indicatorOfParameter = 219 ; } -#Standard deviation of V component -'160220' = { - table2Version = 160 ; - indicatorOfParameter = 220 ; - } #Covariance of W component and geopotential '160221' = { table2Version = 160 ; @@ -13609,11 +13539,6 @@ table2Version = 160 ; indicatorOfParameter = 225 ; } -#Standard deviation of vertical velocity -'160226' = { - table2Version = 160 ; - indicatorOfParameter = 226 ; - } #Instantaneous surface heat flux '160231' = { table2Version = 160 ; @@ -16039,11 +15964,6 @@ table2Version = 201 ; indicatorOfParameter = 113 ; } -#deviation of pressure from reference value -'201139' = { - table2Version = 201 ; - indicatorOfParameter = 139 ; - } #coefficient of horizontal diffusion '201150' = { table2Version = 201 ; diff --git a/definitions/grib1/localConcepts/ecmf/shortName.def b/definitions/grib1/localConcepts/ecmf/shortName.def index fb32662bd..977615eff 100644 --- a/definitions/grib1/localConcepts/ecmf/shortName.def +++ b/definitions/grib1/localConcepts/ecmf/shortName.def @@ -2374,16 +2374,6 @@ table2Version = 200 ; indicatorOfParameter = 67 ; } -#Minimum stomatal resistance, low vegetation -'~' = { - table2Version = 200 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'~' = { - table2Version = 200 ; - indicatorOfParameter = 69 ; - } #Biome cover, low vegetation '~' = { table2Version = 200 ; @@ -10544,21 +10534,6 @@ table2Version = 235 ; indicatorOfParameter = 64 ; } -#Mean rain rate -'mrr' = { - table2Version = 235 ; - indicatorOfParameter = 65 ; - } -#Mean convective rain rate -'mcrr' = { - table2Version = 235 ; - indicatorOfParameter = 66 ; - } -#Mean large-scale rain rate -'mlsrr' = { - table2Version = 235 ; - indicatorOfParameter = 67 ; - } #Mean surface downward short-wave radiation flux, clear sky 'msdwswrfcs' = { table2Version = 235 ; @@ -10874,16 +10849,6 @@ table2Version = 129 ; indicatorOfParameter = 67 ; } -#Minimum stomatal resistance, low vegetation -'~' = { - table2Version = 129 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'~' = { - table2Version = 129 ; - indicatorOfParameter = 69 ; - } #Biome cover, low vegetation '~' = { table2Version = 129 ; @@ -13494,36 +13459,16 @@ table2Version = 160 ; indicatorOfParameter = 199 ; } -#Maximum temperature at 2 metres during averaging time -'mx2trea' = { - table2Version = 160 ; - indicatorOfParameter = 201 ; - } -#Minimum temperature at 2 metres during averaging time -'mn2trea' = { - table2Version = 160 ; - indicatorOfParameter = 202 ; - } #Runoff 'rorea' = { table2Version = 160 ; indicatorOfParameter = 205 ; } -#Standard deviation of geopotential -'zzrea' = { - table2Version = 160 ; - indicatorOfParameter = 206 ; - } #Covariance of temperature and geopotential 'tzrea' = { table2Version = 160 ; indicatorOfParameter = 207 ; } -#Standard deviation of temperature -'ttrea' = { - table2Version = 160 ; - indicatorOfParameter = 208 ; - } #Covariance of specific humidity and geopotential 'qzrea' = { table2Version = 160 ; @@ -13534,11 +13479,6 @@ table2Version = 160 ; indicatorOfParameter = 210 ; } -#Standard deviation of specific humidity -'qqrea' = { - table2Version = 160 ; - indicatorOfParameter = 211 ; - } #Covariance of U component and geopotential 'uzrea' = { table2Version = 160 ; @@ -13554,11 +13494,6 @@ table2Version = 160 ; indicatorOfParameter = 214 ; } -#Standard deviation of U velocity -'uurea' = { - table2Version = 160 ; - indicatorOfParameter = 215 ; - } #Covariance of V component and geopotential 'vzrea' = { table2Version = 160 ; @@ -13579,11 +13514,6 @@ table2Version = 160 ; indicatorOfParameter = 219 ; } -#Standard deviation of V component -'vvrea' = { - table2Version = 160 ; - indicatorOfParameter = 220 ; - } #Covariance of W component and geopotential 'wzrea' = { table2Version = 160 ; @@ -13609,11 +13539,6 @@ table2Version = 160 ; indicatorOfParameter = 225 ; } -#Standard deviation of vertical velocity -'wwrea' = { - table2Version = 160 ; - indicatorOfParameter = 226 ; - } #Instantaneous surface heat flux 'ishfrea' = { table2Version = 160 ; @@ -16039,11 +15964,6 @@ table2Version = 201 ; indicatorOfParameter = 113 ; } -#deviation of pressure from reference value -'pp' = { - table2Version = 201 ; - indicatorOfParameter = 139 ; - } #coefficient of horizontal diffusion '~' = { table2Version = 201 ; diff --git a/definitions/grib1/localConcepts/ecmf/units.def b/definitions/grib1/localConcepts/ecmf/units.def index 6ec4e8064..6aa3f3cea 100644 --- a/definitions/grib1/localConcepts/ecmf/units.def +++ b/definitions/grib1/localConcepts/ecmf/units.def @@ -2374,16 +2374,6 @@ table2Version = 200 ; indicatorOfParameter = 67 ; } -#Minimum stomatal resistance, low vegetation -'s m**-1' = { - table2Version = 200 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'s m**-1' = { - table2Version = 200 ; - indicatorOfParameter = 69 ; - } #Biome cover, low vegetation '(0 - 1)' = { table2Version = 200 ; @@ -10544,21 +10534,6 @@ table2Version = 235 ; indicatorOfParameter = 64 ; } -#Mean rain rate -'kg m**-2 s**-1' = { - table2Version = 235 ; - indicatorOfParameter = 65 ; - } -#Mean convective rain rate -'kg m**-2 s**-1' = { - table2Version = 235 ; - indicatorOfParameter = 66 ; - } -#Mean large-scale rain rate -'kg m**-2 s**-1' = { - table2Version = 235 ; - indicatorOfParameter = 67 ; - } #Mean surface downward short-wave radiation flux, clear sky 'W m**-2' = { table2Version = 235 ; @@ -10874,16 +10849,6 @@ table2Version = 129 ; indicatorOfParameter = 67 ; } -#Minimum stomatal resistance, low vegetation -'s m**-1' = { - table2Version = 129 ; - indicatorOfParameter = 68 ; - } -#Minimum stomatal resistance, high vegetation -'s m**-1' = { - table2Version = 129 ; - indicatorOfParameter = 69 ; - } #Biome cover, low vegetation '(0 - 1)' = { table2Version = 129 ; @@ -13494,36 +13459,16 @@ table2Version = 160 ; indicatorOfParameter = 199 ; } -#Maximum temperature at 2 metres during averaging time -'K' = { - table2Version = 160 ; - indicatorOfParameter = 201 ; - } -#Minimum temperature at 2 metres during averaging time -'K' = { - table2Version = 160 ; - indicatorOfParameter = 202 ; - } #Runoff 'kg m**-2 s**-1' = { table2Version = 160 ; indicatorOfParameter = 205 ; } -#Standard deviation of geopotential -'m**2 s**-2' = { - table2Version = 160 ; - indicatorOfParameter = 206 ; - } #Covariance of temperature and geopotential 'K m**2 s**-2' = { table2Version = 160 ; indicatorOfParameter = 207 ; } -#Standard deviation of temperature -'K' = { - table2Version = 160 ; - indicatorOfParameter = 208 ; - } #Covariance of specific humidity and geopotential 'm**2 s**-2' = { table2Version = 160 ; @@ -13534,11 +13479,6 @@ table2Version = 160 ; indicatorOfParameter = 210 ; } -#Standard deviation of specific humidity -'(0 - 1)' = { - table2Version = 160 ; - indicatorOfParameter = 211 ; - } #Covariance of U component and geopotential 'm**3 s**-3' = { table2Version = 160 ; @@ -13554,11 +13494,6 @@ table2Version = 160 ; indicatorOfParameter = 214 ; } -#Standard deviation of U velocity -'m s**-1' = { - table2Version = 160 ; - indicatorOfParameter = 215 ; - } #Covariance of V component and geopotential 'm**3 s**-3' = { table2Version = 160 ; @@ -13579,11 +13514,6 @@ table2Version = 160 ; indicatorOfParameter = 219 ; } -#Standard deviation of V component -'m s**-1' = { - table2Version = 160 ; - indicatorOfParameter = 220 ; - } #Covariance of W component and geopotential 'Pa m**2 s**-3' = { table2Version = 160 ; @@ -13609,11 +13539,6 @@ table2Version = 160 ; indicatorOfParameter = 225 ; } -#Standard deviation of vertical velocity -'Pa s**-1' = { - table2Version = 160 ; - indicatorOfParameter = 226 ; - } #Instantaneous surface heat flux 'J m**-2' = { table2Version = 160 ; @@ -14975,12 +14900,12 @@ indicatorOfParameter = 255 ; } #Snow evaporation -'m of water s**-1' = { +'m of water equivalent s**-1' = { table2Version = 172 ; indicatorOfParameter = 44 ; } #Snowmelt -'m of water s**-1' = { +'m of water equivalent s**-1' = { table2Version = 172 ; indicatorOfParameter = 45 ; } @@ -15145,12 +15070,12 @@ indicatorOfParameter = 255 ; } #Snow evaporation anomaly -'m of water s**-1' = { +'m of water equivalent s**-1' = { table2Version = 173 ; indicatorOfParameter = 44 ; } #Snowmelt anomaly -'m of water s**-1' = { +'m of water equivalent s**-1' = { table2Version = 173 ; indicatorOfParameter = 45 ; } @@ -15250,7 +15175,7 @@ indicatorOfParameter = 181 ; } #Evaporation anomalous rate of accumulation -'m of water s**-1' = { +'m of water equivalent s**-1' = { table2Version = 173 ; indicatorOfParameter = 182 ; } @@ -16039,11 +15964,6 @@ table2Version = 201 ; indicatorOfParameter = 113 ; } -#deviation of pressure from reference value -'Pa' = { - table2Version = 201 ; - indicatorOfParameter = 139 ; - } #coefficient of horizontal diffusion 'm**2 s**-1' = { table2Version = 201 ; diff --git a/definitions/grib1/localConcepts/rjtd/name.def b/definitions/grib1/localConcepts/rjtd/name.def index 3b4fa8db8..273bcfc53 100644 --- a/definitions/grib1/localConcepts/rjtd/name.def +++ b/definitions/grib1/localConcepts/rjtd/name.def @@ -213,11 +213,6 @@ table2Version = 200 ; indicatorOfParameter = 78 ; } -#Maximum wind speed -'Maximum wind speed' = { - table2Version = 200 ; - indicatorOfParameter = 219 ; - } #Surface downward short-wave radiation flux 'Surface downward short-wave radiation flux' = { table2Version = 200 ; diff --git a/definitions/grib1/localConcepts/rjtd/paramId.def b/definitions/grib1/localConcepts/rjtd/paramId.def index 392359de9..989e5d15a 100644 --- a/definitions/grib1/localConcepts/rjtd/paramId.def +++ b/definitions/grib1/localConcepts/rjtd/paramId.def @@ -213,11 +213,6 @@ table2Version = 200 ; indicatorOfParameter = 78 ; } -#Maximum wind speed -'260064' = { - table2Version = 200 ; - indicatorOfParameter = 219 ; - } #Surface downward short-wave radiation flux '260087' = { table2Version = 200 ; diff --git a/definitions/grib1/localConcepts/rjtd/shortName.def b/definitions/grib1/localConcepts/rjtd/shortName.def index 766592e9b..6bb3018f9 100644 --- a/definitions/grib1/localConcepts/rjtd/shortName.def +++ b/definitions/grib1/localConcepts/rjtd/shortName.def @@ -213,11 +213,6 @@ table2Version = 200 ; indicatorOfParameter = 78 ; } -#Maximum wind speed -'maxgust' = { - table2Version = 200 ; - indicatorOfParameter = 219 ; - } #Surface downward short-wave radiation flux 'sdswrf' = { table2Version = 200 ; diff --git a/definitions/grib1/localConcepts/rjtd/units.def b/definitions/grib1/localConcepts/rjtd/units.def index 81ef6cf02..b33c58ee8 100644 --- a/definitions/grib1/localConcepts/rjtd/units.def +++ b/definitions/grib1/localConcepts/rjtd/units.def @@ -213,11 +213,6 @@ table2Version = 200 ; indicatorOfParameter = 78 ; } -#Maximum wind speed -'m s**-1' = { - table2Version = 200 ; - indicatorOfParameter = 219 ; - } #Surface downward short-wave radiation flux 'W m**-2' = { table2Version = 200 ; diff --git a/definitions/grib2/localConcepts/ecmf/name.def b/definitions/grib2/localConcepts/ecmf/name.def index 8d00d429a..d3796d9dc 100644 --- a/definitions/grib2/localConcepts/ecmf/name.def +++ b/definitions/grib2/localConcepts/ecmf/name.def @@ -242,18 +242,6 @@ parameterCategory = 128 ; parameterNumber = 65 ; } -#Minimum stomatal resistance, low vegetation -'Minimum stomatal resistance, low vegetation' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'Minimum stomatal resistance, high vegetation' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation 'Biome cover, low vegetation' = { discipline = 192 ; @@ -1277,18 +1265,6 @@ parameterCategory = 200 ; parameterNumber = 67 ; } -#Minimum stomatal resistance, low vegetation -'Minimum stomatal resistance, low vegetation' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'Minimum stomatal resistance, high vegetation' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation 'Biome cover, low vegetation' = { discipline = 192 ; @@ -14524,18 +14500,6 @@ parameterCategory = 129 ; parameterNumber = 67 ; } -#Minimum stomatal resistance, low vegetation -'Minimum stomatal resistance, low vegetation' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'Minimum stomatal resistance, high vegetation' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation 'Biome cover, low vegetation' = { discipline = 192 ; @@ -17024,30 +16988,6 @@ parameterCategory = 151 ; parameterNumber = 170 ; } -#U velocity maximum -'U velocity maximum' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 171 ; - } -#Depth of the velocity maximum -'Depth of the velocity maximum' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 172 ; - } -#Salinity maximum -'Salinity maximum' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 173 ; - } -#Depth of salinity maximum -'Depth of salinity maximum' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 174 ; - } #Layer Thickness at scalar points 'Layer Thickness at scalar points' = { discipline = 192 ; @@ -17330,42 +17270,18 @@ parameterCategory = 160 ; parameterNumber = 199 ; } -#Maximum temperature at 2 metres during averaging time -'Maximum temperature at 2 metres during averaging time' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 201 ; - } -#Minimum temperature at 2 metres during averaging time -'Minimum temperature at 2 metres during averaging time' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 202 ; - } #Runoff 'Runoff' = { discipline = 192 ; parameterCategory = 160 ; parameterNumber = 205 ; } -#Standard deviation of geopotential -'Standard deviation of geopotential' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 206 ; - } #Covariance of temperature and geopotential 'Covariance of temperature and geopotential' = { discipline = 192 ; parameterCategory = 160 ; parameterNumber = 207 ; } -#Standard deviation of temperature -'Standard deviation of temperature' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 208 ; - } #Covariance of specific humidity and geopotential 'Covariance of specific humidity and geopotential' = { discipline = 192 ; @@ -17378,12 +17294,6 @@ parameterCategory = 160 ; parameterNumber = 210 ; } -#Standard deviation of specific humidity -'Standard deviation of specific humidity' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 211 ; - } #Covariance of U component and geopotential 'Covariance of U component and geopotential' = { discipline = 192 ; @@ -17402,12 +17312,6 @@ parameterCategory = 160 ; parameterNumber = 214 ; } -#Standard deviation of U velocity -'Standard deviation of U velocity' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 215 ; - } #Covariance of V component and geopotential 'Covariance of V component and geopotential' = { discipline = 192 ; @@ -17432,12 +17336,6 @@ parameterCategory = 160 ; parameterNumber = 219 ; } -#Standard deviation of V component -'Standard deviation of V component' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 220 ; - } #Covariance of W component and geopotential 'Covariance of W component and geopotential' = { discipline = 192 ; @@ -17468,12 +17366,6 @@ parameterCategory = 160 ; parameterNumber = 225 ; } -#Standard deviation of vertical velocity -'Standard deviation of vertical velocity' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 226 ; - } #Instantaneous surface heat flux 'Instantaneous surface heat flux' = { discipline = 192 ; @@ -19238,18 +19130,6 @@ parameterCategory = 174 ; parameterNumber = 183 ; } -#1.5m temperature - maximum in the last 24 hours -'1.5m temperature - maximum in the last 24 hours' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'1.5m temperature - minimum in the last 24 hours' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 202 ; - } #Soil temperature layer 4 'Soil temperature layer 4' = { discipline = 192 ; @@ -19412,18 +19292,6 @@ parameterCategory = 175 ; parameterNumber = 183 ; } -#1.5m temperature - maximum in the last 24 hours -'1.5m temperature - maximum in the last 24 hours' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'1.5m temperature - minimum in the last 24 hours' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 202 ; - } #Soil temperature layer 4 'Soil temperature layer 4' = { discipline = 192 ; @@ -19910,24 +19778,12 @@ parameterCategory = 201 ; parameterNumber = 113 ; } -#deviation of pressure from reference value -'deviation of pressure from reference value' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 139 ; - } #coefficient of horizontal diffusion 'coefficient of horizontal diffusion' = { discipline = 192 ; parameterCategory = 201 ; parameterNumber = 150 ; } -#Maximum wind velocity -'Maximum wind velocity' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 187 ; - } #water content of interception store 'water content of interception store' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/paramId.def b/definitions/grib2/localConcepts/ecmf/paramId.def index b4e5a0c5f..8bb06bf69 100644 --- a/definitions/grib2/localConcepts/ecmf/paramId.def +++ b/definitions/grib2/localConcepts/ecmf/paramId.def @@ -242,18 +242,6 @@ parameterCategory = 128 ; parameterNumber = 65 ; } -#Minimum stomatal resistance, low vegetation -'68' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'69' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation '70' = { discipline = 192 ; @@ -1277,18 +1265,6 @@ parameterCategory = 200 ; parameterNumber = 67 ; } -#Minimum stomatal resistance, low vegetation -'200068' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'200069' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation '200070' = { discipline = 192 ; @@ -14524,18 +14500,6 @@ parameterCategory = 129 ; parameterNumber = 67 ; } -#Minimum stomatal resistance, low vegetation -'129068' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'129069' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation '129070' = { discipline = 192 ; @@ -17024,30 +16988,6 @@ parameterCategory = 151 ; parameterNumber = 170 ; } -#U velocity maximum -'151171' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 171 ; - } -#Depth of the velocity maximum -'151172' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 172 ; - } -#Salinity maximum -'151173' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 173 ; - } -#Depth of salinity maximum -'151174' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 174 ; - } #Layer Thickness at scalar points '151176' = { discipline = 192 ; @@ -17330,42 +17270,18 @@ parameterCategory = 160 ; parameterNumber = 199 ; } -#Maximum temperature at 2 metres during averaging time -'160201' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 201 ; - } -#Minimum temperature at 2 metres during averaging time -'160202' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 202 ; - } #Runoff '160205' = { discipline = 192 ; parameterCategory = 160 ; parameterNumber = 205 ; } -#Standard deviation of geopotential -'160206' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 206 ; - } #Covariance of temperature and geopotential '160207' = { discipline = 192 ; parameterCategory = 160 ; parameterNumber = 207 ; } -#Standard deviation of temperature -'160208' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 208 ; - } #Covariance of specific humidity and geopotential '160209' = { discipline = 192 ; @@ -17378,12 +17294,6 @@ parameterCategory = 160 ; parameterNumber = 210 ; } -#Standard deviation of specific humidity -'160211' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 211 ; - } #Covariance of U component and geopotential '160212' = { discipline = 192 ; @@ -17402,12 +17312,6 @@ parameterCategory = 160 ; parameterNumber = 214 ; } -#Standard deviation of U velocity -'160215' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 215 ; - } #Covariance of V component and geopotential '160216' = { discipline = 192 ; @@ -17432,12 +17336,6 @@ parameterCategory = 160 ; parameterNumber = 219 ; } -#Standard deviation of V component -'160220' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 220 ; - } #Covariance of W component and geopotential '160221' = { discipline = 192 ; @@ -17468,12 +17366,6 @@ parameterCategory = 160 ; parameterNumber = 225 ; } -#Standard deviation of vertical velocity -'160226' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 226 ; - } #Instantaneous surface heat flux '160231' = { discipline = 192 ; @@ -19238,18 +19130,6 @@ parameterCategory = 174 ; parameterNumber = 183 ; } -#1.5m temperature - maximum in the last 24 hours -'174201' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'174202' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 202 ; - } #Soil temperature layer 4 '174236' = { discipline = 192 ; @@ -19412,18 +19292,6 @@ parameterCategory = 175 ; parameterNumber = 183 ; } -#1.5m temperature - maximum in the last 24 hours -'175201' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'175202' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 202 ; - } #Soil temperature layer 4 '175236' = { discipline = 192 ; @@ -19910,24 +19778,12 @@ parameterCategory = 201 ; parameterNumber = 113 ; } -#deviation of pressure from reference value -'201139' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 139 ; - } #coefficient of horizontal diffusion '201150' = { discipline = 192 ; parameterCategory = 201 ; parameterNumber = 150 ; } -#Maximum wind velocity -'201187' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 187 ; - } #water content of interception store '201200' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/shortName.def b/definitions/grib2/localConcepts/ecmf/shortName.def index 2f124dd73..2f4055501 100644 --- a/definitions/grib2/localConcepts/ecmf/shortName.def +++ b/definitions/grib2/localConcepts/ecmf/shortName.def @@ -242,18 +242,6 @@ parameterCategory = 128 ; parameterNumber = 65 ; } -#Minimum stomatal resistance, low vegetation -'msr_lv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'msr_hv' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation 'bc_lv' = { discipline = 192 ; @@ -1277,18 +1265,6 @@ parameterCategory = 200 ; parameterNumber = 67 ; } -#Minimum stomatal resistance, low vegetation -'~' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'~' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation '~' = { discipline = 192 ; @@ -14524,18 +14500,6 @@ parameterCategory = 129 ; parameterNumber = 67 ; } -#Minimum stomatal resistance, low vegetation -'~' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'~' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation '~' = { discipline = 192 ; @@ -17024,30 +16988,6 @@ parameterCategory = 151 ; parameterNumber = 170 ; } -#U velocity maximum -'umax' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 171 ; - } -#Depth of the velocity maximum -'dumax' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 172 ; - } -#Salinity maximum -'smax' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 173 ; - } -#Depth of salinity maximum -'dsmax' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 174 ; - } #Layer Thickness at scalar points 'ldp' = { discipline = 192 ; @@ -17330,42 +17270,18 @@ parameterCategory = 160 ; parameterNumber = 199 ; } -#Maximum temperature at 2 metres during averaging time -'mx2trea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 201 ; - } -#Minimum temperature at 2 metres during averaging time -'mn2trea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 202 ; - } #Runoff 'rorea' = { discipline = 192 ; parameterCategory = 160 ; parameterNumber = 205 ; } -#Standard deviation of geopotential -'zzrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 206 ; - } #Covariance of temperature and geopotential 'tzrea' = { discipline = 192 ; parameterCategory = 160 ; parameterNumber = 207 ; } -#Standard deviation of temperature -'ttrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 208 ; - } #Covariance of specific humidity and geopotential 'qzrea' = { discipline = 192 ; @@ -17378,12 +17294,6 @@ parameterCategory = 160 ; parameterNumber = 210 ; } -#Standard deviation of specific humidity -'qqrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 211 ; - } #Covariance of U component and geopotential 'uzrea' = { discipline = 192 ; @@ -17402,12 +17312,6 @@ parameterCategory = 160 ; parameterNumber = 214 ; } -#Standard deviation of U velocity -'uurea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 215 ; - } #Covariance of V component and geopotential 'vzrea' = { discipline = 192 ; @@ -17432,12 +17336,6 @@ parameterCategory = 160 ; parameterNumber = 219 ; } -#Standard deviation of V component -'vvrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 220 ; - } #Covariance of W component and geopotential 'wzrea' = { discipline = 192 ; @@ -17468,12 +17366,6 @@ parameterCategory = 160 ; parameterNumber = 225 ; } -#Standard deviation of vertical velocity -'wwrea' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 226 ; - } #Instantaneous surface heat flux 'ishfrea' = { discipline = 192 ; @@ -19238,18 +19130,6 @@ parameterCategory = 174 ; parameterNumber = 183 ; } -#1.5m temperature - maximum in the last 24 hours -'~' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'~' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 202 ; - } #Soil temperature layer 4 '~' = { discipline = 192 ; @@ -19412,18 +19292,6 @@ parameterCategory = 175 ; parameterNumber = 183 ; } -#1.5m temperature - maximum in the last 24 hours -'~' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'~' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 202 ; - } #Soil temperature layer 4 '~' = { discipline = 192 ; @@ -19910,24 +19778,12 @@ parameterCategory = 201 ; parameterNumber = 113 ; } -#deviation of pressure from reference value -'pp' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 139 ; - } #coefficient of horizontal diffusion '~' = { discipline = 192 ; parameterCategory = 201 ; parameterNumber = 150 ; } -#Maximum wind velocity -'vmax_10m' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 187 ; - } #water content of interception store 'w_i' = { discipline = 192 ; diff --git a/definitions/grib2/localConcepts/ecmf/units.def b/definitions/grib2/localConcepts/ecmf/units.def index c8c65ba8a..642222341 100644 --- a/definitions/grib2/localConcepts/ecmf/units.def +++ b/definitions/grib2/localConcepts/ecmf/units.def @@ -242,18 +242,6 @@ parameterCategory = 128 ; parameterNumber = 65 ; } -#Minimum stomatal resistance, low vegetation -'s m**-1' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'s m**-1' = { - discipline = 192 ; - parameterCategory = 128 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation '(0 - 1)' = { discipline = 192 ; @@ -1277,18 +1265,6 @@ parameterCategory = 200 ; parameterNumber = 67 ; } -#Minimum stomatal resistance, low vegetation -'s m**-1' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'s m**-1' = { - discipline = 192 ; - parameterCategory = 200 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation '(0 - 1)' = { discipline = 192 ; @@ -14524,18 +14500,6 @@ parameterCategory = 129 ; parameterNumber = 67 ; } -#Minimum stomatal resistance, low vegetation -'s m**-1' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 68 ; - } -#Minimum stomatal resistance, high vegetation -'s m**-1' = { - discipline = 192 ; - parameterCategory = 129 ; - parameterNumber = 69 ; - } #Biome cover, low vegetation '(0 - 1)' = { discipline = 192 ; @@ -17024,30 +16988,6 @@ parameterCategory = 151 ; parameterNumber = 170 ; } -#U velocity maximum -'m s**-1' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 171 ; - } -#Depth of the velocity maximum -'m' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 172 ; - } -#Salinity maximum -'psu' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 173 ; - } -#Depth of salinity maximum -'m' = { - discipline = 192 ; - parameterCategory = 151 ; - parameterNumber = 174 ; - } #Layer Thickness at scalar points 'm' = { discipline = 192 ; @@ -17330,42 +17270,18 @@ parameterCategory = 160 ; parameterNumber = 199 ; } -#Maximum temperature at 2 metres during averaging time -'K' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 201 ; - } -#Minimum temperature at 2 metres during averaging time -'K' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 202 ; - } #Runoff 'kg m**-2 s**-1' = { discipline = 192 ; parameterCategory = 160 ; parameterNumber = 205 ; } -#Standard deviation of geopotential -'m**2 s**-2' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 206 ; - } #Covariance of temperature and geopotential 'K m**2 s**-2' = { discipline = 192 ; parameterCategory = 160 ; parameterNumber = 207 ; } -#Standard deviation of temperature -'K' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 208 ; - } #Covariance of specific humidity and geopotential 'm**2 s**-2' = { discipline = 192 ; @@ -17378,12 +17294,6 @@ parameterCategory = 160 ; parameterNumber = 210 ; } -#Standard deviation of specific humidity -'(0 - 1)' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 211 ; - } #Covariance of U component and geopotential 'm**3 s**-3' = { discipline = 192 ; @@ -17402,12 +17312,6 @@ parameterCategory = 160 ; parameterNumber = 214 ; } -#Standard deviation of U velocity -'m s**-1' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 215 ; - } #Covariance of V component and geopotential 'm**3 s**-3' = { discipline = 192 ; @@ -17432,12 +17336,6 @@ parameterCategory = 160 ; parameterNumber = 219 ; } -#Standard deviation of V component -'m s**-1' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 220 ; - } #Covariance of W component and geopotential 'Pa m**2 s**-3' = { discipline = 192 ; @@ -17468,12 +17366,6 @@ parameterCategory = 160 ; parameterNumber = 225 ; } -#Standard deviation of vertical velocity -'Pa s**-1' = { - discipline = 192 ; - parameterCategory = 160 ; - parameterNumber = 226 ; - } #Instantaneous surface heat flux 'J m**-2' = { discipline = 192 ; @@ -18759,13 +18651,13 @@ parameterNumber = 255 ; } #Snow evaporation -'m of water s**-1' = { +'m of water equivalent s**-1' = { discipline = 192 ; parameterCategory = 172 ; parameterNumber = 44 ; } #Snowmelt -'m of water s**-1' = { +'m of water equivalent s**-1' = { discipline = 192 ; parameterCategory = 172 ; parameterNumber = 45 ; @@ -18855,13 +18747,13 @@ parameterNumber = 255 ; } #Snow evaporation anomaly -'m of water s**-1' = { +'m of water equivalent s**-1' = { discipline = 192 ; parameterCategory = 173 ; parameterNumber = 44 ; } #Snowmelt anomaly -'m of water s**-1' = { +'m of water equivalent s**-1' = { discipline = 192 ; parameterCategory = 173 ; parameterNumber = 45 ; @@ -18981,7 +18873,7 @@ parameterNumber = 181 ; } #Evaporation anomalous rate of accumulation -'m of water s**-1' = { +'m of water equivalent s**-1' = { discipline = 192 ; parameterCategory = 173 ; parameterNumber = 182 ; @@ -19238,18 +19130,6 @@ parameterCategory = 174 ; parameterNumber = 183 ; } -#1.5m temperature - maximum in the last 24 hours -'K' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'K' = { - discipline = 192 ; - parameterCategory = 174 ; - parameterNumber = 202 ; - } #Soil temperature layer 4 'K' = { discipline = 192 ; @@ -19412,18 +19292,6 @@ parameterCategory = 175 ; parameterNumber = 183 ; } -#1.5m temperature - maximum in the last 24 hours -'K' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 201 ; - } -#1.5m temperature - minimum in the last 24 hours -'K' = { - discipline = 192 ; - parameterCategory = 175 ; - parameterNumber = 202 ; - } #Soil temperature layer 4 'K' = { discipline = 192 ; @@ -19910,24 +19778,12 @@ parameterCategory = 201 ; parameterNumber = 113 ; } -#deviation of pressure from reference value -'Pa' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 139 ; - } #coefficient of horizontal diffusion 'm**2 s**-1' = { discipline = 192 ; parameterCategory = 201 ; parameterNumber = 150 ; } -#Maximum wind velocity -'m s**-1' = { - discipline = 192 ; - parameterCategory = 201 ; - parameterNumber = 187 ; - } #water content of interception store 'kg m**-2' = { discipline = 192 ; diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index ba2128aa3..3ac979f33 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -5944,12 +5944,6 @@ parameterCategory = 0 ; parameterNumber = 13 ; } -#Minimum dew point depression -'Minimum dew point depression' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 14 ; - } #Snow phase change heat flux 'Snow phase change heat flux' = { discipline = 0 ; @@ -6046,18 +6040,6 @@ parameterCategory = 1 ; parameterNumber = 26 ; } -#Maximum relative humidity -'Maximum relative humidity' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 27 ; - } -#Maximum absolute humidity -'Maximum absolute humidity' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 28 ; - } #Total snowfall 'Total snowfall' = { discipline = 0 ; @@ -6265,12 +6247,6 @@ parameterCategory = 1 ; parameterNumber = 68 ; } -#Maximum wind speed -'Maximum wind speed' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 21 ; - } #Wind speed (gust) 'Wind speed (gust)' = { discipline = 0 ; @@ -6820,12 +6796,6 @@ parameterCategory = 19 ; parameterNumber = 16 ; } -#Maximum snow albedo -'Maximum snow albedo' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 17 ; - } #Snow free albedo 'Snow free albedo' = { discipline = 0 ; @@ -10768,18 +10738,6 @@ parameterCategory = 0 ; parameterNumber = 3 ; } -#Maximum temperature -'Maximum temperature' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 4 ; - } -#Minimum temperature -'Minimum temperature' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 5 ; - } #Dew point temperature 'Dew point temperature' = { discipline = 0 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index 559dfa569..bf4f0fd51 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -5944,12 +5944,6 @@ parameterCategory = 0 ; parameterNumber = 13 ; } -#Minimum dew point depression -'260006' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 14 ; - } #Snow phase change heat flux '260007' = { discipline = 0 ; @@ -6046,18 +6040,6 @@ parameterCategory = 1 ; parameterNumber = 26 ; } -#Maximum relative humidity -'260023' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 27 ; - } -#Maximum absolute humidity -'260024' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 28 ; - } #Total snowfall '260025' = { discipline = 0 ; @@ -6265,12 +6247,6 @@ parameterCategory = 1 ; parameterNumber = 68 ; } -#Maximum wind speed -'260064' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 21 ; - } #Wind speed (gust) '260065' = { discipline = 0 ; @@ -6820,12 +6796,6 @@ parameterCategory = 19 ; parameterNumber = 16 ; } -#Maximum snow albedo -'260161' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 17 ; - } #Snow free albedo '260162' = { discipline = 0 ; @@ -10768,18 +10738,6 @@ parameterCategory = 0 ; parameterNumber = 3 ; } -#Maximum temperature -'3015' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 4 ; - } -#Minimum temperature -'3016' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 5 ; - } #Dew point temperature '3017' = { discipline = 0 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index d3938a656..13c68c8a1 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -5944,12 +5944,6 @@ parameterCategory = 0 ; parameterNumber = 13 ; } -#Minimum dew point depression -'mindpd' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 14 ; - } #Snow phase change heat flux 'snohf' = { discipline = 0 ; @@ -6046,18 +6040,6 @@ parameterCategory = 1 ; parameterNumber = 26 ; } -#Maximum relative humidity -'maxrh' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 27 ; - } -#Maximum absolute humidity -'maxah' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 28 ; - } #Total snowfall 'asnow' = { discipline = 0 ; @@ -6265,12 +6247,6 @@ parameterCategory = 1 ; parameterNumber = 68 ; } -#Maximum wind speed -'maxgust' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 21 ; - } #Wind speed (gust) 'gust' = { discipline = 0 ; @@ -6820,12 +6796,6 @@ parameterCategory = 19 ; parameterNumber = 16 ; } -#Maximum snow albedo -'mxsalb' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 17 ; - } #Snow free albedo 'snfalb' = { discipline = 0 ; @@ -10768,18 +10738,6 @@ parameterCategory = 0 ; parameterNumber = 3 ; } -#Maximum temperature -'tmax' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 4 ; - } -#Minimum temperature -'tmin' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 5 ; - } #Dew point temperature 'dpt' = { discipline = 0 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index d71fda3c2..535b1caae 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -5944,12 +5944,6 @@ parameterCategory = 0 ; parameterNumber = 13 ; } -#Minimum dew point depression -'K' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 14 ; - } #Snow phase change heat flux 'W m**-2' = { discipline = 0 ; @@ -6046,18 +6040,6 @@ parameterCategory = 1 ; parameterNumber = 26 ; } -#Maximum relative humidity -'%' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 27 ; - } -#Maximum absolute humidity -'kg m**-3' = { - discipline = 0 ; - parameterCategory = 1 ; - parameterNumber = 28 ; - } #Total snowfall 'm' = { discipline = 0 ; @@ -6265,12 +6247,6 @@ parameterCategory = 1 ; parameterNumber = 68 ; } -#Maximum wind speed -'m s**-1' = { - discipline = 0 ; - parameterCategory = 2 ; - parameterNumber = 21 ; - } #Wind speed (gust) 'm s**-1' = { discipline = 0 ; @@ -6820,12 +6796,6 @@ parameterCategory = 19 ; parameterNumber = 16 ; } -#Maximum snow albedo -'%' = { - discipline = 0 ; - parameterCategory = 19 ; - parameterNumber = 17 ; - } #Snow free albedo '%' = { discipline = 0 ; @@ -10768,18 +10738,6 @@ parameterCategory = 0 ; parameterNumber = 3 ; } -#Maximum temperature -'K' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 4 ; - } -#Minimum temperature -'K' = { - discipline = 0 ; - parameterCategory = 0 ; - parameterNumber = 5 ; - } #Dew point temperature 'K' = { discipline = 0 ; From e78f3be92f80bc13b890693e966b81a0c6a06d79 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Wed, 14 Aug 2024 14:07:46 +0000 Subject: [PATCH 170/277] Testing: Replace tigge_dir. Use bin_dir instead --- tests/definitions.sh | 4 ++-- tests/include.ctest.sh.in | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/definitions.sh b/tests/definitions.sh index ecd5d5f4a..3842fa973 100755 --- a/tests/definitions.sh +++ b/tests/definitions.sh @@ -18,12 +18,12 @@ tempOut=temp.$label.txt for file in `find ${ECCODES_DEFINITION_PATH}/ -name '*.def' -print | grep -v grib3/ | grep -v metar/ | grep -v taf/` do - ${tools_dir}/codes_parser $file > $REDIRECT + ${bin_dir}/codes_parser $file > $REDIRECT done # Try an invalid input set +e -echo 'transient xx=1' | ${tools_dir}/codes_parser - 2>$tempOut +echo 'transient xx=1' | ${bin_dir}/codes_parser - 2>$tempOut status=$? set -e [ $status -ne 0 ] diff --git a/tests/include.ctest.sh.in b/tests/include.ctest.sh.in index 90473b7ad..416b353d5 100644 --- a/tests/include.ctest.sh.in +++ b/tests/include.ctest.sh.in @@ -37,7 +37,7 @@ export ECCODES_DEFINITION_PATH # binaries are in the TOP CMAKE_BINARY_DIR tools_dir=@CMAKE_BINARY_DIR@/bin -tigge_dir=@CMAKE_BINARY_DIR@/bin +bin_dir=@CMAKE_BINARY_DIR@/bin # If this environment variable is set, then run the # executables with valgrind. See ECC-746 From f0bd218441dbf52a88eec5187fa0e801148a69b9 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Wed, 14 Aug 2024 14:08:39 +0000 Subject: [PATCH 171/277] Examples: Fix valgrind errors --- examples/F90/grib_read_bytes.f90 | 2 +- examples/F90/grib_sections_copy.f90 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/F90/grib_read_bytes.f90 b/examples/F90/grib_read_bytes.f90 index c118bdab4..8333760e4 100644 --- a/examples/F90/grib_read_bytes.f90 +++ b/examples/F90/grib_read_bytes.f90 @@ -13,7 +13,7 @@ program read_bytes integer :: ifile integer :: intsize parameter(intsize=10000) - character, dimension(intsize) :: bufferChar + character, dimension(intsize) :: bufferChar = '' character(len=32) :: input_grib_file = '../../data/v.grib2' call codes_open_file(ifile, input_grib_file, 'r') diff --git a/examples/F90/grib_sections_copy.f90 b/examples/F90/grib_sections_copy.f90 index 93e72675f..bc20f0f6d 100644 --- a/examples/F90/grib_sections_copy.f90 +++ b/examples/F90/grib_sections_copy.f90 @@ -12,7 +12,7 @@ program grib_sections_copy implicit none integer :: igrib_a, igrib_b, igrib_c, iret - character(len=40) :: error_message + character(len=40) :: error_message = '' call codes_grib_new_from_samples(igrib_a, 'regular_ll_sfc_grib1') call codes_grib_new_from_samples(igrib_b, 'reduced_gg_pl_640_grib1') From 72d806c33bef619226291c8ce9dcce5e111a0838 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 14 Aug 2024 17:50:24 +0100 Subject: [PATCH 172/277] Definitions: paramId for conversion --- .../grib1/localConcepts/ecmf/paramIdForConversion.def | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/definitions/grib1/localConcepts/ecmf/paramIdForConversion.def b/definitions/grib1/localConcepts/ecmf/paramIdForConversion.def index 050690c5c..7c609cc70 100644 --- a/definitions/grib1/localConcepts/ecmf/paramIdForConversion.def +++ b/definitions/grib1/localConcepts/ecmf/paramIdForConversion.def @@ -35,11 +35,19 @@ 262139 = {gribTablesVersionNo=151; indicatorOfParameter=132; centre=98;} # 151131 262140 = {gribTablesVersionNo=151; indicatorOfParameter=131; centre=98;} -# +# 72 260087 = {gribTablesVersionNo=128; indicatorOfParameter=72; centre=98;} +# 73 260097 = {gribTablesVersionNo=128; indicatorOfParameter=73; centre=98;} +# 172050 235026 = {gribTablesVersionNo=172; indicatorOfParameter=50; centre=98;} +# 172145 235032 = {gribTablesVersionNo=172; indicatorOfParameter=145; centre=98;} +# 172189 <-- ecCodes 2.38 +# 235189 = {gribTablesVersionNo=172; indicatorOfParameter=189; centre=98;} +# 172195 235045 = {gribTablesVersionNo=172; indicatorOfParameter=195; centre=98;} +# 172196 235046 = {gribTablesVersionNo=172; indicatorOfParameter=196; centre=98;} +# 172197 235047 = {gribTablesVersionNo=172; indicatorOfParameter=197; centre=98;} From 329bec63cd9944bff3336fc69542e47b7ee1d444 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 14 Aug 2024 21:34:27 +0100 Subject: [PATCH 173/277] Testing: count with -f option --- tests/grib_count.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/grib_count.sh b/tests/grib_count.sh index 43b4c2246..b34809a03 100755 --- a/tests/grib_count.sh +++ b/tests/grib_count.sh @@ -19,6 +19,8 @@ for file in ${grib_files}; do ${tools_dir}/grib_count $input done +${tools_dir}/grib_count -f $data_dir/bad.grib + # Specific files count=`${tools_dir}/grib_count ${data_dir}/test.grib1` [ $count -eq 42 ] From 9235522326694044b507de25bbcdc2a821894231 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 15 Aug 2024 10:30:24 +0100 Subject: [PATCH 174/277] Testing: More codes_count tests --- tests/grib_count.sh | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tests/grib_count.sh b/tests/grib_count.sh index b34809a03..c10ae8b90 100755 --- a/tests/grib_count.sh +++ b/tests/grib_count.sh @@ -11,6 +11,7 @@ . ./include.ctest.sh label="grib_count_test" +tempText=temp.$label.txt grib_files=`cat ${data_dir}/grib_data_files.txt` for file in ${grib_files}; do @@ -19,7 +20,16 @@ for file in ${grib_files}; do ${tools_dir}/grib_count $input done +# Bad input ${tools_dir}/grib_count -f $data_dir/bad.grib +cat $data_dir/bad.grib | ${tools_dir}/grib_count -f - + +set +e +${tools_dir}/grib_count $data_dir > $tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Is a directory" $tempText # Specific files count=`${tools_dir}/grib_count ${data_dir}/test.grib1` @@ -30,3 +40,6 @@ count=`${tools_dir}/grib_count ${data_dir}/mixed.grib` count=`${tools_dir}/grib_count ${data_dir}/tigge_ecmwf.grib2` [ $count -eq 248 ] + +# Clean up +rm -f $tempText From a12b890e9c9295dc39310627a13193c38e71653b Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 15 Aug 2024 10:58:23 +0100 Subject: [PATCH 175/277] Testing: unalias directive (in preparation for ECC-1898) --- tests/grib_mars_keys2.sh | 81 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 80 insertions(+), 1 deletion(-) diff --git a/tests/grib_mars_keys2.sh b/tests/grib_mars_keys2.sh index 2396e0236..224279019 100755 --- a/tests/grib_mars_keys2.sh +++ b/tests/grib_mars_keys2.sh @@ -11,7 +11,9 @@ . ./include.ctest.sh label="grib_mars_keys2_test" +tempOut=temp.${label}.out tempGrib=temp.${label}.grib +tempRef=temp.${label}.ref grib1_sample=$ECCODES_SAMPLES_PATH/GRIB1.tmpl grib2_sample=$ECCODES_SAMPLES_PATH/reduced_gg_pl_32_grib2.tmpl @@ -27,6 +29,82 @@ grib_check_key_equals $tempGrib mars.class,mars.type,mars.stream 'yt em dcwv' grib_check_key_equals $tempGrib marsClass:i,marsType:i,marsStream:i '18 17 1029' +# Check unalias +# ----------------- +${tools_dir}/grib_set -s stream=gfas,type=ga $grib2_sample $tempGrib +${tools_dir}/grib_ls -jm $tempGrib > $tempOut +cat > $tempRef << EOF +{ "messages" : [ + { + "domain": "g", + "date": 20100912, + "time": 1200, + "expver": "0001", + "class": "od", + "type": "ga", + "stream": "gfas", + "step": 0, + "levelist": 1000, + "levtype": "pl", + "param": 130 + } +]} +EOF +diff $tempRef $tempOut + +# This combo unaliases mars.levelist and mars.step +${tools_dir}/grib_set -s stream=gfas,type=gsd $grib2_sample $tempGrib +${tools_dir}/grib_ls -jm $tempGrib > $tempOut +cat > $tempRef << EOF +{ "messages" : [ + { + "domain": "g", + "date": 20100912, + "time": 1200, + "expver": "0001", + "class": "od", + "type": "gsd", + "stream": "gfas", + "param": 130 + } +]} +EOF +diff $tempRef $tempOut +${tools_dir}/grib_dump -Da $grib2_sample > $tempOut +grep -q "g2level level = 1000 .vertical.level, mars.levelist" $tempOut +${tools_dir}/grib_dump -Da $tempGrib > $tempOut +set +e +grep -w levelist $tempOut # dump should not show levelist +status=$? +set -e +[ $status -ne 0 ] + + +# GRIB1 +# This combo unaliases mars.step +${tools_dir}/grib_set -s localDefinitionNumber=31,stream=esmm,type=em $grib1_sample $tempGrib +${tools_dir}/grib_ls -jm $tempGrib > $tempOut +cat > $tempRef << EOF +{ "messages" : [ + { + "domain": "g", + "levtype": "pl", + "levelist": 500, + "time": 1200, + "param": 129.128, + "class": "od", + "type": "em", + "stream": "esmm", + "expver": "0001", + "fcmonth": 0, + "date": 0 + } +]} +EOF +diff $tempRef $tempOut + + + # Check all combinations # ------------------------ i=0 @@ -43,5 +121,6 @@ for cfg in $ECCODES_DEFINITION_PATH/mars/grib.*.*.def; do done echo "Checked $i files" + # Clean up -rm -f $tempGrib +rm -f $tempGrib $tempRef $tempOut From 14cdab4eb8dc1cb3f6e6f8645a535282fd7fc183 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 15 Aug 2024 11:26:34 +0100 Subject: [PATCH 176/277] Testing: bufr_compare --- tests/bufr_compare.sh | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tests/bufr_compare.sh b/tests/bufr_compare.sh index de19abc1c..4eac4a64e 100755 --- a/tests/bufr_compare.sh +++ b/tests/bufr_compare.sh @@ -339,6 +339,18 @@ set -e [ $status -eq 1 ] grep -q "Summary of different key values" $fLog +# More messages in 2nd file +count1=$(${tools_dir}/bufr_count syno_4.bufr) +count2=$(${tools_dir}/bufr_count syno_multi.bufr) +[ $count1 = 1 ] +[ $count2 = 3 ] +set +e +${tools_dir}/bufr_compare -f syno_4.bufr syno_multi.bufr > $fLog 2>&1 +status=$? +set -e +[ $status -eq 1 ] +grep -q "Different number of messages" $fLog + # ---------------------------------------- # Unreadable message From 837c9afc4e0a891e85cbaef69aa1d1aaed11374e Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 15 Aug 2024 12:28:29 +0100 Subject: [PATCH 177/277] ECC-1904: API function to get the git branch --- CMakeLists.txt | 9 +++++++++ src/eccodes.cc | 5 +++++ src/eccodes.h | 1 + src/eccodes_prototypes.h | 1 + src/grib_api.h | 2 ++ src/grib_api_version.cc.in | 6 ++++++ tools/codes_info.cc | 1 + 7 files changed, 25 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 062da488a..48315d7cb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -379,6 +379,15 @@ if( HAVE_FORTRAN AND CMAKE_Fortran_COMPILER_ID MATCHES "GNU" AND NOT CMAKE_Fortr ecbuild_add_fortran_flags("-fallow-argument-mismatch") endif() +if(GIT_FOUND AND NOT ${GIT_EXECUTABLE} STREQUAL "") + ecbuild_info("Found git: ${GIT_EXECUTABLE} (found version \"${GIT_VERSION_STRING}\")") + execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD + OUTPUT_VARIABLE eccodes_GIT_BRANCH + OUTPUT_STRIP_TRAILING_WHITESPACE + WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}" ) + ecbuild_info("ecCodes branch = ${eccodes_GIT_BRANCH}" ) +endif() + ############################################################################### # contents diff --git a/src/eccodes.cc b/src/eccodes.cc index 779690790..4dc7868b9 100644 --- a/src/eccodes.cc +++ b/src/eccodes.cc @@ -28,6 +28,11 @@ const char* codes_get_git_sha1() { return grib_get_git_sha1(); } +const char* codes_get_git_branch() +{ + return grib_get_git_branch(); +} + const char* codes_get_package_name(void) { return grib_get_package_name(); diff --git a/src/eccodes.h b/src/eccodes.h index 0c8f7193c..2c5aff7e2 100644 --- a/src/eccodes.h +++ b/src/eccodes.h @@ -1264,6 +1264,7 @@ long codes_get_api_version(void); */ const char* codes_get_git_sha1(void); +const char* codes_get_git_branch(void); const char* codes_get_build_date(void); /** diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index e0582076d..80d383526 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -942,6 +942,7 @@ int grib_optimize_decimal_factor(grib_accessor* a, const char* reference_value, /* grib_api_version.cc */ const char* grib_get_git_sha1(void); +const char* grib_get_git_branch(void); const char* codes_get_build_date(void); /* grib_bits_any_endian.cc */ diff --git a/src/grib_api.h b/src/grib_api.h index 09601899f..cd035ea9b 100644 --- a/src/grib_api.h +++ b/src/grib_api.h @@ -1259,6 +1259,8 @@ long grib_get_api_version(void); */ const char* grib_get_git_sha1(void); +const char* grib_get_git_branch(void); + /** * Get the package name * diff --git a/src/grib_api_version.cc.in b/src/grib_api_version.cc.in index 8fb7ea836..3f902f65a 100644 --- a/src/grib_api_version.cc.in +++ b/src/grib_api_version.cc.in @@ -13,6 +13,12 @@ const char* grib_get_git_sha1(void) { return "@eccodes_GIT_SHA1@"; } + +const char* grib_get_git_branch(void) +{ + return "@eccodes_GIT_BRANCH@"; +} + const char* codes_get_build_date(void) { return "@eccodes_BUILD_DATE@"; diff --git a/tools/codes_info.cc b/tools/codes_info.cc index a73dcde14..17529017c 100644 --- a/tools/codes_info.cc +++ b/tools/codes_info.cc @@ -40,6 +40,7 @@ static void print_debug_info(grib_context* context) #ifdef HAVE_AEC aec = 1; #endif + grib_context_log(context, GRIB_LOG_DEBUG, "Git branch: %s", grib_get_git_branch()); grib_context_log(context, GRIB_LOG_DEBUG, "Git SHA1: %s", grib_get_git_sha1()); grib_context_log(context, GRIB_LOG_DEBUG, "Build date: %s", codes_get_build_date()); grib_context_log(context, GRIB_LOG_DEBUG, "Features:"); From 634134ea14b2065ab4670fa3728ce21137ef13c0 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 15 Aug 2024 13:06:58 +0100 Subject: [PATCH 178/277] ECC-1904: API function to get the git branch --- CMakeLists.txt | 1 + tools/codes_info.cc | 9 +++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 48315d7cb..7e5290fa0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -383,6 +383,7 @@ if(GIT_FOUND AND NOT ${GIT_EXECUTABLE} STREQUAL "") ecbuild_info("Found git: ${GIT_EXECUTABLE} (found version \"${GIT_VERSION_STRING}\")") execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD OUTPUT_VARIABLE eccodes_GIT_BRANCH + RESULT_VARIABLE nok ERROR_VARIABLE error OUTPUT_STRIP_TRAILING_WHITESPACE WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}" ) ecbuild_info("ecCodes branch = ${eccodes_GIT_BRANCH}" ) diff --git a/tools/codes_info.cc b/tools/codes_info.cc index 17529017c..e6841e511 100644 --- a/tools/codes_info.cc +++ b/tools/codes_info.cc @@ -40,8 +40,13 @@ static void print_debug_info(grib_context* context) #ifdef HAVE_AEC aec = 1; #endif - grib_context_log(context, GRIB_LOG_DEBUG, "Git branch: %s", grib_get_git_branch()); - grib_context_log(context, GRIB_LOG_DEBUG, "Git SHA1: %s", grib_get_git_sha1()); + const char* git_branch = grib_get_git_branch(); + const char* git_sha1 = grib_get_git_sha1(); + if (strlen(git_branch) > 0) + grib_context_log(context, GRIB_LOG_DEBUG, "Git branch: %s", git_branch); + if (strlen(git_sha1) > 0) + grib_context_log(context, GRIB_LOG_DEBUG, "Git SHA1: %s", git_sha1); + grib_context_log(context, GRIB_LOG_DEBUG, "Build date: %s", codes_get_build_date()); grib_context_log(context, GRIB_LOG_DEBUG, "Features:"); grib_context_log(context, GRIB_LOG_DEBUG, " HAVE_AEC=%d", aec); From ec7506301408d5b63e8f65bf5f67eb126bf4166b Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Fri, 16 Aug 2024 11:37:19 +0000 Subject: [PATCH 179/277] ECC-1906: GRIB2: Templates for wave spectra with direction/frequency array do not set section 4 length correctly if adapting the array size --- .../grib2/templates/template.4.wave.def | 8 +++---- .../template.4.wave_spectra_list.def | 16 ++++++++------ tests/grib2_wave_spectra.sh | 21 +++++++++++++++++-- 3 files changed, 33 insertions(+), 12 deletions(-) diff --git a/definitions/grib2/templates/template.4.wave.def b/definitions/grib2/templates/template.4.wave.def index 742c0ece4..c58a45019 100644 --- a/definitions/grib2/templates/template.4.wave.def +++ b/definitions/grib2/templates/template.4.wave.def @@ -1,21 +1,21 @@ # (C) Copyright 2005- ECMWF. # Template for wave parameters -## Direction part +# Direction part unsigned[2] waveDirectionNumber : dump; alias mars.direction = waveDirectionNumber; alias directionNumber = waveDirectionNumber; -unsigned[2] numberOfWaveDirections = 1 : dump; +unsigned[2] numberOfWaveDirections = 0 : dump; alias totalNumberOfWaveDirections = numberOfWaveDirections; alias numberOfDirections = totalNumberOfWaveDirections; -## Frequency part +# Frequency part unsigned[2] waveFrequencyNumber : dump; alias mars.frequency = waveFrequencyNumber; alias frequencyNumber = waveFrequencyNumber; -unsigned[2] numberOfWaveFrequencies = 1 : dump; +unsigned[2] numberOfWaveFrequencies = 0 : dump; alias totalNumberOfWaveFrequencies = numberOfWaveFrequencies; alias numberOfFrequencies = totalNumberOfWaveFrequencies; diff --git a/definitions/grib2/templates/template.4.wave_spectra_list.def b/definitions/grib2/templates/template.4.wave_spectra_list.def index ca7768604..60d279c4f 100644 --- a/definitions/grib2/templates/template.4.wave_spectra_list.def +++ b/definitions/grib2/templates/template.4.wave_spectra_list.def @@ -2,18 +2,22 @@ # Template for wave spectra defined using an array of frequencies and directions -## Direction part +# Direction part signed[1] scaleFactorOfWaveDirections : dump; alias integerScalingFactorAppliedToDirections = scaleFactorOfWaveDirections; alias directionScalingFactor = integerScalingFactorAppliedToDirections; -unsigned[4] scaledValuesOfWaveDirections[numberOfWaveDirections] : dump; -alias scaledDirections = scaledValuesOfWaveDirections ; +if (numberOfWaveDirections > 0) { + unsigned[4] scaledValuesOfWaveDirections[numberOfWaveDirections] : dump; + alias scaledDirections = scaledValuesOfWaveDirections ; +} -## Frequency part +# Frequency part signed[1] scaleFactorOfWaveFrequencies : dump; alias integerScalingFactorAppliedToFrequencies = scaleFactorOfWaveFrequencies; alias frequencyScalingFactor = integerScalingFactorAppliedToFrequencies; -unsigned[4] scaledValuesOfWaveFrequencies[numberOfWaveFrequencies] : dump; -alias scaledFrequencies = scaledValuesOfWaveFrequencies; +if (numberOfWaveFrequencies > 0) { + unsigned[4] scaledValuesOfWaveFrequencies[numberOfWaveFrequencies] : dump; + alias scaledFrequencies = scaledValuesOfWaveFrequencies; +} diff --git a/tests/grib2_wave_spectra.sh b/tests/grib2_wave_spectra.sh index ea465b04b..336b6341a 100755 --- a/tests/grib2_wave_spectra.sh +++ b/tests/grib2_wave_spectra.sh @@ -15,6 +15,9 @@ temp=temp.$label tempGribA=temp.$label.A.grib tempGribB=temp.$label.B.grib tempSample=temp.$label.tmpl +tempRef=temp.$label.ref +tempOut=temp.$label.txt + sample2=$ECCODES_SAMPLES_PATH/GRIB2.tmpl latest=`${tools_dir}/grib_get -p tablesVersionLatest $sample2` @@ -23,9 +26,23 @@ latest=`${tools_dir}/grib_get -p tablesVersionLatest $sample2` ${tools_dir}/grib_set -s tablesVersion=$latest,productDefinitionTemplateNumber=99 $sample2 $tempSample ${tools_dir}/grib_set -s numberOfWaveDirections=3,numberOfWaveFrequencies=3 $tempSample $temp +# ECC-1906 +# -------- +${tools_dir}/grib_set -s productDefinitionTemplateNumber=99,numberOfWaveDirections=5 $sample2 $tempGribA +echo 'print "[numberOfWaveDirections=] [scaledValuesOfWaveDirections=!0]";' | ${tools_dir}/grib_filter - $tempGribA > $tempOut +cat > $tempRef < Date: Fri, 16 Aug 2024 14:54:30 +0100 Subject: [PATCH 180/277] ECC-1905: GRIB: Speed up getting shortName/paramId --- src/accessor/grib_accessor_class_concept.cc | 42 ++++++++++++++++++--- 1 file changed, 36 insertions(+), 6 deletions(-) diff --git a/src/accessor/grib_accessor_class_concept.cc b/src/accessor/grib_accessor_class_concept.cc index 98f0fb35c..2fec990f3 100644 --- a/src/accessor/grib_accessor_class_concept.cc +++ b/src/accessor/grib_accessor_class_concept.cc @@ -11,6 +11,10 @@ #include "grib_accessor_class_concept.h" +#include +#include +#include + grib_accessor_class_concept_t _grib_accessor_class_concept{ "concept" }; grib_accessor_class* grib_accessor_class_concept = &_grib_accessor_class_concept; @@ -44,8 +48,28 @@ void grib_accessor_class_concept_t::dump(grib_accessor* a, grib_dumper* dumper) grib_dump_string(dumper, a, NULL); } +// See ECC-1905 +static int grib_get_long_memoize( + grib_handle* h, const char* key, long* value, + std::unordered_map& memo) +{ + int err = 0; + auto pos = memo.find(key); + if (pos == memo.end()) { // not in map so decode & insert + err = grib_get_long(h, key, value); + if (!err) { + memo.insert( std::make_pair(key, *value) ); + } + } else { + *value = pos->second; // found in map + } + return err; +} + /* Return 1 (=True) or 0 (=False) */ -static int concept_condition_expression_true(grib_handle* h, grib_concept_condition* c) +static int concept_condition_expression_true( + grib_handle* h, grib_concept_condition* c, + std::unordered_map& memo) { long lval; long lres = 0; @@ -56,8 +80,10 @@ static int concept_condition_expression_true(grib_handle* h, grib_concept_condit switch (type) { case GRIB_TYPE_LONG: grib_expression_evaluate_long(h, c->expression, &lres); - ok = (grib_get_long(h, c->name, &lval) == GRIB_SUCCESS) && + // Use memoization for the most common type (integer keys) + ok = (grib_get_long_memoize(h, c->name, &lval, memo) == GRIB_SUCCESS) && (lval == lres); + //ok = (grib_get_long(h, c->name, &lval) == GRIB_SUCCESS) && (lval == lres); break; case GRIB_TYPE_DOUBLE: { @@ -121,12 +147,14 @@ static int concept_condition_iarray_true(grib_handle* h, grib_concept_condition* } /* Return 1 (=True) or 0 (=False) */ -static int concept_condition_true(grib_handle* h, grib_concept_condition* c) +static int concept_condition_true( + grib_handle* h, grib_concept_condition* c, + std::unordered_map& memo) { if (c->expression == NULL) return concept_condition_iarray_true(h, c); else - return concept_condition_expression_true(h, c); + return concept_condition_expression_true(h, c, memo); } static const char* concept_evaluate(grib_accessor* a) @@ -137,12 +165,14 @@ static const char* concept_evaluate(grib_accessor* a) grib_concept_value* c = action_concept_get_concept(a); grib_handle* h = grib_handle_of_accessor(a); - // fprintf(stderr, "DEBUG: concept_evaluate: %s %s\n", a->name, c->name); + std::unordered_map memo; // See ECC-1905 + + //fprintf(stderr, "DEBUG: concept_evaluate: %s %s\n", a->name, c->name); while (c) { grib_concept_condition* e = c->conditions; int cnt = 0; while (e) { - if (!concept_condition_true(h, e)) + if (!concept_condition_true(h, e, memo)) break; e = e->next; cnt++; From a7e21c3e56bfa41cb41a982a4927b633c2c5f37b Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 17 Aug 2024 11:58:36 +0100 Subject: [PATCH 181/277] Examples: Cleanup --- examples/F90/CMakeLists.txt | 12 +++++----- examples/F90/new_from_file.f90 | 40 ---------------------------------- 2 files changed, 6 insertions(+), 46 deletions(-) delete mode 100644 examples/F90/new_from_file.f90 diff --git a/examples/F90/CMakeLists.txt b/examples/F90/CMakeLists.txt index 30a3de0e9..7ec9c28b2 100644 --- a/examples/F90/CMakeLists.txt +++ b/examples/F90/CMakeLists.txt @@ -155,12 +155,12 @@ ecbuild_add_test( TARGET eccodes_f_grib_set_packing COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/grib_set_packing.sh ) # Executables without a shell script -ecbuild_add_executable( TARGET eccodes_f_new_from_file - NOINSTALL - SOURCES new_from_file.f90 - CONDITION HAVE_FORTRAN - LINKER_LANGUAGE Fortran - LIBS eccodes_f90 eccodes ) +#ecbuild_add_executable( TARGET eccodes_f_new_from_file +# NOINSTALL +# SOURCES new_from_file.f90 +# CONDITION HAVE_FORTRAN +# LINKER_LANGUAGE Fortran +# LIBS eccodes_f90 eccodes ) ecbuild_add_executable( TARGET eccodes_f_grib_set_gvc NOINSTALL SOURCES grib_set_gvc.f90 diff --git a/examples/F90/new_from_file.f90 b/examples/F90/new_from_file.f90 deleted file mode 100644 index d1eecf272..000000000 --- a/examples/F90/new_from_file.f90 +++ /dev/null @@ -1,40 +0,0 @@ -! (C) Copyright 2005- ECMWF. -! -! This software is licensed under the terms of the Apache Licence Version 2.0 -! which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. -! -! In applying this licence, ECMWF does not waive the privileges and immunities granted to it by -! virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. -! -! -! -program new_from_file - use eccodes - implicit none - integer :: ifile - integer :: iret - integer :: count1 = 0 - - ! Message identifier. - integer :: igrib - - ifile = 5 - - call codes_open_file(ifile, '../../data/collection.grib1', 'r') - - ! Loop on all the messages in a file. - call codes_grib_new_from_file(ifile, igrib, iret) - - do while (iret == CODES_SUCCESS) - count1 = count1 + 1 - print *, "===== Message #", count1 - call codes_grib_new_from_file(ifile, igrib, iret) - - end do - if (iret /= CODES_END_OF_FILE) then - call codes_check(iret, 'new_from_file', '') - end if - - call codes_close_file(ifile) - -end program From d13e5582885ffadac25b4a9af5b0bf7cf8b77d84 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 17 Aug 2024 12:07:14 +0100 Subject: [PATCH 182/277] Testing: codes_set_debug in Fortran --- examples/F90/codes_dump.f90 | 3 +++ 1 file changed, 3 insertions(+) diff --git a/examples/F90/codes_dump.f90 b/examples/F90/codes_dump.f90 index ab547ec04..84f04f668 100644 --- a/examples/F90/codes_dump.f90 +++ b/examples/F90/codes_dump.f90 @@ -21,6 +21,7 @@ program codes_dump_test call getarg(2, infile_name) + call codes_set_debug(-1) call codes_open_file(ifile, infile_name, 'r') print *, "===== FILE:", infile_name @@ -29,7 +30,9 @@ program codes_dump_test !call codes_any_new_from_file(ifile, msgid, iret) if (iret == CODES_END_OF_FILE) exit + call codes_set_debug(0) call codes_dump(msgid) + call codes_set_debug(1) call codes_release(msgid) From ef589bca1ce94da2a89058e5c0a31518fd0d0727 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 17 Aug 2024 12:22:17 +0100 Subject: [PATCH 183/277] Testing: skip keys in Fortran --- examples/F90/grib_keys_iterator_skip.f90 | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/examples/F90/grib_keys_iterator_skip.f90 b/examples/F90/grib_keys_iterator_skip.f90 index f6c58d227..7c97d85d7 100644 --- a/examples/F90/grib_keys_iterator_skip.f90 +++ b/examples/F90/grib_keys_iterator_skip.f90 @@ -15,13 +15,12 @@ program keys_iterator_skip character(len=256) :: key character(len=256) :: value character(len=512) :: all1 - integer :: grib_count + integer :: grib_count = 0 call codes_open_file(ifile, & '../../data/regular_latlon_surface.grib1', 'r') ! Loop on all the messages in a file - grib_count = 0 do while (.true.) call codes_grib_new_from_file(ifile, igrib, iret) if (iret == CODES_END_OF_FILE) exit @@ -40,12 +39,15 @@ program keys_iterator_skip do call codes_keys_iterator_next(kiter, iret) - if (iret .ne. CODES_SUCCESS) exit !terminate the loop + if (iret .ne. CODES_SUCCESS) exit ! Terminate the loop - call codes_keys_iterator_get_name(kiter, key) - call codes_get(igrib, trim(key), value) - all1 = trim(key)//' = '//trim(value) - write (*, *) trim(all1) + ! All keys should be skipped so should not get here + call codes_check(CODES_INTERNAL_ERROR, 'Error', 'iterator next should have failed') + + !call codes_keys_iterator_get_name(kiter, key) + !call codes_get(igrib, trim(key), value) + !all1 = trim(key)//' = '//trim(value) + !write (*, *) trim(all1) end do call codes_keys_iterator_delete(kiter) From f08321e39245d36e77cdef32a089515674e8c4ca Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 17 Aug 2024 14:10:47 +0100 Subject: [PATCH 184/277] Testing: hash_array unpacking --- src/grib_expression_class_true.cc | 4 +-- tests/bufr_filter_misc.sh | 53 ++++++++++++++++++++----------- 2 files changed, 35 insertions(+), 22 deletions(-) diff --git a/src/grib_expression_class_true.cc b/src/grib_expression_class_true.cc index 382dec868..c2cd5faf6 100644 --- a/src/grib_expression_class_true.cc +++ b/src/grib_expression_class_true.cc @@ -83,8 +83,7 @@ static int evaluate_double(grib_expression* g, grib_handle* h, double* dres) static void print(grib_context* c, grib_expression* g, grib_handle* f, FILE* out) { - fprintf(out, "true("); - fprintf(out, ")"); + fprintf(out, "true()"); } static void destroy(grib_context* c, grib_expression* g) @@ -103,7 +102,6 @@ grib_expression* new_true_expression(grib_context* c) return (grib_expression*)e; } - static int native_type(grib_expression* g, grib_handle* h) { return GRIB_TYPE_LONG; diff --git a/tests/bufr_filter_misc.sh b/tests/bufr_filter_misc.sh index f2021a3f5..accdae9b3 100755 --- a/tests/bufr_filter_misc.sh +++ b/tests/bufr_filter_misc.sh @@ -119,7 +119,7 @@ for statid in 1 3 7 ; do done #----------------------------------------------------------- -# Test: print attributes +# Test: print attributes #----------------------------------------------------------- cat > $fRules < $fRules < $fRules < $fRules < $fRules < $fRules < $fRules < $fRules < $fRules <> $fLog 1>> $fLog rm -f $fout #----------------------------------------------------------- -# Test: access subsets by condition +# Test: access subsets by condition #----------------------------------------------------------- cat > $fRules < $fRules < $fRules < $fRules < $fRules < $fRules < $fRules < $fRules < $fRules < $fRules <$fRules <$fRules < Date: Sun, 18 Aug 2024 11:37:45 +0100 Subject: [PATCH 185/277] Dead code removal --- src/accessor/grib_accessor_class_abstract_long_vector.h | 2 +- src/accessor/grib_accessor_class_abstract_vector.h | 2 +- src/accessor/grib_accessor_class_bitmap.h | 2 +- src/accessor/grib_accessor_class_data_complex_packing.h | 2 +- src/accessor/grib_accessor_class_data_secondary_bitmap.h | 2 +- src/accessor/grib_accessor_class_data_shsimple_packing.h | 2 +- src/accessor/grib_accessor_class_data_simple_packing.h | 2 +- src/accessor/grib_accessor_class_double.h | 2 +- src/accessor/grib_accessor_class_padding.h | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/accessor/grib_accessor_class_abstract_long_vector.h b/src/accessor/grib_accessor_class_abstract_long_vector.h index 94ed9d636..a4d1ae4c0 100644 --- a/src/accessor/grib_accessor_class_abstract_long_vector.h +++ b/src/accessor/grib_accessor_class_abstract_long_vector.h @@ -26,5 +26,5 @@ class grib_accessor_class_abstract_long_vector_t : public grib_accessor_class_ge { public: grib_accessor_class_abstract_long_vector_t(const char* name) : grib_accessor_class_gen_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_abstract_long_vector_t{}; } + //grib_accessor* create_empty_accessor() override { return new grib_accessor_abstract_long_vector_t{}; } }; diff --git a/src/accessor/grib_accessor_class_abstract_vector.h b/src/accessor/grib_accessor_class_abstract_vector.h index b721a3adb..b58291db8 100644 --- a/src/accessor/grib_accessor_class_abstract_vector.h +++ b/src/accessor/grib_accessor_class_abstract_vector.h @@ -25,5 +25,5 @@ class grib_accessor_class_abstract_vector_t : public grib_accessor_class_double_ { public: grib_accessor_class_abstract_vector_t(const char* name) : grib_accessor_class_double_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_abstract_vector_t{}; } + // grib_accessor* create_empty_accessor() override { return new grib_accessor_abstract_vector_t{}; } }; diff --git a/src/accessor/grib_accessor_class_bitmap.h b/src/accessor/grib_accessor_class_bitmap.h index 4f07f3a6c..b0e480bf2 100644 --- a/src/accessor/grib_accessor_class_bitmap.h +++ b/src/accessor/grib_accessor_class_bitmap.h @@ -27,7 +27,7 @@ class grib_accessor_class_bitmap_t : public grib_accessor_class_bytes_t { public: grib_accessor_class_bitmap_t(const char* name) : grib_accessor_class_bytes_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_bitmap_t{}; } + //grib_accessor* create_empty_accessor() override { return new grib_accessor_bitmap_t{}; } int unpack_double(grib_accessor*, double* val, size_t* len) override; int unpack_float(grib_accessor*, float* val, size_t* len) override; int unpack_long(grib_accessor*, long* val, size_t* len) override; diff --git a/src/accessor/grib_accessor_class_data_complex_packing.h b/src/accessor/grib_accessor_class_data_complex_packing.h index ee19b195c..a809336c2 100644 --- a/src/accessor/grib_accessor_class_data_complex_packing.h +++ b/src/accessor/grib_accessor_class_data_complex_packing.h @@ -37,7 +37,7 @@ class grib_accessor_class_data_complex_packing_t : public grib_accessor_class_da { public: grib_accessor_class_data_complex_packing_t(const char* name) : grib_accessor_class_data_simple_packing_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_data_complex_packing_t{}; } + // grib_accessor* create_empty_accessor() override { return new grib_accessor_data_complex_packing_t{}; } int pack_double(grib_accessor*, const double* val, size_t* len) override; int unpack_double(grib_accessor*, double* val, size_t* len) override; int unpack_float(grib_accessor*, float* val, size_t* len) override; diff --git a/src/accessor/grib_accessor_class_data_secondary_bitmap.h b/src/accessor/grib_accessor_class_data_secondary_bitmap.h index a24772be4..2b7bccdbc 100644 --- a/src/accessor/grib_accessor_class_data_secondary_bitmap.h +++ b/src/accessor/grib_accessor_class_data_secondary_bitmap.h @@ -26,7 +26,7 @@ class grib_accessor_class_data_secondary_bitmap_t : public grib_accessor_class_g { public: grib_accessor_class_data_secondary_bitmap_t(const char* name) : grib_accessor_class_gen_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_data_secondary_bitmap_t{}; } + // grib_accessor* create_empty_accessor() override { return new grib_accessor_data_secondary_bitmap_t{}; } int get_native_type(grib_accessor*) override; int unpack_double(grib_accessor*, double* val, size_t* len) override; void dump(grib_accessor*, grib_dumper*) override; diff --git a/src/accessor/grib_accessor_class_data_shsimple_packing.h b/src/accessor/grib_accessor_class_data_shsimple_packing.h index 7b1620141..1c5b909e5 100644 --- a/src/accessor/grib_accessor_class_data_shsimple_packing.h +++ b/src/accessor/grib_accessor_class_data_shsimple_packing.h @@ -25,7 +25,7 @@ class grib_accessor_class_data_shsimple_packing_t : public grib_accessor_class_g { public: grib_accessor_class_data_shsimple_packing_t(const char* name) : grib_accessor_class_gen_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_data_shsimple_packing_t{}; } + // grib_accessor* create_empty_accessor() override { return new grib_accessor_data_shsimple_packing_t{}; } int get_native_type(grib_accessor*) override; int pack_double(grib_accessor*, const double* val, size_t* len) override; void dump(grib_accessor*, grib_dumper*) override; diff --git a/src/accessor/grib_accessor_class_data_simple_packing.h b/src/accessor/grib_accessor_class_data_simple_packing.h index 3e50239a0..e1c9da33c 100644 --- a/src/accessor/grib_accessor_class_data_simple_packing.h +++ b/src/accessor/grib_accessor_class_data_simple_packing.h @@ -33,7 +33,7 @@ class grib_accessor_class_data_simple_packing_t : public grib_accessor_class_val { public: grib_accessor_class_data_simple_packing_t(const char* name) : grib_accessor_class_values_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_data_simple_packing_t{}; } + // grib_accessor* create_empty_accessor() override { return new grib_accessor_data_simple_packing_t{}; } int pack_double(grib_accessor*, const double* val, size_t* len) override; int unpack_double(grib_accessor*, double* val, size_t* len) override; int unpack_float(grib_accessor*, float* val, size_t* len) override; diff --git a/src/accessor/grib_accessor_class_double.h b/src/accessor/grib_accessor_class_double.h index 7ad9771c2..3bc0ffdcd 100644 --- a/src/accessor/grib_accessor_class_double.h +++ b/src/accessor/grib_accessor_class_double.h @@ -18,7 +18,7 @@ class grib_accessor_class_double_t : public grib_accessor_class_gen_t { public: grib_accessor_class_double_t(const char* name) : grib_accessor_class_gen_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_double_t{}; } + //grib_accessor* create_empty_accessor() override { return new grib_accessor_double_t{}; } int get_native_type(grib_accessor*) override; int pack_missing(grib_accessor*) override; int unpack_string(grib_accessor*, char*, size_t* len) override; diff --git a/src/accessor/grib_accessor_class_padding.h b/src/accessor/grib_accessor_class_padding.h index 6d4175de3..aeda21f09 100644 --- a/src/accessor/grib_accessor_class_padding.h +++ b/src/accessor/grib_accessor_class_padding.h @@ -23,7 +23,7 @@ class grib_accessor_class_padding_t : public grib_accessor_class_bytes_t { public: grib_accessor_class_padding_t(const char* name) : grib_accessor_class_bytes_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_padding_t{}; } + //grib_accessor* create_empty_accessor() override { return new grib_accessor_padding_t{}; } size_t string_length(grib_accessor*) override; long byte_count(grib_accessor*) override; int value_count(grib_accessor*, long*) override; From 1b532e9260d054107f1ea9b5fd2411bb236f38fc Mon Sep 17 00:00:00 2001 From: shahramn Date: Sun, 18 Aug 2024 12:50:08 +0100 Subject: [PATCH 186/277] Dead code removal --- .../grib_accessor_class_dictionary.cc | 40 +++++++++---------- src/accessor/grib_accessor_class_long.h | 2 +- src/accessor/grib_accessor_class_values.h | 2 +- src/grib_expression_class_binop.cc | 2 - 4 files changed, 22 insertions(+), 24 deletions(-) diff --git a/src/accessor/grib_accessor_class_dictionary.cc b/src/accessor/grib_accessor_class_dictionary.cc index 617bc8a75..c5667e43a 100644 --- a/src/accessor/grib_accessor_class_dictionary.cc +++ b/src/accessor/grib_accessor_class_dictionary.cc @@ -122,26 +122,26 @@ static grib_trie* load_dictionary(grib_accessor* a, int* err) fclose(f); if (localFilename != 0) { - f = codes_fopen(localFilename, "r"); - if (!f) { - *err = GRIB_IO_PROBLEM; - return NULL; - } - - while (fgets(line, sizeof(line) - 1, f)) { - i = 0; - while (line[i] != '|' && line[i] != 0) { - key[i] = line[i]; - i++; - } - key[i] = 0; - list = (char*)grib_context_malloc_clear(c, strlen(line) + 1); - memcpy(list, line, strlen(line)); - grib_trie_insert(dictionary, key, list); - } - - - fclose(f); + *err = GRIB_NOT_IMPLEMENTED; + return NULL; + // f = codes_fopen(localFilename, "r"); + // if (!f) { + // *err = GRIB_IO_PROBLEM; + // return NULL; + // } + + // while (fgets(line, sizeof(line) - 1, f)) { + // i = 0; + // while (line[i] != '|' && line[i] != 0) { + // key[i] = line[i]; + // i++; + // } + // key[i] = 0; + // list = (char*)grib_context_malloc_clear(c, strlen(line) + 1); + // memcpy(list, line, strlen(line)); + // grib_trie_insert(dictionary, key, list); + //} + //fclose(f); } grib_trie_insert(c->lists, filename, dictionary); return dictionary; diff --git a/src/accessor/grib_accessor_class_long.h b/src/accessor/grib_accessor_class_long.h index 72a67a8e5..9f87618d9 100644 --- a/src/accessor/grib_accessor_class_long.h +++ b/src/accessor/grib_accessor_class_long.h @@ -19,7 +19,7 @@ class grib_accessor_class_long_t : public grib_accessor_class_gen_t { public: grib_accessor_class_long_t(const char* name) : grib_accessor_class_gen_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_long_t{}; } + // grib_accessor* create_empty_accessor() override { return new grib_accessor_long_t{}; } void init(grib_accessor* a, const long len, grib_arguments* arg) override; int get_native_type(grib_accessor* a) override; int pack_missing(grib_accessor* a) override; diff --git a/src/accessor/grib_accessor_class_values.h b/src/accessor/grib_accessor_class_values.h index 5de50f2bd..bbe42bead 100644 --- a/src/accessor/grib_accessor_class_values.h +++ b/src/accessor/grib_accessor_class_values.h @@ -26,7 +26,7 @@ class grib_accessor_class_values_t : public grib_accessor_class_gen_t { public: grib_accessor_class_values_t(const char* name) : grib_accessor_class_gen_t(name) {} - grib_accessor* create_empty_accessor() override { return new grib_accessor_values_t{}; } + // grib_accessor* create_empty_accessor() override { return new grib_accessor_values_t{}; } int get_native_type(grib_accessor*) override; int pack_long(grib_accessor*, const long* val, size_t* len) override; long byte_count(grib_accessor*) override; diff --git a/src/grib_expression_class_binop.cc b/src/grib_expression_class_binop.cc index e1c4f3d02..c9b603497 100644 --- a/src/grib_expression_class_binop.cc +++ b/src/grib_expression_class_binop.cc @@ -85,7 +85,6 @@ static int evaluate_long(grib_expression* g, grib_handle* h, long* lres) long v2 = 0; grib_expression_binop* e = (grib_expression_binop*)g; -// #if DEBUGGING // { // int typeLeft, typeRight; // const char* nameLeft; @@ -117,7 +116,6 @@ static int evaluate_double(grib_expression* g, grib_handle* h, double* dres) double v2 = 0.0; grib_expression_binop* e = (grib_expression_binop*)g; -// #if DEBUGGING // { // int typeLeft, typeRight; // const char* nameLeft; From 22d4bff321cef7e23912d251c69f740f8d8357c6 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 19 Aug 2024 11:25:37 +0100 Subject: [PATCH 187/277] Testing: Function to check grib_set and grib_filter --- tests/utils.sh | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/tests/utils.sh b/tests/utils.sh index a1de94279..c394557b0 100644 --- a/tests/utils.sh +++ b/tests/utils.sh @@ -49,3 +49,36 @@ grib_check_key_is_scalar() result=$(echo "print '|[$a_key]|';" | ${tools_dir}/grib_filter - $a_file) [ "$result" = "|$a_val|" ] } + +# This ensures setting the keys via grib_filter (similar to the API, one key at a time) +# works the same way as grib_set. The resultant GRIB outputs are compared +# E.g., +# grib_encode_via_set_and_filter $label key1=val1,key2=val2,key3=val3 $ECCODES_SAMPLES_PATH/GRIB2.tmpl +# +grib_encode_via_set_and_filter() +{ + _label=$1 # For generating temp files + _kvals=$2 # key1=val1,key2=val2 + _input=$3 # Must be a GRIB file + + temp_encode_filt=temp.encode.$_label.filt + temp_encode_gribA=temp.encode.$_label.A.grib + temp_encode_gribB=temp.encode.$_label.B.grib + + for kv in $(echo $_kvals | tr ',' ' '); do + k=$(echo $kv | awk -F= '{print $1}') + v=$(echo $kv | awk -F= '{print $2}') + if [[ "$v" =~ ^[A-z] ]]; then + echo "set $k = \"$v\" ;" >> $temp_encode_filt + else + echo "set $k = $v ;" >> $temp_encode_filt + fi + done + echo "write;" >> $temp_encode_filt + # cat $temp_encode_filt + ${tools_dir}/grib_filter -o $temp_encode_gribA $temp_encode_filt $_input + ${tools_dir}/grib_set -s $_kvals $_input $temp_encode_gribB + ${tools_dir}/grib_compare $temp_encode_gribA $temp_encode_gribB + + rm -f $temp_encode_filt $temp_encode_gribB $temp_encode_gribA +} From c7976199f85489b57a6966d6465968e9a302da32 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 19 Aug 2024 11:27:00 +0100 Subject: [PATCH 188/277] Testing: Function to check grib_set and grib_filter --- tests/utils.sh | 43 +++++++++++++++++++++---------------------- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/tests/utils.sh b/tests/utils.sh index c394557b0..8f78e2b44 100644 --- a/tests/utils.sh +++ b/tests/utils.sh @@ -57,28 +57,27 @@ grib_check_key_is_scalar() # grib_encode_via_set_and_filter() { - _label=$1 # For generating temp files - _kvals=$2 # key1=val1,key2=val2 - _input=$3 # Must be a GRIB file + _label=$1 # For generating temp files + _kvals=$2 # key1=val1,key2=val2 + _input=$3 # Must be a GRIB file - temp_encode_filt=temp.encode.$_label.filt - temp_encode_gribA=temp.encode.$_label.A.grib - temp_encode_gribB=temp.encode.$_label.B.grib + temp_encode_filt=temp.encode.$_label.filt + temp_encode_gribA=temp.encode.$_label.A.grib + temp_encode_gribB=temp.encode.$_label.B.grib - for kv in $(echo $_kvals | tr ',' ' '); do - k=$(echo $kv | awk -F= '{print $1}') - v=$(echo $kv | awk -F= '{print $2}') - if [[ "$v" =~ ^[A-z] ]]; then - echo "set $k = \"$v\" ;" >> $temp_encode_filt - else - echo "set $k = $v ;" >> $temp_encode_filt - fi - done - echo "write;" >> $temp_encode_filt - # cat $temp_encode_filt - ${tools_dir}/grib_filter -o $temp_encode_gribA $temp_encode_filt $_input - ${tools_dir}/grib_set -s $_kvals $_input $temp_encode_gribB - ${tools_dir}/grib_compare $temp_encode_gribA $temp_encode_gribB - - rm -f $temp_encode_filt $temp_encode_gribB $temp_encode_gribA + for kv in $(echo $_kvals | tr ',' ' '); do + k=$(echo $kv | awk -F= '{print $1}') + v=$(echo $kv | awk -F= '{print $2}') + if [[ "$v" =~ ^[A-z] ]]; then + echo "set $k = \"$v\" ;" >> $temp_encode_filt + else + echo "set $k = $v ;" >> $temp_encode_filt + fi + done + echo "write;" >> $temp_encode_filt + # cat $temp_encode_filt + ${tools_dir}/grib_filter -o $temp_encode_gribA $temp_encode_filt $_input + ${tools_dir}/grib_set -s $_kvals $_input $temp_encode_gribB + ${tools_dir}/grib_compare $temp_encode_gribA $temp_encode_gribB + rm -f $temp_encode_filt $temp_encode_gribB $temp_encode_gribA } From cda5be5877f0bc0c42d9024539aa8a9fca14b962 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 19 Aug 2024 12:15:22 +0100 Subject: [PATCH 189/277] Testing: Increase coverage --- examples/C/grib_multi.c | 8 ++++---- tests/codes_set_samples_path.cc | 6 +++++- tests/unit_tests.cc | 3 +++ 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/examples/C/grib_multi.c b/examples/C/grib_multi.c index 617c30a71..58f19086a 100644 --- a/examples/C/grib_multi.c +++ b/examples/C/grib_multi.c @@ -42,14 +42,14 @@ int main(int argc, char** argv) return 1; } - CODES_CHECK(grib_count_in_file(NULL, in, &mcount), 0); + CODES_CHECK(codes_count_in_file(NULL, in, &mcount), 0); assert(mcount == 56); - printf("grib_count_in_file counted %d messages\n", mcount); + printf("count_in_file counted %d messages\n", mcount); mcount = 0; - CODES_CHECK(grib_count_in_filename(NULL, filename, &mcount), 0); + CODES_CHECK(codes_count_in_filename(NULL, filename, &mcount), 0); assert(mcount == 56); - printf("grib_count_in_filename counted %d messages\n", mcount); + printf("count_in_filename counted %d messages\n", mcount); mcount = 0; while ((h = codes_handle_new_from_file(0, in, PRODUCT_GRIB, &err)) != NULL) { diff --git a/tests/codes_set_samples_path.cc b/tests/codes_set_samples_path.cc index dbcff4ed7..9204560d2 100644 --- a/tests/codes_set_samples_path.cc +++ b/tests/codes_set_samples_path.cc @@ -9,6 +9,7 @@ */ #include "grib_api_internal.h" +#include "eccodes.h" /* Windows always has a colon in pathnames e.g. C:\temp\file. So instead we use semi-colons as delimiter */ /* in order to have multiple definitions/samples directories */ @@ -32,6 +33,7 @@ int main(int argc, char** argv) sample_name = argv[1]; new_dir = argv[2]; /* The directory containing the given sample */ + codes_context_set_debug(c, -1); printf("Initial samples path = %s\n", grib_samples_path(c)); /* Should fail - default samples path does not include ifs_samples dirs */ @@ -40,7 +42,9 @@ int main(int argc, char** argv) snprintf(full_path, 2048, "%s%c%s", new_dir, ECC_PATH_DELIMITER_CHAR, grib_samples_path(c)); printf("Change samples_path to: %s\n", full_path); - grib_context_set_samples_path(c, full_path); + codes_context_set_samples_path(c, full_path); + + codes_context_set_debug(c, 0); h = grib_handle_new_from_samples(c, sample_name); Assert(h); diff --git a/tests/unit_tests.cc b/tests/unit_tests.cc index d1575301a..85505d2a6 100644 --- a/tests/unit_tests.cc +++ b/tests/unit_tests.cc @@ -770,6 +770,9 @@ void test_codes_context_set_debug() int main(int argc, char** argv) { printf("Doing unit tests. ecCodes version = %ld\n", grib_get_api_version()); + printf("codes_print_api_version gives: "); + codes_print_api_version(stdout); + printf("\n"); test_codes_context_set_debug(); test_codes_get_error_message(); From f688cce574aa099c0fbc8625852dd6d8eb32b6c4 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 19 Aug 2024 12:35:59 +0100 Subject: [PATCH 190/277] Testing: grib_dump plain for flags --- src/grib_dumper_class_default.cc | 6 +++--- tests/grib_dump_samples.sh | 5 +++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/grib_dumper_class_default.cc b/src/grib_dumper_class_default.cc index 7a7442959..5e093186b 100644 --- a/src/grib_dumper_class_default.cc +++ b/src/grib_dumper_class_default.cc @@ -219,6 +219,9 @@ static void dump_bits(grib_dumper* d, grib_accessor* a, const char* comment) int err = 0; int isDouble = 0; + if ((a->flags & GRIB_ACCESSOR_FLAG_DUMP) == 0) + return; + switch (a->get_native_type()) { case GRIB_TYPE_LONG: a->unpack_long(&lvalue, &size); @@ -231,9 +234,6 @@ static void dump_bits(grib_dumper* d, grib_accessor* a, const char* comment) break; } - if ((a->flags & GRIB_ACCESSOR_FLAG_DUMP) == 0) - return; - print_offset(self->dumper.out, d, a); if ((d->option_flags & GRIB_DUMP_FLAG_TYPE) != 0) { diff --git a/tests/grib_dump_samples.sh b/tests/grib_dump_samples.sh index ba4f7d870..740750ba2 100755 --- a/tests/grib_dump_samples.sh +++ b/tests/grib_dump_samples.sh @@ -61,5 +61,10 @@ for s in $g2_samples; do grib_check_key_equals $sf "edition,packingType" "2 grid_ccsds" done +# Test dump_bits +sample_polar="$ECCODES_SAMPLES_PATH/polar_stereographic_pl_grib2.tmpl" +${tools_dir}/grib_dump $sample_polar > $temp +grep -q "resolutionAndComponentFlags" $temp +# Clean up rm -f $temp From 0771826bdf81d97713d047f769146c507d9dbd42 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 19 Aug 2024 15:53:13 +0000 Subject: [PATCH 191/277] ECC-1907: GRIB Wave fields: Conversion to GRIB2 loses direction and frequency data --- definitions/grib1/local.98.13.def | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/definitions/grib1/local.98.13.def b/definitions/grib1/local.98.13.def index c205278b0..056f94ec3 100644 --- a/definitions/grib1/local.98.13.def +++ b/definitions/grib1/local.98.13.def @@ -11,15 +11,19 @@ alias totalNumber=numberOfForecastsInEnsemble; unsigned[1] directionNumber : dump ; alias mars.direction = directionNumber; +alias waveDirectionNumber = directionNumber; unsigned[1] frequencyNumber : dump ; alias mars.frequency = frequencyNumber; +alias waveFrequencyNumber = frequencyNumber; unsigned[1] numberOfDirections : dump ; alias totalNumberOfDirections = numberOfDirections ; +alias numberOfWaveDirections = numberOfDirections; unsigned[1] numberOfFrequencies : dump; alias totalNumberOfFrequencies = numberOfFrequencies ; +alias numberOfWaveFrequencies = numberOfFrequencies; unsigned[4] directionScalingFactor : dump; alias integerScalingFactorAppliedToDirections = directionScalingFactor; @@ -161,4 +165,15 @@ if(localFlag == 4) unsigned[4] scaledDirections[numberOfDirections] : dump; unsigned[4] scaledFrequencies[numberOfFrequencies] : dump; +alias scaledValuesOfWaveDirections = scaledDirections : hidden; +alias scaledValuesOfWaveFrequencies = scaledFrequencies : hidden; + constant GRIBEXSection1Problem = 100 + 4 * numberOfDirections + 4 * numberOfFrequencies - section1Length ; + +# ECC-1907 +constant ninety_nine = 99 : hidden; +if (stream is 'ewla' or stream is 'waef') { + alias productDefinitionTemplateNumber = hundred; +} else { + alias productDefinitionTemplateNumber = ninety_nine; +} From 2349dc3e7c92124f59f03b741b65e7c5ef34f24c Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 19 Aug 2024 14:38:12 +0100 Subject: [PATCH 192/277] Dead code removal --- src/grib_dumper_class_debug.cc | 11 +++++------ src/grib_dumper_class_default.cc | 26 +++++--------------------- src/grib_dumper_class_wmo.cc | 4 ++-- 3 files changed, 12 insertions(+), 29 deletions(-) diff --git a/src/grib_dumper_class_debug.cc b/src/grib_dumper_class_debug.cc index ead1c7cf4..d740e4523 100644 --- a/src/grib_dumper_class_debug.cc +++ b/src/grib_dumper_class_debug.cc @@ -264,22 +264,21 @@ static int test_bit(long a, long b) static void dump_bits(grib_dumper* d, grib_accessor* a, const char* comment) { grib_dumper_debug* self = (grib_dumper_debug*)d; - long value = 0; - size_t size = 1; - int err = a->unpack_long(&value, &size); - int i; if (a->length == 0 && (d->option_flags & GRIB_DUMP_FLAG_CODED) != 0) return; + size_t size = 1; + long value = 0; + int err = a->unpack_long(&value, &size); set_begin_end(d, a); - for (i = 0; i < d->depth; i++) + for (int i = 0; i < d->depth; i++) fprintf(self->dumper.out, " "); fprintf(self->dumper.out, "%ld-%ld %s %s = %ld [", self->begin, self->theEnd, a->creator->op, a->name, value); - for (i = 0; i < (a->length * 8); i++) { + for (long i = 0; i < (a->length * 8); i++) { if (test_bit(value, a->length * 8 - i - 1)) fprintf(self->dumper.out, "1"); else diff --git a/src/grib_dumper_class_default.cc b/src/grib_dumper_class_default.cc index 5e093186b..ab7d9fe75 100644 --- a/src/grib_dumper_class_default.cc +++ b/src/grib_dumper_class_default.cc @@ -212,27 +212,14 @@ static int test_bit(long a, long b) static void dump_bits(grib_dumper* d, grib_accessor* a, const char* comment) { grib_dumper_default* self = (grib_dumper_default*)d; - int i; long lvalue = 0; - double dvalue = 0; size_t size = 1; int err = 0; - int isDouble = 0; if ((a->flags & GRIB_ACCESSOR_FLAG_DUMP) == 0) return; - switch (a->get_native_type()) { - case GRIB_TYPE_LONG: - a->unpack_long(&lvalue, &size); - break; - case GRIB_TYPE_DOUBLE: - a->unpack_double(&dvalue, &size); - isDouble = 1; - break; - default: - break; - } + err = a->unpack_long(&lvalue, &size); print_offset(self->dumper.out, d, a); @@ -249,7 +236,7 @@ static void dump_bits(grib_dumper* d, grib_accessor* a, const char* comment) fprintf(self->dumper.out, " "); fprintf(self->dumper.out, "# flags: "); - for (i = 0; i < (a->length * 8); i++) { + for (long i = 0; i < (a->length * 8); i++) { if (test_bit(lvalue, a->length * 8 - i - 1)) fprintf(self->dumper.out, "1"); else @@ -261,19 +248,16 @@ static void dump_bits(grib_dumper* d, grib_accessor* a, const char* comment) fprintf(self->dumper.out, " "); fprintf(self->dumper.out, "#-READ ONLY- "); } - else + else { fprintf(self->dumper.out, " "); + } if (((a->flags & GRIB_ACCESSOR_FLAG_CAN_BE_MISSING) != 0) && a->is_missing_internal()) fprintf(self->dumper.out, "%s = MISSING;", a->name); else { - if (isDouble) - fprintf(self->dumper.out, "%s = %g;", a->name, dvalue); - else - fprintf(self->dumper.out, "%s = %ld;", a->name, lvalue); + fprintf(self->dumper.out, "%s = %ld;", a->name, lvalue); } - if (err) { fprintf(self->dumper.out, " "); fprintf(self->dumper.out, "# *** ERR=%d (%s) [grib_dumper_default::dump_bits]", err, grib_get_error_message(err)); diff --git a/src/grib_dumper_class_wmo.cc b/src/grib_dumper_class_wmo.cc index 3949e97a2..77c8b1ccd 100644 --- a/src/grib_dumper_class_wmo.cc +++ b/src/grib_dumper_class_wmo.cc @@ -219,7 +219,6 @@ static int test_bit(long a, long b) static void dump_bits(grib_dumper* d, grib_accessor* a, const char* comment) { grib_dumper_wmo* self = (grib_dumper_wmo*)d; - int i; long value = 0; size_t size = 1; int err = 0; @@ -237,7 +236,8 @@ static void dump_bits(grib_dumper* d, grib_accessor* a, const char* comment) fprintf(self->dumper.out, "%s (int) ", a->creator->op); fprintf(self->dumper.out, "%s = %ld [", a->name, value); - for (i = 0; i < (a->length * 8); i++) { + + for (long i = 0; i < (a->length * 8); i++) { if (test_bit(value, a->length * 8 - i - 1)) fprintf(self->dumper.out, "1"); else From cdb2e68f877cc659d588cd55dbb5e4c6f2deac66 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 19 Aug 2024 18:06:49 +0100 Subject: [PATCH 193/277] ECC-1907: Add test --- tests/CMakeLists.txt | 1 + tests/grib_ecc-1907.sh | 60 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100755 tests/grib_ecc-1907.sh diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index d4fc34dbf..1ed68cfc6 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -276,6 +276,7 @@ if( HAVE_BUILD_TOOLS ) grib_ecc-1467 grib_ecc-1764 grib_ecc-1792 + grib_ecc-1907 grib_modelName grib_sub_hourly grib_set_bytes diff --git a/tests/grib_ecc-1907.sh b/tests/grib_ecc-1907.sh new file mode 100755 index 000000000..e24cca742 --- /dev/null +++ b/tests/grib_ecc-1907.sh @@ -0,0 +1,60 @@ +#!/bin/sh +# (C) Copyright 2005- ECMWF. +# +# This software is licensed under the terms of the Apache Licence Version 2.0 +# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. +# +# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by +# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. +# + +. ./include.ctest.sh + +label="grib_ecc-1907_test" +tempGrib1=temp.$label.grib1 +tempGrib2=temp.$label.grib2 +tempFilt=temp.$label.filt +tempLog=temp.$label.log +tempOut=temp.$label.txt +tempRef=temp.$label.ref + +sample_grib1=$ECCODES_SAMPLES_PATH/GRIB1.tmpl + +cat >$tempFilt< Date: Tue, 20 Aug 2024 11:44:01 +0100 Subject: [PATCH 194/277] Testing: grib_to_netcdf error conditions --- tests/grib_to_netcdf.sh | 25 +++++++++++++++++++++++++ tools/grib_to_netcdf.cc | 1 + 2 files changed, 26 insertions(+) diff --git a/tests/grib_to_netcdf.sh b/tests/grib_to_netcdf.sh index 5e1aaf015..d19c4995d 100755 --- a/tests/grib_to_netcdf.sh +++ b/tests/grib_to_netcdf.sh @@ -104,8 +104,23 @@ echo "Test shuffle and deflate ..." if [ $have_netcdf4 -eq 1 ]; then input=${data_dir}/sst_globus0083.grib ${tools_dir}/grib_to_netcdf -s -d9 -k4 -o $tempNetcdf $input + + set +e + ${tools_dir}/grib_to_netcdf -s -o $tempNetcdf $input > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "Invalid shuffle option. Deflate option needed" $tempText + + set +e + ${tools_dir}/grib_to_netcdf -s -dy -o $tempNetcdf $input > $tempText 2>&1 + status=$? + set -e + [ $status -ne 0 ] + grep -q "Invalid number" $tempText fi + echo "Test ECC-1060 ..." # ---------------------- sample2=$ECCODES_SAMPLES_PATH/GRIB2.tmpl @@ -172,6 +187,16 @@ set -e grep -q "not on a regular lat/lon grid or on a regular Gaussian grid" $tempText +echo "No output ..." +# -------------------------- +set +e +${tools_dir}/grib_to_netcdf $input > $tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "No output file" $tempText + + # ECC-1783: No error message when input file has invalid fields input=$data_dir/bad.grib set +e diff --git a/tools/grib_to_netcdf.cc b/tools/grib_to_netcdf.cc index 0dad044ab..713ffcfaf 100644 --- a/tools/grib_to_netcdf.cc +++ b/tools/grib_to_netcdf.cc @@ -4294,6 +4294,7 @@ int grib_tool_finalise_action(grib_runtime_options* options) int creation_mode = NC_CLOBBER; if (options->outfile == NULL || options->outfile->name == NULL) { + grib_context_log(ctx, GRIB_LOG_ERROR, "No output file. Exiting!"); usage(); exit(1); } From 6e1aff8fec2d1ade8c5ff626217c3c7b80a706da Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 20 Aug 2024 12:41:00 +0100 Subject: [PATCH 195/277] Testing: grib_to_netcdf with non-numeric dates --- tests/grib_to_netcdf.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/grib_to_netcdf.sh b/tests/grib_to_netcdf.sh index d19c4995d..e1fb6553a 100755 --- a/tests/grib_to_netcdf.sh +++ b/tests/grib_to_netcdf.sh @@ -162,6 +162,14 @@ ${tools_dir}/grib_to_netcdf -o $tempNetcdf $tempDir > $tempText grep -q "Processing input file .*/subdir/regular_latlon_surface.grib2" $tempText rm -rf $tempDir +echo "Test non-numeric dates ..." +# ------------------------------------ +sample1=$ECCODES_SAMPLES_PATH/GRIB1.tmpl +${tools_dir}/grib_set -s class=ei,type=em,yearOfCentury=255,month=3,day=20 $sample1 $tempGrib +grib_check_key_equals $tempGrib 'dataDate:s' 'mar-20' +${tools_dir}/grib_to_netcdf -o $tempNetcdf $tempGrib + + echo "Enable/Disable Checks ..." # --------------------------------- rm -f $tempNetcdf From d162728a7baf71e6b01eafd3ca0008a86480d536 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 20 Aug 2024 13:08:00 +0100 Subject: [PATCH 196/277] Fortran: Refactoring and dead code removal --- fortran/grib_fortran.cc | 136 +++++++++++++++++----------------------- 1 file changed, 56 insertions(+), 80 deletions(-) diff --git a/fortran/grib_fortran.cc b/fortran/grib_fortran.cc index 84fe48997..fd0a0e726 100644 --- a/fortran/grib_fortran.cc +++ b/fortran/grib_fortran.cc @@ -865,13 +865,11 @@ int grib_f_read_any_headers_only_from_file_(int* fid, char* buffer, size_t* nbyt /*****************************************************************************/ int grib_f_read_any_from_file_(int* fid, void* buffer, size_t* nbytes) { - grib_context* c; - int err=0; - FILE* f=get_file(*fid); + FILE* f = get_file(*fid); if (f) { - c=grib_context_get_default( ); - err=grib_read_any_from_file(c,f,buffer,nbytes); + grib_context* c = grib_context_get_default( ); + int err=grib_read_any_from_file(c,f,buffer,nbytes); return err; } else { return GRIB_INVALID_FILE; @@ -1141,7 +1139,6 @@ int grib_f_iterator_delete_(int* iterid) { /*****************************************************************************/ static int _grib_f_keys_iterator_new_(int* gid,int* iterid,char* name_space,int len) { - int err=0; char buf[1024]; grib_handle* h; grib_keys_iterator* iter; @@ -1156,7 +1153,7 @@ static int _grib_f_keys_iterator_new_(int* gid,int* iterid,char* name_space,int *iterid=push_keys_iterator(iter); else *iterid=-1; - return err; + return GRIB_SUCCESS; } int grib_f_keys_iterator_new_(int* gid,int* iterid,char* name_space,int len) { @@ -1276,7 +1273,6 @@ int grib_f_keys_iterator_rewind_(int* kiter) /*****************************************************************************/ static int _codes_f_bufr_keys_iterator_new_(int* gid,int* iterid) { - int err=0; grib_handle* h; bufr_keys_iterator* iter; @@ -1291,7 +1287,7 @@ static int _codes_f_bufr_keys_iterator_new_(int* gid,int* iterid) *iterid=push_bufr_keys_iterator(iter); else *iterid=-1; - return err; + return GRIB_SUCCESS; } int codes_f_bufr_keys_iterator_new_(int* gid,int* iterid) { @@ -1767,8 +1763,7 @@ int grib_f_index_add_file_(int* index_id, char* file, int lfile) if (!i) { return GRIB_INVALID_INDEX; } else { - int err = grib_index_add_file(i,cast_char(buf,file,lfile)); - return err; + return grib_index_add_file(i,cast_char(buf,file,lfile)); } } @@ -1799,14 +1794,12 @@ int grib_f_index_read_(char* file, int* gid, int lfile) int grib_f_index_write_(int* gid, char* file, int lfile) { grib_index *i = get_index(*gid); - int err = GRIB_SUCCESS; char buf[1024]; if (!i) { return GRIB_INVALID_GRIB; } else { - err = grib_index_write(i,cast_char(buf,file,lfile)); - return err; + return grib_index_write(i,cast_char(buf,file,lfile)); } } @@ -1898,51 +1891,44 @@ int grib_f_get_api_version_(int* apiVersion,int len) int grib_f_get_size_int_(int* gid, char* key, int* val, int len) { grib_handle* h = get_handle(*gid); - int err = GRIB_SUCCESS; + char buf[1024]; size_t tsize = 0; - if (!h) { - return GRIB_INVALID_GRIB; - } - else { - err = grib_get_size(h, cast_char(buf, key, len), &tsize); - *val = tsize; - return err; - } + if (!h) return GRIB_INVALID_GRIB; + + int err = grib_get_size(h, cast_char(buf, key, len), &tsize); + *val = tsize; + return err; } int grib_f_get_size_long_(int* gid, char* key, long* val, int len) { grib_handle *h = get_handle(*gid); - int err = GRIB_SUCCESS; + char buf[1024]; size_t tsize = 0; - if(!h){ - return GRIB_INVALID_GRIB; - }else{ - err = grib_get_size(h, cast_char(buf,key,len), &tsize); - *val = tsize; - return err; - } + if (!h) return GRIB_INVALID_GRIB; + + int err = grib_get_size(h, cast_char(buf,key,len), &tsize); + *val = tsize; + return err; } /*****************************************************************************/ int grib_f_index_get_size_int_(int* index_id, char* key, int* val, int len) { grib_index *h = get_index(*index_id); - int err = GRIB_SUCCESS; + char buf[1024]; size_t tsize = 0; - if(!h){ - return GRIB_INVALID_GRIB; - }else{ - err = grib_index_get_size(h, cast_char(buf,key,len), &tsize); - *val = tsize; - return err; - } + if (!h) return GRIB_INVALID_GRIB; + + int err = grib_index_get_size(h, cast_char(buf,key,len), &tsize); + *val = tsize; + return err; } int grib_f_index_get_size_long_(int* index_id, char* key, long* val, int len) @@ -1951,13 +1937,11 @@ int grib_f_index_get_size_long_(int* index_id, char* key, long* val, int len) char buf[1024]; size_t tsize = 0; - if (!h){ - return GRIB_INVALID_GRIB; - } else{ - int err = grib_index_get_size(h, cast_char(buf,key,len), &tsize); - *val = tsize; - return err; - } + if (!h) return GRIB_INVALID_GRIB; + + int err = grib_index_get_size(h, cast_char(buf,key,len), &tsize); + *val = tsize; + return err; } /*****************************************************************************/ @@ -1965,11 +1949,10 @@ int grib_f_get_int_(int* gid, char* key, int* val, int len) { grib_handle *h = get_handle(*gid); long long_val; - int err = GRIB_SUCCESS; char buf[1024]; - if(!h) return GRIB_INVALID_GRIB; - err = grib_get_long(h, cast_char(buf,key,len),&long_val); + if (!h) return GRIB_INVALID_GRIB; + int err = grib_get_long(h, cast_char(buf,key,len),&long_val); *val = long_val; return err; } @@ -1977,11 +1960,11 @@ int grib_f_get_int_(int* gid, char* key, int* val, int len) int grib_f_get_long_(int* gid, char* key, long* val, int len) { grib_handle *h = get_handle(*gid); - int err = GRIB_SUCCESS; + char buf[1024]; - if(!h) return GRIB_INVALID_GRIB; - err = grib_get_long(h, cast_char(buf,key,len),val); + if (!h) return GRIB_INVALID_GRIB; + int err = grib_get_long(h, cast_char(buf,key,len),val); return err; } @@ -1990,11 +1973,10 @@ int grib_f_get_native_type_(int* gid, char* key, int* val, int len) { grib_handle *h = get_handle(*gid); int type_val = 0; - int err = GRIB_SUCCESS; char buf[1024]; if (!h) return GRIB_INVALID_GRIB; - err = grib_get_native_type(h, cast_char(buf,key,len), &type_val); + int err = grib_get_native_type(h, cast_char(buf,key,len), &type_val); *val = type_val; return err; } @@ -2034,13 +2016,13 @@ int grib_f_get_int_array_(int* gid, char* key, int *val, int* size, int len) int grib_f_get_long_array_(int* gid, char* key, long *val, int* size, int len) { grib_handle *h = get_handle(*gid); - int err = GRIB_SUCCESS; + char buf[1024]; size_t lsize = *size; if(!h) return GRIB_INVALID_GRIB; - err = grib_get_long_array(h, cast_char(buf,key,len), val, &lsize); + int err = grib_get_long_array(h, cast_char(buf,key,len), val, &lsize); *size=lsize; return err; @@ -2050,13 +2032,13 @@ int grib_f_get_long_array_(int* gid, char* key, long *val, int* size, int len) int grib_f_get_byte_array_(int* gid, char* key, unsigned char *val, int* size, int len, int lenv) { grib_handle *h = get_handle(*gid); - int err = GRIB_SUCCESS; + char buf[1024]; size_t lsize = *size; if(!h) return GRIB_INVALID_GRIB; - err = grib_get_bytes(h, cast_char(buf,key,len), val, &lsize); + int err = grib_get_bytes(h, cast_char(buf,key,len), val, &lsize); *size = (int) lsize; return err; @@ -2066,25 +2048,22 @@ int grib_f_get_byte_array_(int* gid, char* key, unsigned char *val, int* size, i int grib_f_index_get_string_(int* index_id, char* key, char* val, int *eachsize,int* size, int len) { grib_index *h = get_index(*index_id); - int err = GRIB_SUCCESS; - int i; + char buf[1024]; size_t lsize = *size; - char** bufval; - char* p=val; + char* p = val; if(!h) return GRIB_INVALID_GRIB; - bufval=(char**)grib_context_malloc_clear(h->context,sizeof(char*)* *size); + char** bufval=(char**)grib_context_malloc_clear(h->context,sizeof(char*)* *size); - err = grib_index_get_string(h, cast_char(buf,key,len), bufval, &lsize); + int err = grib_index_get_string(h, cast_char(buf,key,len), bufval, &lsize); *size = lsize; if (err) return err; - for (i=0;icontext, bufval[i]); } grib_context_free(h->context,bufval); - return err; + return err; } /*****************************************************************************/ int grib_f_index_get_long_(int* index_id, char* key, long *val, int* size, int len) { - int err = 0; grib_index* h = get_index(*index_id); char buf[1024]; size_t lsize = *size; if (!h) return GRIB_INVALID_GRIB; - err = grib_index_get_long(h, cast_char(buf,key,len), val, &lsize); + int err = grib_index_get_long(h, cast_char(buf,key,len), val, &lsize); *size = lsize; return err; } @@ -2121,17 +2099,17 @@ int grib_f_index_get_long_(int* index_id, char* key, long *val, int* size, int l int grib_f_index_get_int_(int* index_id, char* key, int *val, int* size, int len) { grib_index *h = get_index(*index_id); - int err = GRIB_SUCCESS; + char buf[1024]; size_t lsize = *size, i = 0; long* lval=0; - if(!h) return GRIB_INVALID_GRIB; + if (!h) return GRIB_INVALID_GRIB; lval=(long*)grib_context_malloc(h->context,sizeof(long)* *size); if (!lval) return GRIB_OUT_OF_MEMORY; - err = grib_index_get_long(h, cast_char(buf,key,len), lval, &lsize); + int err = grib_index_get_long(h, cast_char(buf,key,len), lval, &lsize); for (i=0;i Date: Tue, 20 Aug 2024 16:14:15 +0100 Subject: [PATCH 197/277] Do not fail if local def number does not exist --- src/accessor/grib_accessor_class_local_definition.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/accessor/grib_accessor_class_local_definition.cc b/src/accessor/grib_accessor_class_local_definition.cc index 833bc8f08..669584f2b 100644 --- a/src/accessor/grib_accessor_class_local_definition.cc +++ b/src/accessor/grib_accessor_class_local_definition.cc @@ -207,7 +207,7 @@ int grib_accessor_class_local_definition_t::pack_long(grib_accessor* a, const lo // In test & development mode, fail so we remember to adjust PDTN grib_context_log(a->context, GRIB_LOG_ERROR, "grib_accessor_local_definition_t: Invalid localDefinitionNumber %d", localDefinitionNumber); - return GRIB_ENCODING_ERROR; + // return GRIB_ENCODING_ERROR; #endif // ECC-1253: Do not fail in operations. Leave PDTN as is productDefinitionTemplateNumberNew = productDefinitionTemplateNumber; From 2ff3b0e0bc806d689a1cbdaa2484952354556fe4 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 20 Aug 2024 17:06:11 +0100 Subject: [PATCH 198/277] Dead code removal --- tools/grib_tools.cc | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/tools/grib_tools.cc b/tools/grib_tools.cc index cde99abac..b5c9f8697 100644 --- a/tools/grib_tools.cc +++ b/tools/grib_tools.cc @@ -168,16 +168,16 @@ int grib_tool(int argc, char** argv) grib_process_runtime_options(c, argc, argv, &global_options); grib_tool_init(&global_options); - if (global_options.dump_filename) { - dump_file = fopen(global_options.dump_filename, "w"); - if (!dump_file) { - perror(global_options.dump_filename); - exit(1); - } - } - else { - dump_file = stdout; - } + + Assert(global_options.dump_filename == NULL); + dump_file = stdout; + // if (global_options.dump_filename) { + // dump_file = fopen(global_options.dump_filename, "w"); + // if (!dump_file) { + // perror(global_options.dump_filename); + // exit(1); + // } + // } /* ECC-926: Currently only GRIB and BUFR indexing work. Disable the through_index if GTS etc */ if ((global_options.mode == MODE_GRIB || global_options.mode == MODE_BUFR) && From 98a3aed2257a09421ef65b9846113cbb1f090c52 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 20 Aug 2024 17:06:26 +0100 Subject: [PATCH 199/277] Testing: grib_compare -S and -E --- tests/grib_compare.sh | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tests/grib_compare.sh b/tests/grib_compare.sh index 65cbd2bb7..0f310e768 100755 --- a/tests/grib_compare.sh +++ b/tests/grib_compare.sh @@ -280,6 +280,19 @@ status=$? set -e [ $status -eq 1 ] +# ---------------------------------------- +# Through index using -S and -E +# ---------------------------------------- +tempIndex1=temp.$label.1.idx +tempIndex2=temp.$label.2.idx +${tools_dir}/grib_index_build -o $tempIndex1 -N -k time,date $data_dir/tigge_ecmwf.grib2 +${tools_dir}/grib_index_build -o $tempIndex2 -N -k time,date $data_dir/tigge_cf_ecmwf.grib2 +set +e +${tools_dir}/grib_compare -S 4 -E 5 $tempIndex1 $tempIndex2 +status=$? +set -e +[ $status -ne 0 ] + # Failing cases # ----------------- From 62caaf55845216838484d8f6a915bded163f9f21 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 20 Aug 2024 17:16:40 +0100 Subject: [PATCH 200/277] Testing: grib_compare options -A -T --- tests/grib_compare.sh | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tests/grib_compare.sh b/tests/grib_compare.sh index 0f310e768..1ac1f1462 100755 --- a/tests/grib_compare.sh +++ b/tests/grib_compare.sh @@ -157,6 +157,13 @@ set -e [ $status -eq 1 ] grep -q "Invalid absolute error" $outfile +set +e +${tools_dir}/grib_compare -A badnum -R 88 $infile $temp1 >$outfile 2>&1 +status=$? +set -e +[ $status -eq 1 ] +grep -q "Invalid absolute error" $outfile + # ---------------------------------------- # ECC-355: -R with "all" option @@ -175,6 +182,12 @@ ${tools_dir}/grib_compare -b $BLACKLIST -R all=2 $temp1 $temp2 cp ${data_dir}/tigge_cf_ecmwf.grib2 $temp1 ${tools_dir}/grib_compare -w typeOfLevel=surface ${data_dir}/tigge_cf_ecmwf.grib2 $temp1 + +# ---------------------------------------- +# Use -T switch +# ---------------------------------------- +${tools_dir}/grib_compare -T5 ${data_dir}/tigge_cf_ecmwf.grib2 ${data_dir}/tigge_cf_ecmwf.grib2 + # ---------------------------------------- # Summary mode (-f) # ---------------------------------------- From 0f3a10b727d699e9ded4676a1bf00d1396983f98 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 20 Aug 2024 17:40:08 +0100 Subject: [PATCH 201/277] Tools: Error messages --- tools/grib_dump.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/grib_dump.cc b/tools/grib_dump.cc index dcdd47b50..bcc2def10 100644 --- a/tools/grib_dump.cc +++ b/tools/grib_dump.cc @@ -153,6 +153,7 @@ int grib_tool_new_file_action(grib_runtime_options* options, grib_tools_file* fi * are more index files */ options->fail = 0; options->skip_all = 1; /* ECC-1516 */ + file->handle_count = 1; // Suppress error "No messages found in ..." } return 0; From f1377122fb2689476e4113dec237f3feb3d9117a Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 21 Aug 2024 18:22:42 +0100 Subject: [PATCH 202/277] Dead code removal --- definitions/grib1/predefined_grid.def | 8 +- ...b_accessor_class_gds_not_present_bitmap.cc | 152 +++++++++--------- 2 files changed, 82 insertions(+), 78 deletions(-) diff --git a/definitions/grib1/predefined_grid.def b/definitions/grib1/predefined_grid.def index 03352f650..02a6994ad 100644 --- a/definitions/grib1/predefined_grid.def +++ b/definitions/grib1/predefined_grid.def @@ -121,7 +121,7 @@ constant numberOfUnusedBitsAtEndOfSection3 = 0; constant tableReference = 0; #position offsetBeforeBitmap; -meta bitmap gds_not_present_bitmap( missingValue,numberOfValues, - numberOfPoints, - latitudeOfFirstGridPoint, - Ni,numberOfUnusedBitsAtEndOfSection3) : read_only; +# meta bitmap gds_not_present_bitmap( missingValue,numberOfValues, +# numberOfPoints, +# latitudeOfFirstGridPoint, +# Ni,numberOfUnusedBitsAtEndOfSection3) : read_only; diff --git a/src/accessor/grib_accessor_class_gds_not_present_bitmap.cc b/src/accessor/grib_accessor_class_gds_not_present_bitmap.cc index 976f7e5b7..53066528c 100644 --- a/src/accessor/grib_accessor_class_gds_not_present_bitmap.cc +++ b/src/accessor/grib_accessor_class_gds_not_present_bitmap.cc @@ -16,88 +16,92 @@ grib_accessor_class* grib_accessor_class_gds_not_present_bitmap = &_grib_accesso void grib_accessor_class_gds_not_present_bitmap_t::init(grib_accessor* a, const long v, grib_arguments* args) { - grib_accessor_class_gen_t::init(a, v, args); - int n = 0; - grib_accessor_gds_not_present_bitmap_t* self = (grib_accessor_gds_not_present_bitmap_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - - self->missing_value = grib_arguments_get_name(hand, args, n++); - self->number_of_values = grib_arguments_get_name(hand, args, n++); - self->number_of_points = grib_arguments_get_name(hand, args, n++); - self->latitude_of_first_point = grib_arguments_get_name(hand, args, n++); - self->ni = grib_arguments_get_name(hand, args, n++); - a->length = 0; + Assert(!"grib_accessor_class_gds_not_present_bitmap_t::init should not be called"); + // grib_accessor_class_gen_t::init(a, v, args); + // int n = 0; + // grib_accessor_gds_not_present_bitmap_t* self = (grib_accessor_gds_not_present_bitmap_t*)a; + // grib_handle* hand = grib_handle_of_accessor(a); + + // self->missing_value = grib_arguments_get_name(hand, args, n++); + // self->number_of_values = grib_arguments_get_name(hand, args, n++); + // self->number_of_points = grib_arguments_get_name(hand, args, n++); + // self->latitude_of_first_point = grib_arguments_get_name(hand, args, n++); + // self->ni = grib_arguments_get_name(hand, args, n++); + // a->length = 0; } int grib_accessor_class_gds_not_present_bitmap_t::value_count(grib_accessor* a, long* number_of_points) { - grib_accessor_gds_not_present_bitmap_t* self = (grib_accessor_gds_not_present_bitmap_t*)a; - *number_of_points = 0; - return grib_get_long_internal(grib_handle_of_accessor(a), self->number_of_points, number_of_points); + return GRIB_NOT_IMPLEMENTED; + // grib_accessor_gds_not_present_bitmap_t* self = (grib_accessor_gds_not_present_bitmap_t*)a; + // *number_of_points = 0; + // return grib_get_long_internal(grib_handle_of_accessor(a), self->number_of_points, number_of_points); } int grib_accessor_class_gds_not_present_bitmap_t::unpack_double(grib_accessor* a, double* val, size_t* len) { - grib_accessor_gds_not_present_bitmap_t* self = (grib_accessor_gds_not_present_bitmap_t*)a; - grib_handle* hand = grib_handle_of_accessor(a); - - long number_of_points = 0, number_of_values = 0, ni = 0; - long latitude_of_first_point = 0; - size_t i = 0; - size_t n_vals = 0; - long nn = 0; - long missing_value; - - double* coded_vals = NULL; - int err = a->value_count(&nn); - n_vals = nn; - if (err) - return err; - - if ((err = grib_get_long(hand, self->number_of_points, &number_of_points)) != GRIB_SUCCESS) - return err; - - if ((err = grib_get_long(hand, self->number_of_values, &number_of_values)) != GRIB_SUCCESS) - return err; - - if ((err = grib_get_long(hand, self->latitude_of_first_point, &latitude_of_first_point)) != GRIB_SUCCESS) - return err; - - if ((err = grib_get_long(hand, self->missing_value, &missing_value)) != GRIB_SUCCESS) - return err; - - if ((err = grib_get_long(hand, self->ni, &ni)) != GRIB_SUCCESS) - return err; - - if (*len < number_of_points) { - *len = n_vals; - return GRIB_ARRAY_TOO_SMALL; - } - - if (number_of_values > 0) { - coded_vals = (double*)grib_context_malloc(a->context, number_of_values * sizeof(double)); - - if (coded_vals == NULL) - return GRIB_OUT_OF_MEMORY; - } - - if (latitude_of_first_point == 0) { - for (i = 0; i < number_of_values; i++) - val[i] = 1; - for (i = number_of_values; i < number_of_points; i++) - val[i] = 0; - } - else { - for (i = 0; i < ni - 1; i++) - val[i] = 0; - for (i = ni - 1; i < number_of_points; i++) - val[i] = 1; - } - - *len = number_of_points; - - grib_context_free(a->context, coded_vals); - return err; + return GRIB_NOT_IMPLEMENTED; + + // grib_accessor_gds_not_present_bitmap_t* self = (grib_accessor_gds_not_present_bitmap_t*)a; + // grib_handle* hand = grib_handle_of_accessor(a); + + // long number_of_points = 0, number_of_values = 0, ni = 0; + // long latitude_of_first_point = 0; + // size_t i = 0; + // size_t n_vals = 0; + // long nn = 0; + // long missing_value; + + // double* coded_vals = NULL; + // int err = a->value_count(&nn); + // n_vals = nn; + // if (err) + // return err; + + // if ((err = grib_get_long(hand, self->number_of_points, &number_of_points)) != GRIB_SUCCESS) + // return err; + + // if ((err = grib_get_long(hand, self->number_of_values, &number_of_values)) != GRIB_SUCCESS) + // return err; + + // if ((err = grib_get_long(hand, self->latitude_of_first_point, &latitude_of_first_point)) != GRIB_SUCCESS) + // return err; + + // if ((err = grib_get_long(hand, self->missing_value, &missing_value)) != GRIB_SUCCESS) + // return err; + + // if ((err = grib_get_long(hand, self->ni, &ni)) != GRIB_SUCCESS) + // return err; + + // if (*len < number_of_points) { + // *len = n_vals; + // return GRIB_ARRAY_TOO_SMALL; + // } + + // if (number_of_values > 0) { + // coded_vals = (double*)grib_context_malloc(a->context, number_of_values * sizeof(double)); + + // if (coded_vals == NULL) + // return GRIB_OUT_OF_MEMORY; + // } + + // if (latitude_of_first_point == 0) { + // for (i = 0; i < number_of_values; i++) + // val[i] = 1; + // for (i = number_of_values; i < number_of_points; i++) + // val[i] = 0; + // } + // else { + // for (i = 0; i < ni - 1; i++) + // val[i] = 0; + // for (i = ni - 1; i < number_of_points; i++) + // val[i] = 1; + // } + + // *len = number_of_points; + + // grib_context_free(a->context, coded_vals); + // return err; } int grib_accessor_class_gds_not_present_bitmap_t::pack_double(grib_accessor* a, const double* val, size_t* len) From 4ded321aabba368001f51ff96baab37532e25e3f Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 21 Aug 2024 22:45:38 +0100 Subject: [PATCH 203/277] Dead code removal: Accessor for gds_not_present --- src/CMakeLists.txt | 1 - src/accessor_class_hierarchy.txt | 1 - ...ccessor_class_gds_not_present_bitmap.1.cc} | 0 ...ib_accessor_class_gds_not_present_bitmap.h | 0 src/grib_accessor_class.h | 1 - src/grib_accessor_classes_hash.cc | 675 +++++++++--------- src/grib_accessor_factory.h | 1 - src/grib_accessor_factory_hash_list | 1 - tests/grib1_gds_not_present.sh | 9 + 9 files changed, 355 insertions(+), 334 deletions(-) rename src/{accessor/grib_accessor_class_gds_not_present_bitmap.cc => deprecated/grib_accessor_class_gds_not_present_bitmap.1.cc} (100%) rename src/{accessor => deprecated}/grib_accessor_class_gds_not_present_bitmap.h (100%) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 3a4146b3b..2f6a232fb 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -217,7 +217,6 @@ list( APPEND eccodes_src_files accessor/grib_accessor_class_data_raw_packing.cc accessor/grib_accessor_class_data_complex_packing.cc accessor/grib_accessor_class_data_g1complex_packing.cc - accessor/grib_accessor_class_gds_not_present_bitmap.cc accessor/grib_accessor_class_gds_is_present.cc accessor/grib_accessor_class_select_step_template.cc accessor/grib_accessor_class_local_definition.cc diff --git a/src/accessor_class_hierarchy.txt b/src/accessor_class_hierarchy.txt index 78f67c6fa..78eaf2530 100644 --- a/src/accessor_class_hierarchy.txt +++ b/src/accessor_class_hierarchy.txt @@ -85,7 +85,6 @@ Generated by src/make_accessor_class_hierarchy_dirs.sh |---grib_accessor_class_g2_mars_labeling |---grib_accessor_class_g2step_range |---grib_accessor_class_gaussian_grid_name - |---grib_accessor_class_gds_not_present_bitmap |---grib_accessor_class_group |---grib_accessor_class_hash_array |---grib_accessor_class_headers_only diff --git a/src/accessor/grib_accessor_class_gds_not_present_bitmap.cc b/src/deprecated/grib_accessor_class_gds_not_present_bitmap.1.cc similarity index 100% rename from src/accessor/grib_accessor_class_gds_not_present_bitmap.cc rename to src/deprecated/grib_accessor_class_gds_not_present_bitmap.1.cc diff --git a/src/accessor/grib_accessor_class_gds_not_present_bitmap.h b/src/deprecated/grib_accessor_class_gds_not_present_bitmap.h similarity index 100% rename from src/accessor/grib_accessor_class_gds_not_present_bitmap.h rename to src/deprecated/grib_accessor_class_gds_not_present_bitmap.h diff --git a/src/grib_accessor_class.h b/src/grib_accessor_class.h index a3ddf6b21..46ae9fce0 100644 --- a/src/grib_accessor_class.h +++ b/src/grib_accessor_class.h @@ -102,7 +102,6 @@ extern grib_accessor_class* grib_accessor_class_g2lon; extern grib_accessor_class* grib_accessor_class_g2step_range; extern grib_accessor_class* grib_accessor_class_gaussian_grid_name; extern grib_accessor_class* grib_accessor_class_gds_is_present; -extern grib_accessor_class* grib_accessor_class_gds_not_present_bitmap; extern grib_accessor_class* grib_accessor_class_gen; extern grib_accessor_class* grib_accessor_class_getenv; extern grib_accessor_class* grib_accessor_class_global_gaussian; diff --git a/src/grib_accessor_classes_hash.cc b/src/grib_accessor_classes_hash.cc index d9e78851b..247b091b9 100644 --- a/src/grib_accessor_classes_hash.cc +++ b/src/grib_accessor_classes_hash.cc @@ -37,12 +37,12 @@ #line 6 "accessor_class_list.gperf" struct accessor_class_hash { const char *name; grib_accessor_class **cclass;}; -#define TOTAL_KEYWORDS 206 +#define TOTAL_KEYWORDS 205 #define MIN_WORD_LENGTH 1 #define MAX_WORD_LENGTH 44 #define MIN_HASH_VALUE 1 -#define MAX_HASH_VALUE 545 -/* maximum key range = 545, duplicates = 0 */ +#define MAX_HASH_VALUE 665 +/* maximum key range = 665, duplicates = 0 */ #ifdef __GNUC__ @@ -55,32 +55,32 @@ static unsigned int grib_accessor_classes_get_id (const char *str, size_t len) { static const unsigned short asso_values[] = { - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 0, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 1, 145, - 23, 6, 2, 546, 4, 546, 1, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 0, 546, 0, 69, 84, - 0, 0, 200, 24, 219, 1, 8, 6, 87, 102, - 13, 51, 6, 546, 118, 1, 40, 59, 171, 0, - 28, 11, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546, 546, 546, 546, 546, - 546, 546, 546, 546, 546, 546 + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 0, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 1, 189, + 23, 11, 4, 666, 10, 666, 0, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 0, 666, 0, 69, 85, + 0, 0, 175, 24, 230, 1, 0, 4, 74, 223, + 13, 50, 6, 666, 129, 1, 40, 71, 191, 0, + 52, 5, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666, 666, 666, 666, 666, + 666, 666, 666, 666, 666, 666 }; unsigned int hval = len; @@ -117,30 +117,30 @@ static const struct accessor_class_hash classes[] = #line 9 "accessor_class_list.gperf" {" "}, {""}, {""}, {""}, {""}, -#line 180 "accessor_class_list.gperf" +#line 179 "accessor_class_list.gperf" {"size", &grib_accessor_class_size}, #line 12 "accessor_class_list.gperf" {"ascii", &grib_accessor_class_ascii}, -#line 177 "accessor_class_list.gperf" +#line 176 "accessor_class_list.gperf" {"signed", &grib_accessor_class_signed}, -#line 157 "accessor_class_list.gperf" +#line 156 "accessor_class_list.gperf" {"pad", &grib_accessor_class_pad}, -#line 183 "accessor_class_list.gperf" +#line 182 "accessor_class_list.gperf" {"spd", &grib_accessor_class_spd}, - {""}, {""}, {""}, -#line 178 "accessor_class_list.gperf" +#line 76 "accessor_class_list.gperf" + {"dirty", &grib_accessor_class_dirty}, + {""}, {""}, +#line 177 "accessor_class_list.gperf" {"signed_bits", &grib_accessor_class_signed_bits}, {""}, #line 67 "accessor_class_list.gperf" {"data_raw_packing", &grib_accessor_class_data_raw_packing}, -#line 76 "accessor_class_list.gperf" - {"dirty", &grib_accessor_class_dirty}, - {""}, {""}, + {""}, {""}, {""}, #line 73 "accessor_class_list.gperf" {"data_simple_packing", &grib_accessor_class_data_simple_packing}, #line 69 "accessor_class_list.gperf" {"data_secondary_bitmap", &grib_accessor_class_data_secondary_bitmap}, -#line 171 "accessor_class_list.gperf" +#line 170 "accessor_class_list.gperf" {"section", &grib_accessor_class_section}, #line 44 "accessor_class_list.gperf" {"data_apply_bitmap", &grib_accessor_class_data_apply_bitmap}, @@ -148,40 +148,40 @@ static const struct accessor_class_hash classes[] = #line 75 "accessor_class_list.gperf" {"dictionary", &grib_accessor_class_dictionary}, {""}, -#line 113 "accessor_class_list.gperf" +#line 112 "accessor_class_list.gperf" {"gen", &grib_accessor_class_gen}, #line 65 "accessor_class_list.gperf" {"data_jpeg2000_packing", &grib_accessor_class_data_jpeg2000_packing}, #line 66 "accessor_class_list.gperf" {"data_png_packing", &grib_accessor_class_data_png_packing}, -#line 173 "accessor_class_list.gperf" +#line 172 "accessor_class_list.gperf" {"section_padding", &grib_accessor_class_section_padding}, -#line 174 "accessor_class_list.gperf" +#line 173 "accessor_class_list.gperf" {"section_pointer", &grib_accessor_class_section_pointer}, #line 45 "accessor_class_list.gperf" {"data_apply_boustrophedonic", &grib_accessor_class_data_apply_boustrophedonic}, {""}, {""}, {""}, {""}, {""}, -#line 158 "accessor_class_list.gperf" +#line 157 "accessor_class_list.gperf" {"padding", &grib_accessor_class_padding}, #line 46 "accessor_class_list.gperf" {"data_apply_boustrophedonic_bitmap", &grib_accessor_class_data_apply_boustrophedonic_bitmap}, #line 111 "accessor_class_list.gperf" {"gds_is_present", &grib_accessor_class_gds_is_present}, -#line 170 "accessor_class_list.gperf" +#line 169 "accessor_class_list.gperf" {"second_order_bits_per_value", &grib_accessor_class_second_order_bits_per_value}, -#line 172 "accessor_class_list.gperf" +#line 171 "accessor_class_list.gperf" {"section_length", &grib_accessor_class_section_length}, -#line 114 "accessor_class_list.gperf" +#line 113 "accessor_class_list.gperf" {"getenv", &grib_accessor_class_getenv}, #line 58 "accessor_class_list.gperf" {"data_g22order_packing", &grib_accessor_class_data_g22order_packing}, -#line 192 "accessor_class_list.gperf" +#line 191 "accessor_class_list.gperf" {"time", &grib_accessor_class_time}, {""}, #line 62 "accessor_class_list.gperf" {"data_g2shsimple_packing", &grib_accessor_class_data_g2shsimple_packing}, {""}, -#line 156 "accessor_class_list.gperf" +#line 155 "accessor_class_list.gperf" {"packing_type", &grib_accessor_class_packing_type}, #line 63 "accessor_class_list.gperf" {"data_g2simple_packing", &grib_accessor_class_data_g2simple_packing}, @@ -195,437 +195,454 @@ static const struct accessor_class_hash classes[] = {"g2end_step", &grib_accessor_class_g2end_step}, #line 99 "accessor_class_list.gperf" {"g2_eps", &grib_accessor_class_g2_eps}, -#line 143 "accessor_class_list.gperf" +#line 142 "accessor_class_list.gperf" {"nearest", &grib_accessor_class_nearest}, -#line 81 "accessor_class_list.gperf" - {"expanded_descriptors", &grib_accessor_class_expanded_descriptors}, -#line 159 "accessor_class_list.gperf" +#line 158 "accessor_class_list.gperf" {"padto", &grib_accessor_class_padto}, -#line 190 "accessor_class_list.gperf" - {"sum", &grib_accessor_class_sum}, - {""}, + {""}, {""}, {""}, #line 108 "accessor_class_list.gperf" {"g2lon", &grib_accessor_class_g2lon}, -#line 204 "accessor_class_list.gperf" - {"uint8", &grib_accessor_class_uint8}, - {""}, -#line 189 "accessor_class_list.gperf" + {""}, {""}, +#line 188 "accessor_class_list.gperf" {"step_in_units", &grib_accessor_class_step_in_units}, #line 64 "accessor_class_list.gperf" {"data_g2simple_packing_with_preprocessing", &grib_accessor_class_data_g2simple_packing_with_preprocessing}, -#line 202 "accessor_class_list.gperf" - {"uint64", &grib_accessor_class_uint64}, #line 48 "accessor_class_list.gperf" {"data_complex_packing", &grib_accessor_class_data_complex_packing}, -#line 200 "accessor_class_list.gperf" - {"uint32", &grib_accessor_class_uint32}, + {""}, {""}, #line 13 "accessor_class_list.gperf" {"bit", &grib_accessor_class_bit}, #line 15 "accessor_class_list.gperf" {"bits", &grib_accessor_class_bits}, -#line 49 "accessor_class_list.gperf" - {"data_dummy_field", &grib_accessor_class_data_dummy_field}, +#line 189 "accessor_class_list.gperf" + {"sum", &grib_accessor_class_sum}, #line 14 "accessor_class_list.gperf" {"bitmap", &grib_accessor_class_bitmap}, -#line 125 "accessor_class_list.gperf" - {"julian_day", &grib_accessor_class_julian_day}, +#line 203 "accessor_class_list.gperf" + {"uint8", &grib_accessor_class_uint8}, +#line 143 "accessor_class_list.gperf" + {"non_alpha", &grib_accessor_class_non_alpha}, + {""}, +#line 29 "accessor_class_list.gperf" + {"bytes", &grib_accessor_class_bytes}, #line 124 "accessor_class_list.gperf" + {"julian_day", &grib_accessor_class_julian_day}, +#line 123 "accessor_class_list.gperf" {"julian_date", &grib_accessor_class_julian_date}, -#line 144 "accessor_class_list.gperf" - {"non_alpha", &grib_accessor_class_non_alpha}, - {""}, {""}, -#line 68 "accessor_class_list.gperf" - {"data_run_length_packing", &grib_accessor_class_data_run_length_packing}, #line 109 "accessor_class_list.gperf" {"g2step_range", &grib_accessor_class_g2step_range}, #line 16 "accessor_class_list.gperf" {"bits_per_value", &grib_accessor_class_bits_per_value}, +#line 81 "accessor_class_list.gperf" + {"expanded_descriptors", &grib_accessor_class_expanded_descriptors}, {""}, -#line 29 "accessor_class_list.gperf" - {"bytes", &grib_accessor_class_bytes}, - {""}, {""}, {""}, -#line 168 "accessor_class_list.gperf" - {"scale", &grib_accessor_class_scale}, +#line 49 "accessor_class_list.gperf" + {"data_dummy_field", &grib_accessor_class_data_dummy_field}, +#line 201 "accessor_class_list.gperf" + {"uint64", &grib_accessor_class_uint64}, +#line 199 "accessor_class_list.gperf" + {"uint32", &grib_accessor_class_uint32}, {""}, -#line 186 "accessor_class_list.gperf" +#line 167 "accessor_class_list.gperf" + {"scale", &grib_accessor_class_scale}, +#line 185 "accessor_class_list.gperf" {"statistics", &grib_accessor_class_statistics}, #line 103 "accessor_class_list.gperf" {"g2date", &grib_accessor_class_g2date}, -#line 146 "accessor_class_list.gperf" - {"number_of_points", &grib_accessor_class_number_of_points}, +#line 68 "accessor_class_list.gperf" + {"data_run_length_packing", &grib_accessor_class_data_run_length_packing}, #line 101 "accessor_class_list.gperf" {"g2bitmap", &grib_accessor_class_g2bitmap}, - {""}, #line 61 "accessor_class_list.gperf" {"data_g2secondary_bitmap", &grib_accessor_class_data_g2secondary_bitmap}, #line 59 "accessor_class_list.gperf" {"data_g2bifourier_packing", &grib_accessor_class_data_g2bifourier_packing}, -#line 112 "accessor_class_list.gperf" - {"gds_not_present_bitmap", &grib_accessor_class_gds_not_present_bitmap}, -#line 123 "accessor_class_list.gperf" + {""}, +#line 122 "accessor_class_list.gperf" {"iterator", &grib_accessor_class_iterator}, -#line 187 "accessor_class_list.gperf" +#line 178 "accessor_class_list.gperf" + {"simple_packing_error", &grib_accessor_class_simple_packing_error}, +#line 186 "accessor_class_list.gperf" {"statistics_spectral", &grib_accessor_class_statistics_spectral}, + {""}, #line 47 "accessor_class_list.gperf" {"data_ccsds_packing", &grib_accessor_class_data_ccsds_packing}, -#line 147 "accessor_class_list.gperf" - {"number_of_points_gaussian", &grib_accessor_class_number_of_points_gaussian}, -#line 207 "accessor_class_list.gperf" - {"unsigned", &grib_accessor_class_unsigned}, -#line 139 "accessor_class_list.gperf" - {"md5", &grib_accessor_class_md5}, {""}, {""}, +#line 145 "accessor_class_list.gperf" + {"number_of_points", &grib_accessor_class_number_of_points}, #line 97 "accessor_class_list.gperf" {"g2_aerosol", &grib_accessor_class_g2_aerosol}, -#line 140 "accessor_class_list.gperf" - {"message", &grib_accessor_class_message}, -#line 208 "accessor_class_list.gperf" - {"unsigned_bits", &grib_accessor_class_unsigned_bits}, -#line 175 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, +#line 174 "accessor_class_list.gperf" {"select_step_template", &grib_accessor_class_select_step_template}, -#line 137 "accessor_class_list.gperf" - {"mars_param", &grib_accessor_class_mars_param}, -#line 205 "accessor_class_list.gperf" - {"unexpanded_descriptors", &grib_accessor_class_unexpanded_descriptors}, -#line 194 "accessor_class_list.gperf" +#line 193 "accessor_class_list.gperf" {"to_integer", &grib_accessor_class_to_integer}, -#line 179 "accessor_class_list.gperf" - {"simple_packing_error", &grib_accessor_class_simple_packing_error}, - {""}, {""}, {""}, -#line 188 "accessor_class_list.gperf" - {"step_human_readable", &grib_accessor_class_step_human_readable}, -#line 141 "accessor_class_list.gperf" - {"message_copy", &grib_accessor_class_message_copy}, -#line 164 "accessor_class_list.gperf" - {"raw", &grib_accessor_class_raw}, +#line 114 "accessor_class_list.gperf" + {"global_gaussian", &grib_accessor_class_global_gaussian}, +#line 146 "accessor_class_list.gperf" + {"number_of_points_gaussian", &grib_accessor_class_number_of_points_gaussian}, +#line 206 "accessor_class_list.gperf" + {"unsigned", &grib_accessor_class_unsigned}, {""}, {""}, -#line 203 "accessor_class_list.gperf" - {"uint64_little_endian", &grib_accessor_class_uint64_little_endian}, +#line 175 "accessor_class_list.gperf" + {"sexagesimal2decimal", &grib_accessor_class_sexagesimal2decimal}, {""}, -#line 201 "accessor_class_list.gperf" - {"uint32_little_endian", &grib_accessor_class_uint32_little_endian}, -#line 115 "accessor_class_list.gperf" - {"global_gaussian", &grib_accessor_class_global_gaussian}, +#line 79 "accessor_class_list.gperf" + {"element", &grib_accessor_class_element}, +#line 207 "accessor_class_list.gperf" + {"unsigned_bits", &grib_accessor_class_unsigned_bits}, +#line 127 "accessor_class_list.gperf" + {"latitudes", &grib_accessor_class_latitudes}, + {""}, +#line 204 "accessor_class_list.gperf" + {"unexpanded_descriptors", &grib_accessor_class_unexpanded_descriptors}, {""}, {""}, +#line 132 "accessor_class_list.gperf" + {"long", &grib_accessor_class_long}, #line 77 "accessor_class_list.gperf" {"divdouble", &grib_accessor_class_divdouble}, - {""}, -#line 176 "accessor_class_list.gperf" - {"sexagesimal2decimal", &grib_accessor_class_sexagesimal2decimal}, +#line 78 "accessor_class_list.gperf" + {"double", &grib_accessor_class_double}, +#line 187 "accessor_class_list.gperf" + {"step_human_readable", &grib_accessor_class_step_human_readable}, +#line 163 "accessor_class_list.gperf" + {"raw", &grib_accessor_class_raw}, #line 100 "accessor_class_list.gperf" {"g2_mars_labeling", &grib_accessor_class_g2_mars_labeling}, -#line 79 "accessor_class_list.gperf" - {"element", &grib_accessor_class_element}, -#line 161 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, {""}, {""}, +#line 194 "accessor_class_list.gperf" + {"to_string", &grib_accessor_class_to_string}, + {""}, +#line 202 "accessor_class_list.gperf" + {"uint64_little_endian", &grib_accessor_class_uint64_little_endian}, +#line 200 "accessor_class_list.gperf" + {"uint32_little_endian", &grib_accessor_class_uint32_little_endian}, + {""}, +#line 106 "accessor_class_list.gperf" + {"g2latlon", &grib_accessor_class_g2latlon}, +#line 160 "accessor_class_list.gperf" {"padtomultiple", &grib_accessor_class_padtomultiple}, -#line 128 "accessor_class_list.gperf" - {"latitudes", &grib_accessor_class_latitudes}, -#line 165 "accessor_class_list.gperf" +#line 17 "accessor_class_list.gperf" + {"blob", &grib_accessor_class_blob}, +#line 164 "accessor_class_list.gperf" {"rdbtime_guess_date", &grib_accessor_class_rdbtime_guess_date}, {""}, {""}, {""}, -#line 195 "accessor_class_list.gperf" - {"to_string", &grib_accessor_class_to_string}, -#line 133 "accessor_class_list.gperf" - {"long", &grib_accessor_class_long}, +#line 119 "accessor_class_list.gperf" + {"ibmfloat", &grib_accessor_class_ibmfloat}, +#line 126 "accessor_class_list.gperf" + {"label", &grib_accessor_class_label}, +#line 161 "accessor_class_list.gperf" + {"position", &grib_accessor_class_position}, #line 19 "accessor_class_list.gperf" {"bufr_data_array", &grib_accessor_class_bufr_data_array}, -#line 78 "accessor_class_list.gperf" - {"double", &grib_accessor_class_double}, + {""}, #line 20 "accessor_class_list.gperf" {"bufr_data_element", &grib_accessor_class_bufr_data_element}, -#line 106 "accessor_class_list.gperf" - {"g2latlon", &grib_accessor_class_g2latlon}, - {""}, {""}, + {""}, {""}, {""}, #line 26 "accessor_class_list.gperf" {"bufr_simple_thinning", &grib_accessor_class_bufr_simple_thinning}, - {""}, -#line 138 "accessor_class_list.gperf" - {"mars_step", &grib_accessor_class_mars_step}, - {""}, -#line 116 "accessor_class_list.gperf" + {""}, {""}, +#line 115 "accessor_class_list.gperf" {"group", &grib_accessor_class_group}, - {""}, + {""}, {""}, #line 28 "accessor_class_list.gperf" {"bufrdc_expanded_descriptors", &grib_accessor_class_bufrdc_expanded_descriptors}, -#line 162 "accessor_class_list.gperf" - {"position", &grib_accessor_class_position}, - {""}, {""}, {""}, -#line 17 "accessor_class_list.gperf" - {"blob", &grib_accessor_class_blob}, + {""}, {""}, {""}, {""}, #line 110 "accessor_class_list.gperf" {"gaussian_grid_name", &grib_accessor_class_gaussian_grid_name}, -#line 198 "accessor_class_list.gperf" +#line 197 "accessor_class_list.gperf" {"trim", &grib_accessor_class_trim}, - {""}, {""}, -#line 120 "accessor_class_list.gperf" - {"ibmfloat", &grib_accessor_class_ibmfloat}, - {""}, {""}, -#line 196 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, {""}, +#line 195 "accessor_class_list.gperf" {"transient", &grib_accessor_class_transient}, -#line 56 "accessor_class_list.gperf" - {"data_g1shsimple_packing", &grib_accessor_class_data_g1shsimple_packing}, {""}, {""}, -#line 57 "accessor_class_list.gperf" - {"data_g1simple_packing", &grib_accessor_class_data_g1simple_packing}, -#line 50 "accessor_class_list.gperf" - {"data_g1complex_packing", &grib_accessor_class_data_g1complex_packing}, -#line 167 "accessor_class_list.gperf" +#line 39 "accessor_class_list.gperf" + {"concept", &grib_accessor_class_concept}, + {""}, +#line 166 "accessor_class_list.gperf" {"round", &grib_accessor_class_round}, -#line 197 "accessor_class_list.gperf" + {""}, +#line 196 "accessor_class_list.gperf" {"transient_darray", &grib_accessor_class_transient_darray}, + {""}, #line 18 "accessor_class_list.gperf" {"budgdate", &grib_accessor_class_budgdate}, -#line 211 "accessor_class_list.gperf" - {"values", &grib_accessor_class_values}, -#line 145 "accessor_class_list.gperf" + {""}, {""}, +#line 144 "accessor_class_list.gperf" {"number_of_coded_values", &grib_accessor_class_number_of_coded_values}, -#line 127 "accessor_class_list.gperf" - {"label", &grib_accessor_class_label}, - {""}, {""}, -#line 39 "accessor_class_list.gperf" - {"concept", &grib_accessor_class_concept}, - {""}, -#line 184 "accessor_class_list.gperf" + {""}, {""}, {""}, +#line 183 "accessor_class_list.gperf" {"spectral_truncation", &grib_accessor_class_spectral_truncation}, - {""}, {""}, -#line 84 "accessor_class_list.gperf" - {"g1_message_length", &grib_accessor_class_g1_message_length}, - {""}, -#line 191 "accessor_class_list.gperf" - {"suppressed", &grib_accessor_class_suppressed}, - {""}, {""}, {""}, {""}, -#line 181 "accessor_class_list.gperf" - {"smart_table", &grib_accessor_class_smart_table}, - {""}, #line 40 "accessor_class_list.gperf" {"constant", &grib_accessor_class_constant}, +#line 210 "accessor_class_list.gperf" + {"values", &grib_accessor_class_values}, {""}, {""}, -#line 163 "accessor_class_list.gperf" - {"proj_string", &grib_accessor_class_proj_string}, -#line 151 "accessor_class_list.gperf" +#line 150 "accessor_class_list.gperf" {"octet_number", &grib_accessor_class_octet_number}, -#line 182 "accessor_class_list.gperf" - {"smart_table_column", &grib_accessor_class_smart_table_column}, +#line 135 "accessor_class_list.gperf" + {"lookup", &grib_accessor_class_lookup}, +#line 184 "accessor_class_list.gperf" + {"sprintf", &grib_accessor_class_sprintf}, + {""}, {""}, {""}, +#line 134 "accessor_class_list.gperf" + {"longitudes", &grib_accessor_class_longitudes}, + {""}, {""}, {""}, +#line 162 "accessor_class_list.gperf" + {"proj_string", &grib_accessor_class_proj_string}, {""}, +#line 190 "accessor_class_list.gperf" + {"suppressed", &grib_accessor_class_suppressed}, +#line 56 "accessor_class_list.gperf" + {"data_g1shsimple_packing", &grib_accessor_class_data_g1shsimple_packing}, + {""}, {""}, +#line 57 "accessor_class_list.gperf" + {"data_g1simple_packing", &grib_accessor_class_data_g1simple_packing}, +#line 50 "accessor_class_list.gperf" + {"data_g1complex_packing", &grib_accessor_class_data_g1complex_packing}, +#line 192 "accessor_class_list.gperf" + {"to_double", &grib_accessor_class_to_double}, + {""}, {""}, {""}, +#line 27 "accessor_class_list.gperf" + {"bufr_string_values", &grib_accessor_class_bufr_string_values}, + {""}, +#line 130 "accessor_class_list.gperf" + {"library_version", &grib_accessor_class_library_version}, + {""}, +#line 138 "accessor_class_list.gperf" + {"md5", &grib_accessor_class_md5}, +#line 131 "accessor_class_list.gperf" + {"local_definition", &grib_accessor_class_local_definition}, + {""}, {""}, +#line 139 "accessor_class_list.gperf" + {"message", &grib_accessor_class_message}, +#line 84 "accessor_class_list.gperf" + {"g1_message_length", &grib_accessor_class_g1_message_length}, +#line 102 "accessor_class_list.gperf" + {"g2bitmap_present", &grib_accessor_class_g2bitmap_present}, #line 136 "accessor_class_list.gperf" - {"lookup", &grib_accessor_class_lookup}, + {"mars_param", &grib_accessor_class_mars_param}, +#line 213 "accessor_class_list.gperf" + {"when", &grib_accessor_class_when}, +#line 120 "accessor_class_list.gperf" + {"ieeefloat", &grib_accessor_class_ieeefloat}, +#line 151 "accessor_class_list.gperf" + {"offset_file", &grib_accessor_class_offset_file}, + {""}, {""}, {""}, {""}, +#line 140 "accessor_class_list.gperf" + {"message_copy", &grib_accessor_class_message_copy}, + {""}, {""}, +#line 208 "accessor_class_list.gperf" + {"validity_date", &grib_accessor_class_validity_date}, +#line 209 "accessor_class_list.gperf" + {"validity_time", &grib_accessor_class_validity_time}, +#line 21 "accessor_class_list.gperf" + {"bufr_elements_table", &grib_accessor_class_bufr_elements_table}, +#line 212 "accessor_class_list.gperf" + {"vector", &grib_accessor_class_vector}, {""}, #line 95 "accessor_class_list.gperf" {"g1step_range", &grib_accessor_class_g1step_range}, -#line 74 "accessor_class_list.gperf" - {"decimal_precision", &grib_accessor_class_decimal_precision}, {""}, -#line 135 "accessor_class_list.gperf" - {"longitudes", &grib_accessor_class_longitudes}, +#line 34 "accessor_class_list.gperf" + {"closest_date", &grib_accessor_class_closest_date}, +#line 71 "accessor_class_list.gperf" + {"data_sh_unpacked", &grib_accessor_class_data_sh_unpacked}, +#line 36 "accessor_class_list.gperf" + {"codetable", &grib_accessor_class_codetable}, + {""}, {""}, +#line 159 "accessor_class_list.gperf" + {"padtoeven", &grib_accessor_class_padtoeven}, +#line 72 "accessor_class_list.gperf" + {"data_shsimple_packing", &grib_accessor_class_data_shsimple_packing}, {""}, -#line 27 "accessor_class_list.gperf" - {"bufr_string_values", &grib_accessor_class_bufr_string_values}, -#line 199 "accessor_class_list.gperf" - {"uint16", &grib_accessor_class_uint16}, - {""}, {""}, {""}, #line 87 "accessor_class_list.gperf" {"g1date", &grib_accessor_class_g1date}, {""}, #line 86 "accessor_class_list.gperf" {"g1bitmap", &grib_accessor_class_g1bitmap}, - {""}, #line 55 "accessor_class_list.gperf" {"data_g1secondary_bitmap", &grib_accessor_class_data_g1secondary_bitmap}, -#line 193 "accessor_class_list.gperf" - {"to_double", &grib_accessor_class_to_double}, -#line 102 "accessor_class_list.gperf" - {"g2bitmap_present", &grib_accessor_class_g2bitmap_present}, {""}, -#line 214 "accessor_class_list.gperf" - {"when", &grib_accessor_class_when}, -#line 209 "accessor_class_list.gperf" - {"validity_date", &grib_accessor_class_validity_date}, -#line 210 "accessor_class_list.gperf" - {"validity_time", &grib_accessor_class_validity_time}, +#line 133 "accessor_class_list.gperf" + {"long_vector", &grib_accessor_class_long_vector}, + {""}, {""}, +#line 198 "accessor_class_list.gperf" + {"uint16", &grib_accessor_class_uint16}, {""}, -#line 185 "accessor_class_list.gperf" - {"sprintf", &grib_accessor_class_sprintf}, -#line 213 "accessor_class_list.gperf" - {"vector", &grib_accessor_class_vector}, -#line 85 "accessor_class_list.gperf" - {"g1_section4_length", &grib_accessor_class_g1_section4_length}, -#line 142 "accessor_class_list.gperf" - {"multdouble", &grib_accessor_class_multdouble}, +#line 128 "accessor_class_list.gperf" + {"latlon_increment", &grib_accessor_class_latlon_increment}, + {""}, +#line 30 "accessor_class_list.gperf" + {"cf_var_name", &grib_accessor_class_cf_var_name}, +#line 137 "accessor_class_list.gperf" + {"mars_step", &grib_accessor_class_mars_step}, +#line 211 "accessor_class_list.gperf" + {"variable", &grib_accessor_class_variable}, #line 53 "accessor_class_list.gperf" {"data_g1second_order_general_packing", &grib_accessor_class_data_g1second_order_general_packing}, -#line 131 "accessor_class_list.gperf" - {"library_version", &grib_accessor_class_library_version}, +#line 85 "accessor_class_list.gperf" + {"g1_section4_length", &grib_accessor_class_g1_section4_length}, {""}, #line 54 "accessor_class_list.gperf" {"data_g1second_order_row_by_row_packing", &grib_accessor_class_data_g1second_order_row_by_row_packing}, - {""}, {""}, -#line 160 "accessor_class_list.gperf" - {"padtoeven", &grib_accessor_class_padtoeven}, + {""}, +#line 25 "accessor_class_list.gperf" + {"bufr_group", &grib_accessor_class_bufr_group}, + {""}, #line 51 "accessor_class_list.gperf" {"data_g1second_order_constant_width_packing", &grib_accessor_class_data_g1second_order_constant_width_packing}, {""}, #line 52 "accessor_class_list.gperf" {"data_g1second_order_general_extended_packing", &grib_accessor_class_data_g1second_order_general_extended_packing}, -#line 71 "accessor_class_list.gperf" - {"data_sh_unpacked", &grib_accessor_class_data_sh_unpacked}, - {""}, {""}, {""}, {""}, -#line 72 "accessor_class_list.gperf" - {"data_shsimple_packing", &grib_accessor_class_data_shsimple_packing}, -#line 21 "accessor_class_list.gperf" - {"bufr_elements_table", &grib_accessor_class_bufr_elements_table}, - {""}, {""}, {""}, {""}, -#line 155 "accessor_class_list.gperf" +#line 154 "accessor_class_list.gperf" {"pack_bufr_values", &grib_accessor_class_pack_bufr_values}, -#line 36 "accessor_class_list.gperf" - {"codetable", &grib_accessor_class_codetable}, -#line 132 "accessor_class_list.gperf" - {"local_definition", &grib_accessor_class_local_definition}, - {""}, -#line 25 "accessor_class_list.gperf" - {"bufr_group", &grib_accessor_class_bufr_group}, + {""}, {""}, {""}, {""}, +#line 168 "accessor_class_list.gperf" + {"scale_values", &grib_accessor_class_scale_values}, {""}, -#line 89 "accessor_class_list.gperf" - {"g1end_of_interval_monthly", &grib_accessor_class_g1end_of_interval_monthly}, -#line 148 "accessor_class_list.gperf" +#line 147 "accessor_class_list.gperf" {"number_of_values", &grib_accessor_class_number_of_values}, + {""}, {""}, {""}, {""}, {""}, #line 24 "accessor_class_list.gperf" {"bufr_extract_subsets", &grib_accessor_class_bufr_extract_subsets}, -#line 121 "accessor_class_list.gperf" - {"ieeefloat", &grib_accessor_class_ieeefloat}, -#line 152 "accessor_class_list.gperf" - {"offset_file", &grib_accessor_class_offset_file}, -#line 34 "accessor_class_list.gperf" - {"closest_date", &grib_accessor_class_closest_date}, -#line 154 "accessor_class_list.gperf" - {"optimal_step_units", &grib_accessor_class_optimal_step_units}, +#line 11 "accessor_class_list.gperf" + {"abstract_vector", &grib_accessor_class_abstract_vector}, +#line 37 "accessor_class_list.gperf" + {"codetable_title", &grib_accessor_class_codetable_title}, +#line 43 "accessor_class_list.gperf" + {"count_total", &grib_accessor_class_count_total}, +#line 89 "accessor_class_list.gperf" + {"g1end_of_interval_monthly", &grib_accessor_class_g1end_of_interval_monthly}, #line 22 "accessor_class_list.gperf" {"bufr_extract_area_subsets", &grib_accessor_class_bufr_extract_area_subsets}, -#line 212 "accessor_class_list.gperf" - {"variable", &grib_accessor_class_variable}, -#line 134 "accessor_class_list.gperf" - {"long_vector", &grib_accessor_class_long_vector}, -#line 169 "accessor_class_list.gperf" - {"scale_values", &grib_accessor_class_scale_values}, + {""}, +#line 116 "accessor_class_list.gperf" + {"gts_header", &grib_accessor_class_gts_header}, + {""}, #line 23 "accessor_class_list.gperf" {"bufr_extract_datetime_subsets", &grib_accessor_class_bufr_extract_datetime_subsets}, - {""}, {""}, -#line 129 "accessor_class_list.gperf" - {"latlon_increment", &grib_accessor_class_latlon_increment}, - {""}, {""}, {""}, -#line 149 "accessor_class_list.gperf" - {"number_of_values_data_raw_packing", &grib_accessor_class_number_of_values_data_raw_packing}, {""}, +#line 148 "accessor_class_list.gperf" + {"number_of_values_data_raw_packing", &grib_accessor_class_number_of_values_data_raw_packing}, +#line 152 "accessor_class_list.gperf" + {"offset_values", &grib_accessor_class_offset_values}, #line 80 "accessor_class_list.gperf" {"evaluate", &grib_accessor_class_evaluate}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 11 "accessor_class_list.gperf" - {"abstract_vector", &grib_accessor_class_abstract_vector}, - {""}, {""}, {""}, {""}, -#line 42 "accessor_class_list.gperf" - {"count_missing", &grib_accessor_class_count_missing}, -#line 206 "accessor_class_list.gperf" - {"unpack_bufr_values", &grib_accessor_class_unpack_bufr_values}, -#line 117 "accessor_class_list.gperf" - {"gts_header", &grib_accessor_class_gts_header}, - {""}, -#line 30 "accessor_class_list.gperf" - {"cf_var_name", &grib_accessor_class_cf_var_name}, {""}, {""}, {""}, -#line 37 "accessor_class_list.gperf" - {"codetable_title", &grib_accessor_class_codetable_title}, - {""}, {""}, {""}, -#line 90 "accessor_class_list.gperf" - {"g1fcperiod", &grib_accessor_class_g1fcperiod}, - {""}, {""}, {""}, {""}, {""}, -#line 126 "accessor_class_list.gperf" - {"ksec1expver", &grib_accessor_class_ksec1expver}, - {""}, {""}, +#line 74 "accessor_class_list.gperf" + {"decimal_precision", &grib_accessor_class_decimal_precision}, +#line 180 "accessor_class_list.gperf" + {"smart_table", &grib_accessor_class_smart_table}, +#line 205 "accessor_class_list.gperf" + {"unpack_bufr_values", &grib_accessor_class_unpack_bufr_values}, +#line 118 "accessor_class_list.gperf" + {"headers_only", &grib_accessor_class_headers_only}, +#line 35 "accessor_class_list.gperf" + {"codeflag", &grib_accessor_class_codeflag}, #line 107 "accessor_class_list.gperf" {"g2level", &grib_accessor_class_g2level}, -#line 43 "accessor_class_list.gperf" - {"count_total", &grib_accessor_class_count_total}, - {""}, {""}, {""}, +#line 121 "accessor_class_list.gperf" + {"ifs_param", &grib_accessor_class_ifs_param}, + {""}, +#line 181 "accessor_class_list.gperf" + {"smart_table_column", &grib_accessor_class_smart_table_column}, + {""}, {""}, {""}, {""}, +#line 129 "accessor_class_list.gperf" + {"latlonvalues", &grib_accessor_class_latlonvalues}, + {""}, #line 70 "accessor_class_list.gperf" {"data_sh_packed", &grib_accessor_class_data_sh_packed}, #line 38 "accessor_class_list.gperf" {"codetable_units", &grib_accessor_class_codetable_units}, -#line 119 "accessor_class_list.gperf" - {"headers_only", &grib_accessor_class_headers_only}, - {""}, -#line 130 "accessor_class_list.gperf" - {"latlonvalues", &grib_accessor_class_latlonvalues}, - {""}, -#line 153 "accessor_class_list.gperf" - {"offset_values", &grib_accessor_class_offset_values}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, -#line 122 "accessor_class_list.gperf" - {"ifs_param", &grib_accessor_class_ifs_param}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, #line 10 "accessor_class_list.gperf" {"abstract_long_vector", &grib_accessor_class_abstract_long_vector}, -#line 35 "accessor_class_list.gperf" - {"codeflag", &grib_accessor_class_codeflag}, - {""}, {""}, {""}, -#line 118 "accessor_class_list.gperf" - {"hash_array", &grib_accessor_class_hash_array}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, +#line 90 "accessor_class_list.gperf" + {"g1fcperiod", &grib_accessor_class_g1fcperiod}, {""}, +#line 41 "accessor_class_list.gperf" + {"count_file", &grib_accessor_class_count_file}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 117 "accessor_class_list.gperf" + {"hash_array", &grib_accessor_class_hash_array}, #line 31 "accessor_class_list.gperf" {"change_alternative_row_scanning", &grib_accessor_class_change_alternative_row_scanning}, - {""}, {""}, {""}, {""}, {""}, {""}, +#line 153 "accessor_class_list.gperf" + {"optimal_step_units", &grib_accessor_class_optimal_step_units}, + {""}, {""}, {""}, +#line 141 "accessor_class_list.gperf" + {"multdouble", &grib_accessor_class_multdouble}, + {""}, #line 32 "accessor_class_list.gperf" {"change_scanning_direction", &grib_accessor_class_change_scanning_direction}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 150 "accessor_class_list.gperf" + {""}, {""}, {""}, {""}, {""}, {""}, +#line 149 "accessor_class_list.gperf" {"octahedral_gaussian", &grib_accessor_class_octahedral_gaussian}, + {""}, +#line 125 "accessor_class_list.gperf" + {"ksec1expver", &grib_accessor_class_ksec1expver}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, -#line 41 "accessor_class_list.gperf" - {"count_file", &grib_accessor_class_count_file}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 42 "accessor_class_list.gperf" + {"count_missing", &grib_accessor_class_count_missing}, + {""}, {""}, {""}, {""}, {""}, {""}, +#line 82 "accessor_class_list.gperf" + {"from_scale_factor_scaled_value", &grib_accessor_class_from_scale_factor_scaled_value}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, -#line 92 "accessor_class_list.gperf" - {"g1monthlydate", &grib_accessor_class_g1monthlydate}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, #line 83 "accessor_class_list.gperf" {"g1_half_byte_codeflag", &grib_accessor_class_g1_half_byte_codeflag}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, +#line 92 "accessor_class_list.gperf" + {"g1monthlydate", &grib_accessor_class_g1monthlydate}, {""}, -#line 82 "accessor_class_list.gperf" - {"from_scale_factor_scaled_value", &grib_accessor_class_from_scale_factor_scaled_value}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, -#line 166 "accessor_class_list.gperf" - {"reference_value_error", &grib_accessor_class_reference_value_error}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, #line 33 "accessor_class_list.gperf" {"check_internal_version", &grib_accessor_class_check_internal_version}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, -#line 98 "accessor_class_list.gperf" - {"g2_chemical", &grib_accessor_class_g2_chemical}, - {""}, {""}, {""}, {""}, {""}, + {""}, {""}, +#line 165 "accessor_class_list.gperf" + {"reference_value_error", &grib_accessor_class_reference_value_error}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, #line 88 "accessor_class_list.gperf" {"g1day_of_the_year_date", &grib_accessor_class_g1day_of_the_year_date}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, -#line 91 "accessor_class_list.gperf" - {"g1forecastmonth", &grib_accessor_class_g1forecastmonth}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 96 "accessor_class_list.gperf" + {"g1verificationdate", &grib_accessor_class_g1verificationdate}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, +#line 98 "accessor_class_list.gperf" + {"g2_chemical", &grib_accessor_class_g2_chemical}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, + {""}, {""}, {""}, {""}, {""}, #line 94 "accessor_class_list.gperf" {"g1number_of_coded_values_sh_simple", &grib_accessor_class_g1number_of_coded_values_sh_simple}, #line 93 "accessor_class_list.gperf" {"g1number_of_coded_values_sh_complex", &grib_accessor_class_g1number_of_coded_values_sh_complex}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, - {""}, {""}, -#line 96 "accessor_class_list.gperf" - {"g1verificationdate", &grib_accessor_class_g1verificationdate} +#line 91 "accessor_class_list.gperf" + {"g1forecastmonth", &grib_accessor_class_g1forecastmonth} }; static const struct accessor_class_hash* grib_accessor_classes_hash(const char *str, size_t len) diff --git a/src/grib_accessor_factory.h b/src/grib_accessor_factory.h index 13716e28f..9455ca024 100644 --- a/src/grib_accessor_factory.h +++ b/src/grib_accessor_factory.h @@ -101,7 +101,6 @@ { "g2step_range", &grib_accessor_class_g2step_range, }, { "gaussian_grid_name", &grib_accessor_class_gaussian_grid_name, }, { "gds_is_present", &grib_accessor_class_gds_is_present, }, -{ "gds_not_present_bitmap", &grib_accessor_class_gds_not_present_bitmap, }, { "gen", &grib_accessor_class_gen, }, { "getenv", &grib_accessor_class_getenv, }, { "global_gaussian", &grib_accessor_class_global_gaussian, }, diff --git a/src/grib_accessor_factory_hash_list b/src/grib_accessor_factory_hash_list index ebb16f62f..eae0e2406 100644 --- a/src/grib_accessor_factory_hash_list +++ b/src/grib_accessor_factory_hash_list @@ -102,7 +102,6 @@ g2lon, &grib_accessor_class_g2lon g2step_range, &grib_accessor_class_g2step_range gaussian_grid_name, &grib_accessor_class_gaussian_grid_name gds_is_present, &grib_accessor_class_gds_is_present -gds_not_present_bitmap, &grib_accessor_class_gds_not_present_bitmap gen, &grib_accessor_class_gen getenv, &grib_accessor_class_getenv global_gaussian, &grib_accessor_class_global_gaussian diff --git a/tests/grib1_gds_not_present.sh b/tests/grib1_gds_not_present.sh index 36fffae56..9ce644cbf 100755 --- a/tests/grib1_gds_not_present.sh +++ b/tests/grib1_gds_not_present.sh @@ -17,7 +17,16 @@ tempGrib=temp.$label.grib input=$data_dir/reduced_latlon_surface.grib1 ${tools_dir}/grib_set -s gridDescriptionSectionPresent=0 $input $tempGrib +result=`${tools_dir}/grib_get -fp Ni,Nj $tempGrib` +[ "$result" = "not_found not_found" ] + ${tools_dir}/grib_dump $tempGrib > $REDIRECT 2>&1 +# ${tools_dir}/grib_get -n statistics $tempGrib + +max=`${tools_dir}/grib_get -F%.3f -p max $input` +min=`${tools_dir}/grib_get -F%.3f -p min $input` +[ "$max" = "12.597" ] +[ "$min" = "0.019" ] # Clean up rm -f $tempGrib From 189f1dcd1b2dd7fdb4b826900f863f078fb8c45a Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 22 Aug 2024 13:55:53 +0100 Subject: [PATCH 204/277] Testing: Exclude symlinks --- tests/definitions.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/definitions.sh b/tests/definitions.sh index 3842fa973..f090c1265 100755 --- a/tests/definitions.sh +++ b/tests/definitions.sh @@ -16,7 +16,9 @@ tempOut=temp.$label.txt [ -z "$ECCODES_DEFINITION_PATH" ] || ECCODES_DEFINITION_PATH=`${tools_dir}/codes_info -d` -for file in `find ${ECCODES_DEFINITION_PATH}/ -name '*.def' -print | grep -v grib3/ | grep -v metar/ | grep -v taf/` +# Ignore symbolic links +# Ignore unsupported formats e.g., TAF, METAR +for file in `find ${ECCODES_DEFINITION_PATH}/ -name '*.def' -type f -print | grep -v grib3/ | grep -v metar/ | grep -v taf/` do ${bin_dir}/codes_parser $file > $REDIRECT done @@ -29,4 +31,5 @@ set -e [ $status -ne 0 ] grep -q "Parser: syntax error" $tempOut +# Clean up rm -f $tempOut From 9bfdd38ea133dc2da903bfd09b36c18d555decb4 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 22 Aug 2024 13:56:06 +0100 Subject: [PATCH 205/277] Testing: Polar stereo error conditions --- tests/grib_grid_polar_stereographic.sh | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/tests/grib_grid_polar_stereographic.sh b/tests/grib_grid_polar_stereographic.sh index b426b34fe..e0f27cbdb 100755 --- a/tests/grib_grid_polar_stereographic.sh +++ b/tests/grib_grid_polar_stereographic.sh @@ -29,6 +29,24 @@ ${tools_dir}/grib_ls -l 60,0 $input # Scanning mode ${tools_dir}/grib_get_data -s iScansNegatively=1 $input > $tempOut +# Failing case +# ------------- +${tools_dir}/grib_set -s shapeOfTheEarth=2 $input $tempGrib # oblate earth +set +e +${tools_dir}/grib_get_data $tempGrib > $tempOut 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Only supported for spherical earth" $tempOut + +# Bad geography +set +e +${tools_dir}/grib_get_data -s Nx=1 $input > $tempOut 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Wrong number of points" $tempOut + # Clean up rm -f $tempFilt $tempGrib $tempOut From 4e71ddcb069220cc60cb09419a92370eb1e5c4ad Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 22 Aug 2024 14:14:24 +0100 Subject: [PATCH 206/277] Dead code removal --- src/grib_trie.cc | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/grib_trie.cc b/src/grib_trie.cc index c4e1d29e5..85f246e2d 100644 --- a/src/grib_trie.cc +++ b/src/grib_trie.cc @@ -437,11 +437,7 @@ void* grib_trie_insert_no_replace(grib_trie* t, const char* key, void* data) { grib_trie* last = t; const char* k = key; - - if (!t) { - Assert(!"grib_trie_insert_no_replace: grib_trie==NULL"); - return NULL; - } + Assert(t); while (*k && t) { last = t; From 1b430aff4756a73f9f5d6608830edcbb40763466 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 22 Aug 2024 14:14:41 +0100 Subject: [PATCH 207/277] Testing: Mercator error conditions --- tests/grib_grid_mercator.sh | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/tests/grib_grid_mercator.sh b/tests/grib_grid_mercator.sh index 825262b29..2be01a3fb 100755 --- a/tests/grib_grid_mercator.sh +++ b/tests/grib_grid_mercator.sh @@ -32,11 +32,30 @@ cat > $tempFilt < $tempOut # Nearest function ${tools_dir}/grib_ls -l 19,-97,1 $input > $tempOut grep -q "Point chosen #1 index=618" $tempOut +# Error conditions +# ---------------- +input=${data_dir}/mercator.grib2 +set +e +${tools_dir}/grib_get_data -s latitudeOfFirstGridPointInDegrees=90 $input > $tempOut 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Transformation cannot be computed at the poles" $tempOut + +input=${data_dir}/mercator.grib2 +set +e +${tools_dir}/grib_get_data -s Ni=1 $input > $tempOut 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Wrong number of points" $tempOut + + # Clean up rm -f $tempFilt $tempOut From 061dc1b77fa1d2bcce44624aa03fba2769ef3a4b Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 22 Aug 2024 14:41:45 +0100 Subject: [PATCH 208/277] Testing: Lambert/SpaceView error conditions --- src/action_class_concept.cc | 9 +++------ tests/grib_grid_lambert_conformal.sh | 19 +++++++++++++++++++ tests/grib_grid_space_view.sh | 24 ++++++++++++++++++++++++ 3 files changed, 46 insertions(+), 6 deletions(-) diff --git a/src/action_class_concept.cc b/src/action_class_concept.cc index d974e7ab9..fa639c54c 100644 --- a/src/action_class_concept.cc +++ b/src/action_class_concept.cc @@ -187,15 +187,12 @@ grib_action* grib_action_create_concept(grib_context* context, static void dump(grib_action* act, FILE* f, int lvl) { - int i = 0; - - for (i = 0; i < lvl; i++) + for (int i = 0; i < lvl; i++) grib_context_print(act->context, f, " "); - printf("concept(%s) { ", act->name); - printf("\n"); + printf("concept(%s) { \n", act->name); - for (i = 0; i < lvl; i++) + for (int i = 0; i < lvl; i++) grib_context_print(act->context, f, " "); printf("}\n"); } diff --git a/tests/grib_grid_lambert_conformal.sh b/tests/grib_grid_lambert_conformal.sh index 11d273d23..df4a3f9ec 100755 --- a/tests/grib_grid_lambert_conformal.sh +++ b/tests/grib_grid_lambert_conformal.sh @@ -86,5 +86,24 @@ ${tools_dir}/grib_get_data $tempGrib > $tempOut ${tools_dir}/grib_ls -l 40.44,353.56 $tempGrib +# Error conditions +# ---------------- +set +e +${tools_dir}/grib_get_data -s Latin1=5000,Latin2=-5000 $tempGrib > $tempOut 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Cannot have equal latitudes for standard parallels on opposite sides of equator" $tempOut + + +set +e +${tools_dir}/grib_get_data -s Ni=8 $tempGrib > $tempOut 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Wrong number of points" $tempOut + + + # Clean up rm -f $tempFilt $tempGrib $tempOut diff --git a/tests/grib_grid_space_view.sh b/tests/grib_grid_space_view.sh index 03407053d..ff00db519 100755 --- a/tests/grib_grid_space_view.sh +++ b/tests/grib_grid_space_view.sh @@ -50,6 +50,14 @@ ${tools_dir}/grib_get_data $tempGrib2 > $tempOut ${tools_dir}/grib_ls -l 50,0 $tempGrib2 # Invalid cases +# -------------- +set +e +${tools_dir}/grib_get_data -s Nx=1 $tempGrib2 > $tempOut 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Wrong number of points" $tempOut + set +e ${tools_dir}/grib_get_data -sNr=missing $tempGrib2 > $tempOut 2>&1 status=$? @@ -64,6 +72,22 @@ set -e [ $status -ne 0 ] grep -q "must be greater than zero" $tempOut + +set +e +${tools_dir}/grib_get_data -s latitudeOfSubSatellitePoint=66 $tempGrib2 > $tempOut 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "satellite must be located in the equator plane" $tempOut + + +set +e +${tools_dir}/grib_get_data -s dx=0 $tempGrib2 > $tempOut 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Keys dx and dy must be greater than zero" $tempOut + rm -f $tempGrib2 $tempOut # ----------- From e5f63fc3cc0b561c899b7c3c7959d282e6ece21c Mon Sep 17 00:00:00 2001 From: Robert Osinski Date: Wed, 21 Aug 2024 15:16:08 +0000 Subject: [PATCH 209/277] abstract single/multiple levels added for GRIB1 --- definitions/grib1/local/ecmf/3.table | 2 ++ definitions/grib1/section.1.def | 3 ++- definitions/grib1/typeOfLevel.def | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/definitions/grib1/local/ecmf/3.table b/definitions/grib1/local/ecmf/3.table index 767213f12..fb5b07081 100644 --- a/definitions/grib1/local/ecmf/3.table +++ b/definitions/grib1/local/ecmf/3.table @@ -45,6 +45,8 @@ # 161-199Reserved 200 sfc Entire atmosphere considered as a single layer 0 (2 octets) 201 201 Entire ocean considered as a single layer 0 (2 octets) +202 al Abstract Single Level +203 al Abstract Multiple Level # 202-209 Reserved 210 pl Isobaric surface (Pa) (ECMWF extension) # 211-254 Reserved for local use diff --git a/definitions/grib1/section.1.def b/definitions/grib1/section.1.def index c2dd5c5e0..3e8f936a8 100644 --- a/definitions/grib1/section.1.def +++ b/definitions/grib1/section.1.def @@ -105,7 +105,8 @@ if( indicatorOfTypeOfLevel == 109 || indicatorOfTypeOfLevel == 100 || indicatorOfTypeOfLevel == 110 || indicatorOfTypeOfLevel == 113 || - indicatorOfTypeOfLevel == 117) + indicatorOfTypeOfLevel == 117 || + indicatorOfTypeOfLevel == 203) { alias mars.levelist = level; } diff --git a/definitions/grib1/typeOfLevel.def b/definitions/grib1/typeOfLevel.def index ccf74d5be..1e7219d8e 100644 --- a/definitions/grib1/typeOfLevel.def +++ b/definitions/grib1/typeOfLevel.def @@ -34,3 +34,5 @@ 'depthBelowSea' = {indicatorOfTypeOfLevel=160;} 'entireAtmosphere' = {indicatorOfTypeOfLevel=200;} 'entireOcean' = {indicatorOfTypeOfLevel=201;} +'abstractSingleLevel' = {indicatorOfTypeOfLevel=202;} +'abstractMultipleLevels' = {indicatorOfTypeOfLevel=203;} From 90c393a0c2f806f6b55cf914b04d8a7188740715 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 23 Aug 2024 13:44:35 +0100 Subject: [PATCH 210/277] Testing: Encoding in parallel from samples --- definitions/grib1/local/ecmf/3.table | 4 ++-- tests/grib_threads_ecc-604-encode.cc | 30 +++++++++++++++++++--------- 2 files changed, 23 insertions(+), 11 deletions(-) diff --git a/definitions/grib1/local/ecmf/3.table b/definitions/grib1/local/ecmf/3.table index fb5b07081..8589b462e 100644 --- a/definitions/grib1/local/ecmf/3.table +++ b/definitions/grib1/local/ecmf/3.table @@ -42,12 +42,12 @@ 141 141 Layer between two isobaric surfaces (mixed precision) pressure of top, in kPa 1100hPa minus pressure of bottom, in hPa # 142-159 Reserved 160 dp Depth below sea level meters (2 octets) -# 161-199Reserved +# 161-199 Reserved 200 sfc Entire atmosphere considered as a single layer 0 (2 octets) 201 201 Entire ocean considered as a single layer 0 (2 octets) 202 al Abstract Single Level 203 al Abstract Multiple Level -# 202-209 Reserved +# 204-209 Reserved 210 pl Isobaric surface (Pa) (ECMWF extension) # 211-254 Reserved for local use 211 wv Ocean wave level (ECMWF extension) diff --git a/tests/grib_threads_ecc-604-encode.cc b/tests/grib_threads_ecc-604-encode.cc index 0f2e37560..33a767206 100644 --- a/tests/grib_threads_ecc-604-encode.cc +++ b/tests/grib_threads_ecc-604-encode.cc @@ -26,19 +26,24 @@ int opt_write = 0; /* If 1 write handle to file */ static int encode_values(grib_handle* h, char* output_file) { - double* values; - const size_t DIM = 1000; - size_t size = DIM * DIM; - size_t i = 0; - values = (double*)malloc(size * sizeof(double)); - for (i = 0; i < size; ++i) { + double* values = NULL; + long numberOfDataPoints = 0; + GRIB_CHECK(grib_get_long(h, "numberOfDataPoints", &numberOfDataPoints), 0); + size_t size = numberOfDataPoints; + + values = (double*)malloc(size * sizeof(double)); + for (size_t i = 0; i < size; ++i) { double v = i; - if (i % DIM == 0) v = 0; + if (i % size == 0) v = 0; values[i] = v; } GRIB_CHECK(grib_set_long(h, "bitsPerValue", 16), 0); GRIB_CHECK(grib_set_double_array(h, "values", values, size), 0); free(values); + if (opt_dump) { + FILE* devnull = fopen("/dev/null", "w"); + grib_dump_content(h, devnull, "wmo", 0, NULL); + } return GRIB_SUCCESS; } @@ -62,6 +67,7 @@ int main(int argc, char** argv) char* mode; if (argc < 5 || argc > 7) { fprintf(stderr, "Usage:\n\t%s [options] seq sample numRuns numIter\nOr\n\t%s [options] par sample numThreads numIter\n", prog, prog); + fprintf(stderr, "Options:\n\t-d: do a dump\n\t-c: clone\n"); return 1; } @@ -144,7 +150,12 @@ void do_encode(void* ptr) hs = grib_handle_new_from_samples(0, INPUT_FILE); for (i = 0; i < FILES_PER_ITERATION; i++) { - grib_handle* h = grib_handle_clone(hs); + grib_handle* h = NULL; + if (opt_clone) { + h = grib_handle_clone(hs); + } else { + h = hs; + } if (opt_write) { snprintf(output_file, 50, "output/output_file_%zu-%zu.grib", data->number, i); encode_values(h, output_file); @@ -152,7 +163,8 @@ void do_encode(void* ptr) else { encode_values(h, NULL); } - grib_handle_delete(h); + if (opt_clone) + grib_handle_delete(h); } ltime = time(NULL); From 2d24ad70395d82437256594c32a6702b33048972 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 24 Aug 2024 14:39:31 +0100 Subject: [PATCH 211/277] Testing: grib_to_netcdf error conditions and options --- tests/grib_to_netcdf.sh | 32 +++++++++++++++++++++++++++++++- tools/grib_to_netcdf.cc | 31 +++++++++++++++++-------------- 2 files changed, 48 insertions(+), 15 deletions(-) diff --git a/tests/grib_to_netcdf.sh b/tests/grib_to_netcdf.sh index e1fb6553a..2baf0b352 100755 --- a/tests/grib_to_netcdf.sh +++ b/tests/grib_to_netcdf.sh @@ -132,7 +132,8 @@ ${tools_dir}/grib_to_netcdf -o $tempNetcdf $tempGrib ECCODES_DEBUG=-1 ${tools_dir}/grib_to_netcdf -o $tempNetcdf $tempGrib -# The -u option +echo "Test -u option ..." +# ---------------------- input=${data_dir}/sample.grib2 ${tools_dir}/grib_to_netcdf -u time -o $tempNetcdf $input @@ -170,6 +171,17 @@ grib_check_key_equals $tempGrib 'dataDate:s' 'mar-20' ${tools_dir}/grib_to_netcdf -o $tempNetcdf $tempGrib +echo "Test -S option..." +# ------------------------------------ +input=${data_dir}/high_level_api.grib2 +${tools_dir}/grib_to_netcdf -o $tempNetcdf -S param $input + +echo "Test -I option..." +# ------------------------------------ +input=${data_dir}/high_level_api.grib2 +${tools_dir}/grib_to_netcdf -o $tempNetcdf -S method $input + + echo "Enable/Disable Checks ..." # --------------------------------- rm -f $tempNetcdf @@ -234,6 +246,24 @@ set -e [ $status -ne 0 ] grep -q "Invalid reference date" $tempText +# Bad -k option +input=$data_dir/sample.grib2 +set +e +${tools_dir}/grib_to_netcdf -k hallo -o $tempNetcdf $input > $tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Invalid value" $tempText + +# Bad -d option +input=$data_dir/sample.grib2 +set +e +${tools_dir}/grib_to_netcdf -d 999 -o $tempNetcdf $input > $tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Invalid deflate option" $tempText + # Validity time check export GRIB_TO_NETCDF_CHECKVALIDTIME=0 diff --git a/tools/grib_to_netcdf.cc b/tools/grib_to_netcdf.cc index 713ffcfaf..ffe0b50de 100644 --- a/tools/grib_to_netcdf.cc +++ b/tools/grib_to_netcdf.cc @@ -83,6 +83,11 @@ typedef struct parameter parameter; static const char* get_value(const request*, const char* name, int n); static bool parsedate(const char* name, long* julian, long* second, bool* isjul); +void usage_and_exit(void) +{ + usage(); // this calls exit(1) +} + static bool eq_string(const char* l, const char* r) { if (l && r) @@ -3957,7 +3962,6 @@ struct KindValue /* The 64-bit offset kind */ { "2", NC_FORMAT_64BIT }, { "64-bit-offset", NC_FORMAT_64BIT }, - { "64-bit offset", NC_FORMAT_64BIT }, /* NetCDF-4 HDF5 format */ { "3", NC_FORMAT_NETCDF4 }, @@ -4073,9 +4077,13 @@ int grib_tool_init(grib_runtime_options* options) } } if (kvalue->name == NULL) { - fprintf(stderr, "Invalid format: %s", kind_name); - usage(); - exit(1); + fprintf(stderr, "Invalid value for -k option: %s\n", kind_name); + fprintf(stderr, "Please use one of:\n"); + for (kvalue = legalkinds; kvalue->name; kvalue++) { + if (is_number(kvalue->name)) + fprintf(stderr, "\t%s\n", kvalue->name); + } + usage_and_exit(); } } @@ -4084,16 +4092,14 @@ int grib_tool_init(grib_runtime_options* options) char* theArg = grib_options_get_option("d:"); if (!is_number(theArg) || atol(theArg) < 0 || atol(theArg) > 9) { fprintf(stderr, "Invalid deflate option: %s (must be 0 to 9)\n", theArg); - usage(); - exit(1); + usage_and_exit(); } set_value(user_r, "deflate", theArg); deflate_option = 1; } else { fprintf(stderr, "Invalid deflate option for non netCDF-4 output formats\n"); - usage(); - exit(1); + usage_and_exit(); } } else { @@ -4105,8 +4111,7 @@ int grib_tool_init(grib_runtime_options* options) set_value(user_r, "shuffle", "true"); else { fprintf(stderr, "Invalid shuffle option. Deflate option needed.\n"); - usage(); - exit(1); + usage_and_exit(); } } else @@ -4116,8 +4121,7 @@ int grib_tool_init(grib_runtime_options* options) char* theArg = grib_options_get_option("R:"); if (!is_number(theArg)) { fprintf(stderr, "Invalid reference date: %s\n", theArg); - usage(); - exit(1); + usage_and_exit(); } set_value(user_r, "referencedate", theArg); } @@ -4295,8 +4299,7 @@ int grib_tool_finalise_action(grib_runtime_options* options) if (options->outfile == NULL || options->outfile->name == NULL) { grib_context_log(ctx, GRIB_LOG_ERROR, "No output file. Exiting!"); - usage(); - exit(1); + usage_and_exit(); } if (fs->count == 0) { From 264edafab902fc353983edb0ebb753a68156fc37 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 24 Aug 2024 16:17:15 +0100 Subject: [PATCH 212/277] Testing: grib_compare & bufr_compare options --- tests/grib_compare.sh | 19 +++++++++++++++++-- tools/bufr_compare.cc | 13 +------------ tools/grib_compare.cc | 2 +- 3 files changed, 19 insertions(+), 15 deletions(-) diff --git a/tests/grib_compare.sh b/tests/grib_compare.sh index 1ac1f1462..4c1f457ff 100755 --- a/tests/grib_compare.sh +++ b/tests/grib_compare.sh @@ -306,20 +306,35 @@ status=$? set -e [ $status -ne 0 ] +# Key unpackedValues +#------------------- +${tools_dir}/grib_set -s scaleValuesBy=1.01 $ECCODES_SAMPLES_PATH/sh_ml_grib2.tmpl $temp1 +${tools_dir}/grib_compare -c unpackedValues -A 1.86 $ECCODES_SAMPLES_PATH/sh_ml_grib2.tmpl $temp1 + +# ----------------- # Failing cases # ----------------- set +e -${tools_dir}/grib_compare -H -c data:n $temp1 $temp2 +${tools_dir}/grib_compare -Rxxxx $temp1 $temp2 > $outfile 2>&1 +status=$? +set -e +[ $status -eq 1 ] +grep "Invalid argument" $outfile + +set +e +${tools_dir}/grib_compare -H -c data:n $temp1 $temp2 > $outfile 2>&1 status=$? set -e [ $status -eq 1 ] +grep -q "options are incompatible" $outfile set +e -${tools_dir}/grib_compare -a $temp1 $temp2 +${tools_dir}/grib_compare -a $temp1 $temp2 > $outfile 2>&1 status=$? set -e [ $status -eq 1 ] +grep -q "a option requires -c option" $outfile echo GRIB > $temp1 diff --git a/tools/bufr_compare.cc b/tools/bufr_compare.cc index 325c67cd3..327020a9d 100644 --- a/tools/bufr_compare.cc +++ b/tools/bufr_compare.cc @@ -49,17 +49,6 @@ const char* tool_name = "bufr_compare"; const char* tool_online_doc = "https://confluence.ecmwf.int/display/ECC/bufr_compare"; const char* tool_usage = "[options] bufr_file1 bufr_file2"; -GRIB_INLINE static int grib_inline_strcmp(const char* a, const char* b) -{ - if (*a != *b) - return 1; - while ((*a != 0 && *b != 0) && *(a) == *(b)) { - a++; - b++; - } - return (*a == 0 && *b == 0) ? 0 : 1; -} - typedef double (*compare_double_proc)(const double*, const double*, const double*); typedef struct grib_error grib_error; @@ -657,7 +646,7 @@ static int strings_are_different(grib_handle* h1, grib_handle* h2, const char* k const char* s1, const char* s2, size_t slen1, size_t slen2) { - if (grib_inline_strcmp(s1, s2) == 0) { + if (strcmp(s1, s2) == 0) { return 0; } /* Strings are different. Now check if strings are 'missing'. diff --git a/tools/grib_compare.cc b/tools/grib_compare.cc index 330f218e0..911b1b0a5 100644 --- a/tools/grib_compare.cc +++ b/tools/grib_compare.cc @@ -367,8 +367,8 @@ int grib_tool_init(grib_runtime_options* options) options->tolerance_count = MAX_KEYS; ret = parse_keyval_string(tool_name, sarg, 1, GRIB_TYPE_DOUBLE, options->tolerance, &(options->tolerance_count)); if (ret == GRIB_INVALID_ARGUMENT) { + fprintf(stderr, "%s: Invalid argument for -R\n",tool_name); usage(); - exit(1); } } From 4ef34f02e3ccaeb7163fe1f71aa8a4129b8715e0 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sun, 25 Aug 2024 12:51:16 +0100 Subject: [PATCH 213/277] Examples --- examples/C/CMakeLists.txt | 1 - examples/C/bufr_clone.c | 6 ------ examples/C/grib_clone.c | 6 ------ examples/C/grib_copy_message.c | 6 ------ examples/C/grib_set_pv.c | 8 +------- 5 files changed, 1 insertion(+), 26 deletions(-) diff --git a/examples/C/CMakeLists.txt b/examples/C/CMakeLists.txt index 5e3795ef8..d25014ed0 100644 --- a/examples/C/CMakeLists.txt +++ b/examples/C/CMakeLists.txt @@ -26,7 +26,6 @@ list( APPEND test_bins grib_get_data grib_sections_copy grib_copy_keys - grib_iterator_bitmap grib_clone grib_copy_message grib_ensemble_index diff --git a/examples/C/bufr_clone.c b/examples/C/bufr_clone.c index 3cda29678..6a617eb50 100644 --- a/examples/C/bufr_clone.c +++ b/examples/C/bufr_clone.c @@ -18,11 +18,6 @@ #include #include "eccodes.h" -static void usage(const char* app) -{ - fprintf(stderr, "Usage is: %s input_file ouput_file\n", app); -} - int main(int argc, char* argv[]) { FILE* in = NULL; @@ -36,7 +31,6 @@ int main(int argc, char* argv[]) int i, err = 0; if (argc != 3) { - usage(argv[0]); return 1; } diff --git a/examples/C/grib_clone.c b/examples/C/grib_clone.c index c2964b54a..dce6c909d 100644 --- a/examples/C/grib_clone.c +++ b/examples/C/grib_clone.c @@ -18,11 +18,6 @@ #include #include "eccodes.h" -static void usage(const char* app) -{ - fprintf(stderr, "Usage is: %s input_file ouput_file\n", app); -} - int main(int argc, char* argv[]) { FILE* in = NULL; @@ -33,7 +28,6 @@ int main(int argc, char* argv[]) int err = 0; if (argc != 3) { - usage(argv[0]); return 1; } diff --git a/examples/C/grib_copy_message.c b/examples/C/grib_copy_message.c index 461bf4ea6..7757fd94a 100644 --- a/examples/C/grib_copy_message.c +++ b/examples/C/grib_copy_message.c @@ -18,11 +18,6 @@ #include "eccodes.h" #include -static void usage(const char* prog) -{ - fprintf(stderr, "Usage is: %s input_file ouput_file\n", prog); -} - int main(int argc, char* argv[]) { FILE* in = NULL; @@ -30,7 +25,6 @@ int main(int argc, char* argv[]) int err = 0; if (argc != 3) { - usage(argv[0]); return 1; } diff --git a/examples/C/grib_set_pv.c b/examples/C/grib_set_pv.c index e279aec8b..7352f6f84 100644 --- a/examples/C/grib_set_pv.c +++ b/examples/C/grib_set_pv.c @@ -19,12 +19,6 @@ #include #include "eccodes.h" -static void usage(const char* prog) -{ - fprintf(stderr, "usage: %s in out\n", prog); - exit(1); -} - int main(int argc, char** argv) { int err = 0; @@ -40,7 +34,7 @@ int main(int argc, char** argv) codes_handle* h = NULL; const void* buffer = NULL; - if (argc != 3) usage(argv[0]); + if (argc != 3) return 1; infile = argv[1]; outfile = argv[2]; From 64f9c026bf7b1101b6d9b1ed3ab2695a6da3f669 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sun, 25 Aug 2024 13:11:44 +0100 Subject: [PATCH 214/277] Fortran: Add missing skip attributes --- examples/F90/grib_keys_iterator_skip.f90 | 2 ++ fortran/eccodes_f90_tail.f90 | 17 ++++++++++++++ fortran/eccodes_visibility.h | 2 ++ fortran/grib_f90_tail.f90 | 28 ++++++++++++++++++++++++ 4 files changed, 49 insertions(+) diff --git a/examples/F90/grib_keys_iterator_skip.f90 b/examples/F90/grib_keys_iterator_skip.f90 index 7c97d85d7..c64df2447 100644 --- a/examples/F90/grib_keys_iterator_skip.f90 +++ b/examples/F90/grib_keys_iterator_skip.f90 @@ -36,6 +36,8 @@ program keys_iterator_skip call codes_skip_coded(kiter) call codes_skip_duplicates(kiter) call codes_skip_read_only(kiter) + call codes_skip_function(kiter) + call codes_skip_edition_specific(kiter) do call codes_keys_iterator_next(kiter, iret) diff --git a/fortran/eccodes_f90_tail.f90 b/fortran/eccodes_f90_tail.f90 index 4ecf52d03..4e7a951e9 100644 --- a/fortran/eccodes_f90_tail.f90 +++ b/fortran/eccodes_f90_tail.f90 @@ -2765,12 +2765,29 @@ subroutine codes_skip_read_only(iterid, status) call grib_skip_read_only(iterid, status) end subroutine codes_skip_read_only + subroutine codes_skip_function(iterid, status) + integer(kind=kindOfInt), intent(in) :: iterid + integer(kind=kindOfInt), optional, intent(out) :: status + + call grib_skip_function(iterid, status) + end subroutine codes_skip_function + + subroutine codes_skip_edition_specific(iterid, status) + integer(kind=kindOfInt), intent(in) :: iterid + integer(kind=kindOfInt), optional, intent(out) :: status + + call grib_skip_edition_specific(iterid, status) + end subroutine codes_skip_edition_specific + + !> Set debug mode subroutine codes_set_debug(dmode) integer(kind=kindOfInt), intent(in) :: dmode call grib_set_debug(dmode) end subroutine codes_set_debug + + !> Set the definition path !> !> In case of error, if the status parameter (optional) is not given, the program will diff --git a/fortran/eccodes_visibility.h b/fortran/eccodes_visibility.h index 0c26a53f7..9e720f1cd 100644 --- a/fortran/eccodes_visibility.h +++ b/fortran/eccodes_visibility.h @@ -7,6 +7,8 @@ public :: codes_keys_iterator_new, & public :: codes_skip_computed, & codes_skip_coded, & codes_skip_duplicates, & + codes_skip_function, & + codes_skip_edition_specific, & codes_skip_read_only public :: codes_keys_iterator_get_name, & codes_keys_iterator_rewind diff --git a/fortran/grib_f90_tail.f90 b/fortran/grib_f90_tail.f90 index 790ae3ace..ffd5b598c 100644 --- a/fortran/grib_f90_tail.f90 +++ b/fortran/grib_f90_tail.f90 @@ -3177,6 +3177,34 @@ subroutine grib_skip_read_only(iterid, status) end if end subroutine grib_skip_read_only + + subroutine grib_skip_function(iterid, status) + integer(kind=kindOfInt), intent(in) :: iterid + integer(kind=kindOfInt), optional, intent(out) :: status + integer(kind=kindOfInt) :: iret + + iret = grib_f_skip_function(iterid) + if (present(status)) then + status = iret + else + call grib_check(iret, 'skip_function', '') + end if + end subroutine grib_skip_function + + !!! + subroutine grib_skip_edition_specific(iterid, status) + integer(kind=kindOfInt), intent(in) :: iterid + integer(kind=kindOfInt), optional, intent(out) :: status + integer(kind=kindOfInt) :: iret + + iret = grib_f_skip_edition_specific(iterid) + if (present(status)) then + status = iret + else + call grib_check(iret, 'skip_edition_specific', '') + end if + end subroutine grib_skip_edition_specific + !> Set debug mode subroutine grib_set_debug(dmode) integer(kind=kindOfInt), intent(in) :: dmode From b3c7271db574bb9e6e6c5f8fdc626302b972a1f2 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sun, 25 Aug 2024 16:18:10 +0100 Subject: [PATCH 215/277] Testing: Increase coverage --- tests/grib_util_set_spec.cc | 18 +++++++++--------- tests/unit_tests.cc | 7 ++++--- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/tests/grib_util_set_spec.cc b/tests/grib_util_set_spec.cc index e47672868..06226cfe5 100644 --- a/tests/grib_util_set_spec.cc +++ b/tests/grib_util_set_spec.cc @@ -357,14 +357,14 @@ static void test_grid_complex_spatial_differencing(int remove_local_def, int edi } #endif -static void usage(const char* prog) -{ - fprintf(stderr, "%s: [-p packingType] [-r] [-e edition] in.grib out.grib\n", prog); - fprintf(stderr, "-p packingType: one of grid_jpeg, grid_ccsds, grid_second_order or grid_simple\n"); - fprintf(stderr, "-r remove local definition\n"); - fprintf(stderr, "-e edition: 1 or 2\n"); - exit(1); -} +// static void usage(const char* prog) +// { +// fprintf(stderr, "%s: [-p packingType] [-r] [-e edition] in.grib out.grib\n", prog); +// fprintf(stderr, "-p packingType: one of grid_jpeg, grid_ccsds, grid_second_order or grid_simple\n"); +// fprintf(stderr, "-r remove local definition\n"); +// fprintf(stderr, "-e edition: 1 or 2\n"); +// exit(1); +// } int main(int argc, char* argv[]) { @@ -375,7 +375,7 @@ int main(int argc, char* argv[]) char* infile_name = NULL; char* outfile_name = NULL; - if (argc == 1 || argc > 8) usage(prog); + if (argc == 1 || argc > 8) return 1;// see usage for (i = 1; i < argc; i++) { if (strcmp(argv[i], "-p") == 0) { diff --git a/tests/unit_tests.cc b/tests/unit_tests.cc index 85505d2a6..688e4f104 100644 --- a/tests/unit_tests.cc +++ b/tests/unit_tests.cc @@ -224,7 +224,7 @@ static void test_assertion_catching() printf("Running %s ...\n", __func__); char empty[] = ""; - char** list = 0; + char** list = NULL; int i = 0; Assert(assertion_caught == 0); codes_set_codes_assertion_failed_proc(&my_assertion_proc); @@ -233,13 +233,14 @@ static void test_assertion_catching() list = string_split(empty, " "); Assert(assertion_caught == 1); + Assert( list == NULL ); /* Restore everything */ codes_set_codes_assertion_failed_proc(NULL); assertion_caught = 0; - for (i = 0; list[i] != NULL; ++i) - free(list[i]); + // for (i = 0; list[i] != NULL; ++i) + // free(list[i]); free(list); } From 8bf440d850a562f7fa849a5d36effc4345eeedc6 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sun, 25 Aug 2024 16:33:37 +0100 Subject: [PATCH 216/277] Dead code removal --- src/eccodes_prototypes.h | 4 ++-- src/grib_context.cc | 26 +++++++++++++------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 80d383526..a75d82d1a 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -402,8 +402,8 @@ void codes_dump_bufr_flat(grib_accessors_list* al, grib_handle* h, FILE* f, cons size_t grib_context_read(const grib_context* c, void* ptr, size_t size, void* stream); off_t grib_context_tell(const grib_context* c, void* stream); int grib_context_seek(const grib_context* c, off_t offset, int whence, void* stream); -int grib_context_eof(const grib_context* c, void* stream); -size_t grib_context_write(const grib_context* c, const void* ptr, size_t size, void* stream); +// int grib_context_eof(const grib_context* c, void* stream); +// size_t grib_context_write(const grib_context* c, const void* ptr, size_t size, void* stream); void grib_context_set_print_proc(grib_context* c, grib_print_proc p); void grib_context_set_debug(grib_context* c, int mode); void grib_context_set_logging_proc(grib_context* c, grib_log_proc p); diff --git a/src/grib_context.cc b/src/grib_context.cc index 442faa1e8..98ffe39e2 100644 --- a/src/grib_context.cc +++ b/src/grib_context.cc @@ -185,19 +185,19 @@ int grib_context_seek(const grib_context* c, off_t offset, int whence, void* str return c->seek(c, offset, whence, stream); } -int grib_context_eof(const grib_context* c, void* stream) -{ - if (!c) - c = grib_context_get_default(); - return c->eof(c, stream); -} +// int grib_context_eof(const grib_context* c, void* stream) +// { +// if (!c) +// c = grib_context_get_default(); +// return c->eof(c, stream); +// } -size_t grib_context_write(const grib_context* c, const void* ptr, size_t size, void* stream) -{ - if (!c) - c = grib_context_get_default(); - return c->write(c, ptr, size, stream); -} +// size_t grib_context_write(const grib_context* c, const void* ptr, size_t size, void* stream) +// { +// if (!c) +// c = grib_context_get_default(); +// return c->write(c, ptr, size, stream); +// } static void default_log(const grib_context* c, int level, const char* mess) { @@ -237,7 +237,7 @@ static void default_print(const grib_context* c, void* descriptor, const char* m void grib_context_set_print_proc(grib_context* c, grib_print_proc p) { c = c ? c : grib_context_get_default(); - /* Set logging back to the default if p is NULL */ + /* Set printing back to the default if p is NULL */ c->print = (p ? p : &default_print); } From 525bfb520e2a3a10c0573fa6f7af7d92e621331d Mon Sep 17 00:00:00 2001 From: shahramn Date: Sun, 25 Aug 2024 16:33:52 +0100 Subject: [PATCH 217/277] Testing: Increase coverage --- tests/grib_lam_bf.cc | 2 +- tests/unit_tests.cc | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/tests/grib_lam_bf.cc b/tests/grib_lam_bf.cc index c7170a192..7a575e68c 100644 --- a/tests/grib_lam_bf.cc +++ b/tests/grib_lam_bf.cc @@ -860,7 +860,7 @@ int main(int argc, char* argv[]) geometry_len = 128; GRIB_CHECK(grib_get_string(h, "gridType", geometry, &geometry_len), 0); if (strcmp(geometry, grids[igrid])) { - printf("Geometry is incorrect\n"); + fprintf(stderr, "Geometry is incorrect\n"); return 1; } diff --git a/tests/unit_tests.cc b/tests/unit_tests.cc index 688e4f104..eedafca1b 100644 --- a/tests/unit_tests.cc +++ b/tests/unit_tests.cc @@ -225,7 +225,6 @@ static void test_assertion_catching() char empty[] = ""; char** list = NULL; - int i = 0; Assert(assertion_caught == 0); codes_set_codes_assertion_failed_proc(&my_assertion_proc); @@ -265,6 +264,16 @@ static void test_logging_proc() Assert(logging_caught == 0); } +static void my_print_proc(const grib_context* c, void* descriptor, const char* mesg) +{ +} +static void test_print_proc() +{ + grib_context* context = grib_context_get_default(); + grib_context_set_print_proc(context, my_print_proc); + grib_context_set_print_proc(context, NULL); +} + static void test_concept_condition_strings() { printf("Running %s ...\n", __func__); @@ -788,6 +797,7 @@ int main(int argc, char** argv) test_scale_factor_scaled_values(); test_dates(); test_logging_proc(); + test_print_proc(); test_grib_binary_search(); test_parse_keyval_string(); From 0cf898b592d74a721a8b4a852d1533eaeb701f64 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sun, 25 Aug 2024 16:39:56 +0100 Subject: [PATCH 218/277] Dead code removal --- src/eccodes_prototypes.h | 1 - src/grib_fieldset.cc | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index a75d82d1a..d7479e960 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -466,7 +466,6 @@ long grib_julian_to_date(long jdate); long grib_date_to_julian(long ddate); /* grib_fieldset.cc */ -int grib_fieldset_new_column(grib_fieldset* set, int id, char* key, int type); grib_fieldset* grib_fieldset_new_from_files(grib_context* c, const char* filenames[], int nfiles, const char** keys, int nkeys, const char* where_string, const char* order_by_string, int* err); int grib_fieldset_apply_where(grib_fieldset* set, const char* where_string); int grib_fieldset_apply_order_by(grib_fieldset* set, const char* order_by_string); diff --git a/src/grib_fieldset.cc b/src/grib_fieldset.cc index 72cb928c6..a37013844 100644 --- a/src/grib_fieldset.cc +++ b/src/grib_fieldset.cc @@ -55,7 +55,7 @@ static int grib_fieldset_set_order_by(grib_fieldset* set, grib_order_by* ob); /* --------------- grib_column functions ------------------*/ -int grib_fieldset_new_column(grib_fieldset* set, int id, char* key, int type) +static int grib_fieldset_new_column(grib_fieldset* set, int id, char* key, int type) { grib_column* column = NULL; grib_context* c; From c6cea152d1ecc0dee725cd270ad39422d5132aad Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 26 Aug 2024 11:41:13 +0100 Subject: [PATCH 219/277] Testing: Increase coverage --- tests/gts_compare.sh | 6 ++++-- tests/read_any.sh | 13 +++++-------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/tests/gts_compare.sh b/tests/gts_compare.sh index 678d8b571..14592d6ea 100755 --- a/tests/gts_compare.sh +++ b/tests/gts_compare.sh @@ -31,6 +31,8 @@ echo "Test: comparing the same files" >> $fLog echo "file: $gts_file" >> $fLog ${tools_dir}/gts_compare $gts_file $gts_file +${tools_dir}/gts_compare -v -c totalLength $gts_file $gts_file > /dev/null + #---------------------------------------------------- # Test: comparing with skip #---------------------------------------------------- @@ -82,13 +84,13 @@ ${tools_dir}/gts_compare -c theMessage $temp1 $temp2 ${tools_dir}/gts_compare -c theMessage -a $temp1 $temp2 set +e -${tools_dir}/gts_compare -c ls:n $temp1 $temp2 +${tools_dir}/gts_compare -c ls:n $temp1 $temp2 > /dev/null status=$? set -e [ $status -eq 1 ] set +e -${tools_dir}/gts_compare -c ls:n -a $temp1 $temp2 +${tools_dir}/gts_compare -c ls:n -a $temp1 $temp2 > /dev/null status=$? set -e [ $status -eq 1 ] diff --git a/tests/read_any.sh b/tests/read_any.sh index f8d1a0ba1..c8972cc03 100755 --- a/tests/read_any.sh +++ b/tests/read_any.sh @@ -13,12 +13,6 @@ infile=${data_dir}/mixed.grib outfile=${data_dir}/read_any.out -#if [ ! -f ${infile} ] -#then -# echo no data to test -# exit 0 -#fi - $EXEC $test_dir/read_any $infile > ${outfile} diff ${outfile} ${data_dir}/read_any.ok @@ -26,10 +20,13 @@ diff ${outfile} ${data_dir}/read_any.ok rm -f ${outfile} count=`${tools_dir}/grib_count ${data_dir}/pad.grib` - if [ $count != 6 ]; then - echo grib_io problem + echo "Error: grib_io problem" exit 1 fi ${tools_dir}/grib_count -v ${data_dir}/pad.grib >/dev/null + +## +$EXEC $test_dir/read_any $ECCODES_SAMPLES_PATH/reduced_gg_pl_32_grib1.tmpl +$EXEC $test_dir/read_any $ECCODES_SAMPLES_PATH/reduced_gg_pl_32_grib2.tmpl From 302f7bc93c249e44ab2ab6170113e7a413a2c197 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Mon, 26 Aug 2024 11:00:05 +0000 Subject: [PATCH 220/277] Compiler warnings --- examples/C/mars_param.c | 7 ++----- examples/C/nc.c | 2 +- src/accessor/grib_accessor_class_optimal_step_units.cc | 2 +- tests/grib_util_set_spec.cc | 1 - 4 files changed, 4 insertions(+), 8 deletions(-) diff --git a/examples/C/mars_param.c b/examples/C/mars_param.c index aff84d385..ee56cad31 100644 --- a/examples/C/mars_param.c +++ b/examples/C/mars_param.c @@ -20,14 +20,11 @@ int main(int argc, char** argv) { - codes_string_list* list; - codes_string_list* list2; - - list = codes_grib_util_get_param_id("11.2"); + const codes_string_list* list = codes_grib_util_get_param_id("11.2"); printf("mars.param=11.2 -> paramId= "); while (list) { + const codes_string_list* list2 = codes_grib_util_get_param_id("130.128"); printf("%s ", list->value); - list2 = codes_grib_util_get_param_id("130.128"); printf("mars.param=11.2 -> paramId= "); while (list2) { printf("%s ", list2->value); diff --git a/examples/C/nc.c b/examples/C/nc.c index 35b844f1e..6858a6ac5 100644 --- a/examples/C/nc.c +++ b/examples/C/nc.c @@ -9,7 +9,7 @@ */ #include "eccodes.h" -void usage(char* prog) +void usage(const char* prog) { printf("usage: %s in.nc\n", prog); exit(1); diff --git a/src/accessor/grib_accessor_class_optimal_step_units.cc b/src/accessor/grib_accessor_class_optimal_step_units.cc index e6ff3fe73..6ce297e30 100644 --- a/src/accessor/grib_accessor_class_optimal_step_units.cc +++ b/src/accessor/grib_accessor_class_optimal_step_units.cc @@ -51,7 +51,7 @@ int grib_accessor_class_optimal_step_units_t::pack_expression(grib_accessor* a, const char* cclass_name = a->cclass->name; if (strcmp(e->cclass->name, "long") == 0) { - grib_expression_evaluate_long(hand, e, &lval); // TODO: check return value + grib_expression_evaluate_long(hand, e, &lval); // TODO(maee): check return value ret = a->pack_long(&lval, &len); } else { diff --git a/tests/grib_util_set_spec.cc b/tests/grib_util_set_spec.cc index 06226cfe5..095eb7135 100644 --- a/tests/grib_util_set_spec.cc +++ b/tests/grib_util_set_spec.cc @@ -371,7 +371,6 @@ int main(int argc, char* argv[]) int i = 0, remove_local_def = 0; int edition = 0; char* packingType = NULL; - const char* prog = argv[0]; char* infile_name = NULL; char* outfile_name = NULL; From 5d00cae2c9a0950fb6ade938597b6bcdacb48f99 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 26 Aug 2024 15:34:23 +0100 Subject: [PATCH 221/277] Testing: gts_compare --- tests/gts_compare.sh | 1 + tools/gts_compare.cc | 14 -------------- 2 files changed, 1 insertion(+), 14 deletions(-) diff --git a/tests/gts_compare.sh b/tests/gts_compare.sh index 14592d6ea..c4c217b8d 100755 --- a/tests/gts_compare.sh +++ b/tests/gts_compare.sh @@ -71,6 +71,7 @@ set -e [ $status -eq 1 ] # Add correct blocklist ${tools_dir}/gts_compare -b GG $gts_file $fGtsTmp +${tools_dir}/gts_compare -b CCCC,GG $gts_file $fGtsTmp #---------------------------------------------------- # Compare using -c diff --git a/tools/gts_compare.cc b/tools/gts_compare.cc index 3a084893d..dad70feac 100644 --- a/tools/gts_compare.cc +++ b/tools/gts_compare.cc @@ -17,8 +17,6 @@ grib_option grib_options[] = { { "d", 0, "Write different messages on files\n", 0, 1, 0 }, { "T:", 0, 0, 1, 0, "T" }, /* GTS */ { "c:", 0, 0, 0, 1, 0 }, - { "S:", "start", "First field to be processed.\n", 0, 1, 0 }, - { "E:", "end", "Last field to be processed.\n", 0, 1, 0 }, { "a", 0, "-c option modifier. The keys listed with the option -c will be added to the list of keys compared without -c.\n", 0, 1, 0 }, /*{"R:",0,0,0,1,0},*/ /*{"A:",0,0,0,1,0},*/ @@ -87,9 +85,6 @@ static int write_count = 0; grib_handle* global_handle = NULL; int counter = 0; -int start = -1; -int end = -1; - static void write_message(grib_handle* h, const char* str) { @@ -155,11 +150,6 @@ int grib_tool_init(grib_runtime_options* options) grib_context* context = grib_context_get_default(); options->strict = 1; - if (grib_options_on("S:")) - start = atoi(grib_options_get_option("S:")); - - if (grib_options_on("E:")) - end = atoi(grib_options_get_option("E:")); if (grib_options_on("f")) force = 1; @@ -537,10 +527,6 @@ static int compare_values(const grib_runtime_options* options, grib_handle* h1, return err2; break; - case GRIB_TYPE_DOUBLE: - Assert(!"GTS cannot contain keys of type DOUBLE"); - break; - case GRIB_TYPE_BYTES: // We do not want to compare the message itself return 0; From f985cf7806968df60397aa758111dbef2fa866c9 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 26 Aug 2024 15:44:44 +0100 Subject: [PATCH 222/277] Testing: Conversion to grib2 with GRIBEX mode --- tests/grib1to2.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/grib1to2.sh b/tests/grib1to2.sh index d050c32ff..46a73ecd6 100755 --- a/tests/grib1to2.sh +++ b/tests/grib1to2.sh @@ -116,6 +116,10 @@ sample_g1=$ECCODES_SAMPLES_PATH/GRIB1.tmpl output=temp.grib1to2.grib ECCODES_DEBUG=-1 ${tools_dir}/grib_set -s edition=2 $sample_g1 $output +# -G option +sample_g1=$ECCODES_SAMPLES_PATH/GRIB1.tmpl +${tools_dir}/grib_set -G -s edition=2 $sample_g1 $temp2 + # Clean up rm -f $output From 1e4249dceb6320378f7bdb9d9f8a9c981ae09cc2 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 26 Aug 2024 16:00:43 +0100 Subject: [PATCH 223/277] Testing: grib_get_data error conditions --- tests/grib_iterator.sh | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tests/grib_iterator.sh b/tests/grib_iterator.sh index 240107ee7..2601838ff 100755 --- a/tests/grib_iterator.sh +++ b/tests/grib_iterator.sh @@ -153,6 +153,22 @@ input=$ECCODES_SAMPLES_PATH/reduced_gg_pl_32_grib2.tmpl ECCODES_DEBUG=1 ${tools_dir}/grib_get_data $input > $tempText 2>&1 grep "global num points=6114" $tempText +# Bad -s +set +e +${tools_dir}/grib_get_data -s blah=999 $data_dir/sample.grib2 > $tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Key/value not found" $tempText + +# Bad -p +set +e +${tools_dir}/grib_get_data -f -p values $data_dir/sample.grib2 > $tempText 2>&1 +status=$? +set -e +[ $status -ne 0 ] +grep -q "Passed array is too small" $tempText + # Clean up rm -f $tempText $tempGrib From 04eb644ae66477eecbfc0a5fa26b17059d0fc229 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 27 Aug 2024 10:50:46 +0100 Subject: [PATCH 224/277] ECC-1908: GRIB1: Add new MARS levtype 'abstract levels' --- definitions/grib1/typeOfLevel.def | 2 +- definitions/grib2/templates/template.4.reforecast.def | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/definitions/grib1/typeOfLevel.def b/definitions/grib1/typeOfLevel.def index 1e7219d8e..f5154a706 100644 --- a/definitions/grib1/typeOfLevel.def +++ b/definitions/grib1/typeOfLevel.def @@ -34,5 +34,5 @@ 'depthBelowSea' = {indicatorOfTypeOfLevel=160;} 'entireAtmosphere' = {indicatorOfTypeOfLevel=200;} 'entireOcean' = {indicatorOfTypeOfLevel=201;} -'abstractSingleLevel' = {indicatorOfTypeOfLevel=202;} +'abstractSingleLevel' = {indicatorOfTypeOfLevel=202; level=missing();} 'abstractMultipleLevels' = {indicatorOfTypeOfLevel=203;} diff --git a/definitions/grib2/templates/template.4.reforecast.def b/definitions/grib2/templates/template.4.reforecast.def index a8a431936..15e7c6ec4 100644 --- a/definitions/grib2/templates/template.4.reforecast.def +++ b/definitions/grib2/templates/template.4.reforecast.def @@ -12,5 +12,7 @@ unsigned[1] SecondOfModelVersion = 0: edition_specific; meta modelVersionDate g2date(YearOfModelVersion,MonthOfModelVersion,DayOfModelVersion) : dump; meta modelVersionTime time(HourOfModelVersion, MinuteOfModelVersion, SecondOfModelVersion) : dump; +alias referenceDate = modelVersionDate ; + remove isHindcast; constant isHindcast = 1; From f693e0033a6599e1cd2afac49171d433fcfc826f Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 27 Aug 2024 14:53:26 +0100 Subject: [PATCH 225/277] Feature enabled/disabled --- eccodes_config.h.in | 1 + src/codes_util.cc | 69 ++++++++++++++++++++++++++++++++++++++++ src/eccodes.h | 3 ++ src/eccodes_prototypes.h | 1 + tests/unit_tests.cc | 24 ++++++++++++++ 5 files changed, 98 insertions(+) diff --git a/eccodes_config.h.in b/eccodes_config.h.in index 4432f9a10..29877a3d9 100644 --- a/eccodes_config.h.in +++ b/eccodes_config.h.in @@ -115,6 +115,7 @@ #cmakedefine HAVE_GEOGRAPHY #cmakedefine HAVE_MEMFS +#cmakedefine HAVE_FORTRAN #ifdef HAVE_MEMFS #undef ECCODES_DEFINITION_PATH diff --git a/src/codes_util.cc b/src/codes_util.cc index 9e7507c23..31e301999 100644 --- a/src/codes_util.cc +++ b/src/codes_util.cc @@ -404,3 +404,72 @@ int compute_scaled_value_and_scale_factor( } return err; } + +int codes_is_feature_enabled(const char* feature) +{ + int aec_enabled = 0; + int jpg_enabled = 0; // JasPer and/or OpenJPEG + int png_enabled = 0; + int memfs_enabled = 0; + int posix_threads_enabled = 0; + int omp_threads_enabled = 0; + int netcdf_enabled = 0; + int fortran_enabled = 0; + +#if defined(HAVE_LIBAEC) || defined(HAVE_AEC) + aec_enabled = 1; +#endif +#if HAVE_JPEG + #if HAVE_LIBJASPER + jpg_enabled = 1; + #endif + #if HAVE_LIBOPENJPEG + jpg_enabled = 1; + #endif +#endif +#if defined(HAVE_LIBPNG) + png_enabled = 1; +#endif +#if defined(HAVE_MEMFS) + memfs_enabled = 1; +#endif +#if GRIB_PTHREADS + posix_threads_enabled = 1; +#endif +#if GRIB_OMP_THREADS + omp_threads_enabled= 1; +#endif +#if defined(HAVE_NETCDF) + netcdf_enabled = 1; +#endif +#if defined(HAVE_FORTRAN) + fortran_enabled = 1; +#endif + + if (STR_EQUAL(feature, "AEC") || STR_EQUAL(feature, "CCSDS")) { + return aec_enabled; + } + if (STR_EQUAL(feature, "JPG") || STR_EQUAL(feature, "JPEG")) { + return jpg_enabled; + } + if (STR_EQUAL(feature, "PNG")) { + return png_enabled; + } + if (STR_EQUAL(feature, "MEMFS")) { + return memfs_enabled; + } + if (STR_EQUAL(feature, "ECCODES_THREADS")) { + return posix_threads_enabled; + } + if (STR_EQUAL(feature, "ECCODES_OMP_THREADS")) { + return omp_threads_enabled; + } + if (STR_EQUAL(feature, "NETCDF")) { + return netcdf_enabled; + } + if (STR_EQUAL(feature, "FORTRAN")) { + return fortran_enabled; + } + + return 0; +} diff --git a/src/eccodes.h b/src/eccodes.h index 2c5aff7e2..0b017d6ab 100644 --- a/src/eccodes.h +++ b/src/eccodes.h @@ -1400,6 +1400,9 @@ int codes_get_product_kind(const codes_handle* h, ProductKind* product_kind); int codes_check_message_header(const void* bytes, size_t length, ProductKind product); int codes_check_message_footer(const void* bytes, size_t length, ProductKind product); +/* Features enabled */ +int codes_is_feature_enabled(const char* feature); + /* --------------------------------------- */ #define CODES_UTIL_GRID_SPEC_REGULAR_LL GRIB_UTIL_GRID_SPEC_REGULAR_LL diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index d7479e960..38de12e4b 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -857,6 +857,7 @@ long convert_to_minutes(long step, long stepUnits); bool is_sorted_ascending(double arr[], size_t n); bool is_sorted_descending(double arr[], size_t n); int compute_scaled_value_and_scale_factor(double input, int64_t scaled_value_max, int64_t scale_factor_max, int64_t* ret_value, int64_t* ret_factor); +int codes_is_feature_enabled(const char* feature); /* grib_util.cc */ grib_handle* grib_util_sections_copy(grib_handle* hfrom, grib_handle* hto, int what, int* err); diff --git a/tests/unit_tests.cc b/tests/unit_tests.cc index eedafca1b..5b89bda82 100644 --- a/tests/unit_tests.cc +++ b/tests/unit_tests.cc @@ -282,6 +282,7 @@ static void test_concept_condition_strings() char result[1024] = {0,}; grib_context* context = NULL; grib_handle* h = grib_handle_new_from_samples(context, "GRIB2"); + if (!h) return; err = get_concept_condition_string(h, "typeOfLevel", NULL, result); Assert(!err); @@ -762,6 +763,7 @@ void test_codes_context_set_debug() grib_context_set_debug(context, -1); grib_handle* h = grib_handle_new_from_samples(context, "GRIB2"); + if (!h) return; err = grib_set_long(h, "paramId", 167); Assert(!err); @@ -777,6 +779,27 @@ void test_codes_context_set_debug() grib_context_set_debug(context, 0); } +void test_is_feature_enabled() +{ + printf("Running %s ...\n", __func__); + const char* features[] = { + "AEC", + "MEMFS", + "JPG", + "PNG", + "ECCODES_THREADS", + "ECCODES_OMP_THREADS", + "NETCDF", + "non-existent-feature", + "FORTRAN", + NULL}; + for (int i = 0; features[i]; ++i) { + const char* f = features[i]; + printf("\tFeature %s enabled?\t%d\n", f, codes_is_feature_enabled(f)); + } +} + + int main(int argc, char** argv) { printf("Doing unit tests. ecCodes version = %ld\n", grib_get_api_version()); @@ -841,6 +864,7 @@ int main(int argc, char** argv) test_grib2_select_PDTN(); test_grib2_choose_PDTN(); + test_is_feature_enabled(); return 0; } From a6da895eccdd025e4216133746f3a9ba1776095c Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 27 Aug 2024 16:23:22 +0100 Subject: [PATCH 226/277] Testing: Features --- src/codes_util.cc | 55 ++++++++++++++++++++++++++++++++++++--------- tests/unit_tests.cc | 11 ++++++++- 2 files changed, 55 insertions(+), 11 deletions(-) diff --git a/src/codes_util.cc b/src/codes_util.cc index 31e301999..791fab3ff 100644 --- a/src/codes_util.cc +++ b/src/codes_util.cc @@ -405,26 +405,55 @@ int compute_scaled_value_and_scale_factor( return err; } +#define NUMBER(x) (sizeof(x) / sizeof(x[0])) int codes_is_feature_enabled(const char* feature) { - int aec_enabled = 0; - int jpg_enabled = 0; // JasPer and/or OpenJPEG - int png_enabled = 0; - int memfs_enabled = 0; + int aec_enabled = 0; // or CCSDS + int memfs_enabled = 0; + int jpg_enabled = 0; // JasPer or OpenJPEG or both + int png_enabled = 0; int posix_threads_enabled = 0; - int omp_threads_enabled = 0; - int netcdf_enabled = 0; - int fortran_enabled = 0; + int omp_threads_enabled = 0; + int netcdf_enabled = 0; + int fortran_enabled = 0; + int geography_enabled = 0; + + const char* known_features[] = { + "AEC", + "MEMFS", + "JPG", + "PNG", + "ECCODES_THREADS", + "ECCODES_OMP_THREADS", + "NETCDF", + "FORTRAN", + "GEOGRAPHY" + }; + int found_feature = 0; + for (size_t i = 0; i < NUMBER(known_features); ++i) { + if (STR_EQUAL(feature, known_features[i])) { + found_feature = 1; + break; + } + } + if (!found_feature) { + grib_context* c = grib_context_get_default(); + grib_context_log(c, GRIB_LOG_ERROR, "Unknown feature '%s'. Select one of:", feature); + for (size_t i = 0; i < NUMBER(known_features); ++i) { + grib_context_log(c, GRIB_LOG_ERROR, "\t%s", known_features[i]); + } + return 0; + } #if defined(HAVE_LIBAEC) || defined(HAVE_AEC) aec_enabled = 1; #endif #if HAVE_JPEG #if HAVE_LIBJASPER - jpg_enabled = 1; + jpg_enabled = 1; #endif #if HAVE_LIBOPENJPEG - jpg_enabled = 1; + jpg_enabled = 1; #endif #endif #if defined(HAVE_LIBPNG) @@ -437,7 +466,7 @@ int codes_is_feature_enabled(const char* feature) posix_threads_enabled = 1; #endif #if GRIB_OMP_THREADS - omp_threads_enabled= 1; + omp_threads_enabled = 1; #endif #if defined(HAVE_NETCDF) netcdf_enabled = 1; @@ -445,6 +474,9 @@ int codes_is_feature_enabled(const char* feature) #if defined(HAVE_FORTRAN) fortran_enabled = 1; #endif +#if defined(HAVE_GEOGRAPHY) + geography_enabled = 1; +#endif if (STR_EQUAL(feature, "AEC") || STR_EQUAL(feature, "CCSDS")) { return aec_enabled; @@ -470,6 +502,9 @@ int codes_is_feature_enabled(const char* feature) if (STR_EQUAL(feature, "FORTRAN")) { return fortran_enabled; } + if (STR_EQUAL(feature, "GEOGRAPHY")) { + return geography_enabled; + } return 0; } diff --git a/tests/unit_tests.cc b/tests/unit_tests.cc index 5b89bda82..537595678 100644 --- a/tests/unit_tests.cc +++ b/tests/unit_tests.cc @@ -512,6 +512,13 @@ static void test_parse_keyval_string() free( (void*)values3[0].name ); } +static void test_time_conversions() +{ + printf("Running %s ...\n", __func__); + long result = convert_to_minutes(120, 13); // 120s = 2mins + Assert(result == 2); +} + static void test_dates() { printf("Running %s ...\n", __func__); @@ -790,13 +797,14 @@ void test_is_feature_enabled() "ECCODES_THREADS", "ECCODES_OMP_THREADS", "NETCDF", - "non-existent-feature", "FORTRAN", + "GEOGRAPHY", NULL}; for (int i = 0; features[i]; ++i) { const char* f = features[i]; printf("\tFeature %s enabled?\t%d\n", f, codes_is_feature_enabled(f)); } + Assert( 0 == codes_is_feature_enabled("total rubbish") ); } @@ -819,6 +827,7 @@ int main(int argc, char** argv) test_scale_factor_scaled_values(); test_dates(); + test_time_conversions(); test_logging_proc(); test_print_proc(); test_grib_binary_search(); From c4a8ab1be218f29c01b8be3ce2fd006f29c39d41 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 27 Aug 2024 17:06:17 +0100 Subject: [PATCH 227/277] Cosmetics --- src/eccodes.h | 8 ++++---- src/grib_api.h | 20 +++++++++++--------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/eccodes.h b/src/eccodes.h index 0b017d6ab..ecca55f14 100644 --- a/src/eccodes.h +++ b/src/eccodes.h @@ -809,12 +809,12 @@ int codes_get_float_elements(const codes_handle* h, const char* key, const int* * * @param h : the handle to get the data from * @param key : the key to be searched - * @param mesg : the address of a string where the data will be retrieved + * @param value : the address of a string where the data will be retrieved * @param length : the address of a size_t that contains allocated length of the string on input, * and that contains the actual length of the string on output * @return 0 if OK, integer value on error */ -int codes_get_string(const codes_handle* h, const char* key, char* mesg, size_t* length); +int codes_get_string(const codes_handle* h, const char* key, char* value, size_t* length); /** * Get string array values from a key. If several keys of the same name are present, the last one is returned @@ -910,12 +910,12 @@ int codes_set_double(codes_handle* h, const char* key, double val); * * @param h : the handle to set the data to * @param key : the key to be searched - * @param mesg : the address of a string where the data will be read + * @param value : the address of a string where the data will be read * @param length : the address of a size_t that contains the length of the string on input, * and that contains the actual packed length of the string on output * @return 0 if OK, integer value on error */ -int codes_set_string(codes_handle* h, const char* key, const char* mesg, size_t* length); +int codes_set_string(codes_handle* h, const char* key, const char* value, size_t* length); /** * Set a bytes array from a key. If several keys of the same name are present, the last one is set diff --git a/src/grib_api.h b/src/grib_api.h index cd035ea9b..d39b8c93d 100644 --- a/src/grib_api.h +++ b/src/grib_api.h @@ -815,13 +815,14 @@ int grib_get_float_elements(const grib_handle* h, const char* key, const int* in * Get a string value from a key, if several keys of the same name are present, the last one is returned * @see grib_set_string * - * @param h : the handle to get the data from - * @param key : the key to be searched - * @param mesg : the address of a string where the data will be retrieved - * @param length : the address of a size_t that contains allocated length of the string on input, and that contains the actual length of the string on output - * @return 0 if OK, integer value on error + * @param h : the handle to get the data from + * @param key : the key to be searched + * @param value : the address of a string where the data will be retrieved + * @param length : the address of a size_t that contains allocated length of the string on input, + * and that contains the actual length of the string on output + * @return 0 if OK, integer value on error */ -int grib_get_string(const grib_handle* h, const char* key, char* mesg, size_t* length); +int grib_get_string(const grib_handle* h, const char* key, char* value, size_t* length); /** * Get string array values from a key. If several keys of the same name are present, the last one is returned @@ -912,11 +913,12 @@ int grib_set_double(grib_handle* h, const char* key, double val); * * @param h : the handle to set the data to * @param key : the key to be searched - * @param mesg : the address of a string where the data will be read - * @param length : the address of a size_t that contains the length of the string on input, and that contains the actual packed length of the string on output + * @param value : the address of a string where the data will be read + * @param length : the address of a size_t that contains the length of the string on input, + * and that contains the actual packed length of the string on output * @return 0 if OK, integer value on error */ -int grib_set_string(grib_handle* h, const char* key, const char* mesg, size_t* length); +int grib_set_string(grib_handle* h, const char* key, const char* value, size_t* length); /** * Set a bytes array from a key. If several keys of the same name are present, the last one is set From ccdd815841756208be718a45ede9af63c82396fb Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 27 Aug 2024 17:48:39 +0100 Subject: [PATCH 228/277] Features: List of enabled ones --- src/codes_util.cc | 48 ++++++++++++++++++++++++++++------------ src/eccodes.h | 3 ++- src/eccodes_prototypes.h | 2 ++ tests/unit_tests.cc | 12 ++++++++++ 4 files changed, 50 insertions(+), 15 deletions(-) diff --git a/src/codes_util.cc b/src/codes_util.cc index 791fab3ff..78f0ca6fd 100644 --- a/src/codes_util.cc +++ b/src/codes_util.cc @@ -405,6 +405,18 @@ int compute_scaled_value_and_scale_factor( return err; } +static const char* known_features[] = { + "AEC", + "MEMFS", + "JPG", + "PNG", + "ECCODES_THREADS", + "ECCODES_OMP_THREADS", + "NETCDF", + "FORTRAN", + "GEOGRAPHY" +}; + #define NUMBER(x) (sizeof(x) / sizeof(x[0])) int codes_is_feature_enabled(const char* feature) { @@ -418,19 +430,9 @@ int codes_is_feature_enabled(const char* feature) int fortran_enabled = 0; int geography_enabled = 0; - const char* known_features[] = { - "AEC", - "MEMFS", - "JPG", - "PNG", - "ECCODES_THREADS", - "ECCODES_OMP_THREADS", - "NETCDF", - "FORTRAN", - "GEOGRAPHY" - }; int found_feature = 0; - for (size_t i = 0; i < NUMBER(known_features); ++i) { + const size_t num = NUMBER(known_features); + for (size_t i = 0; i < num; ++i) { if (STR_EQUAL(feature, known_features[i])) { found_feature = 1; break; @@ -439,7 +441,7 @@ int codes_is_feature_enabled(const char* feature) if (!found_feature) { grib_context* c = grib_context_get_default(); grib_context_log(c, GRIB_LOG_ERROR, "Unknown feature '%s'. Select one of:", feature); - for (size_t i = 0; i < NUMBER(known_features); ++i) { + for (size_t i = 0; i < num; ++i) { grib_context_log(c, GRIB_LOG_ERROR, "\t%s", known_features[i]); } return 0; @@ -456,7 +458,7 @@ int codes_is_feature_enabled(const char* feature) jpg_enabled = 1; #endif #endif -#if defined(HAVE_LIBPNG) +#if HAVE_LIBPNG png_enabled = 1; #endif #if defined(HAVE_MEMFS) @@ -508,3 +510,21 @@ int codes_is_feature_enabled(const char* feature) return 0; } + +int codes_enabled_features(char* result, size_t* length) +{ + const size_t num = NUMBER(known_features); + for (size_t i = 0; i < num; ++i) { + if (codes_is_feature_enabled(known_features[i])) { + strcat(result, known_features[i]); + strcat(result, " "); + } + } + + const size_t actual_length = strlen(result); + if (result[actual_length - 1] == ' ') + result[actual_length - 1] = '\0'; + Assert(*length >= actual_length); + *length = actual_length; + return GRIB_SUCCESS; +} diff --git a/src/eccodes.h b/src/eccodes.h index ecca55f14..18d8b4ce8 100644 --- a/src/eccodes.h +++ b/src/eccodes.h @@ -1402,7 +1402,8 @@ int codes_check_message_footer(const void* bytes, size_t length, ProductKind pro /* Features enabled */ int codes_is_feature_enabled(const char* feature); - +/* result must be allocated by the caller and its length must be large enough */ +int codes_enabled_features(char* result, size_t* length); /* --------------------------------------- */ #define CODES_UTIL_GRID_SPEC_REGULAR_LL GRIB_UTIL_GRID_SPEC_REGULAR_LL diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 38de12e4b..8e7d1e9ab 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -858,6 +858,8 @@ bool is_sorted_ascending(double arr[], size_t n); bool is_sorted_descending(double arr[], size_t n); int compute_scaled_value_and_scale_factor(double input, int64_t scaled_value_max, int64_t scale_factor_max, int64_t* ret_value, int64_t* ret_factor); int codes_is_feature_enabled(const char* feature); +int codes_enabled_features(char* result, size_t* length); + /* grib_util.cc */ grib_handle* grib_util_sections_copy(grib_handle* hfrom, grib_handle* hto, int what, int* err); diff --git a/tests/unit_tests.cc b/tests/unit_tests.cc index 537595678..f78b39c19 100644 --- a/tests/unit_tests.cc +++ b/tests/unit_tests.cc @@ -807,6 +807,17 @@ void test_is_feature_enabled() Assert( 0 == codes_is_feature_enabled("total rubbish") ); } +void test_codes_enabled_features() +{ + printf("Running %s ...\n", __func__); + + size_t len = 512; + char* features = (char*)malloc(len * sizeof(char)); + int err = codes_enabled_features(features, &len); + Assert(!err); + printf("\tEnabled features are: '%s'\n", features); + free(features); +} int main(int argc, char** argv) { @@ -874,6 +885,7 @@ int main(int argc, char** argv) test_grib2_select_PDTN(); test_grib2_choose_PDTN(); test_is_feature_enabled(); + test_codes_enabled_features(); return 0; } From 3badf331697af2fdb6e82026c0f210306f4aa38e Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 27 Aug 2024 20:13:37 +0100 Subject: [PATCH 229/277] Compiler warnings --- src/codes_util.cc | 9 +++++---- src/eccodes.h | 2 +- src/eccodes_prototypes.h | 6 +++--- tests/unit_tests.cc | 12 ++++++------ 4 files changed, 15 insertions(+), 14 deletions(-) diff --git a/src/codes_util.cc b/src/codes_util.cc index 78f0ca6fd..5db7062bc 100644 --- a/src/codes_util.cc +++ b/src/codes_util.cc @@ -279,7 +279,7 @@ long convert_to_minutes(long step, long stepUnits) return (long)result; } -bool is_sorted_ascending(double arr[], size_t n) +bool is_sorted_ascending(const double arr[], size_t n) { for (size_t i = 0; i < n-1; i++) { if (arr[i] > arr[i+1]) { @@ -289,7 +289,7 @@ bool is_sorted_ascending(double arr[], size_t n) return true; } -bool is_sorted_descending(double arr[], size_t n) +bool is_sorted_descending(const double arr[], size_t n) { for (size_t i = 0; i < n-1; i++) { if (arr[i] < arr[i+1]) { @@ -439,7 +439,7 @@ int codes_is_feature_enabled(const char* feature) } } if (!found_feature) { - grib_context* c = grib_context_get_default(); + const grib_context* c = grib_context_get_default(); grib_context_log(c, GRIB_LOG_ERROR, "Unknown feature '%s'. Select one of:", feature); for (size_t i = 0; i < num; ++i) { grib_context_log(c, GRIB_LOG_ERROR, "\t%s", known_features[i]); @@ -511,9 +511,10 @@ int codes_is_feature_enabled(const char* feature) return 0; } -int codes_enabled_features(char* result, size_t* length) +int codes_get_enabled_features(char* result, size_t* length) { const size_t num = NUMBER(known_features); + result[0] = '\0'; for (size_t i = 0; i < num; ++i) { if (codes_is_feature_enabled(known_features[i])) { strcat(result, known_features[i]); diff --git a/src/eccodes.h b/src/eccodes.h index 18d8b4ce8..3ee2df115 100644 --- a/src/eccodes.h +++ b/src/eccodes.h @@ -1403,7 +1403,7 @@ int codes_check_message_footer(const void* bytes, size_t length, ProductKind pro /* Features enabled */ int codes_is_feature_enabled(const char* feature); /* result must be allocated by the caller and its length must be large enough */ -int codes_enabled_features(char* result, size_t* length); +int codes_get_enabled_features(char* result, size_t* length); /* --------------------------------------- */ #define CODES_UTIL_GRID_SPEC_REGULAR_LL GRIB_UTIL_GRID_SPEC_REGULAR_LL diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 8e7d1e9ab..36ad16e75 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -854,11 +854,11 @@ int codes_flush_sync_close_file(FILE* f); int is_date_valid(long year, long month, long day, long hour, long minute, double second); int is_time_valid(long number); // number is HHMM long convert_to_minutes(long step, long stepUnits); -bool is_sorted_ascending(double arr[], size_t n); -bool is_sorted_descending(double arr[], size_t n); +bool is_sorted_ascending(const double arr[], size_t n); +bool is_sorted_descending(const double arr[], size_t n); int compute_scaled_value_and_scale_factor(double input, int64_t scaled_value_max, int64_t scale_factor_max, int64_t* ret_value, int64_t* ret_factor); int codes_is_feature_enabled(const char* feature); -int codes_enabled_features(char* result, size_t* length); +int codes_get_enabled_features(char* result, size_t* length); /* grib_util.cc */ diff --git a/tests/unit_tests.cc b/tests/unit_tests.cc index f78b39c19..adc3f6008 100644 --- a/tests/unit_tests.cc +++ b/tests/unit_tests.cc @@ -786,7 +786,7 @@ void test_codes_context_set_debug() grib_context_set_debug(context, 0); } -void test_is_feature_enabled() +void test_codes_is_feature_enabled() { printf("Running %s ...\n", __func__); const char* features[] = { @@ -807,13 +807,13 @@ void test_is_feature_enabled() Assert( 0 == codes_is_feature_enabled("total rubbish") ); } -void test_codes_enabled_features() +void test_codes_get_enabled_features() { printf("Running %s ...\n", __func__); size_t len = 512; - char* features = (char*)malloc(len * sizeof(char)); - int err = codes_enabled_features(features, &len); + char* features = (char*)calloc(len, sizeof(char)); + int err = codes_get_enabled_features(features, &len); Assert(!err); printf("\tEnabled features are: '%s'\n", features); free(features); @@ -884,8 +884,8 @@ int main(int argc, char** argv) test_grib2_select_PDTN(); test_grib2_choose_PDTN(); - test_is_feature_enabled(); - test_codes_enabled_features(); + test_codes_is_feature_enabled(); + test_codes_get_enabled_features(); return 0; } From 5880696173c9e28b2332e16bf1a8a4bb73237c1e Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 28 Aug 2024 11:28:46 +0100 Subject: [PATCH 230/277] Features: Rework --- src/codes_util.cc | 21 +++++++++++++++++++-- src/eccodes.h | 10 +++++++--- src/eccodes_prototypes.h | 2 +- tests/unit_tests.cc | 15 ++++++++++++--- 4 files changed, 39 insertions(+), 9 deletions(-) diff --git a/src/codes_util.cc b/src/codes_util.cc index 5db7062bc..6483c85f4 100644 --- a/src/codes_util.cc +++ b/src/codes_util.cc @@ -9,6 +9,7 @@ */ #include "grib_api_internal.h" +#include "eccodes.h" // Input lon must be in degrees not radians // Not to be used for latitudes as they can be -ve @@ -511,20 +512,36 @@ int codes_is_feature_enabled(const char* feature) return 0; } -int codes_get_enabled_features(char* result, size_t* length) +int codes_get_features(char* result, size_t* length, int select) { + Assert(select == CODES_FEATURES_ALL || select == CODES_FEATURES_ENABLED || select == CODES_FEATURES_DISABLED); + const size_t num = NUMBER(known_features); result[0] = '\0'; for (size_t i = 0; i < num; ++i) { - if (codes_is_feature_enabled(known_features[i])) { + if (select == CODES_FEATURES_ALL) { strcat(result, known_features[i]); strcat(result, " "); } + else if (select == CODES_FEATURES_ENABLED) { + if (codes_is_feature_enabled(known_features[i])) { + strcat(result, known_features[i]); + strcat(result, " "); + } + } + else if (select == CODES_FEATURES_DISABLED) { + if (!codes_is_feature_enabled(known_features[i])) { + strcat(result, known_features[i]); + strcat(result, " "); + } + } } const size_t actual_length = strlen(result); if (result[actual_length - 1] == ' ') result[actual_length - 1] = '\0'; + + printf("actual = %zu arg=%zu \n", actual_length, *length); Assert(*length >= actual_length); *length = actual_length; return GRIB_SUCCESS; diff --git a/src/eccodes.h b/src/eccodes.h index 3ee2df115..476f9039b 100644 --- a/src/eccodes.h +++ b/src/eccodes.h @@ -1400,10 +1400,14 @@ int codes_get_product_kind(const codes_handle* h, ProductKind* product_kind); int codes_check_message_header(const void* bytes, size_t length, ProductKind product); int codes_check_message_footer(const void* bytes, size_t length, ProductKind product); -/* Features enabled */ +/* Features */ +#define CODES_FEATURES_ALL 0 +#define CODES_FEATURES_ENABLED 1 +#define CODES_FEATURES_DISABLED 2 int codes_is_feature_enabled(const char* feature); -/* result must be allocated by the caller and its length must be large enough */ -int codes_get_enabled_features(char* result, size_t* length); +/* result is a space-separated list of features and + must be allocated by the caller (its length must be large enough) */ +int codes_get_features(char* result, size_t* length, int select); /* --------------------------------------- */ #define CODES_UTIL_GRID_SPEC_REGULAR_LL GRIB_UTIL_GRID_SPEC_REGULAR_LL diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 36ad16e75..287f3e5d9 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -858,7 +858,7 @@ bool is_sorted_ascending(const double arr[], size_t n); bool is_sorted_descending(const double arr[], size_t n); int compute_scaled_value_and_scale_factor(double input, int64_t scaled_value_max, int64_t scale_factor_max, int64_t* ret_value, int64_t* ret_factor); int codes_is_feature_enabled(const char* feature); -int codes_get_enabled_features(char* result, size_t* length); +int codes_get_features(char* result, size_t* length, int select); /* grib_util.cc */ diff --git a/tests/unit_tests.cc b/tests/unit_tests.cc index adc3f6008..16e00394c 100644 --- a/tests/unit_tests.cc +++ b/tests/unit_tests.cc @@ -807,15 +807,24 @@ void test_codes_is_feature_enabled() Assert( 0 == codes_is_feature_enabled("total rubbish") ); } -void test_codes_get_enabled_features() +void test_codes_get_features() { printf("Running %s ...\n", __func__); size_t len = 512; char* features = (char*)calloc(len, sizeof(char)); - int err = codes_get_enabled_features(features, &len); + int err = codes_get_features(features, &len, CODES_FEATURES_ALL); Assert(!err); + printf("\tFeatures are: '%s'\n", features); + + len = 512; + err = codes_get_features(features, &len, CODES_FEATURES_ENABLED); printf("\tEnabled features are: '%s'\n", features); + + len = 512; + err = codes_get_features(features, &len, CODES_FEATURES_DISABLED); + printf("\tDisabled features are: '%s'\n", features); + free(features); } @@ -885,7 +894,7 @@ int main(int argc, char** argv) test_grib2_select_PDTN(); test_grib2_choose_PDTN(); test_codes_is_feature_enabled(); - test_codes_get_enabled_features(); + test_codes_get_features(); return 0; } From 987b0d612dd536b55906d7cb22c0d236ca6ade30 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 28 Aug 2024 11:44:04 +0100 Subject: [PATCH 231/277] Cosmetics --- examples/extra/f_clone.f90 | 3 +-- src/accessor/grib_accessor.h | 2 +- src/codes_util.cc | 3 +-- src/grib_iterator_class_lambert_conformal.cc | 2 +- 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/examples/extra/f_clone.f90 b/examples/extra/f_clone.f90 index 7eedd1dfe..f9552d0c1 100755 --- a/examples/extra/f_clone.f90 +++ b/examples/extra/f_clone.f90 @@ -6,10 +6,9 @@ ! In applying this licence, ECMWF does not waive the privileges and immunities granted to it by ! virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. ! -! Description: how to create a new GRIB message by cloning +! Description: how to create a new GRIB message by cloning ! an existing message. ! -! ! Author: Cristian D. Codorean ! ! diff --git a/src/accessor/grib_accessor.h b/src/accessor/grib_accessor.h index 7fe8aad19..b305bc045 100644 --- a/src/accessor/grib_accessor.h +++ b/src/accessor/grib_accessor.h @@ -16,7 +16,7 @@ class grib_accessor { public: - grib_accessor() : + grib_accessor() : name(nullptr), name_space(nullptr), context(nullptr), h(nullptr), creator(nullptr), length(0), offset(0), parent(nullptr), next_(nullptr), previous_(nullptr), cclass(nullptr), flags(0), sub_section(nullptr), dirty(0), same(nullptr), loop(0), vvalue(nullptr), diff --git a/src/codes_util.cc b/src/codes_util.cc index 6483c85f4..bb705b335 100644 --- a/src/codes_util.cc +++ b/src/codes_util.cc @@ -540,8 +540,7 @@ int codes_get_features(char* result, size_t* length, int select) const size_t actual_length = strlen(result); if (result[actual_length - 1] == ' ') result[actual_length - 1] = '\0'; - - printf("actual = %zu arg=%zu \n", actual_length, *length); + Assert(*length >= actual_length); *length = actual_length; return GRIB_SUCCESS; diff --git a/src/grib_iterator_class_lambert_conformal.cc b/src/grib_iterator_class_lambert_conformal.cc index fe261b5be..fa002c18b 100644 --- a/src/grib_iterator_class_lambert_conformal.cc +++ b/src/grib_iterator_class_lambert_conformal.cc @@ -295,7 +295,7 @@ static int init_oblate(const grib_handle* h, double ns; // ratio of angle between meridian double F; // flattening of ellipsoid - double rh; // height above ellipsoid + double rh; // height above ellipsoid double sin_po; // sin value double cos_po; // cos value double con; // temporary variable From 8b639e4a30bbfac76e5f4eca02d7c3b16482d5f2 Mon Sep 17 00:00:00 2001 From: Iain Russell <40060766+iainrussell@users.noreply.github.com> Date: Thu, 29 Aug 2024 08:41:16 +0100 Subject: [PATCH 232/277] Add debian 12 to deployment tests in nightly.yml --- .github/workflows/nightly.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index d114942b6..082dab058 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -69,6 +69,8 @@ jobs: secrets: url_debian_11: ${{ secrets.NEXUS_TEST_REPO_NIGHTLY_URL_DEBIAN_11 }} token_debian_11: ${{ secrets.NEXUS_TEST_REPO_UPLOAD_TOKEN }} + url_debian_12: ${{ secrets.NEXUS_TEST_REPO_URL_DEBIAN_12 }} + token_debian_12: ${{ secrets.NEXUS_TEST_REPO_UPLOAD_TOKEN }} url_centos_7: ${{ secrets.NEXUS_TEST_REPO_NIGHTLY_URL_CENTOS_7 }} token_centos_7: ${{ secrets.NEXUS_TEST_REPO_UPLOAD_TOKEN }} url_rocky_8: ${{ secrets.NEXUS_TEST_REPO_NIGHTLY_URL_ROCKY_8 }} From f832945ad80d934f70f4bd4e2ee3f52a7184d39c Mon Sep 17 00:00:00 2001 From: Matthew Griffith Date: Wed, 28 Aug 2024 16:43:38 +0000 Subject: [PATCH 233/277] ECC-1912: First try based on generalisation approach. --- definitions/grib2/templates/template.4.statistical.def | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/definitions/grib2/templates/template.4.statistical.def b/definitions/grib2/templates/template.4.statistical.def index a98b8f212..fde76eba3 100644 --- a/definitions/grib2/templates/template.4.statistical.def +++ b/definitions/grib2/templates/template.4.statistical.def @@ -54,12 +54,9 @@ statisticalProcessesList list(numberOfTimeRanges) if (numberOfTimeRanges == 1 || numberOfTimeRanges == 2) { concept stepTypeInternal { "instant" = {typeOfStatisticalProcessing=255;} - "avg" = {typeOfStatisticalProcessing=0;typeOfTimeIncrement=255;} - "avg" = {typeOfStatisticalProcessing=0;typeOfTimeIncrement=2;} - "avg" = {typeOfStatisticalProcessing=0;typeOfTimeIncrement=3;} + "avg" = {typeOfStatisticalProcessing=0;} "avgd" = {typeOfStatisticalProcessing=0;typeOfTimeIncrement=1;} - "accum" = {typeOfStatisticalProcessing=1;typeOfTimeIncrement=255;} - "accum" = {typeOfStatisticalProcessing=1;typeOfTimeIncrement=2;} + "accum" = {typeOfStatisticalProcessing=1;} "max" = {typeOfStatisticalProcessing=2;} "min" = {typeOfStatisticalProcessing=3;} "diff" = {typeOfStatisticalProcessing=4;} # end-start From fd3836312f1b1cc51698d3e724a4fbc4d6ce33d2 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 29 Aug 2024 08:54:50 +0100 Subject: [PATCH 234/277] ECC-1912: Fix test --- tests/grib_step.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/grib_step.sh b/tests/grib_step.sh index 0e0ddebda..9fc7f9abe 100755 --- a/tests/grib_step.sh +++ b/tests/grib_step.sh @@ -128,7 +128,7 @@ grib_check_key_equals $temp typeOfTimeIncrement 2 ${tools_dir}/grib_set -s stepType=avg,typeOfTimeIncrement=255 $grib2_sample $temp grib_check_key_equals $temp stepType avg ${tools_dir}/grib_set -s stepType=avg $grib2_sample $temp -grib_check_key_equals $temp typeOfTimeIncrement 3 +grib_check_key_equals $temp typeOfTimeIncrement 2 # default is 2 # Decode/Encode stepRange as an int and double ${tools_dir}/grib_set -s stepType=accum,stepRange=23-28 $grib2_sample $temp From 67cb699e08abbce9dd2e0d0f3c8e51ce2fbc882a Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 30 Aug 2024 15:26:40 +0100 Subject: [PATCH 235/277] Testing: Move longish tests from basic to extra --- tests/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 1ed68cfc6..40c1b2f2b 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -99,7 +99,6 @@ if( HAVE_BUILD_TOOLS ) grib_calendar grib_md5 grib_cfNames - grib_ifsParam grib_packing_order filter_substr filter_contains @@ -107,7 +106,6 @@ if( HAVE_BUILD_TOOLS ) filter_is_one_of filter_is_in_list filter_transient_darray - grib_uerra grib_ecpoint grib_s2s grib_fire @@ -190,9 +188,11 @@ if( HAVE_BUILD_TOOLS ) grib_partial_message grib_true_imagery grib_headers_only + grib_uerra grib_unpack_subarray grib_count grib_clone_headers_only + grib_ifsParam wmo_read_bufr_from_file wmo_read_gts_from_file wmo_read_any_from_file From 1f8206a1111b11cd7390db1351940df9c0d914de Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 30 Aug 2024 15:27:35 +0100 Subject: [PATCH 236/277] Compiler warnings --- src/action.class | 21 +++++++++------------ src/action_class_alias.cc | 21 +++++++++------------ src/action_class_assert.cc | 21 +++++++++------------ src/action_class_close.cc | 21 +++++++++------------ src/action_class_concept.cc | 21 +++++++++------------ src/action_class_gen.cc | 21 +++++++++------------ src/action_class_hash_array.cc | 21 +++++++++------------ src/action_class_if.cc | 21 +++++++++------------ src/action_class_list.cc | 21 +++++++++------------ src/action_class_meta.cc | 21 +++++++++------------ src/action_class_modify.cc | 21 +++++++++------------ src/action_class_noop.cc | 21 +++++++++------------ src/action_class_print.cc | 21 +++++++++------------ src/action_class_remove.cc | 21 +++++++++------------ src/action_class_rename.cc | 21 +++++++++------------ src/action_class_section.cc | 21 +++++++++------------ src/action_class_set.cc | 21 +++++++++------------ src/action_class_set_darray.cc | 21 +++++++++------------ src/action_class_set_missing.cc | 21 +++++++++------------ src/action_class_set_sarray.cc | 21 +++++++++------------ src/action_class_switch.cc | 21 +++++++++------------ src/action_class_template.cc | 21 +++++++++------------ src/action_class_transient_darray.cc | 21 +++++++++------------ src/action_class_variable.cc | 21 +++++++++------------ src/action_class_when.cc | 21 +++++++++------------ src/action_class_write.cc | 21 +++++++++------------ src/expression.class | 12 ++++++------ src/grib_accessor_class.cc | 2 +- src/grib_context.cc | 11 +++++------ src/grib_expression_class_accessor.cc | 12 ++++++------ src/grib_expression_class_binop.cc | 12 ++++++------ src/grib_expression_class_double.cc | 12 ++++++------ src/grib_expression_class_functor.cc | 12 ++++++------ src/grib_expression_class_is_in_dict.cc | 12 ++++++------ src/grib_expression_class_is_in_list.cc | 12 ++++++------ src/grib_expression_class_is_integer.cc | 12 ++++++------ src/grib_expression_class_length.cc | 12 ++++++------ src/grib_expression_class_logical_and.cc | 12 ++++++------ src/grib_expression_class_logical_or.cc | 12 ++++++------ src/grib_expression_class_long.cc | 12 ++++++------ src/grib_expression_class_string.cc | 12 ++++++------ src/grib_expression_class_string_compare.cc | 12 ++++++------ src/grib_expression_class_sub_string.cc | 12 ++++++------ src/grib_expression_class_true.cc | 12 ++++++------ src/grib_expression_class_unop.cc | 12 ++++++------ 45 files changed, 342 insertions(+), 421 deletions(-) diff --git a/src/action.class b/src/action.class index 772c328c6..704079e07 100644 --- a/src/action.class +++ b/src/action.class @@ -17,20 +17,17 @@ MEMBERS extern grib_action_class* SUPER; static grib_action_class _grib_action_class_NAME = { - &SUPER, /* super */ - "action_class_NAME", /* name */ - sizeof(grib_action_NAME), /* size */ - 0, /* inited */ + &SUPER, /* super */ + "action_class_NAME", /* name */ + sizeof(grib_action_NAME), /* size */ + 0, /* inited */ &init_class, /* init_class */ - &init, /* init */ + &init, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - &xref, /* xref */ - - &create_accessor, /* create_accessor*/ - - ¬ify_change, /* notify_change */ + &dump, /* dump */ + &xref, /* xref */ + &create_accessor, /* create_accessor */ + ¬ify_change, /* notify_change */ &reparse, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_alias.cc b/src/action_class_alias.cc index bcc2f799c..1659bc38c 100644 --- a/src/action_class_alias.cc +++ b/src/action_class_alias.cc @@ -49,20 +49,17 @@ typedef struct grib_action_alias { static grib_action_class _grib_action_class_alias = { - 0, /* super */ - "action_class_alias", /* name */ - sizeof(grib_action_alias), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_alias", /* name */ + sizeof(grib_action_alias), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - &create_accessor, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + &create_accessor, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_assert.cc b/src/action_class_assert.cc index b19330505..bc449c7ab 100644 --- a/src/action_class_assert.cc +++ b/src/action_class_assert.cc @@ -49,20 +49,17 @@ typedef struct grib_action_assert { static grib_action_class _grib_action_class_assert = { - 0, /* super */ - "action_class_assert", /* name */ - sizeof(grib_action_assert), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_assert", /* name */ + sizeof(grib_action_assert), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - &create_accessor, /* create_accessor*/ - - ¬ify_change, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + &create_accessor, /* create_accessor */ + ¬ify_change, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_close.cc b/src/action_class_close.cc index dfe635890..00108c607 100644 --- a/src/action_class_close.cc +++ b/src/action_class_close.cc @@ -43,20 +43,17 @@ typedef struct grib_action_close { static grib_action_class _grib_action_class_close = { - 0, /* super */ - "action_class_close", /* name */ - sizeof(grib_action_close), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_close", /* name */ + sizeof(grib_action_close), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - 0, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + 0, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_concept.cc b/src/action_class_concept.cc index fa639c54c..9799632ce 100644 --- a/src/action_class_concept.cc +++ b/src/action_class_concept.cc @@ -60,20 +60,17 @@ typedef struct grib_action_concept { extern grib_action_class* grib_action_class_gen; static grib_action_class _grib_action_class_concept = { - &grib_action_class_gen, /* super */ - "action_class_concept", /* name */ - sizeof(grib_action_concept), /* size */ - 0, /* inited */ + &grib_action_class_gen, /* super */ + "action_class_concept", /* name */ + sizeof(grib_action_concept), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_gen.cc b/src/action_class_gen.cc index 722391c7f..d4b7e11a8 100644 --- a/src/action_class_gen.cc +++ b/src/action_class_gen.cc @@ -54,20 +54,17 @@ typedef struct grib_action_gen { static grib_action_class _grib_action_class_gen = { - 0, /* super */ - "action_class_gen", /* name */ - sizeof(grib_action_gen), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_gen", /* name */ + sizeof(grib_action_gen), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - &create_accessor, /* create_accessor*/ - - ¬ify_change, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + &create_accessor, /* create_accessor */ + ¬ify_change, /* notify_change */ 0, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_hash_array.cc b/src/action_class_hash_array.cc index 9a61f9e56..55e87ddda 100644 --- a/src/action_class_hash_array.cc +++ b/src/action_class_hash_array.cc @@ -61,20 +61,17 @@ typedef struct grib_action_hash_array { extern grib_action_class* grib_action_class_gen; static grib_action_class _grib_action_class_hash_array = { - &grib_action_class_gen, /* super */ - "action_class_hash_array", /* name */ - sizeof(grib_action_hash_array), /* size */ - 0, /* inited */ + &grib_action_class_gen, /* super */ + "action_class_hash_array", /* name */ + sizeof(grib_action_hash_array), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_if.cc b/src/action_class_if.cc index 8a07b901b..3fd8b1ec9 100644 --- a/src/action_class_if.cc +++ b/src/action_class_if.cc @@ -61,20 +61,17 @@ typedef struct grib_action_if { extern grib_action_class* grib_action_class_section; static grib_action_class _grib_action_class_if = { - &grib_action_class_section, /* super */ - "action_class_if", /* name */ - sizeof(grib_action_if), /* size */ - 0, /* inited */ + &grib_action_class_section, /* super */ + "action_class_if", /* name */ + sizeof(grib_action_if), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - &create_accessor, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + &create_accessor, /* create_accessor */ + 0, /* notify_change */ &reparse, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_list.cc b/src/action_class_list.cc index 163a6da55..1475487ee 100644 --- a/src/action_class_list.cc +++ b/src/action_class_list.cc @@ -56,20 +56,17 @@ typedef struct grib_action_list { extern grib_action_class* grib_action_class_section; static grib_action_class _grib_action_class_list = { - &grib_action_class_section, /* super */ - "action_class_list", /* name */ - sizeof(grib_action_list), /* size */ - 0, /* inited */ + &grib_action_class_section, /* super */ + "action_class_list", /* name */ + sizeof(grib_action_list), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - &create_accessor, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + &create_accessor, /* create_accessor */ + 0, /* notify_change */ &reparse, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_meta.cc b/src/action_class_meta.cc index 3b5c375eb..7164593e7 100644 --- a/src/action_class_meta.cc +++ b/src/action_class_meta.cc @@ -51,20 +51,17 @@ typedef struct grib_action_meta { extern grib_action_class* grib_action_class_gen; static grib_action_class _grib_action_class_meta = { - &grib_action_class_gen, /* super */ - "action_class_meta", /* name */ - sizeof(grib_action_meta), /* size */ - 0, /* inited */ + &grib_action_class_gen, /* super */ + "action_class_meta", /* name */ + sizeof(grib_action_meta), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ 0, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_modify.cc b/src/action_class_modify.cc index cc5795559..28ceed17e 100644 --- a/src/action_class_modify.cc +++ b/src/action_class_modify.cc @@ -49,20 +49,17 @@ typedef struct grib_action_modify { static grib_action_class _grib_action_class_modify = { - 0, /* super */ - "action_class_modify", /* name */ - sizeof(grib_action_modify), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_modify", /* name */ + sizeof(grib_action_modify), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - 0, /* dump */ - 0, /* xref */ - - &create_accessor, /* create_accessor*/ - - 0, /* notify_change */ + 0, /* dump */ + 0, /* xref */ + &create_accessor, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_noop.cc b/src/action_class_noop.cc index aa5196a46..2b7c1ab62 100644 --- a/src/action_class_noop.cc +++ b/src/action_class_noop.cc @@ -44,20 +44,17 @@ typedef struct grib_action_noop { static grib_action_class _grib_action_class_noop = { - 0, /* super */ - "action_class_noop", /* name */ - sizeof(grib_action_noop), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_noop", /* name */ + sizeof(grib_action_noop), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - 0, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + 0, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_print.cc b/src/action_class_print.cc index 0286c636f..c96e6e22c 100644 --- a/src/action_class_print.cc +++ b/src/action_class_print.cc @@ -48,20 +48,17 @@ typedef struct grib_action_print { static grib_action_class _grib_action_class_print = { - 0, /* super */ - "action_class_print", /* name */ - sizeof(grib_action_print), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_print", /* name */ + sizeof(grib_action_print), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - 0, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + 0, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_remove.cc b/src/action_class_remove.cc index eff91cdce..c64d8ff50 100644 --- a/src/action_class_remove.cc +++ b/src/action_class_remove.cc @@ -49,20 +49,17 @@ typedef struct grib_action_remove { static grib_action_class _grib_action_class_remove = { - 0, /* super */ - "action_class_remove", /* name */ - sizeof(grib_action_remove), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_remove", /* name */ + sizeof(grib_action_remove), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - &create_accessor, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + &create_accessor, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_rename.cc b/src/action_class_rename.cc index 3fb65a704..49a734bd2 100644 --- a/src/action_class_rename.cc +++ b/src/action_class_rename.cc @@ -51,20 +51,17 @@ typedef struct grib_action_rename { static grib_action_class _grib_action_class_rename = { - 0, /* super */ - "action_class_rename", /* name */ - sizeof(grib_action_rename), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_rename", /* name */ + sizeof(grib_action_rename), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - &create_accessor, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + &create_accessor, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_section.cc b/src/action_class_section.cc index 9dda3dc30..0602bbfcf 100644 --- a/src/action_class_section.cc +++ b/src/action_class_section.cc @@ -44,20 +44,17 @@ typedef struct grib_action_section { static grib_action_class _grib_action_class_section = { - 0, /* super */ - "action_class_section", /* name */ - sizeof(grib_action_section), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_section", /* name */ + sizeof(grib_action_section), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ 0, /* destroy */ - - 0, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - ¬ify_change, /* notify_change */ + 0, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + ¬ify_change, /* notify_change */ 0, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_set.cc b/src/action_class_set.cc index fee2ca406..799bd6be1 100644 --- a/src/action_class_set.cc +++ b/src/action_class_set.cc @@ -49,20 +49,17 @@ typedef struct grib_action_set { static grib_action_class _grib_action_class_set = { - 0, /* super */ - "action_class_set", /* name */ - sizeof(grib_action_set), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_set", /* name */ + sizeof(grib_action_set), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_set_darray.cc b/src/action_class_set_darray.cc index bbf36f1d6..33ab219f1 100644 --- a/src/action_class_set_darray.cc +++ b/src/action_class_set_darray.cc @@ -47,20 +47,17 @@ typedef struct grib_action_set_darray { static grib_action_class _grib_action_class_set_darray = { - 0, /* super */ - "action_class_set_darray", /* name */ - sizeof(grib_action_set_darray), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_set_darray", /* name */ + sizeof(grib_action_set_darray), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_set_missing.cc b/src/action_class_set_missing.cc index 03bd4ffc3..0907c3760 100644 --- a/src/action_class_set_missing.cc +++ b/src/action_class_set_missing.cc @@ -45,20 +45,17 @@ typedef struct grib_action_set_missing { static grib_action_class _grib_action_class_set_missing = { - 0, /* super */ - "action_class_set_missing", /* name */ - sizeof(grib_action_set_missing), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_set_missing", /* name */ + sizeof(grib_action_set_missing), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_set_sarray.cc b/src/action_class_set_sarray.cc index bc51c2475..50626a0a9 100644 --- a/src/action_class_set_sarray.cc +++ b/src/action_class_set_sarray.cc @@ -47,20 +47,17 @@ typedef struct grib_action_set_sarray { static grib_action_class _grib_action_class_set_sarray = { - 0, /* super */ - "action_class_set_sarray", /* name */ - sizeof(grib_action_set_sarray), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_set_sarray", /* name */ + sizeof(grib_action_set_sarray), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_switch.cc b/src/action_class_switch.cc index fa58071ce..547149987 100644 --- a/src/action_class_switch.cc +++ b/src/action_class_switch.cc @@ -51,20 +51,17 @@ typedef struct grib_action_switch { extern grib_action_class* grib_action_class_section; static grib_action_class _grib_action_class_switch = { - &grib_action_class_section, /* super */ - "action_class_switch", /* name */ - sizeof(grib_action_switch), /* size */ - 0, /* inited */ + &grib_action_class_section, /* super */ + "action_class_switch", /* name */ + sizeof(grib_action_switch), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - 0, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + 0, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_template.cc b/src/action_class_template.cc index 79fd2aeaf..13a13c4fd 100644 --- a/src/action_class_template.cc +++ b/src/action_class_template.cc @@ -57,20 +57,17 @@ typedef struct grib_action_template { extern grib_action_class* grib_action_class_section; static grib_action_class _grib_action_class_template = { - &grib_action_class_section, /* super */ - "action_class_template", /* name */ - sizeof(grib_action_template), /* size */ - 0, /* inited */ + &grib_action_class_section, /* super */ + "action_class_template", /* name */ + sizeof(grib_action_template), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - &create_accessor, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + &create_accessor, /* create_accessor */ + 0, /* notify_change */ &reparse, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_transient_darray.cc b/src/action_class_transient_darray.cc index 276dcf3fa..baf15300a 100644 --- a/src/action_class_transient_darray.cc +++ b/src/action_class_transient_darray.cc @@ -52,20 +52,17 @@ typedef struct grib_action_transient_darray { extern grib_action_class* grib_action_class_gen; static grib_action_class _grib_action_class_transient_darray = { - &grib_action_class_gen, /* super */ - "action_class_transient_darray", /* name */ - sizeof(grib_action_transient_darray), /* size */ - 0, /* inited */ + &grib_action_class_gen, /* super */ + "action_class_transient_darray", /* name */ + sizeof(grib_action_transient_darray), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_variable.cc b/src/action_class_variable.cc index 5b7e636ac..1ad93390c 100644 --- a/src/action_class_variable.cc +++ b/src/action_class_variable.cc @@ -48,20 +48,17 @@ typedef struct grib_action_variable { extern grib_action_class* grib_action_class_gen; static grib_action_class _grib_action_class_variable = { - &grib_action_class_gen, /* super */ - "action_class_variable", /* name */ - sizeof(grib_action_variable), /* size */ - 0, /* inited */ + &grib_action_class_gen, /* super */ + "action_class_variable", /* name */ + sizeof(grib_action_variable), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ 0, /* destroy */ - - 0, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + 0, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/action_class_when.cc b/src/action_class_when.cc index 359890f73..946a41e57 100644 --- a/src/action_class_when.cc +++ b/src/action_class_when.cc @@ -53,20 +53,17 @@ typedef struct grib_action_when { static grib_action_class _grib_action_class_when = { - 0, /* super */ - "action_class_when", /* name */ - sizeof(grib_action_when), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_when", /* name */ + sizeof(grib_action_when), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - &dump, /* dump */ - 0, /* xref */ - - &create_accessor, /* create_accessor*/ - - ¬ify_change, /* notify_change */ + &dump, /* dump */ + 0, /* xref */ + &create_accessor, /* create_accessor */ + ¬ify_change, /* notify_change */ 0, /* reparse */ 0, /* execute */ }; diff --git a/src/action_class_write.cc b/src/action_class_write.cc index 190264e9c..01d5d8a54 100644 --- a/src/action_class_write.cc +++ b/src/action_class_write.cc @@ -47,20 +47,17 @@ typedef struct grib_action_write { static grib_action_class _grib_action_class_write = { - 0, /* super */ - "action_class_write", /* name */ - sizeof(grib_action_write), /* size */ - 0, /* inited */ + 0, /* super */ + "action_class_write", /* name */ + sizeof(grib_action_write), /* size */ + 0, /* inited */ &init_class, /* init_class */ - 0, /* init */ + 0, /* init */ &destroy, /* destroy */ - - 0, /* dump */ - 0, /* xref */ - - 0, /* create_accessor*/ - - 0, /* notify_change */ + 0, /* dump */ + 0, /* xref */ + 0, /* create_accessor */ + 0, /* notify_change */ 0, /* reparse */ &execute, /* execute */ }; diff --git a/src/expression.class b/src/expression.class index 64c9a2e70..0db380e7c 100644 --- a/src/expression.class +++ b/src/expression.class @@ -2,7 +2,7 @@ typedef const char* string; /* to keep make_class.pl happy */ static void init(grib_expression* e); static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -18,12 +18,12 @@ typedef struct grib_expression_NAME{ extern grib_expression_class* SUPER; static grib_expression_class _grib_expression_class_NAME = { - &SUPER, /* super */ - "NAME", /* name */ - sizeof(grib_expression_NAME),/* size of instance */ + &SUPER, /* super */ + "NAME", /* name */ + sizeof(grib_expression_NAME),/* size of instance */ 0, /* inited */ - &init, /* constructor */ - &destroy, /* destructor */ + &init, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_accessor_class.cc b/src/grib_accessor_class.cc index de7f8dc47..8beb025a8 100644 --- a/src/grib_accessor_class.cc +++ b/src/grib_accessor_class.cc @@ -74,7 +74,7 @@ static struct table_entry table[] = { grib_section* grib_create_root_section(const grib_context* context, grib_handle* h) { - char* fpath = 0; + const char* fpath = 0; grib_section* s = (grib_section*)grib_context_malloc_clear(context, sizeof(grib_section)); GRIB_MUTEX_INIT_ONCE(&once, &init_mutex); diff --git a/src/grib_context.cc b/src/grib_context.cc index 98ffe39e2..133f3e456 100644 --- a/src/grib_context.cc +++ b/src/grib_context.cc @@ -661,20 +661,19 @@ static int init_definition_files_dir(grib_context* c) } else { /* Definitions path contains multiple directories */ - char* dir = NULL; - dir = strtok_r(path, ECC_PATH_DELIMITER_STR, &lasts); + const char* dir = strtok_r(path, ECC_PATH_DELIMITER_STR, &lasts); while (dir != NULL) { if (next) { next->next = (grib_string_list*)grib_context_malloc_clear_persistent(c, sizeof(grib_string_list)); - next = next->next; + next = next->next; } else { c->grib_definition_files_dir = (grib_string_list*)grib_context_malloc_clear_persistent(c, sizeof(grib_string_list)); - next = c->grib_definition_files_dir; + next = c->grib_definition_files_dir; } next->value = codes_resolve_path(c, dir); - dir = strtok_r(NULL, ECC_PATH_DELIMITER_STR, &lasts); + dir = strtok_r(NULL, ECC_PATH_DELIMITER_STR, &lasts); } } @@ -1233,7 +1232,7 @@ void codes_assertion_failed(const char* message, const char* file, int line) /* Default behaviour is to abort * unless user has supplied his own assertion routine */ if (assertion == NULL) { - grib_context* c = grib_context_get_default(); + const grib_context* c = grib_context_get_default(); fprintf(stderr, "ecCodes assertion failed: `%s' in %s:%d\n", message, file, line); if (!c->no_abort) { abort(); diff --git a/src/grib_expression_class_accessor.cc b/src/grib_expression_class_accessor.cc index ed3fcd9fe..71bc70526 100644 --- a/src/grib_expression_class_accessor.cc +++ b/src/grib_expression_class_accessor.cc @@ -42,7 +42,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*, FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -60,12 +60,12 @@ typedef struct grib_expression_accessor{ static grib_expression_class _grib_expression_class_accessor = { - 0, /* super */ - "accessor", /* name */ - sizeof(grib_expression_accessor),/* size of instance */ + 0, /* super */ + "accessor", /* name */ + sizeof(grib_expression_accessor),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_binop.cc b/src/grib_expression_class_binop.cc index c9b603497..60547ec2f 100644 --- a/src/grib_expression_class_binop.cc +++ b/src/grib_expression_class_binop.cc @@ -42,7 +42,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*, FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -60,12 +60,12 @@ typedef struct grib_expression_binop{ static grib_expression_class _grib_expression_class_binop = { - 0, /* super */ - "binop", /* name */ - sizeof(grib_expression_binop),/* size of instance */ + 0, /* super */ + "binop", /* name */ + sizeof(grib_expression_binop),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_double.cc b/src/grib_expression_class_double.cc index 52d40832f..14e38e973 100644 --- a/src/grib_expression_class_double.cc +++ b/src/grib_expression_class_double.cc @@ -38,7 +38,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*, FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -52,12 +52,12 @@ typedef struct grib_expression_double{ static grib_expression_class _grib_expression_class_double = { - 0, /* super */ - "double", /* name */ - sizeof(grib_expression_double),/* size of instance */ + 0, /* super */ + "double", /* name */ + sizeof(grib_expression_double),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_functor.cc b/src/grib_expression_class_functor.cc index 0f1d80214..eb147d963 100644 --- a/src/grib_expression_class_functor.cc +++ b/src/grib_expression_class_functor.cc @@ -38,7 +38,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -52,12 +52,12 @@ typedef struct grib_expression_functor{ static grib_expression_class _grib_expression_class_functor = { - 0, /* super */ - "functor", /* name */ - sizeof(grib_expression_functor),/* size of instance */ + 0, /* super */ + "functor", /* name */ + sizeof(grib_expression_functor),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_is_in_dict.cc b/src/grib_expression_class_is_in_dict.cc index 46e0833f6..8d86c24bf 100644 --- a/src/grib_expression_class_is_in_dict.cc +++ b/src/grib_expression_class_is_in_dict.cc @@ -39,7 +39,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -56,12 +56,12 @@ typedef struct grib_expression_is_in_dict{ static grib_expression_class _grib_expression_class_is_in_dict = { - 0, /* super */ - "is_in_dict", /* name */ - sizeof(grib_expression_is_in_dict),/* size of instance */ + 0, /* super */ + "is_in_dict", /* name */ + sizeof(grib_expression_is_in_dict),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - 0, /* destructor */ + 0, /* constructor */ + 0, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_is_in_list.cc b/src/grib_expression_class_is_in_list.cc index 3e5e3728d..953481ad0 100644 --- a/src/grib_expression_class_is_in_list.cc +++ b/src/grib_expression_class_is_in_list.cc @@ -41,7 +41,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -58,12 +58,12 @@ typedef struct grib_expression_is_in_list{ static grib_expression_class _grib_expression_class_is_in_list = { - 0, /* super */ - "is_in_list", /* name */ - sizeof(grib_expression_is_in_list),/* size of instance */ + 0, /* super */ + "is_in_list", /* name */ + sizeof(grib_expression_is_in_list),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_is_integer.cc b/src/grib_expression_class_is_integer.cc index bf203bc81..d88756974 100644 --- a/src/grib_expression_class_is_integer.cc +++ b/src/grib_expression_class_is_integer.cc @@ -42,7 +42,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*, FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -60,12 +60,12 @@ typedef struct grib_expression_is_integer{ static grib_expression_class _grib_expression_class_is_integer = { - 0, /* super */ - "is_integer", /* name */ - sizeof(grib_expression_is_integer),/* size of instance */ + 0, /* super */ + "is_integer", /* name */ + sizeof(grib_expression_is_integer),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_length.cc b/src/grib_expression_class_length.cc index c8c63f8e8..e2c0d3202 100644 --- a/src/grib_expression_class_length.cc +++ b/src/grib_expression_class_length.cc @@ -42,7 +42,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -60,12 +60,12 @@ typedef struct grib_expression_length{ static grib_expression_class _grib_expression_class_length = { - 0, /* super */ - "length", /* name */ - sizeof(grib_expression_length),/* size of instance */ + 0, /* super */ + "length", /* name */ + sizeof(grib_expression_length),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_logical_and.cc b/src/grib_expression_class_logical_and.cc index d95de8d92..419383373 100644 --- a/src/grib_expression_class_logical_and.cc +++ b/src/grib_expression_class_logical_and.cc @@ -39,7 +39,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*, FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -54,12 +54,12 @@ typedef struct grib_expression_logical_and{ static grib_expression_class _grib_expression_class_logical_and = { - 0, /* super */ - "logical_and", /* name */ - sizeof(grib_expression_logical_and),/* size of instance */ + 0, /* super */ + "logical_and", /* name */ + sizeof(grib_expression_logical_and),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_logical_or.cc b/src/grib_expression_class_logical_or.cc index aed0618f3..88867f35f 100644 --- a/src/grib_expression_class_logical_or.cc +++ b/src/grib_expression_class_logical_or.cc @@ -39,7 +39,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -54,12 +54,12 @@ typedef struct grib_expression_logical_or{ static grib_expression_class _grib_expression_class_logical_or = { - 0, /* super */ - "logical_or", /* name */ - sizeof(grib_expression_logical_or),/* size of instance */ + 0, /* super */ + "logical_or", /* name */ + sizeof(grib_expression_logical_or),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_long.cc b/src/grib_expression_class_long.cc index 774f736e6..946e6456d 100644 --- a/src/grib_expression_class_long.cc +++ b/src/grib_expression_class_long.cc @@ -38,7 +38,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -52,12 +52,12 @@ typedef struct grib_expression_long{ static grib_expression_class _grib_expression_class_long = { - 0, /* super */ - "long", /* name */ - sizeof(grib_expression_long),/* size of instance */ + 0, /* super */ + "long", /* name */ + sizeof(grib_expression_long),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_string.cc b/src/grib_expression_class_string.cc index 379140de7..a085ed69e 100644 --- a/src/grib_expression_class_string.cc +++ b/src/grib_expression_class_string.cc @@ -37,7 +37,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static string evaluate_string(grib_expression*,grib_handle*,char*,size_t*,int*); @@ -50,12 +50,12 @@ typedef struct grib_expression_string{ static grib_expression_class _grib_expression_class_string = { - 0, /* super */ - "string", /* name */ - sizeof(grib_expression_string),/* size of instance */ + 0, /* super */ + "string", /* name */ + sizeof(grib_expression_string),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_string_compare.cc b/src/grib_expression_class_string_compare.cc index ac54cb6d2..603846b7b 100644 --- a/src/grib_expression_class_string_compare.cc +++ b/src/grib_expression_class_string_compare.cc @@ -40,7 +40,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -56,12 +56,12 @@ typedef struct grib_expression_string_compare{ static grib_expression_class _grib_expression_class_string_compare = { - 0, /* super */ - "string_compare", /* name */ - sizeof(grib_expression_string_compare),/* size of instance */ + 0, /* super */ + "string_compare", /* name */ + sizeof(grib_expression_string_compare),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_sub_string.cc b/src/grib_expression_class_sub_string.cc index dd44ec323..8ed6c3dff 100644 --- a/src/grib_expression_class_sub_string.cc +++ b/src/grib_expression_class_sub_string.cc @@ -37,7 +37,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static string evaluate_string(grib_expression*,grib_handle*,char*,size_t*,int*); @@ -50,12 +50,12 @@ typedef struct grib_expression_sub_string{ static grib_expression_class _grib_expression_class_sub_string = { - 0, /* super */ - "sub_string", /* name */ - sizeof(grib_expression_sub_string),/* size of instance */ + 0, /* super */ + "sub_string", /* name */ + sizeof(grib_expression_sub_string),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_true.cc b/src/grib_expression_class_true.cc index c2cd5faf6..41f3a40ae 100644 --- a/src/grib_expression_class_true.cc +++ b/src/grib_expression_class_true.cc @@ -37,7 +37,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static int native_type(grib_expression*,grib_handle*); static int evaluate_long(grib_expression*,grib_handle*,long*); @@ -50,12 +50,12 @@ typedef struct grib_expression_true{ static grib_expression_class _grib_expression_class_true = { - 0, /* super */ - "true", /* name */ - sizeof(grib_expression_true),/* size of instance */ + 0, /* super */ + "true", /* name */ + sizeof(grib_expression_true),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, diff --git a/src/grib_expression_class_unop.cc b/src/grib_expression_class_unop.cc index 0de77a02d..18eb073fb 100644 --- a/src/grib_expression_class_unop.cc +++ b/src/grib_expression_class_unop.cc @@ -41,7 +41,7 @@ or edit "expression.class" and rerun ./make_class.pl typedef const char* string; /* to keep make_class.pl happy */ static void destroy(grib_context*,grib_expression* e); -static void print(grib_context*,grib_expression*,grib_handle*,FILE*); +static void print(grib_context*, grib_expression*, grib_handle*, FILE*); static void add_dependency(grib_expression* e, grib_accessor* observer); static string get_name(grib_expression* e); static int native_type(grib_expression*,grib_handle*); @@ -58,12 +58,12 @@ typedef struct grib_expression_unop{ static grib_expression_class _grib_expression_class_unop = { - 0, /* super */ - "unop", /* name */ - sizeof(grib_expression_unop),/* size of instance */ + 0, /* super */ + "unop", /* name */ + sizeof(grib_expression_unop),/* size of instance */ 0, /* inited */ - 0, /* constructor */ - &destroy, /* destructor */ + 0, /* constructor */ + &destroy, /* destructor */ &print, &add_dependency, &native_type, From d53a873485db42ac7a669091483eb4a7b009dc68 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 31 Aug 2024 13:19:02 +0100 Subject: [PATCH 237/277] Const correctness --- src/eccodes.cc | 2 +- src/eccodes.h | 2 +- src/eccodes_prototypes.h | 2 +- src/grib_api.h | 2 +- src/grib_context.cc | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/eccodes.cc b/src/eccodes.cc index 4dc7868b9..2220f2eeb 100644 --- a/src/eccodes.cc +++ b/src/eccodes.cc @@ -480,7 +480,7 @@ void codes_gribex_mode_on(grib_context* c) { grib_gribex_mode_on(c); } -int codes_get_gribex_mode(grib_context* c) +int codes_get_gribex_mode(const grib_context* c) { return grib_get_gribex_mode(c); } diff --git a/src/eccodes.h b/src/eccodes.h index 476f9039b..c21d03545 100644 --- a/src/eccodes.h +++ b/src/eccodes.h @@ -1143,7 +1143,7 @@ void codes_gribex_mode_on(codes_context* c); * * @param c : the context */ -int codes_get_gribex_mode(codes_context* c); +int codes_get_gribex_mode(const codes_context* c); /** * Set the GRIBEX mode off. diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index 287f3e5d9..d65c8a908 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -450,7 +450,7 @@ bufr_descriptors_array* grib_context_expanded_descriptors_list_get(grib_context* void grib_context_expanded_descriptors_list_push(grib_context* c, const char* key, bufr_descriptors_array* expanded, bufr_descriptors_array* unexpanded); void codes_set_codes_assertion_failed_proc(codes_assertion_failed_proc proc); void codes_assertion_failed(const char* message, const char* file, int line); -int grib_get_gribex_mode(grib_context* c); +int grib_get_gribex_mode(const grib_context* c); void grib_gribex_mode_on(grib_context* c); void grib_gribex_mode_off(grib_context* c); void grib_gts_header_on(grib_context* c); diff --git a/src/grib_api.h b/src/grib_api.h index d39b8c93d..5bc8c1a9e 100644 --- a/src/grib_api.h +++ b/src/grib_api.h @@ -1145,7 +1145,7 @@ void grib_gribex_mode_on(grib_context* c); * * @param c : the context */ -int grib_get_gribex_mode(grib_context* c); +int grib_get_gribex_mode(const grib_context* c); /** * Set the GRIBEX mode off. diff --git a/src/grib_context.cc b/src/grib_context.cc index 133f3e456..75681a195 100644 --- a/src/grib_context.cc +++ b/src/grib_context.cc @@ -1245,7 +1245,7 @@ void codes_assertion_failed(const char* message, const char* file, int line) } } -int grib_get_gribex_mode(grib_context* c) +int grib_get_gribex_mode(const grib_context* c) { if (!c) c = grib_context_get_default(); From 695627b5b1f3e602fc590308277c05c132c56710 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sat, 31 Aug 2024 13:19:52 +0100 Subject: [PATCH 238/277] SD-96876: grib_check_param_concepts --- tests/grib_check_param_concepts.sh | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/tests/grib_check_param_concepts.sh b/tests/grib_check_param_concepts.sh index cc1bd6a01..a4f3793cc 100755 --- a/tests/grib_check_param_concepts.sh +++ b/tests/grib_check_param_concepts.sh @@ -18,6 +18,15 @@ if [ $ECCODES_ON_WINDOWS -eq 1 ]; then exit 0 fi +check_grib_defs() +{ + CHECK_DEFS=$ECCODES_DEFINITION_PATH/check_grib_defs.pl + if [ -x "$CHECK_DEFS" ]; then + # Now check the name.def, paramId.def, shortName.def... files + # in the current directory + $CHECK_DEFS + fi +} # # Do various checks on the concepts files @@ -55,8 +64,6 @@ if [ $status -ne 0 ]; then exit 0 fi -CHECK_DEFS=$ECCODES_DEFINITION_PATH/check_grib_defs.pl - defs_dirs=" $ECCODES_DEFINITION_PATH/grib1 $ECCODES_DEFINITION_PATH/grib2 @@ -86,7 +93,7 @@ defs_dirs=" for dir in $defs_dirs; do cd $dir - $CHECK_DEFS + check_grib_defs done cd $test_dir @@ -108,7 +115,7 @@ cp $ECMF_DIR/name.legacy.def name.def cp $ECMF_DIR/paramId.legacy.def paramId.def cp $ECMF_DIR/shortName.legacy.def shortName.def cp $ECMF_DIR/units.legacy.def units.def -$CHECK_DEFS +check_grib_defs cd $test_dir rm -fr $tempDir @@ -127,7 +134,7 @@ cp $ECMF_DIR/name.legacy.def name.def cp $ECMF_DIR/paramId.legacy.def paramId.def cp $ECMF_DIR/shortName.legacy.def shortName.def cp $ECMF_DIR/units.legacy.def units.def -$CHECK_DEFS +check_grib_defs cd $test_dir rm -fr $tempDir From fbe2d513b0a3f39a7d9135820a53ce4ab0b58d14 Mon Sep 17 00:00:00 2001 From: shahramn Date: Sun, 1 Sep 2024 16:42:00 +0100 Subject: [PATCH 239/277] Testing: dumping actions --- src/action.cc | 22 +++++++++++++++++++++- src/action_class_rename.cc | 10 +++++----- tests/codes_dump_action_tree.cc | 18 +++++++++++++++--- tests/codes_dump_action_tree.sh | 15 +++++++++++++-- 4 files changed, 54 insertions(+), 11 deletions(-) diff --git a/src/action.cc b/src/action.cc index 026bca74e..770c0b310 100644 --- a/src/action.cc +++ b/src/action.cc @@ -210,7 +210,27 @@ void grib_dump_action_tree(grib_context* ctx, FILE* out) Assert(ctx->grib_reader); Assert(ctx->grib_reader->first); Assert(out); - grib_dump_action_branch(out, ctx->grib_reader->first->root, 0); + + // grib_dump_action_branch(out, ctx->grib_reader->first->root, 0); + // grib_action* next = ctx->grib_reader->first->root; + // while (next) { + // fprintf(out, "Dump %s\n", next->name); + // grib_dump_action_branch(out, next, 0); + // next = next->next; + // } + + grib_action_file* fr = ctx->grib_reader->first; + grib_action_file* fn = fr; + while (fn) { + fr = fn; + fn = fn->next; + grib_action* a = fr->root; + while (a) { + grib_action* na = a->next; + grib_dump_action_branch(out, a, 0); + a = na; + } + } } // void grib_xref_action_branch(FILE* out, grib_action* a, const char* path) diff --git a/src/action_class_rename.cc b/src/action_class_rename.cc index 49a734bd2..631a72181 100644 --- a/src/action_class_rename.cc +++ b/src/action_class_rename.cc @@ -124,12 +124,12 @@ static int create_accessor(grib_section* p, grib_action* act, grib_loader* h) static void dump(grib_action* act, FILE* f, int lvl) { - // grib_action_rename* a = (grib_action_rename*)act; - // int i = 0; - // for (i = 0; i < lvl; i++) - // grib_context_print(act->context, f, " "); + grib_action_rename* a = (grib_action_rename*)act; + int i = 0; + for (i = 0; i < lvl; i++) + grib_context_print(act->context, f, " "); - // grib_context_print(act->context, f, "rename %s as %s in %s\n", a->the_old, act->name, a->the_new); + grib_context_print(act->context, f, "rename %s as %s in %s\n", a->the_old, act->name, a->the_new); } static void destroy(grib_context* context, grib_action* act) diff --git a/tests/codes_dump_action_tree.cc b/tests/codes_dump_action_tree.cc index fa895ea97..724b957e2 100644 --- a/tests/codes_dump_action_tree.cc +++ b/tests/codes_dump_action_tree.cc @@ -12,17 +12,29 @@ #include #include "eccodes.h" +static ProductKind get_product_kind(const char* p) +{ + if (strcmp(p, "GRIB") == 0) return PRODUCT_GRIB; + if (strcmp(p, "BUFR") == 0) return PRODUCT_BUFR; + if (strcmp(p, "METAR") == 0) return PRODUCT_METAR; + if (strcmp(p, "GTS") == 0) return PRODUCT_GTS; + return PRODUCT_ANY; +} + int main(int argc, char** argv) { int err = 0; codes_context* c = codes_context_get_default(); - assert(argc == 2); + assert(argc == 3); + + const ProductKind mode = get_product_kind( argv[1] ); + const char* filename = argv[2]; - char* filename = argv[1]; FILE* fp = fopen(filename, "rb"); assert(fp); - codes_handle* h = codes_handle_new_from_file(c, fp, PRODUCT_ANY, &err); + + codes_handle* h = codes_handle_new_from_file(c, fp, mode, &err); assert(h); assert(!err); diff --git a/tests/codes_dump_action_tree.sh b/tests/codes_dump_action_tree.sh index ad562c9e5..fbc2bbf24 100755 --- a/tests/codes_dump_action_tree.sh +++ b/tests/codes_dump_action_tree.sh @@ -10,5 +10,16 @@ . ./include.ctest.sh -input=$ECCODES_SAMPLES_PATH/GRIB2.tmpl -$EXEC ${test_dir}/codes_dump_action_tree "$input" +for f in GRIB1.tmpl GRIB2.tmpl sh_sfc_grib1.tmpl sh_sfc_grib2.tmpl; do + input=$ECCODES_SAMPLES_PATH/$f + $EXEC ${test_dir}/codes_dump_action_tree GRIB "$input" > /dev/null +done + +input=$ECCODES_SAMPLES_PATH/BUFR4.tmpl +$EXEC ${test_dir}/codes_dump_action_tree BUFR "$input" > /dev/null + +input=$data_dir/metar/metar.txt +$EXEC ${test_dir}/codes_dump_action_tree METAR "$input" > /dev/null + +input=$data_dir/gts/EGRR20150317121020_00493212.DAT +$EXEC ${test_dir}/codes_dump_action_tree GTS "$input" > /dev/null From 9179608c8877ff78e2b3db1cb3357721bcfdd5d3 Mon Sep 17 00:00:00 2001 From: Shahram Najm Date: Sun, 1 Sep 2024 15:57:35 +0000 Subject: [PATCH 240/277] Testing: Fix for METAR --- src/action.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/src/action.cc b/src/action.cc index 770c0b310..a5496c32d 100644 --- a/src/action.cc +++ b/src/action.cc @@ -95,7 +95,6 @@ static void grib_dump(grib_action* a, FILE* f, int l) } c = c->super ? *(c->super) : NULL; } - DEBUG_ASSERT(0); } // void grib_xref(grib_action* a, FILE* f, const char* path) From 1461c75a04a057f8039debef450a36e21205b5f1 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 2 Sep 2024 17:08:09 +0100 Subject: [PATCH 241/277] Bump up version (skip 2.37 for the wheel) --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index c94fd315f..f31d783fa 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.37.0 +2.38.0 From b48102f910610483757327b1f9877b6dbd518242 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 3 Sep 2024 16:51:06 +0100 Subject: [PATCH 242/277] GRIB1: Typo in key name --- definitions/grib1/boot.def | 2 +- definitions/grib1/local.214.1.def | 2 +- definitions/grib1/local.34.1.def | 2 +- definitions/grib1/local.98.1.def | 2 +- definitions/grib1/local.98.18.def | 2 +- definitions/grib1/local.98.218.def | 2 +- definitions/grib1/local.98.26.def | 2 +- definitions/grib1/local.98.30.def | 2 +- definitions/grib1/local.98.36.def | 2 +- definitions/grib1/local_no_mars.98.1.def | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/definitions/grib1/boot.def b/definitions/grib1/boot.def index 4dd9e48e0..f98ef0442 100644 --- a/definitions/grib1/boot.def +++ b/definitions/grib1/boot.def @@ -16,7 +16,7 @@ constant three=1 : hidden; constant eight=8 : hidden; constant eleven=11 : hidden; constant epsPoint=1 : hidden; -constant epsContinous=11 : hidden; +constant epsContinuous=11 : hidden; constant epsStatisticsPoint=2 : hidden; constant epsStatisticsContinous=12 : hidden; diff --git a/definitions/grib1/local.214.1.def b/definitions/grib1/local.214.1.def index 51e0254aa..82ba4e74d 100644 --- a/definitions/grib1/local.214.1.def +++ b/definitions/grib1/local.214.1.def @@ -32,7 +32,7 @@ if (stepType is "instant" ) { } } else { if (numberOfForecastsInEnsemble!=0) { - alias productDefinitionTemplateNumber=epsContinous; + alias productDefinitionTemplateNumber=epsContinuous; } } diff --git a/definitions/grib1/local.34.1.def b/definitions/grib1/local.34.1.def index 078e15cf8..1a96674b4 100644 --- a/definitions/grib1/local.34.1.def +++ b/definitions/grib1/local.34.1.def @@ -40,7 +40,7 @@ if (stepType is "instant" ) { } else { alias typeOfEnsembleForecast=three; } - alias productDefinitionTemplateNumber=epsContinous; + alias productDefinitionTemplateNumber=epsContinuous; } else { alias productDefinitionTemplateNumber=eight; } diff --git a/definitions/grib1/local.98.1.def b/definitions/grib1/local.98.1.def index d908b43ed..a1a5adddf 100644 --- a/definitions/grib1/local.98.1.def +++ b/definitions/grib1/local.98.1.def @@ -41,7 +41,7 @@ if (stepType is "instant" ) { } else { alias typeOfEnsembleForecast=three; } - alias productDefinitionTemplateNumber=epsContinous; + alias productDefinitionTemplateNumber=epsContinuous; } else { alias productDefinitionTemplateNumber=eight; } diff --git a/definitions/grib1/local.98.18.def b/definitions/grib1/local.98.18.def index 2897af593..f51f19970 100644 --- a/definitions/grib1/local.98.18.def +++ b/definitions/grib1/local.98.18.def @@ -10,7 +10,7 @@ constant grib2LocalSectionNumber=18; if (stepType is "instant" ) { alias productDefinitionTemplateNumber=epsPoint; } else { - alias productDefinitionTemplateNumber=epsContinous; + alias productDefinitionTemplateNumber=epsContinuous; } template mars_labeling "grib1/mars_labeling.def"; diff --git a/definitions/grib1/local.98.218.def b/definitions/grib1/local.98.218.def index c6787e258..872a4e734 100644 --- a/definitions/grib1/local.98.218.def +++ b/definitions/grib1/local.98.218.def @@ -10,7 +10,7 @@ constant grib2LocalSectionNumber=18; if (stepType is "instant" ) { alias productDefinitionTemplateNumber=epsPoint; } else { - alias productDefinitionTemplateNumber=epsContinous; + alias productDefinitionTemplateNumber=epsContinuous; } template mars_labeling "grib1/mars_labeling.def"; diff --git a/definitions/grib1/local.98.26.def b/definitions/grib1/local.98.26.def index 4a9ce6c3e..3c1ad63e0 100644 --- a/definitions/grib1/local.98.26.def +++ b/definitions/grib1/local.98.26.def @@ -14,7 +14,7 @@ constant grib2LocalSectionNumber=26; if (stepType is "instant" ) { alias productDefinitionTemplateNumber=epsPoint; } else { - alias productDefinitionTemplateNumber=epsContinous; + alias productDefinitionTemplateNumber=epsContinuous; } constant wrongPadding=1 : hidden; diff --git a/definitions/grib1/local.98.30.def b/definitions/grib1/local.98.30.def index ee7c46a5e..e19efd77f 100644 --- a/definitions/grib1/local.98.30.def +++ b/definitions/grib1/local.98.30.def @@ -23,7 +23,7 @@ if (stepType is "instant" ) { if (type is "em" || type is "es" ) { alias productDefinitionTemplateNumber=epsStatisticsContinous; } else { - alias productDefinitionTemplateNumber=epsContinous; + alias productDefinitionTemplateNumber=epsContinuous; } } diff --git a/definitions/grib1/local.98.36.def b/definitions/grib1/local.98.36.def index c0b6a1baf..32329c92c 100644 --- a/definitions/grib1/local.98.36.def +++ b/definitions/grib1/local.98.36.def @@ -47,7 +47,7 @@ if (stepType is "instant" ) { } else { alias typeOfEnsembleForecast=three; } - alias productDefinitionTemplateNumber=epsContinous; + alias productDefinitionTemplateNumber=epsContinuous; } else { alias productDefinitionTemplateNumber=eight; } diff --git a/definitions/grib1/local_no_mars.98.1.def b/definitions/grib1/local_no_mars.98.1.def index bbb31966c..f028eb030 100644 --- a/definitions/grib1/local_no_mars.98.1.def +++ b/definitions/grib1/local_no_mars.98.1.def @@ -48,7 +48,7 @@ if (stepType is "instant" ) { } else { alias typeOfEnsembleForecast=three; } - alias productDefinitionTemplateNumber=epsContinous; + alias productDefinitionTemplateNumber=epsContinuous; } else { alias productDefinitionTemplateNumber=eight; } From d64137d1673e6f457069ec1708954ea9a7fd2949 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 3 Sep 2024 16:51:43 +0100 Subject: [PATCH 243/277] Testing: Make sure script points to source dir (related to SD-96876) --- tests/grib_check_param_concepts.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/grib_check_param_concepts.sh b/tests/grib_check_param_concepts.sh index a4f3793cc..ed5c64eca 100755 --- a/tests/grib_check_param_concepts.sh +++ b/tests/grib_check_param_concepts.sh @@ -20,7 +20,7 @@ fi check_grib_defs() { - CHECK_DEFS=$ECCODES_DEFINITION_PATH/check_grib_defs.pl + CHECK_DEFS=$proj_dir/definitions/check_grib_defs.pl if [ -x "$CHECK_DEFS" ]; then # Now check the name.def, paramId.def, shortName.def... files # in the current directory From ae1bb2122cf040943091fe8a0e6cd29185d5227d Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 4 Sep 2024 13:10:02 +0100 Subject: [PATCH 244/277] Tools: codes_config (Try 1) --- tools/CMakeLists.txt | 8 +++ tools/codes_config.in | 130 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 138 insertions(+) create mode 100755 tools/codes_config.in diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index d4b256770..923848fe8 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -96,6 +96,14 @@ else() endif() ######################################## +configure_file( codes_config.in codes_config @ONLY ) +install( FILES ${CMAKE_CURRENT_BINARY_DIR}/codes_config + DESTINATION ${INSTALL_BIN_DIR} + PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ + GROUP_EXECUTE GROUP_READ + WORLD_EXECUTE WORLD_READ ) + + # BUFR compare script install( FILES ${CMAKE_CURRENT_SOURCE_DIR}/bufr_compare_dir DESTINATION ${INSTALL_BIN_DIR} diff --git a/tools/codes_config.in b/tools/codes_config.in new file mode 100755 index 000000000..04b9dae91 --- /dev/null +++ b/tools/codes_config.in @@ -0,0 +1,130 @@ +#!/usr/bin/env bash + +ECCODES_VERSION_STR="@eccodes_VERSION_STR@" + +ECCODES_MAJOR_VERSION=@eccodes_VERSION_MAJOR@ +ECCODES_MINOR_VERSION=@eccodes_VERSION_MINOR@ +ECCODES_PATCH_VERSION=@eccodes_VERSION_PATCH@ +ECCODES_VERSION="$ECCODES_MAJOR_VERSION.$ECCODES_MINOR_VERSION.$ECCODES_PATCH_VERSION" + +ECCODES_GIT_SHA1="@eccodes_GIT_SHA1@" + +################################################################# +# Commands +################################################################# +usage() +{ + echo "Usage: $0 [--version] [--info] [--git]" + exit $1 +} + +version() +{ + echo "${ECCODES_VERSION}" +} + +print_feature() +{ + if [ -z "$1" ]; then + echo "OFF" + elif [[ $1 =~ (true|TRUE|ON|1) ]]; then + echo "ON" + else + echo "OFF" + fi +} + + +info() +{ + echo "ecCodes version (${ECCODES_VERSION}), git-sha1 ${ECCODES_GIT_SHA1}" + echo "" + echo "Build:" + echo " build type : @CMAKE_BUILD_TYPE@" + echo " timestamp : @EC_BUILD_TIMESTAMP@" + echo " op. system : @CMAKE_SYSTEM@ (@EC_OS_NAME@.@EC_OS_BITS@)" + echo " processor : @CMAKE_SYSTEM_PROCESSOR@" + echo " sources : @PROJECT_SOURCE_DIR@" + echo " c++ compiler : @CMAKE_CXX_COMPILER_ID@ @CMAKE_CXX_COMPILER_VERSION@" + echo " flags : @CMAKE_CXX_FLAGS@" +# echo " fortran compiler: @CMAKE_Fortran_COMPILER_ID@ @CMAKE_Fortran_COMPILER_VERSION@" +# echo " flags : @ECCODES_Fortran_FLAGS@" + echo "" + echo "Features:" + echo " AEC : $(print_feature @HAVE_AEC@)" + echo " MEMFS : $(print_feature @HAVE_MEMFS@)" + echo " JPG : $(print_feature @HAVE_JPEG@)" + echo " PNG : $(print_feature @HAVE_PNG@)" + echo "" + # echo "Dependencies: " + # if [ -n "@fckit_HAVE_ECKIT@" ]; then + # echo " eckit version (@eckit_VERSION@), git-sha1 $(short_gitsha1 @eckit_GIT_SHA1@)" + # else + # echo " None" + # fi +} + +gitsha1() +{ + echo "${ECCODES_GIT_SHA1}" +} + +short_gitsha1() +{ + if [ -z "$1" ]; then + echo "unknown" + else + echo $1 | head -c 13 + fi +} + +################################################################# +# Parse command-line +################################################################# + +if test $# -eq 0; then + usage 1 +fi + +while test $# -gt 0; do + + # Split --option=value in $opt="--option" and $val="value" + + opt="" + val="" + + case "$1" in + --*=*) + opt=`echo "$1" | sed 's/=.*//'` + val=`echo "$1" | sed 's/--[_a-zA-Z0-9]*=//'` + ;; + --*) + opt=$1 + ;; + *) + break + ;; + esac + + # Parse options + case "$opt" in + --version) + version + ;; + --git) + gitsha1 + ;; + --info) + info + ;; + --) + shift + break + ;; + *) + echo "unknown option: $opt" + usage 1 + ;; + esac + shift +done From c1f67e1069e0f5fd70337a064efbc402cd4eed96 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 4 Sep 2024 13:38:12 +0100 Subject: [PATCH 245/277] Tools: codes_config (Try 2) --- tools/codes_config.in | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/tools/codes_config.in b/tools/codes_config.in index 04b9dae91..cd5d9c726 100755 --- a/tools/codes_config.in +++ b/tools/codes_config.in @@ -1,11 +1,10 @@ #!/usr/bin/env bash ECCODES_VERSION_STR="@eccodes_VERSION_STR@" - ECCODES_MAJOR_VERSION=@eccodes_VERSION_MAJOR@ ECCODES_MINOR_VERSION=@eccodes_VERSION_MINOR@ ECCODES_PATCH_VERSION=@eccodes_VERSION_PATCH@ -ECCODES_VERSION="$ECCODES_MAJOR_VERSION.$ECCODES_MINOR_VERSION.$ECCODES_PATCH_VERSION" +# ECCODES_VERSION="$ECCODES_MAJOR_VERSION.$ECCODES_MINOR_VERSION.$ECCODES_PATCH_VERSION" ECCODES_GIT_SHA1="@eccodes_GIT_SHA1@" @@ -20,7 +19,7 @@ usage() version() { - echo "${ECCODES_VERSION}" + echo "${ECCODES_VERSION_STR}" } print_feature() @@ -37,7 +36,7 @@ print_feature() info() { - echo "ecCodes version (${ECCODES_VERSION}), git-sha1 ${ECCODES_GIT_SHA1}" + echo "ecCodes version (${ECCODES_VERSION_STR}), git-sha1 ${ECCODES_GIT_SHA1}" echo "" echo "Build:" echo " build type : @CMAKE_BUILD_TYPE@" @@ -53,11 +52,12 @@ info() echo "Features:" echo " AEC : $(print_feature @HAVE_AEC@)" echo " MEMFS : $(print_feature @HAVE_MEMFS@)" + echo " NETCDF : $(print_feature @HAVE_NETCDF@)" echo " JPG : $(print_feature @HAVE_JPEG@)" echo " PNG : $(print_feature @HAVE_PNG@)" echo "" # echo "Dependencies: " - # if [ -n "@fckit_HAVE_ECKIT@" ]; then + # if [ -n "@ECCODES_HAVE_ECKIT@" ]; then # echo " eckit version (@eckit_VERSION@), git-sha1 $(short_gitsha1 @eckit_GIT_SHA1@)" # else # echo " None" @@ -83,7 +83,8 @@ short_gitsha1() ################################################################# if test $# -eq 0; then - usage 1 + info + # usage 1 fi while test $# -gt 0; do From 044cc0d26c03481d28a8ee1418e096fb32dff9d5 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 4 Sep 2024 15:09:09 +0100 Subject: [PATCH 246/277] Tools: codes_config build type --- tools/codes_config.in | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tools/codes_config.in b/tools/codes_config.in index cd5d9c726..53fe1f8bf 100755 --- a/tools/codes_config.in +++ b/tools/codes_config.in @@ -33,7 +33,7 @@ print_feature() fi } - +build_type="@CMAKE_BUILD_TYPE@" info() { echo "ecCodes version (${ECCODES_VERSION_STR}), git-sha1 ${ECCODES_GIT_SHA1}" @@ -45,7 +45,12 @@ info() echo " processor : @CMAKE_SYSTEM_PROCESSOR@" echo " sources : @PROJECT_SOURCE_DIR@" echo " c++ compiler : @CMAKE_CXX_COMPILER_ID@ @CMAKE_CXX_COMPILER_VERSION@" - echo " flags : @CMAKE_CXX_FLAGS@" + # Add the most common build type + if [ $build_type = "RelWithDebInfo" ]; then + echo " flags : @CMAKE_CXX_FLAGS_RELWITHDEBINFO@" + else + echo " flags : @CMAKE_CXX_FLAGS@" + fi # echo " fortran compiler: @CMAKE_Fortran_COMPILER_ID@ @CMAKE_Fortran_COMPILER_VERSION@" # echo " flags : @ECCODES_Fortran_FLAGS@" echo "" From eef74b1e28ab3d65514f7246b647df8742e20302 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 4 Sep 2024 15:28:35 +0100 Subject: [PATCH 247/277] Tools: codes_config installation --- tools/CMakeLists.txt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt index 923848fe8..e2016a726 100644 --- a/tools/CMakeLists.txt +++ b/tools/CMakeLists.txt @@ -96,8 +96,13 @@ else() endif() ######################################## -configure_file( codes_config.in codes_config @ONLY ) -install( FILES ${CMAKE_CURRENT_BINARY_DIR}/codes_config +configure_file( codes_config.in ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/codes_config @ONLY ) +file(COPY ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/codes_config + DESTINATION ${CMAKE_BINARY_DIR}/bin + FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ + GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) + +install( FILES ${CMAKE_BINARY_DIR}/bin/codes_config DESTINATION ${INSTALL_BIN_DIR} PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ From 2db38ede1cda7f33113b134ae53c96dd58f589bf Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 5 Sep 2024 11:37:47 +0100 Subject: [PATCH 248/277] Const correctness --- src/action_class_close.cc | 2 +- src/eccodes_prototypes.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/action_class_close.cc b/src/action_class_close.cc index 00108c607..8b8db96a0 100644 --- a/src/action_class_close.cc +++ b/src/action_class_close.cc @@ -65,7 +65,7 @@ static void init_class(grib_action_class* c) } /* END_CLASS_IMP */ -grib_action* grib_action_create_close(grib_context* context, char* filename) +grib_action* grib_action_create_close(grib_context* context, const char* filename) { char buf[1024]; grib_action_close* a; diff --git a/src/eccodes_prototypes.h b/src/eccodes_prototypes.h index d65c8a908..bde1fc807 100644 --- a/src/eccodes_prototypes.h +++ b/src/eccodes_prototypes.h @@ -86,7 +86,7 @@ grib_action* grib_action_create_write(grib_context* context, const char* name, i grib_action* grib_action_create_print(grib_context* context, const char* name, char* outname); /* action_class_close.cc */ -grib_action* grib_action_create_close(grib_context* context, char* filename); +grib_action* grib_action_create_close(grib_context* context, const char* filename); /* action_class_variable.cc */ grib_action* grib_action_create_variable(grib_context* context, const char* name, const char* op, const long len, grib_arguments* params, grib_arguments* default_value, int flags, const char* name_space); From 36dd16810f85c50739a24b6b3c95aa9e33a69e4d Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 5 Sep 2024 14:46:32 +0100 Subject: [PATCH 249/277] Tools: codes_config thread options --- tools/codes_config.in | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/tools/codes_config.in b/tools/codes_config.in index 53fe1f8bf..819f673e6 100755 --- a/tools/codes_config.in +++ b/tools/codes_config.in @@ -55,11 +55,13 @@ info() # echo " flags : @ECCODES_Fortran_FLAGS@" echo "" echo "Features:" - echo " AEC : $(print_feature @HAVE_AEC@)" - echo " MEMFS : $(print_feature @HAVE_MEMFS@)" - echo " NETCDF : $(print_feature @HAVE_NETCDF@)" - echo " JPG : $(print_feature @HAVE_JPEG@)" - echo " PNG : $(print_feature @HAVE_PNG@)" + echo " AEC : $(print_feature @HAVE_AEC@)" + echo " MEMFS : $(print_feature @HAVE_MEMFS@)" + echo " ECCODES_THREADS : $(print_feature @GRIB_PTHREADS@)" + echo " ECCODES_OMP_THREADS : $(print_feature @GRIB_OMP_THREADS@)" + echo " JPG : $(print_feature @HAVE_JPEG@)" + echo " PNG : $(print_feature @HAVE_PNG@)" + echo " NETCDF : $(print_feature @HAVE_NETCDF@)" echo "" # echo "Dependencies: " # if [ -n "@ECCODES_HAVE_ECKIT@" ]; then From 23651d524f9d6a3ca56443da579fcaeba27ade7e Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 5 Sep 2024 16:41:05 +0100 Subject: [PATCH 250/277] Dead code removal --- src/grib_geography.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/grib_geography.cc b/src/grib_geography.cc index 844a38abb..c864fec9e 100644 --- a/src/grib_geography.cc +++ b/src/grib_geography.cc @@ -143,8 +143,8 @@ static int compute_gaussian_latitudes(long trunc, double* lats) lats[nlat - 1 - jlat] = -lats[jlat]; } - if (nlat != (trunc * 2)) - lats[trunc + 1] = 0.0; + //if (nlat != (trunc * 2)) + // lats[trunc + 1] = 0.0; return GRIB_SUCCESS; } From 845a4616657b9c7f656ca3c50c01937778d73bd5 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 5 Sep 2024 16:49:41 +0100 Subject: [PATCH 251/277] Compiler warnings --- src/grib_context.cc | 4 ++-- src/grib_fieldset.cc | 30 +++++++++++------------------- src/grib_filepool.cc | 4 ++-- 3 files changed, 15 insertions(+), 23 deletions(-) diff --git a/src/grib_context.cc b/src/grib_context.cc index 75681a195..b8d71ae0e 100644 --- a/src/grib_context.cc +++ b/src/grib_context.cc @@ -810,14 +810,14 @@ void grib_context_reset(grib_context* c) if (c->grib_definition_files_dir) { grib_string_list* next = c->grib_definition_files_dir; - grib_string_list* cur = NULL; + grib_string_list* cur = NULL; while (next) { cur = next; next = next->next; grib_context_free(c, cur->value); grib_context_free(c, cur); } - c->grib_definition_files_dir=0; + c->grib_definition_files_dir = 0; } if (c->multi_support_on) diff --git a/src/grib_fieldset.cc b/src/grib_fieldset.cc index a37013844..3bee07caf 100644 --- a/src/grib_fieldset.cc +++ b/src/grib_fieldset.cc @@ -113,14 +113,12 @@ static int grib_fieldset_new_column(grib_fieldset* set, int id, char* key, int t static void grib_fieldset_delete_columns(grib_fieldset* set) { - int i = 0; - grib_context* c; - if (!set) return; - c = set->context; - for (i = 0; i < set->columns_size; i++) { + const grib_context* c = set->context; + + for (size_t i = 0; i < set->columns_size; i++) { int j = 0; switch (set->columns[i].type) { case GRIB_TYPE_LONG: @@ -146,22 +144,19 @@ static void grib_fieldset_delete_columns(grib_fieldset* set) static int grib_fieldset_columns_resize(grib_fieldset* set, size_t newsize) { - double* newdoubles; - long* newlongs; - char** newstrings; - int* newerrors; - int i = 0; - grib_context* c; - if (!set || !set->columns) return GRIB_INVALID_ARGUMENT; - c = set->context; + double* newdoubles = NULL; + long* newlongs = NULL; + char** newstrings = NULL; + int* newerrors = NULL; + const grib_context* c = set->context; if (newsize <= set->columns[0].values_array_size) return 0; - for (i = 0; i < set->columns_size; i++) { + for (size_t i = 0; i < set->columns_size; i++) { switch (set->columns[i].type) { case GRIB_TYPE_LONG: newlongs = (long*)grib_context_realloc(c, set->columns[i].long_values, @@ -818,12 +813,9 @@ static int grib_fieldset_resize_int_array(grib_int_array* a, size_t newsize) static void grib_fieldset_delete_int_array(grib_int_array* f) { - grib_context* c = NULL; - - if (!f) - return; - c = f->context; + if (!f) return; + const grib_context* c = f->context; grib_context_free(c, f->el); grib_context_free(c, f); } diff --git a/src/grib_filepool.cc b/src/grib_filepool.cc index 21f0a5b22..f651c590d 100644 --- a/src/grib_filepool.cc +++ b/src/grib_filepool.cc @@ -287,8 +287,8 @@ void grib_file_pool_delete_file(grib_file* file) void grib_file_close(const char* filename, int force, int* err) { - grib_file* file = NULL; - grib_context* context = grib_context_get_default(); + grib_file* file = NULL; + const grib_context* context = grib_context_get_default(); /* Performance: keep the files open to avoid opening and closing files when writing the output. */ /* So only call fclose() when too many files are open. */ From da32d6d8da3ed60db1ee978bdb839b24365c3b56 Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 5 Sep 2024 17:48:54 +0100 Subject: [PATCH 252/277] Remove grib_emoslib.h --- src/CMakeLists.txt | 1 - src/grib_emoslib.h | 13 ------------- 2 files changed, 14 deletions(-) delete mode 100644 src/grib_emoslib.h diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 2f6a232fb..a6bf02848 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -357,7 +357,6 @@ list( APPEND eccodes_src_files eccodes_prototypes.h grib_dumper_class.h grib_dumper_factory.h - grib_emoslib.h grib_iterator_class.h grib_iterator_factory.h grib_nearest_class.h diff --git a/src/grib_emoslib.h b/src/grib_emoslib.h deleted file mode 100644 index 0b15aef3a..000000000 --- a/src/grib_emoslib.h +++ /dev/null @@ -1,13 +0,0 @@ -/* - * (C) Copyright 2005- ECMWF. - * - * This software is licensed under the terms of the Apache Licence Version 2.0 - * which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. - * - * In applying this licence, ECMWF does not waive the privileges and immunities granted to it by - * virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction. - */ - -int igglat_(long* KLAT, float* PGAUSS, long* KPR, long* KERR); -void gribex_(long* KSEC0, long* KSEC1, long* KSEC2, double* PSEC2, long* KSEC3, double* PSEC3, long* KSEC4, - double* PSEC4, long* KLENP, void* KGRIB, long* KLENG, long* KWORD, char* HOPER, long* KRET); From 3ac390825c87a8dd2135bab02e14127a26d01c22 Mon Sep 17 00:00:00 2001 From: Robert Osinski Date: Fri, 6 Sep 2024 09:57:23 +0000 Subject: [PATCH 253/277] ECC-1915: GRIB2 CMCC origin for class=ci --- definitions/mars/grib.mmsa.em.def | 2 +- definitions/mars/grib.mmsa.fcmean.def | 2 +- definitions/mars/grib.mmsf.an.def | 2 +- definitions/mars/grib.mmsf.fc.def | 2 +- definitions/mars/grib.msmm.em.def | 2 +- definitions/mars/grib.msmm.fcmax.def | 2 +- definitions/mars/grib.msmm.fcmean.def | 2 +- definitions/mars/grib.msmm.fcmin.def | 2 +- definitions/mars/grib.msmm.fcstdev.def | 2 +- definitions/mars/grib.msmm.hcmean.def | 18 +++++++++++++++++- 10 files changed, 26 insertions(+), 10 deletions(-) mode change 120000 => 100644 definitions/mars/grib.msmm.hcmean.def diff --git a/definitions/mars/grib.mmsa.em.def b/definitions/mars/grib.mmsa.em.def index 6d152901b..a4e6f175f 100644 --- a/definitions/mars/grib.mmsa.em.def +++ b/definitions/mars/grib.mmsa.em.def @@ -6,7 +6,7 @@ if (class is "od") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.mmsa.fcmean.def b/definitions/mars/grib.mmsa.fcmean.def index f828d5a8c..213517b04 100644 --- a/definitions/mars/grib.mmsa.fcmean.def +++ b/definitions/mars/grib.mmsa.fcmean.def @@ -8,7 +8,7 @@ if (class is "od") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.mmsf.an.def b/definitions/mars/grib.mmsf.an.def index 86ccb55b5..20e418ce5 100644 --- a/definitions/mars/grib.mmsf.an.def +++ b/definitions/mars/grib.mmsf.an.def @@ -15,7 +15,7 @@ if (class isnot "gw") { # ECC-1448 } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.mmsf.fc.def b/definitions/mars/grib.mmsf.fc.def index 30b2f7394..6fe01e2a6 100644 --- a/definitions/mars/grib.mmsf.fc.def +++ b/definitions/mars/grib.mmsf.fc.def @@ -18,7 +18,7 @@ if (class isnot "gw") { # ECC-1448 } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.em.def b/definitions/mars/grib.msmm.em.def index 3131d45a7..663003e8e 100644 --- a/definitions/mars/grib.msmm.em.def +++ b/definitions/mars/grib.msmm.em.def @@ -11,7 +11,7 @@ if (class is "en") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.fcmax.def b/definitions/mars/grib.msmm.fcmax.def index 573343213..b548cbdc0 100644 --- a/definitions/mars/grib.msmm.fcmax.def +++ b/definitions/mars/grib.msmm.fcmax.def @@ -12,7 +12,7 @@ if (class is "en") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.fcmean.def b/definitions/mars/grib.msmm.fcmean.def index a13ca9918..c532f33fd 100644 --- a/definitions/mars/grib.msmm.fcmean.def +++ b/definitions/mars/grib.msmm.fcmean.def @@ -13,7 +13,7 @@ if (class is "c3") { alias mars.system = systemNumber; } if (class is "ci") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.fcmin.def b/definitions/mars/grib.msmm.fcmin.def index 59f10189a..c052e512e 100644 --- a/definitions/mars/grib.msmm.fcmin.def +++ b/definitions/mars/grib.msmm.fcmin.def @@ -12,7 +12,7 @@ if (class is "en") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.fcstdev.def b/definitions/mars/grib.msmm.fcstdev.def index f4b8c2414..20b330ba3 100644 --- a/definitions/mars/grib.msmm.fcstdev.def +++ b/definitions/mars/grib.msmm.fcstdev.def @@ -13,7 +13,7 @@ if (class is "en") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && class is "c3") { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } diff --git a/definitions/mars/grib.msmm.hcmean.def b/definitions/mars/grib.msmm.hcmean.def deleted file mode 120000 index 0b5cb2f13..000000000 --- a/definitions/mars/grib.msmm.hcmean.def +++ /dev/null @@ -1 +0,0 @@ -grib.msmm.em.def \ No newline at end of file diff --git a/definitions/mars/grib.msmm.hcmean.def b/definitions/mars/grib.msmm.hcmean.def new file mode 100644 index 000000000..6e1de7002 --- /dev/null +++ b/definitions/mars/grib.msmm.hcmean.def @@ -0,0 +1,17 @@ +# assert(16); +alias mars.fcmonth = marsForecastMonth; +unalias mars.step; + +alias mars.origin = centre; +alias mars.method = methodNumber; + +if (class is "od") { alias mars.system = systemNumber; } +if (class is "me") { alias mars.system = systemNumber; } +if (class is "en") { alias mars.system = systemNumber; } +if (class is "c3") { alias mars.system = systemNumber; } + +# See ECC-624 +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci" (class is "c3" || class is "ci")) { + constant cnmc_cmcc = 'cmcc'; + alias mars.origin = cnmc_cmcc; +} From 87992950b85cc06506b70bc392b2fa3ca1bb302f Mon Sep 17 00:00:00 2001 From: Robert Osinski Date: Fri, 6 Sep 2024 10:34:37 +0000 Subject: [PATCH 254/277] ECC-1915: unalias mars.method for class cerise --- definitions/mars/grib.mmsa.em.def | 3 +++ definitions/mars/grib.mmsa.fcmean.def | 3 +++ definitions/mars/grib.msmm.em.def | 3 +++ definitions/mars/grib.msmm.fcmax.def | 3 +++ definitions/mars/grib.msmm.fcmin.def | 2 ++ definitions/mars/grib.msmm.fcstdev.def | 2 ++ definitions/mars/grib.msmm.hcmean.def | 2 ++ 7 files changed, 18 insertions(+) diff --git a/definitions/mars/grib.mmsa.em.def b/definitions/mars/grib.mmsa.em.def index a4e6f175f..36ac9adc5 100644 --- a/definitions/mars/grib.mmsa.em.def +++ b/definitions/mars/grib.mmsa.em.def @@ -10,3 +10,6 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } + diff --git a/definitions/mars/grib.mmsa.fcmean.def b/definitions/mars/grib.mmsa.fcmean.def index 213517b04..3b7f185b3 100644 --- a/definitions/mars/grib.mmsa.fcmean.def +++ b/definitions/mars/grib.mmsa.fcmean.def @@ -12,3 +12,6 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } + diff --git a/definitions/mars/grib.msmm.em.def b/definitions/mars/grib.msmm.em.def index 663003e8e..86376c834 100644 --- a/definitions/mars/grib.msmm.em.def +++ b/definitions/mars/grib.msmm.em.def @@ -15,3 +15,6 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } + diff --git a/definitions/mars/grib.msmm.fcmax.def b/definitions/mars/grib.msmm.fcmax.def index b548cbdc0..b64b923a1 100644 --- a/definitions/mars/grib.msmm.fcmax.def +++ b/definitions/mars/grib.msmm.fcmax.def @@ -16,3 +16,6 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } + diff --git a/definitions/mars/grib.msmm.fcmin.def b/definitions/mars/grib.msmm.fcmin.def index c052e512e..158383e2c 100644 --- a/definitions/mars/grib.msmm.fcmin.def +++ b/definitions/mars/grib.msmm.fcmin.def @@ -16,3 +16,5 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } diff --git a/definitions/mars/grib.msmm.fcstdev.def b/definitions/mars/grib.msmm.fcstdev.def index 20b330ba3..3a563515b 100644 --- a/definitions/mars/grib.msmm.fcstdev.def +++ b/definitions/mars/grib.msmm.fcstdev.def @@ -17,3 +17,5 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } diff --git a/definitions/mars/grib.msmm.hcmean.def b/definitions/mars/grib.msmm.hcmean.def index 6e1de7002..8fc0cda27 100644 --- a/definitions/mars/grib.msmm.hcmean.def +++ b/definitions/mars/grib.msmm.hcmean.def @@ -15,3 +15,5 @@ if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci" (class is constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } + +if (class is "ci") { unalias mars.method; } From 1ffdb64b7ddb5d65a7baf512518c8452f054297b Mon Sep 17 00:00:00 2001 From: Robert Osinski Date: Fri, 6 Sep 2024 10:41:30 +0000 Subject: [PATCH 255/277] correction of typos --- definitions/mars/grib.msmm.hcmean.def | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/definitions/mars/grib.msmm.hcmean.def b/definitions/mars/grib.msmm.hcmean.def index 8fc0cda27..cbdd6704a 100644 --- a/definitions/mars/grib.msmm.hcmean.def +++ b/definitions/mars/grib.msmm.hcmean.def @@ -11,7 +11,7 @@ if (class is "en") { alias mars.system = systemNumber; } if (class is "c3") { alias mars.system = systemNumber; } # See ECC-624 -if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci" (class is "c3" || class is "ci")) { +if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { constant cnmc_cmcc = 'cmcc'; alias mars.origin = cnmc_cmcc; } From afaf3d6bc52b7f09c668f729c7d3b989d16c8b7c Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 6 Sep 2024 14:00:40 +0100 Subject: [PATCH 256/277] Tools: codes_config options --- tools/codes_config.in | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/codes_config.in b/tools/codes_config.in index 819f673e6..fa15d0115 100755 --- a/tools/codes_config.in +++ b/tools/codes_config.in @@ -36,7 +36,7 @@ print_feature() build_type="@CMAKE_BUILD_TYPE@" info() { - echo "ecCodes version (${ECCODES_VERSION_STR}), git-sha1 ${ECCODES_GIT_SHA1}" + echo "ecCodes version ${ECCODES_VERSION_STR}, git-sha1 ${ECCODES_GIT_SHA1}" echo "" echo "Build:" echo " build type : @CMAKE_BUILD_TYPE@" @@ -55,6 +55,7 @@ info() # echo " flags : @ECCODES_Fortran_FLAGS@" echo "" echo "Features:" + echo " FORTRAN : $(print_feature @HAVE_FORTRAN@)" echo " AEC : $(print_feature @HAVE_AEC@)" echo " MEMFS : $(print_feature @HAVE_MEMFS@)" echo " ECCODES_THREADS : $(print_feature @GRIB_PTHREADS@)" From ac4dc27fed28dd01d9107f35905ab6d5861387a1 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 6 Sep 2024 14:14:24 +0100 Subject: [PATCH 257/277] cppcheck warning: Member variable 'name' also defined in base class --- src/accessor/grib_accessor_class_getenv.cc | 9 +++++---- src/accessor/grib_accessor_class_getenv.h | 5 ++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/accessor/grib_accessor_class_getenv.cc b/src/accessor/grib_accessor_class_getenv.cc index a6d6f9c72..89ec5d90d 100644 --- a/src/accessor/grib_accessor_class_getenv.cc +++ b/src/accessor/grib_accessor_class_getenv.cc @@ -18,10 +18,11 @@ void grib_accessor_class_getenv_t::init(grib_accessor* a, const long l, grib_arg { grib_accessor_class_ascii_t::init(a, l, args); grib_accessor_getenv_t* self = (grib_accessor_getenv_t*)a; - static char undefined[] = "undefined"; + static char undefined[] = "undefined"; + grib_handle* hand = grib_handle_of_accessor(a); - self->name = grib_arguments_get_string(grib_handle_of_accessor(a), args, 0); - self->default_value = grib_arguments_get_string(grib_handle_of_accessor(a), args, 1); + self->envvar = grib_arguments_get_string(hand, args, 0); + self->default_value = grib_arguments_get_string(hand, args, 1); if (!self->default_value) self->default_value = undefined; self->value = 0; @@ -39,7 +40,7 @@ int grib_accessor_class_getenv_t::unpack_string(grib_accessor* a, char* val, siz size_t l = 0; if (!self->value) { - v = getenv(self->name); + v = getenv(self->envvar); if (!v) v = (char*)self->default_value; self->value = v; diff --git a/src/accessor/grib_accessor_class_getenv.h b/src/accessor/grib_accessor_class_getenv.h index b04c58a4d..ee43f136b 100644 --- a/src/accessor/grib_accessor_class_getenv.h +++ b/src/accessor/grib_accessor_class_getenv.h @@ -15,7 +15,7 @@ class grib_accessor_getenv_t : public grib_accessor_ascii_t { public: - const char* name; + const char* envvar; char* value; const char* default_value; }; @@ -23,7 +23,7 @@ class grib_accessor_getenv_t : public grib_accessor_ascii_t class grib_accessor_class_getenv_t : public grib_accessor_class_ascii_t { public: - grib_accessor_class_getenv_t(const char* name) : grib_accessor_class_ascii_t(name) {} + grib_accessor_class_getenv_t(const char* envvar) : grib_accessor_class_ascii_t(envvar) {} grib_accessor* create_empty_accessor() override { return new grib_accessor_getenv_t{}; } int pack_string(grib_accessor*, const char*, size_t* len) override; int unpack_string(grib_accessor*, char*, size_t* len) override; @@ -31,4 +31,3 @@ class grib_accessor_class_getenv_t : public grib_accessor_class_ascii_t int value_count(grib_accessor*, long*) override; void init(grib_accessor*, const long, grib_arguments*) override; }; - From d48e3f7fcca6c67bc0a6489d10fedbf665318913 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 6 Sep 2024 14:14:33 +0100 Subject: [PATCH 258/277] Const correctness --- src/accessor/grib_accessor_class_gen.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/accessor/grib_accessor_class_gen.cc b/src/accessor/grib_accessor_class_gen.cc index 3a721f196..cfe2707a6 100644 --- a/src/accessor/grib_accessor_class_gen.cc +++ b/src/accessor/grib_accessor_class_gen.cc @@ -310,7 +310,7 @@ long grib_accessor_class_gen_t::byte_offset(grib_accessor* a) int grib_accessor_class_gen_t::unpack_bytes(grib_accessor* a, unsigned char* val, size_t* len) { - unsigned char* buf = grib_handle_of_accessor(a)->buffer->data; + const unsigned char* buf = grib_handle_of_accessor(a)->buffer->data; const long length = a->byte_count(); const long offset = a->byte_offset(); From 1f2fbf4710c88da96b2d4b22146213b06b646185 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 6 Sep 2024 14:39:45 +0100 Subject: [PATCH 259/277] Const correctness --- src/accessor/grib_accessor_class_g1bitmap.cc | 2 +- ...rib_accessor_class_g1end_of_interval_monthly.cc | 14 ++++++++------ src/accessor/grib_accessor_class_group.cc | 2 +- src/accessor/grib_accessor_class_gts_header.cc | 2 +- 4 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/accessor/grib_accessor_class_g1bitmap.cc b/src/accessor/grib_accessor_class_g1bitmap.cc index 331b800c5..afb713b30 100644 --- a/src/accessor/grib_accessor_class_g1bitmap.cc +++ b/src/accessor/grib_accessor_class_g1bitmap.cc @@ -77,7 +77,7 @@ int grib_accessor_class_g1bitmap_t::value_count(grib_accessor* a, long* count) int grib_accessor_class_g1bitmap_t::unpack_bytes(grib_accessor* a, unsigned char* val, size_t* len) { - unsigned char* buf = grib_handle_of_accessor(a)->buffer->data; + const unsigned char* buf = grib_handle_of_accessor(a)->buffer->data; grib_accessor_g1bitmap_t* self = (grib_accessor_g1bitmap_t*)a; long tlen; int err; diff --git a/src/accessor/grib_accessor_class_g1end_of_interval_monthly.cc b/src/accessor/grib_accessor_class_g1end_of_interval_monthly.cc index 3bf953598..b8b02853a 100644 --- a/src/accessor/grib_accessor_class_g1end_of_interval_monthly.cc +++ b/src/accessor/grib_accessor_class_g1end_of_interval_monthly.cc @@ -18,7 +18,7 @@ void grib_accessor_class_g1end_of_interval_monthly_t::init(grib_accessor* a, con { grib_accessor_class_abstract_vector_t::init(a, l, c); grib_accessor_g1end_of_interval_monthly_t* self = (grib_accessor_g1end_of_interval_monthly_t*)a; - int n = 0; + int n = 0; self->verifyingMonth = grib_arguments_get_name(grib_handle_of_accessor(a), c, n++); a->flags |= GRIB_ACCESSOR_FLAG_READ_ONLY; @@ -26,7 +26,7 @@ void grib_accessor_class_g1end_of_interval_monthly_t::init(grib_accessor* a, con a->flags |= GRIB_ACCESSOR_FLAG_HIDDEN; self->number_of_elements = 6; - self->v = (double*)grib_context_malloc(a->context, sizeof(double) * self->number_of_elements); + self->v = (double*)grib_context_malloc(a->context, sizeof(double) * self->number_of_elements); a->length = 0; a->dirty = 1; @@ -90,8 +90,8 @@ int grib_accessor_class_g1end_of_interval_monthly_t::unpack_double(grib_accessor int grib_accessor_class_g1end_of_interval_monthly_t::value_count(grib_accessor* a, long* count) { - grib_accessor_g1end_of_interval_monthly_t* self = (grib_accessor_g1end_of_interval_monthly_t*)a; - *count = self->number_of_elements; + const grib_accessor_g1end_of_interval_monthly_t* self = (grib_accessor_g1end_of_interval_monthly_t*)a; + *count = self->number_of_elements; return 0; } @@ -111,9 +111,8 @@ int grib_accessor_class_g1end_of_interval_monthly_t::compare(grib_accessor* a, g long count = 0; size_t alen = 0; size_t blen = 0; - int err = 0; - err = a->value_count(&count); + int err = a->value_count(&count); if (err) return err; alen = count; @@ -133,7 +132,10 @@ int grib_accessor_class_g1end_of_interval_monthly_t::compare(grib_accessor* a, g a->dirty = 1; err = a->unpack_double(aval, &alen); + if (err) return err; err = b->unpack_double(bval, &blen); + if (err) return err; + for (size_t i = 0; i < alen && retval == GRIB_SUCCESS; ++i) { if (aval[i] != bval[i]) retval = GRIB_DOUBLE_VALUE_MISMATCH; } diff --git a/src/accessor/grib_accessor_class_group.cc b/src/accessor/grib_accessor_class_group.cc index 74051d17d..c6e52bb9c 100644 --- a/src/accessor/grib_accessor_class_group.cc +++ b/src/accessor/grib_accessor_class_group.cc @@ -17,7 +17,7 @@ grib_accessor_class* grib_accessor_class_group = &_grib_accessor_class_group; void grib_accessor_class_group_t::init(grib_accessor* a, const long len, grib_arguments* arg) { grib_accessor_class_gen_t::init(a, len, arg); - grib_buffer* buffer = grib_handle_of_accessor(a)->buffer; + const grib_buffer* buffer = grib_handle_of_accessor(a)->buffer; grib_accessor_group_t* self = (grib_accessor_group_t*)a; size_t i = 0; diff --git a/src/accessor/grib_accessor_class_gts_header.cc b/src/accessor/grib_accessor_class_gts_header.cc index 5b158c6d1..d069b1c58 100644 --- a/src/accessor/grib_accessor_class_gts_header.cc +++ b/src/accessor/grib_accessor_class_gts_header.cc @@ -59,6 +59,6 @@ int grib_accessor_class_gts_header_t::value_count(grib_accessor* a, long* count) size_t grib_accessor_class_gts_header_t::string_length(grib_accessor* a) { - grib_handle* h = grib_handle_of_accessor(a); + const grib_handle* h = grib_handle_of_accessor(a); return h->gts_header_len; } From 6115373ce44d29ec58fb9cc1dc6a824d817af0e7 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 6 Sep 2024 14:40:17 +0100 Subject: [PATCH 260/277] cppcheck warning: Member variables 'offset' and 'length' also defined in base class --- src/accessor/grib_accessor_class_md5.cc | 10 +++++----- src/accessor/grib_accessor_class_md5.h | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/accessor/grib_accessor_class_md5.cc b/src/accessor/grib_accessor_class_md5.cc index 40cbae672..a148787af 100644 --- a/src/accessor/grib_accessor_class_md5.cc +++ b/src/accessor/grib_accessor_class_md5.cc @@ -25,9 +25,9 @@ void grib_accessor_class_md5_t::init(grib_accessor* a, const long len, grib_argu grib_string_list* current = 0; grib_context* context = a->context; - self->offset = grib_arguments_get_name(grib_handle_of_accessor(a), arg, n++); - self->length = grib_arguments_get_expression(grib_handle_of_accessor(a), arg, n++); - self->blocklist = NULL; + self->offset_key = grib_arguments_get_name(grib_handle_of_accessor(a), arg, n++); + self->length_key = grib_arguments_get_expression(grib_handle_of_accessor(a), arg, n++); + self->blocklist = NULL; while ((b = (char*)grib_arguments_get_name(grib_handle_of_accessor(a), arg, n++)) != NULL) { if (!self->blocklist) { self->blocklist = (grib_string_list*)grib_context_malloc_clear(context, sizeof(grib_string_list)); @@ -99,9 +99,9 @@ int grib_accessor_class_md5_t::unpack_string(grib_accessor* a, char* v, size_t* return GRIB_BUFFER_TOO_SMALL; } - if ((ret = grib_get_long_internal(grib_handle_of_accessor(a), self->offset, &offset)) != GRIB_SUCCESS) + if ((ret = grib_get_long_internal(grib_handle_of_accessor(a), self->offset_key, &offset)) != GRIB_SUCCESS) return ret; - if ((ret = grib_expression_evaluate_long(grib_handle_of_accessor(a), self->length, &length)) != GRIB_SUCCESS) + if ((ret = grib_expression_evaluate_long(grib_handle_of_accessor(a), self->length_key, &length)) != GRIB_SUCCESS) return ret; mess = (unsigned char*)grib_context_malloc(a->context, length); memcpy(mess, grib_handle_of_accessor(a)->buffer->data + offset, length); diff --git a/src/accessor/grib_accessor_class_md5.h b/src/accessor/grib_accessor_class_md5.h index ae66f397f..42e58e002 100644 --- a/src/accessor/grib_accessor_class_md5.h +++ b/src/accessor/grib_accessor_class_md5.h @@ -17,8 +17,8 @@ class grib_accessor_md5_t : public grib_accessor_gen_t { public: /* Members defined in md5 */ - const char* offset; - grib_expression* length; + const char* offset_key; + grib_expression* length_key; grib_string_list* blocklist; }; From fc73927c42566f824a484093bfc1f616148febd4 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 6 Sep 2024 14:44:02 +0100 Subject: [PATCH 261/277] Const correctness --- src/accessor/grib_accessor_class_non_alpha.cc | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/accessor/grib_accessor_class_non_alpha.cc b/src/accessor/grib_accessor_class_non_alpha.cc index 7e434dfb6..48d9cef34 100644 --- a/src/accessor/grib_accessor_class_non_alpha.cc +++ b/src/accessor/grib_accessor_class_non_alpha.cc @@ -17,12 +17,10 @@ grib_accessor_class* grib_accessor_class_non_alpha = &_grib_accessor_class_non_a void grib_accessor_class_non_alpha_t::init(grib_accessor* a, const long len, grib_arguments* arg) { grib_accessor_class_gen_t::init(a, len, arg); - grib_buffer* buffer = grib_handle_of_accessor(a)->buffer; - size_t i = 0; - unsigned char* v; - v = buffer->data + a->offset; - i = 0; + const grib_buffer* buffer = grib_handle_of_accessor(a)->buffer; + unsigned char* v = buffer->data + a->offset; + size_t i = 0; while ((*v < 33 || *v > 126) && i <= buffer->ulength) { v++; i++; From 6924dc014a530537c558b43c576816a4e77877c7 Mon Sep 17 00:00:00 2001 From: shahramn Date: Fri, 6 Sep 2024 14:59:39 +0100 Subject: [PATCH 262/277] Const correctness --- src/accessor/grib_accessor_class_signed.cc | 7 +++---- src/accessor/grib_accessor_class_uint64.cc | 6 +++--- src/accessor/grib_accessor_class_uint64_little_endian.cc | 9 ++++----- src/accessor/grib_accessor_class_uint8.cc | 2 +- src/accessor/grib_accessor_class_unsigned.cc | 4 ++-- 5 files changed, 13 insertions(+), 15 deletions(-) diff --git a/src/accessor/grib_accessor_class_signed.cc b/src/accessor/grib_accessor_class_signed.cc index 36c20bd59..d240836ac 100644 --- a/src/accessor/grib_accessor_class_signed.cc +++ b/src/accessor/grib_accessor_class_signed.cc @@ -199,17 +199,16 @@ long grib_accessor_class_signed_t::next_offset(grib_accessor* a) int grib_accessor_class_signed_t::is_missing(grib_accessor* a) { - int i = 0; - unsigned char ff = 0xff; + unsigned char ff = 0xff; unsigned long offset = a->offset; - grib_handle* hand = grib_handle_of_accessor(a); + const grib_handle* hand = grib_handle_of_accessor(a); if (a->length == 0) { Assert(a->vvalue != NULL); return a->vvalue->missing; } - for (i = 0; i < a->length; i++) { + for (long i = 0; i < a->length; i++) { if (hand->buffer->data[offset] != ff) return 0; offset++; diff --git a/src/accessor/grib_accessor_class_uint64.cc b/src/accessor/grib_accessor_class_uint64.cc index a800a4630..78e1a54c0 100644 --- a/src/accessor/grib_accessor_class_uint64.cc +++ b/src/accessor/grib_accessor_class_uint64.cc @@ -16,9 +16,9 @@ grib_accessor_class* grib_accessor_class_uint64 = &_grib_accessor_class_uint64; int grib_accessor_class_uint64_t::unpack_long(grib_accessor* a, long* val, size_t* len) { - long value = 0; - long pos = a->offset; - unsigned char* data = grib_handle_of_accessor(a)->buffer->data; + long value = 0; + long pos = a->offset; + const unsigned char* data = grib_handle_of_accessor(a)->buffer->data; unsigned long long result = 0, tmp; int i; diff --git a/src/accessor/grib_accessor_class_uint64_little_endian.cc b/src/accessor/grib_accessor_class_uint64_little_endian.cc index 25e537dbe..b98b7a90f 100644 --- a/src/accessor/grib_accessor_class_uint64_little_endian.cc +++ b/src/accessor/grib_accessor_class_uint64_little_endian.cc @@ -16,17 +16,16 @@ grib_accessor_class* grib_accessor_class_uint64_little_endian = &_grib_accessor_ int grib_accessor_class_uint64_little_endian_t::unpack_long(grib_accessor* a, long* val, size_t* len) { - long value = 0; - long pos = a->offset; - unsigned char* data = grib_handle_of_accessor(a)->buffer->data; + long value = 0; + long pos = a->offset; + const unsigned char* data = grib_handle_of_accessor(a)->buffer->data; unsigned long long result = 0, tmp; - int i; if (*len < 1) { return GRIB_ARRAY_TOO_SMALL; } - for (i = 7; i >= 0; i--) { + for (int i = 7; i >= 0; i--) { result <<= 8; result |= data[pos + i]; } diff --git a/src/accessor/grib_accessor_class_uint8.cc b/src/accessor/grib_accessor_class_uint8.cc index 90236aa50..9840353df 100644 --- a/src/accessor/grib_accessor_class_uint8.cc +++ b/src/accessor/grib_accessor_class_uint8.cc @@ -18,7 +18,7 @@ int grib_accessor_class_uint8_t::unpack_long(grib_accessor* a, long* val, size_t { long value = 0; long pos = a->offset; - unsigned char* data = grib_handle_of_accessor(a)->buffer->data; + const unsigned char* data = grib_handle_of_accessor(a)->buffer->data; if (*len < 1) { return GRIB_ARRAY_TOO_SMALL; diff --git a/src/accessor/grib_accessor_class_unsigned.cc b/src/accessor/grib_accessor_class_unsigned.cc index 14ca831a3..d2394072d 100644 --- a/src/accessor/grib_accessor_class_unsigned.cc +++ b/src/accessor/grib_accessor_class_unsigned.cc @@ -162,7 +162,7 @@ int pack_long_unsigned_helper(grib_accessor* a, const long* val, size_t* len, in int grib_accessor_class_unsigned_t::unpack_long(grib_accessor* a, long* val, size_t* len) { - grib_accessor_unsigned_t* self = (grib_accessor_unsigned_t*)a; + const grib_accessor_unsigned_t* self = (grib_accessor_unsigned_t*)a; long rlen = 0; unsigned long i = 0; @@ -245,7 +245,7 @@ int grib_accessor_class_unsigned_t::is_missing(grib_accessor* a) { const unsigned char ff = 0xff; unsigned long offset = a->offset; - grib_handle* hand = grib_handle_of_accessor(a); + const grib_handle* hand = grib_handle_of_accessor(a); if (a->length == 0) { Assert(a->vvalue != NULL); From 526ca4bb3240621a0c86f404ec4bb9ee559cabc2 Mon Sep 17 00:00:00 2001 From: foxtran <39676482+foxtran@users.noreply.github.com> Date: Sun, 1 Sep 2024 12:56:24 +0200 Subject: [PATCH 263/277] Fetch ecbuild if not downloaded before --- CMakeLists.txt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7e5290fa0..434b0b2af 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,18 @@ cmake_minimum_required( VERSION 3.12 FATAL_ERROR ) -find_package( ecbuild 3.7 REQUIRED HINTS ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/../ecbuild) +find_package( ecbuild 3.7 HINTS ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/../ecbuild) +if(NOT ecbuild_FOUND) + message(STATUS "Fetching ecbuild...") + include(FetchContent) + FetchContent_Declare( + ecbuild + GIT_REPOSITORY https://github.com/ecmwf/ecbuild.git + GIT_TAG 3.8.5 + ) + FetchContent_MakeAvailable(ecbuild) + find_package( ecbuild 3.7 REQUIRED ) +endif() # Initialise project project( eccodes LANGUAGES CXX ) From 5437cee025a4928bddeb3419de1c9fea956e4e66 Mon Sep 17 00:00:00 2001 From: "Igor S. Gerasimov" Date: Thu, 5 Sep 2024 22:53:39 +0200 Subject: [PATCH 264/277] MakeAvailable -> Populate --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 434b0b2af..794208436 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,8 +27,8 @@ if(NOT ecbuild_FOUND) GIT_REPOSITORY https://github.com/ecmwf/ecbuild.git GIT_TAG 3.8.5 ) - FetchContent_MakeAvailable(ecbuild) - find_package( ecbuild 3.7 REQUIRED ) + FetchContent_Populate(ecbuild) + find_package( ecbuild 3.7 REQUIRED HINTS ${ecbuild_SOURCE_DIR}) endif() # Initialise project From f25cedfad21389bf375ddfe12c4e9c4edc200f64 Mon Sep 17 00:00:00 2001 From: "Igor S. Gerasimov" Date: Sat, 7 Sep 2024 10:59:26 +0200 Subject: [PATCH 265/277] Merge FetchContent_Declare and FetchContent_Populate --- CMakeLists.txt | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 794208436..03ec9e2a7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -22,12 +22,10 @@ find_package( ecbuild 3.7 HINTS ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOUR if(NOT ecbuild_FOUND) message(STATUS "Fetching ecbuild...") include(FetchContent) - FetchContent_Declare( - ecbuild + FetchContent_Populate(ecbuild GIT_REPOSITORY https://github.com/ecmwf/ecbuild.git GIT_TAG 3.8.5 ) - FetchContent_Populate(ecbuild) find_package( ecbuild 3.7 REQUIRED HINTS ${ecbuild_SOURCE_DIR}) endif() From 15685f9922b36ba2f9ac077d789cfc73c8d52a28 Mon Sep 17 00:00:00 2001 From: shahramn Date: Mon, 9 Sep 2024 21:00:46 +0100 Subject: [PATCH 266/277] Tools: Set key 'file' for grib_ls --- tools/grib_ls.cc | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/tools/grib_ls.cc b/tools/grib_ls.cc index c5d06df01..08578502f 100644 --- a/tools/grib_ls.cc +++ b/tools/grib_ls.cc @@ -371,10 +371,6 @@ int grib_tool_new_handle_action(grib_runtime_options* options, grib_handle* h) } if (!json_latlon && options->json_output) { - if (options->current_infile && options->current_infile->name) { - size_t len = strlen(options->current_infile->name); - grib_set_string(h, "file", options->current_infile->name, &len); - } if (!first_handle && options->handle_count > 1) { fprintf(stdout, ",\n"); } @@ -383,6 +379,12 @@ int grib_tool_new_handle_action(grib_runtime_options* options, grib_handle* h) first_handle = 0; } } + + if (options->current_infile && options->current_infile->name) { + size = strlen(options->current_infile->name); + grib_set_string(h, "file", options->current_infile->name, &size); + } + new_handle = "\n,"; return 0; } From b74bc1e46c7861804a8040eed3714da2f1bef98d Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 10 Sep 2024 18:14:35 +0100 Subject: [PATCH 267/277] Definitions: Simplify IF statements --- definitions/mars/grib.mmam.fcmean.def | 5 +++-- definitions/mars/grib.msmm.em.def | 7 +++---- definitions/mars/grib.msmm.fcmax.def | 7 +++---- definitions/mars/grib.msmm.fcmean.def | 8 +++----- definitions/mars/grib.msmm.fcmin.def | 8 +++----- definitions/mars/grib.msmm.fcstdev.def | 7 +++---- definitions/mars/grib.msmm.hcmean.def | 7 +++---- definitions/mars/grib.ocea.an.def | 7 ++++--- definitions/mars/grib.ocea.ff.def | 6 +++--- definitions/mars/grib.ocea.fx.def | 6 +++--- definitions/mars/grib.ocea.of.def | 6 +++--- definitions/mars/grib.ocea.or.def | 6 +++--- definitions/mars/grib.swmm.fcmax.def | 6 +++--- definitions/mars/grib.swmm.fcmean.def | 6 +++--- definitions/mars/grib.swmm.fcmin.def | 6 +++--- definitions/mars/grib.swmm.fcstdev.def | 6 +++--- 16 files changed, 49 insertions(+), 55 deletions(-) diff --git a/definitions/mars/grib.mmam.fcmean.def b/definitions/mars/grib.mmam.fcmean.def index a2ece7923..84c4cce2f 100644 --- a/definitions/mars/grib.mmam.fcmean.def +++ b/definitions/mars/grib.mmam.fcmean.def @@ -4,5 +4,6 @@ alias mars.fcmonth = marsForecastMonth; unalias mars.step; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } +if (class is "od" || class is "en") { + alias mars.system = systemNumber; +} diff --git a/definitions/mars/grib.msmm.em.def b/definitions/mars/grib.msmm.em.def index 86376c834..cce87213b 100644 --- a/definitions/mars/grib.msmm.em.def +++ b/definitions/mars/grib.msmm.em.def @@ -5,10 +5,9 @@ unalias mars.step; alias mars.origin = centre; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } -if (class is "c3") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en" || class is "c3") { + alias mars.system = systemNumber; +} # See ECC-624 if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { diff --git a/definitions/mars/grib.msmm.fcmax.def b/definitions/mars/grib.msmm.fcmax.def index b64b923a1..52eecab7d 100644 --- a/definitions/mars/grib.msmm.fcmax.def +++ b/definitions/mars/grib.msmm.fcmax.def @@ -6,10 +6,9 @@ alias mars.number = perturbationNumber; alias mars.origin = centre; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } -if (class is "c3") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en" || class is "c3") { + alias mars.system = systemNumber; +} # See ECC-624 if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { diff --git a/definitions/mars/grib.msmm.fcmean.def b/definitions/mars/grib.msmm.fcmean.def index c532f33fd..7a7ff8e66 100644 --- a/definitions/mars/grib.msmm.fcmean.def +++ b/definitions/mars/grib.msmm.fcmean.def @@ -6,11 +6,9 @@ alias mars.method = methodNumber; unalias mars.step; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } -if (class is "c3") { alias mars.system = systemNumber; } -if (class is "ci") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en" || class is "c3" || class is "ci") { + alias mars.system = systemNumber; +} # See ECC-624 if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { diff --git a/definitions/mars/grib.msmm.fcmin.def b/definitions/mars/grib.msmm.fcmin.def index 158383e2c..0c3d347d0 100644 --- a/definitions/mars/grib.msmm.fcmin.def +++ b/definitions/mars/grib.msmm.fcmin.def @@ -5,11 +5,9 @@ alias mars.number = perturbationNumber; alias mars.origin = centre; alias mars.method = methodNumber; - -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } -if (class is "c3") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en" || class is "c3") { + alias mars.system = systemNumber; +} # See ECC-624 if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { diff --git a/definitions/mars/grib.msmm.fcstdev.def b/definitions/mars/grib.msmm.fcstdev.def index 3a563515b..86ac736a4 100644 --- a/definitions/mars/grib.msmm.fcstdev.def +++ b/definitions/mars/grib.msmm.fcstdev.def @@ -7,10 +7,9 @@ unalias mars.step; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } -if (class is "c3") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en" || class is "c3") { + alias mars.system = systemNumber; +} # See ECC-624 if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { diff --git a/definitions/mars/grib.msmm.hcmean.def b/definitions/mars/grib.msmm.hcmean.def index cbdd6704a..9fd3f4b70 100644 --- a/definitions/mars/grib.msmm.hcmean.def +++ b/definitions/mars/grib.msmm.hcmean.def @@ -5,10 +5,9 @@ unalias mars.step; alias mars.origin = centre; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } -if (class is "c3") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en" || class is "c3") { + alias mars.system = systemNumber; +} # See ECC-624 if (centre == 80 && subCentre == 98 && (class is "c3" || class is "ci")) { diff --git a/definitions/mars/grib.ocea.an.def b/definitions/mars/grib.ocea.an.def index d682c50bd..13ff8360e 100644 --- a/definitions/mars/grib.ocea.an.def +++ b/definitions/mars/grib.ocea.an.def @@ -1,5 +1,6 @@ alias mars.number = perturbationNumber; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } + +if (class is "od" || class is "me" || class is "en") { + alias mars.system = systemNumber; +} diff --git a/definitions/mars/grib.ocea.ff.def b/definitions/mars/grib.ocea.ff.def index d682c50bd..5a03a2e58 100644 --- a/definitions/mars/grib.ocea.ff.def +++ b/definitions/mars/grib.ocea.ff.def @@ -1,5 +1,5 @@ alias mars.number = perturbationNumber; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en") { + alias mars.system = systemNumber; +} diff --git a/definitions/mars/grib.ocea.fx.def b/definitions/mars/grib.ocea.fx.def index d682c50bd..5a03a2e58 100644 --- a/definitions/mars/grib.ocea.fx.def +++ b/definitions/mars/grib.ocea.fx.def @@ -1,5 +1,5 @@ alias mars.number = perturbationNumber; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en") { + alias mars.system = systemNumber; +} diff --git a/definitions/mars/grib.ocea.of.def b/definitions/mars/grib.ocea.of.def index d682c50bd..5a03a2e58 100644 --- a/definitions/mars/grib.ocea.of.def +++ b/definitions/mars/grib.ocea.of.def @@ -1,5 +1,5 @@ alias mars.number = perturbationNumber; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en") { + alias mars.system = systemNumber; +} diff --git a/definitions/mars/grib.ocea.or.def b/definitions/mars/grib.ocea.or.def index d682c50bd..5a03a2e58 100644 --- a/definitions/mars/grib.ocea.or.def +++ b/definitions/mars/grib.ocea.or.def @@ -1,5 +1,5 @@ alias mars.number = perturbationNumber; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en") { + alias mars.system = systemNumber; +} diff --git a/definitions/mars/grib.swmm.fcmax.def b/definitions/mars/grib.swmm.fcmax.def index a628fb1a2..864aed20f 100644 --- a/definitions/mars/grib.swmm.fcmax.def +++ b/definitions/mars/grib.swmm.fcmax.def @@ -4,6 +4,6 @@ alias mars.number = perturbationNumber; unalias mars.step; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en") { + alias mars.system = systemNumber; +} diff --git a/definitions/mars/grib.swmm.fcmean.def b/definitions/mars/grib.swmm.fcmean.def index a628fb1a2..864aed20f 100644 --- a/definitions/mars/grib.swmm.fcmean.def +++ b/definitions/mars/grib.swmm.fcmean.def @@ -4,6 +4,6 @@ alias mars.number = perturbationNumber; unalias mars.step; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en") { + alias mars.system = systemNumber; +} diff --git a/definitions/mars/grib.swmm.fcmin.def b/definitions/mars/grib.swmm.fcmin.def index a628fb1a2..864aed20f 100644 --- a/definitions/mars/grib.swmm.fcmin.def +++ b/definitions/mars/grib.swmm.fcmin.def @@ -4,6 +4,6 @@ alias mars.number = perturbationNumber; unalias mars.step; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en") { + alias mars.system = systemNumber; +} diff --git a/definitions/mars/grib.swmm.fcstdev.def b/definitions/mars/grib.swmm.fcstdev.def index a628fb1a2..864aed20f 100644 --- a/definitions/mars/grib.swmm.fcstdev.def +++ b/definitions/mars/grib.swmm.fcstdev.def @@ -4,6 +4,6 @@ alias mars.number = perturbationNumber; unalias mars.step; alias mars.method = methodNumber; -if (class is "od") { alias mars.system = systemNumber; } -if (class is "me") { alias mars.system = systemNumber; } -if (class is "en") { alias mars.system = systemNumber; } +if (class is "od" || class is "me" || class is "en") { + alias mars.system = systemNumber; +} From fa83e2d0bd48c32d7745c9e28fdfbe850fe4292f Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 17 Sep 2024 09:57:57 +0100 Subject: [PATCH 268/277] Dumper: Labels etc --- src/grib_dumper.cc | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/grib_dumper.cc b/src/grib_dumper.cc index bfebdc2d3..f8d826f65 100644 --- a/src/grib_dumper.cc +++ b/src/grib_dumper.cc @@ -123,7 +123,6 @@ void grib_dump_string_array(grib_dumper* d, grib_accessor* a, const char* commen } c = c->super ? *(c->super) : NULL; } - Assert(0); } void grib_dump_label(grib_dumper* d, grib_accessor* a, const char* comment) @@ -136,7 +135,6 @@ void grib_dump_label(grib_dumper* d, grib_accessor* a, const char* comment) } c = c->super ? *(c->super) : NULL; } - Assert(0); } void grib_dump_bytes(grib_dumper* d, grib_accessor* a, const char* comment) From 11d4f0ba6ff5d69212107c29fbd4347391ae2cd2 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 17 Sep 2024 11:37:39 +0100 Subject: [PATCH 269/277] Dumper: Add missing methods --- definitions/bufr/rdb_key.def | 1 + definitions/bufr/section.3.def | 31 +++++++------- src/grib_dumper.cc | 7 ---- src/grib_dumper_class_debug.cc | 75 +++++++++++++++++++++++++++++++++- tests/grib_dump_debug.sh | 6 +++ 5 files changed, 96 insertions(+), 24 deletions(-) diff --git a/definitions/bufr/rdb_key.def b/definitions/bufr/rdb_key.def index eea896d3e..a32343acb 100644 --- a/definitions/bufr/rdb_key.def +++ b/definitions/bufr/rdb_key.def @@ -1,4 +1,5 @@ # RDB stands for REPORT DATA BASE +# See https://confluence.ecmwf.int/pages/viewpage.action?pageId=24316441 unsigned[1] rdbType : dump; unsigned[1] oldSubtype: dump; diff --git a/definitions/bufr/section.3.def b/definitions/bufr/section.3.def index d223bbbb2..56fa58ad1 100644 --- a/definitions/bufr/section.3.def +++ b/definitions/bufr/section.3.def @@ -50,7 +50,7 @@ unsigned[1] reservedSection3 = 0; unsigned[2] numberOfSubsets : dump; alias ls.numberOfSubsets=numberOfSubsets; -if (section2Present && bufrHeaderCentre==98 && section2Length==52) { +if (section2Present && bufrHeaderCentre == 98 && section2Length == 52) { if ( rdbType == 2 || rdbType == 3 || rdbType == 8 || rdbType == 12 || rdbType == 30 ) { transient isSatelliteType=1; } else { @@ -69,10 +69,11 @@ if (section2Present && bufrHeaderCentre==98 && section2Length==52) { meta localLatitude2 bits(keyMore,32,25,-9000000,100000) : dump,no_copy; # This rule is taken from BUFRDC. See bufrdc_wmo/buukey.F - # Also see ECC-686 - if (oldSubtype == 255 || numberOfSubsets>255 || - ( oldSubtype>=121 && oldSubtype <=130 ) || - oldSubtype==31) { + # See ECC-686 + # and https://confluence.ecmwf.int/pages/viewpage.action?pageId=24316441 + if (oldSubtype == 255 || numberOfSubsets > 255 || + ( oldSubtype >= 121 && oldSubtype <= 130 ) || + oldSubtype == 31) { meta ls.localNumberOfObservations bits(keySat,0,16) : dump,long_type,no_copy; meta ls.satelliteID bits(keySat,16,16) : dump,long_type,no_copy; } else { @@ -114,16 +115,16 @@ meta bufrdcExpandedDescriptors bufrdc_expanded_descriptors(expandedCodes) : no_c #smart_table NAME (VALUES,FILE_NAME,MASTER_DIRECTORY,LOCAL_DIRECTORY,WIDTH_OF_CODE_IN_BITS,EXTRA_DIRECTORY,EXTRA_FILE_NAME); #Note: The WIDTH_OF_CODE_IN_BITS has to be big enough so 2^width > the highest BUFR descriptor code smart_table expandedOriginalCodes (expandedCodes,"element.table",tablesMasterDir,tablesLocalDir,18,rootTablesDir,"operators.table") :no_copy; -meta expandedAbbreviations smart_table_column(expandedOriginalCodes,0,1) : string_type,no_copy; -meta expandedTypes smart_table_column(expandedOriginalCodes,1,0) : string_type,no_copy; -meta expandedNames smart_table_column(expandedOriginalCodes,2,0) : string_type,no_copy; -meta expandedUnits smart_table_column(expandedOriginalCodes,3,0) : string_type,no_copy; -meta expandedOriginalScales smart_table_column(expandedOriginalCodes,4,0) : long_type,no_copy; -meta expandedOriginalReferences smart_table_column(expandedOriginalCodes,5,0) : long_type,no_copy; -meta expandedOriginalWidths smart_table_column(expandedOriginalCodes,6,0) : long_type,no_copy; -meta expandedCrex_units smart_table_column(expandedOriginalCodes,7,0) : long_type,no_copy; -meta expandedCrex_scales smart_table_column(expandedOriginalCodes,8,0) : long_type,no_copy; -meta expandedCrex_widths smart_table_column(expandedOriginalCodes,9,0) : long_type,no_copy; +meta expandedAbbreviations smart_table_column(expandedOriginalCodes,0,1) : string_type,no_copy; +meta expandedTypes smart_table_column(expandedOriginalCodes,1,0) : string_type,no_copy; +meta expandedNames smart_table_column(expandedOriginalCodes,2,0) : string_type,no_copy; +meta expandedUnits smart_table_column(expandedOriginalCodes,3,0) : string_type,no_copy; +meta expandedOriginalScales smart_table_column(expandedOriginalCodes,4,0) : long_type,no_copy; +meta expandedOriginalReferences smart_table_column(expandedOriginalCodes,5,0) : long_type,no_copy; +meta expandedOriginalWidths smart_table_column(expandedOriginalCodes,6,0) : long_type,no_copy; +meta expandedCrex_units smart_table_column(expandedOriginalCodes,7,0) : long_type,no_copy; +meta expandedCrex_scales smart_table_column(expandedOriginalCodes,8,0) : long_type,no_copy; +meta expandedCrex_widths smart_table_column(expandedOriginalCodes,9,0) : long_type,no_copy; position endDescriptors; section_padding section3Padding; diff --git a/src/grib_dumper.cc b/src/grib_dumper.cc index f8d826f65..6f9f48e67 100644 --- a/src/grib_dumper.cc +++ b/src/grib_dumper.cc @@ -84,7 +84,6 @@ void grib_dump_long(grib_dumper* d, grib_accessor* a, const char* comment) } c = c->super ? *(c->super) : NULL; } - Assert(0); } void grib_dump_double(grib_dumper* d, grib_accessor* a, const char* comment) @@ -97,7 +96,6 @@ void grib_dump_double(grib_dumper* d, grib_accessor* a, const char* comment) } c = c->super ? *(c->super) : NULL; } - Assert(0); } void grib_dump_string(grib_dumper* d, grib_accessor* a, const char* comment) @@ -110,7 +108,6 @@ void grib_dump_string(grib_dumper* d, grib_accessor* a, const char* comment) } c = c->super ? *(c->super) : NULL; } - Assert(0); } void grib_dump_string_array(grib_dumper* d, grib_accessor* a, const char* comment) @@ -147,7 +144,6 @@ void grib_dump_bytes(grib_dumper* d, grib_accessor* a, const char* comment) } c = c->super ? *(c->super) : NULL; } - Assert(0); } void grib_dump_bits(grib_dumper* d, grib_accessor* a, const char* comment) @@ -160,7 +156,6 @@ void grib_dump_bits(grib_dumper* d, grib_accessor* a, const char* comment) } c = c->super ? *(c->super) : NULL; } - Assert(0); } void grib_dump_section(grib_dumper* d, grib_accessor* a, grib_block_of_accessors* block) @@ -173,7 +168,6 @@ void grib_dump_section(grib_dumper* d, grib_accessor* a, grib_block_of_accessors } c = c->super ? *(c->super) : NULL; } - Assert(0); } void grib_dump_values(grib_dumper* d, grib_accessor* a) @@ -186,7 +180,6 @@ void grib_dump_values(grib_dumper* d, grib_accessor* a) } c = c->super ? *(c->super) : NULL; } - Assert(0); } void grib_dump_header(grib_dumper* d, const grib_handle* ch) diff --git a/src/grib_dumper_class_debug.cc b/src/grib_dumper_class_debug.cc index d740e4523..ed416d019 100644 --- a/src/grib_dumper_class_debug.cc +++ b/src/grib_dumper_class_debug.cc @@ -16,7 +16,7 @@ START_CLASS_DEF CLASS = dumper IMPLEMENTS = dump_long;dump_bits - IMPLEMENTS = dump_double;dump_string + IMPLEMENTS = dump_double;dump_string;dump_string_array IMPLEMENTS = dump_bytes;dump_values IMPLEMENTS = dump_label;dump_section IMPLEMENTS = init;destroy @@ -45,6 +45,7 @@ static void dump_long (grib_dumper* d, grib_accessor* a,const char* commen static void dump_bits (grib_dumper* d, grib_accessor* a,const char* comment); static void dump_double (grib_dumper* d, grib_accessor* a,const char* comment); static void dump_string (grib_dumper* d, grib_accessor* a,const char* comment); +static void dump_string_array (grib_dumper* d, grib_accessor* a,const char* comment); static void dump_bytes (grib_dumper* d, grib_accessor* a,const char* comment); static void dump_values (grib_dumper* d, grib_accessor* a); static void dump_label (grib_dumper* d, grib_accessor* a,const char* comment); @@ -70,7 +71,7 @@ static grib_dumper_class _grib_dumper_class_debug = { &dump_long, /* dump long */ &dump_double, /* dump double */ &dump_string, /* dump string */ - 0, /* dump string array */ + &dump_string_array, /* dump string array */ &dump_label, /* dump labels */ &dump_bytes, /* dump bytes */ &dump_bits, /* dump bits */ @@ -381,6 +382,76 @@ static void dump_string(grib_dumper* d, grib_accessor* a, const char* comment) grib_context_free(a->context, value); } +static void dump_string_array(grib_dumper* d, grib_accessor* a, const char* comment) +{ + grib_dumper_debug* self = (grib_dumper_debug*)d; + + char** values; + size_t size = 0, i = 0; + grib_context* c = NULL; + int err = 0; + int tab = 0; + long count = 0; + + if ((a->flags & GRIB_ACCESSOR_FLAG_DUMP) == 0) + return; + + c = a->context; + a->value_count(&count); + if (count == 0) + return; + size = count; + if (size == 1) { + dump_string(d, a, comment); + return; + } + + values = (char**)grib_context_malloc_clear(c, size * sizeof(char*)); + if (!values) { + grib_context_log(c, GRIB_LOG_ERROR, "unable to allocate %zu bytes", size); + return; + } + + err = a->unpack_string_array(values, &size); + + // print_offset(self->dumper.out,d,a); + //print_offset(self->dumper.out, self->begin, self->theEnd); + + if ((d->option_flags & GRIB_DUMP_FLAG_TYPE) != 0) { + fprintf(self->dumper.out, " "); + fprintf(self->dumper.out, "# type %s (str) \n", a->creator->op); + } + + aliases(d, a); + if (comment) { + fprintf(self->dumper.out, " "); + fprintf(self->dumper.out, "# %s \n", comment); + } + if (a->flags & GRIB_ACCESSOR_FLAG_READ_ONLY) { + fprintf(self->dumper.out, " "); + fprintf(self->dumper.out, "#-READ ONLY- "); + tab = 13; + } + else + fprintf(self->dumper.out, " "); + + tab++; + fprintf(self->dumper.out, "%s = {\n", a->name); + for (i = 0; i < size; i++) { + fprintf(self->dumper.out, "%-*s\"%s\",\n", (int)(tab + strlen(a->name) + 4), " ", values[i]); + } + fprintf(self->dumper.out, " }"); + + if (err) { + fprintf(self->dumper.out, " "); + fprintf(self->dumper.out, "# *** ERR=%d (%s)", err, grib_get_error_message(err)); + } + + fprintf(self->dumper.out, "\n"); + for (i=0; i $temp 2>&1 +${tools_dir}/grib_dump -Da -TB -s unpack=1 $infile > $temp 2>&1 + + # Clean up rm -f $temp From b2785b6a0f2a793ff7b7b765e9d0c56076fd9861 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 17 Sep 2024 12:11:04 +0100 Subject: [PATCH 270/277] Testing: Fix dump --- tests/grib_dump_debug.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/grib_dump_debug.sh b/tests/grib_dump_debug.sh index 69fdf3583..f220cea10 100755 --- a/tests/grib_dump_debug.sh +++ b/tests/grib_dump_debug.sh @@ -108,8 +108,8 @@ grep -q "unsigned reserved = MISSING (can be missing) (read-only)" $temp # Debug dump a BUFR using -TB switch infile=${data_dir}/bufr/pgps_110.bufr -${tools_dir}/grib_dump -Da -TB $infile > $temp 2>&1 -${tools_dir}/grib_dump -Da -TB -s unpack=1 $infile > $temp 2>&1 +${tools_dir}/grib_dump -Da -TB $infile > $temp +# ${tools_dir}/grib_dump -Da -TB -s unpack=1 $infile > $temp # Clean up From 5fae926992cfed973a209c314e5997658ab55618 Mon Sep 17 00:00:00 2001 From: shahramn Date: Tue, 17 Sep 2024 12:56:22 +0100 Subject: [PATCH 271/277] Data quality checks --- src/eccodes.cc | 4 ++++ src/eccodes.h | 1 + src/grib_api.h | 1 + src/grib_context.cc | 6 ++++++ 4 files changed, 12 insertions(+) diff --git a/src/eccodes.cc b/src/eccodes.cc index 2220f2eeb..227dd8f62 100644 --- a/src/eccodes.cc +++ b/src/eccodes.cc @@ -594,6 +594,10 @@ void codes_context_set_debug(grib_context* c, int mode) { grib_context_set_debug(c, mode); } +void codes_context_set_data_quality_checks(grib_context* c, int val) +{ + grib_context_set_data_quality_checks(c, val); +} void codes_context_set_memory_proc(grib_context* c, grib_malloc_proc p_malloc, grib_free_proc p_free, grib_realloc_proc p_realloc) { diff --git a/src/eccodes.h b/src/eccodes.h index c21d03545..3bf1cc6bf 100644 --- a/src/eccodes.h +++ b/src/eccodes.h @@ -1175,6 +1175,7 @@ void codes_context_set_definitions_path(codes_context* c, const char* path); void codes_context_set_samples_path(codes_context* c, const char* path); void codes_context_set_debug(grib_context* c, int mode); +void codes_context_set_data_quality_checks(grib_context* c, int val); /** * Sets memory procedures of the context diff --git a/src/grib_api.h b/src/grib_api.h index 5bc8c1a9e..1770032c0 100644 --- a/src/grib_api.h +++ b/src/grib_api.h @@ -1172,6 +1172,7 @@ void grib_context_set_definitions_path(grib_context* c, const char* path); void grib_context_set_samples_path(grib_context* c, const char* path); void grib_context_set_debug(grib_context* c, int mode); +void grib_context_set_data_quality_checks(grib_context* c, int val); /** * Sets memory procedures of the context diff --git a/src/grib_context.cc b/src/grib_context.cc index b8d71ae0e..48c306189 100644 --- a/src/grib_context.cc +++ b/src/grib_context.cc @@ -241,6 +241,12 @@ void grib_context_set_print_proc(grib_context* c, grib_print_proc p) c->print = (p ? p : &default_print); } +void grib_context_set_data_quality_checks(grib_context* c, int val) +{ + c = c ? c : grib_context_get_default(); + c->grib_data_quality_checks = val; +} + void grib_context_set_debug(grib_context* c, int mode) { c = c ? c : grib_context_get_default(); From da08f3653acdcc2f85d0bedc248567669e148520 Mon Sep 17 00:00:00 2001 From: Robert Osinski Date: Tue, 17 Sep 2024 15:39:32 +0000 Subject: [PATCH 272/277] ECC-1914: levtype for isothermal atm parameters --- definitions/grib2/marsLevtypeConcept.def | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/definitions/grib2/marsLevtypeConcept.def b/definitions/grib2/marsLevtypeConcept.def index 4f9c8ae0b..ac1854728 100644 --- a/definitions/grib2/marsLevtypeConcept.def +++ b/definitions/grib2/marsLevtypeConcept.def @@ -8,9 +8,8 @@ 'sfc' = {typeOfFirstFixedSurface=8; typeOfSecondFixedSurface=255;} 'sfc' = {typeOfFirstFixedSurface=17; typeOfSecondFixedSurface=255;} 'sfc' = {typeOfFirstFixedSurface=18; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=20; scaleFactorOfFirstFixedSurface=-2; - scaledValueOfFirstFixedSurface=29315; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;} +'o2d' = {discipline=10; typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;} 'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=255;} 'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=100;} 'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=100; From 76c8c15443c3801fe2ccb49a030d5834028cdbf4 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 18 Sep 2024 11:32:48 +0100 Subject: [PATCH 273/277] Harmonise struct names --- src/eccodes.cc | 68 +++++++++++++++++++++++++------------------------- src/eccodes.h | 4 +-- 2 files changed, 36 insertions(+), 36 deletions(-) diff --git a/src/eccodes.cc b/src/eccodes.cc index 227dd8f62..01cec1142 100644 --- a/src/eccodes.cc +++ b/src/eccodes.cc @@ -12,11 +12,11 @@ /* Generic functions */ /******************************************************************************/ -char* codes_samples_path(const grib_context* c) +char* codes_samples_path(const codes_context* c) { return grib_samples_path(c); } -char* codes_definition_path(const grib_context* c) +char* codes_definition_path(const codes_context* c) { return grib_definition_path(c); } @@ -41,16 +41,16 @@ void codes_print_api_version(FILE* out) { grib_print_api_version(out); } -int codes_count_in_file(grib_context* c, FILE* f, int* n) +int codes_count_in_file(codes_context* c, FILE* f, int* n) { return grib_count_in_file(c, f, n); } -int codes_count_in_filename(grib_context* c, const char* filename, int* n) +int codes_count_in_filename(codes_context* c, const char* filename, int* n) { return grib_count_in_filename(c, filename, n); } -grib_context* codes_context_get_default(void) +codes_context* codes_context_get_default(void) { return grib_context_get_default(); } @@ -74,7 +74,7 @@ void codes_check(const char* call, const char* file, int line, int e, const char /* Fieldsets */ /******************************************************************************/ -grib_fieldset* codes_fieldset_new_from_files(grib_context* c, const char* filenames[], int nfiles, const char** keys, int nkeys, const char* where_string, const char* order_by_string, int* err) +grib_fieldset* codes_fieldset_new_from_files(codes_context* c, const char* filenames[], int nfiles, const char** keys, int nkeys, const char* where_string, const char* order_by_string, int* err) { return grib_fieldset_new_from_files(c, filenames, nfiles, keys, nkeys, where_string, order_by_string, err); } @@ -101,11 +101,11 @@ int codes_fieldset_count(const grib_fieldset* set) /* Indexing */ /******************************************************************************/ -grib_index* codes_index_new_from_file(grib_context* c, const char* filename, const char* keys, int* err) +grib_index* codes_index_new_from_file(codes_context* c, const char* filename, const char* keys, int* err) { return grib_index_new_from_file(c, filename, keys, err); } -grib_index* codes_index_new(grib_context* c, const char* keys, int* err) +grib_index* codes_index_new(codes_context* c, const char* keys, int* err) { return grib_index_new(c, keys, err); } @@ -117,7 +117,7 @@ int codes_index_write(grib_index* index, const char* filename) { return grib_index_write(index, filename); } -grib_index* codes_index_read(grib_context* c, const char* filename, int* err) +grib_index* codes_index_read(codes_context* c, const char* filename, int* err) { return grib_index_read(c, filename, err); } @@ -164,15 +164,15 @@ int codes_write_message(const grib_handle* h, const char* file, const char* mode { return grib_write_message(h, file, mode); } -grib_handle* codes_handle_new_from_message(grib_context* c, const void* data, size_t data_len) +grib_handle* codes_handle_new_from_message(codes_context* c, const void* data, size_t data_len) { return grib_handle_new_from_message(c, data, data_len); } -grib_handle* codes_handle_new_from_message_copy(grib_context* c, const void* data, size_t data_len) +grib_handle* codes_handle_new_from_message_copy(codes_context* c, const void* data, size_t data_len) { return grib_handle_new_from_message_copy(c, data, data_len); } -grib_handle* codes_grib_handle_new_from_samples(grib_context* c, const char* sample_name) +grib_handle* codes_grib_handle_new_from_samples(codes_context* c, const char* sample_name) { return grib_handle_new_from_samples(c, sample_name); } @@ -189,11 +189,11 @@ int codes_handle_delete(grib_handle* h) { return grib_handle_delete(h); } -grib_handle* codes_handle_new_from_partial_message_copy(grib_context* c, const void* data, size_t size) +grib_handle* codes_handle_new_from_partial_message_copy(codes_context* c, const void* data, size_t size) { return grib_handle_new_from_partial_message_copy(c, data, size); } -grib_handle* codes_handle_new_from_partial_message(grib_context* c, const void* data, size_t buflen) +grib_handle* codes_handle_new_from_partial_message(codes_context* c, const void* data, size_t buflen) { return grib_handle_new_from_partial_message(c, data, buflen); } @@ -230,23 +230,23 @@ grib_string_list* codes_grib_util_get_mars_param(const char* param_id) { return grib_util_get_mars_param(param_id); } -void codes_grib_multi_support_on(grib_context* c) +void codes_grib_multi_support_on(codes_context* c) { grib_multi_support_on(c); } -void codes_grib_multi_support_off(grib_context* c) +void codes_grib_multi_support_off(codes_context* c) { grib_multi_support_off(c); } -void codes_grib_multi_support_reset_file(grib_context* c, FILE* f) +void codes_grib_multi_support_reset_file(codes_context* c, FILE* f) { grib_multi_support_reset_file(c, f); } -grib_handle* codes_grib_handle_new_from_multi_message(grib_context* c, void** data, size_t* data_len, int* error) +grib_handle* codes_grib_handle_new_from_multi_message(codes_context* c, void** data, size_t* data_len, int* error) { return grib_handle_new_from_multi_message(c, data, data_len, error); } -grib_multi_handle* codes_grib_multi_handle_new(grib_context* c) +grib_multi_handle* codes_grib_multi_handle_new(codes_context* c) { return grib_multi_handle_new(c); } @@ -467,24 +467,24 @@ void codes_dump_action_tree(codes_context* c, FILE* f) } /* GTS, GRIBEX */ /******************************************************************************/ -void codes_gts_header_off(grib_context* c) +void codes_gts_header_off(codes_context* c) { grib_gts_header_off(c); } -void codes_gts_header_on(grib_context* c) +void codes_gts_header_on(codes_context* c) { grib_gts_header_on(c); } -void codes_gribex_mode_on(grib_context* c) +void codes_gribex_mode_on(codes_context* c) { grib_gribex_mode_on(c); } -int codes_get_gribex_mode(const grib_context* c) +int codes_get_gribex_mode(const codes_context* c) { return grib_get_gribex_mode(c); } -void codes_gribex_mode_off(grib_context* c) +void codes_gribex_mode_off(codes_context* c) { grib_gribex_mode_off(c); } @@ -577,45 +577,45 @@ void codes_get_reduced_row_p(long pl, double lon_first, double lon_last, long* n grib_get_reduced_row_p(pl, lon_first, lon_last, npoints, olon_first, olon_last); } -void codes_context_delete(grib_context* c) +void codes_context_delete(codes_context* c) { grib_context_delete(c); } -void codes_context_set_definitions_path(grib_context* c, const char* path) +void codes_context_set_definitions_path(codes_context* c, const char* path) { grib_context_set_definitions_path(c, path); } -void codes_context_set_samples_path(grib_context* c, const char* path) +void codes_context_set_samples_path(codes_context* c, const char* path) { grib_context_set_samples_path(c, path); } -void codes_context_set_debug(grib_context* c, int mode) +void codes_context_set_debug(codes_context* c, int mode) { grib_context_set_debug(c, mode); } -void codes_context_set_data_quality_checks(grib_context* c, int val) +void codes_context_set_data_quality_checks(codes_context* c, int val) { grib_context_set_data_quality_checks(c, val); } -void codes_context_set_memory_proc(grib_context* c, grib_malloc_proc p_malloc, grib_free_proc p_free, grib_realloc_proc p_realloc) +void codes_context_set_memory_proc(codes_context* c, grib_malloc_proc p_malloc, grib_free_proc p_free, grib_realloc_proc p_realloc) { grib_context_set_memory_proc(c, p_malloc, p_free, p_realloc); } -void codes_context_set_persistent_memory_proc(grib_context* c, grib_malloc_proc p_malloc, grib_free_proc p_free) +void codes_context_set_persistent_memory_proc(codes_context* c, grib_malloc_proc p_malloc, grib_free_proc p_free) { grib_context_set_persistent_memory_proc(c, p_malloc, p_free); } -void codes_context_set_buffer_memory_proc(grib_context* c, grib_malloc_proc p_malloc, grib_free_proc p_free, grib_realloc_proc p_realloc) +void codes_context_set_buffer_memory_proc(codes_context* c, grib_malloc_proc p_malloc, grib_free_proc p_free, grib_realloc_proc p_realloc) { grib_context_set_buffer_memory_proc(c, p_malloc, p_free, p_realloc); } -void codes_context_set_print_proc(grib_context* c, grib_print_proc p_print) +void codes_context_set_print_proc(codes_context* c, grib_print_proc p_print) { grib_context_set_print_proc(c, p_print); } -void codes_context_set_logging_proc(grib_context* c, grib_log_proc p_log) +void codes_context_set_logging_proc(codes_context* c, grib_log_proc p_log) { grib_context_set_logging_proc(c, p_log); } diff --git a/src/eccodes.h b/src/eccodes.h index 3bf1cc6bf..782542a24 100644 --- a/src/eccodes.h +++ b/src/eccodes.h @@ -1174,8 +1174,8 @@ void codes_context_set_definitions_path(codes_context* c, const char* path); */ void codes_context_set_samples_path(codes_context* c, const char* path); -void codes_context_set_debug(grib_context* c, int mode); -void codes_context_set_data_quality_checks(grib_context* c, int val); +void codes_context_set_debug(codes_context* c, int mode); +void codes_context_set_data_quality_checks(codes_context* c, int val); /** * Sets memory procedures of the context From bf47ede47203de6706afb68fdfbae8e869ab47ef Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 18 Sep 2024 14:58:35 +0100 Subject: [PATCH 274/277] ECC-1918: GRIB2: Modify tile template in preparation for use by On-Demand DT --- .../grib2/templates/template.4.generalised_tile.def | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/definitions/grib2/templates/template.4.generalised_tile.def b/definitions/grib2/templates/template.4.generalised_tile.def index e10f491c2..5eb4be333 100644 --- a/definitions/grib2/templates/template.4.generalised_tile.def +++ b/definitions/grib2/templates/template.4.generalised_tile.def @@ -40,6 +40,7 @@ alias nTileAtt=numberOfUsedTileAttributesForTileAttributeCombination; alias tile.nTileAtt=nTileAtt; alias mars.tile=typeOfTile; -alias mars.tileAttribute=tileAttribute; -transient paramtype = "tile"; -alias mars.paramType=paramtype; +alias mars.tileattribute=tileAttribute; +constant paramTypeTile = "tile"; +unalias mars.paramtype; +alias mars.paramtype=paramTypeTile; From 1ead8d77f1c0544906253601f132298eb63992a4 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 18 Sep 2024 14:59:49 +0100 Subject: [PATCH 275/277] CMake: Update note re Python bindings --- CMakeLists.txt | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 03ec9e2a7..84f1ab2dc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -517,11 +517,8 @@ ecbuild_info(" | ecCodes version ${eccodes_VERSION} |") ecbuild_info(" +--------------------------+") ecbuild_info("") -ecbuild_info(" +--------------------------------------+") -ecbuild_info(" | Please note: |") -ecbuild_info(" | For Python3 support, first install |") -ecbuild_info(" | ecCodes and then install the Python |") -ecbuild_info(" | bindings from PyPI with: |") -ecbuild_info(" | $ pip3 install eccodes |") -ecbuild_info(" +--------------------------------------+") +ecbuild_info("Please note:") +ecbuild_info(" For Python3 support, you must install the Python bindings.") +ecbuild_info(" See:") +ecbuild_info(" https://confluence.ecmwf.int/display/ECC/ecCodes+installation") ecbuild_info("") From ff39c7b1685870f9d648a7c854670e9c3acebda9 Mon Sep 17 00:00:00 2001 From: shahramn Date: Wed, 18 Sep 2024 16:17:46 +0100 Subject: [PATCH 276/277] ECC-1919: GRIB2: Additional parameters for On-Demand DT --- definitions/grib2/name.def | 42 +++++++++++++++++++++++++++++++++ definitions/grib2/paramId.def | 42 +++++++++++++++++++++++++++++++++ definitions/grib2/shortName.def | 42 +++++++++++++++++++++++++++++++++ definitions/grib2/units.def | 42 +++++++++++++++++++++++++++++++++ 4 files changed, 168 insertions(+) diff --git a/definitions/grib2/name.def b/definitions/grib2/name.def index 3ac979f33..ddb281fe0 100644 --- a/definitions/grib2/name.def +++ b/definitions/grib2/name.def @@ -4079,6 +4079,27 @@ parameterNumber = 148 ; typeOfFirstFixedSurface = 1 ; } +#Radar reflectivity +'Radar reflectivity' = { + discipline = 0 ; + parameterCategory = 16 ; + parameterNumber = 4 ; + } +#Pressure at cloud ceiling +'Pressure at cloud ceiling' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 19 ; + scaledValueOfFirstFixedSurface = 50 ; + scaleFactorOfFirstFixedSurface = 0 ; + } +#Visibility through precipitation +'Visibility through precipitation' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + } #Burned area 'Burned area' = { discipline = 2 ; @@ -5566,6 +5587,13 @@ parameterNumber = 23 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean visibility through precipitation +'Time-mean visibility through precipitation' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 0 ; + } #Time-maximum volumetric soil moisture 'Time-maximum volumetric soil moisture' = { discipline = 2 ; @@ -5602,6 +5630,13 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum visibility through precipitation +'Time-maximum visibility through precipitation' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture 'Time-minimum volumetric soil moisture' = { discipline = 2 ; @@ -5645,6 +5680,13 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum visibility through precipitation +'Time-minimum visibility through precipitation' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture 'Time-standard-deviation volumetric soil moisture' = { discipline = 2 ; diff --git a/definitions/grib2/paramId.def b/definitions/grib2/paramId.def index bf4f0fd51..c1767469a 100644 --- a/definitions/grib2/paramId.def +++ b/definitions/grib2/paramId.def @@ -4079,6 +4079,27 @@ parameterNumber = 148 ; typeOfFirstFixedSurface = 1 ; } +#Radar reflectivity +'231066' = { + discipline = 0 ; + parameterCategory = 16 ; + parameterNumber = 4 ; + } +#Pressure at cloud ceiling +'231067' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 19 ; + scaledValueOfFirstFixedSurface = 50 ; + scaleFactorOfFirstFixedSurface = 0 ; + } +#Visibility through precipitation +'231068' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + } #Burned area '232000' = { discipline = 2 ; @@ -5566,6 +5587,13 @@ parameterNumber = 23 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean visibility through precipitation +'235382' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 0 ; + } #Time-maximum volumetric soil moisture '237077' = { discipline = 2 ; @@ -5602,6 +5630,13 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum visibility through precipitation +'237382' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture '238077' = { discipline = 2 ; @@ -5645,6 +5680,13 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum visibility through precipitation +'238382' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture '239077' = { discipline = 2 ; diff --git a/definitions/grib2/shortName.def b/definitions/grib2/shortName.def index 13c68c8a1..5c0607a7b 100644 --- a/definitions/grib2/shortName.def +++ b/definitions/grib2/shortName.def @@ -4079,6 +4079,27 @@ parameterNumber = 148 ; typeOfFirstFixedSurface = 1 ; } +#Radar reflectivity +'rare' = { + discipline = 0 ; + parameterCategory = 16 ; + parameterNumber = 4 ; + } +#Pressure at cloud ceiling +'pcdc' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 19 ; + scaledValueOfFirstFixedSurface = 50 ; + scaleFactorOfFirstFixedSurface = 0 ; + } +#Visibility through precipitation +'visp' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + } #Burned area 'fba' = { discipline = 2 ; @@ -5566,6 +5587,13 @@ parameterNumber = 23 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean visibility through precipitation +'avg_visp' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 0 ; + } #Time-maximum volumetric soil moisture 'max_vsw' = { discipline = 2 ; @@ -5602,6 +5630,13 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum visibility through precipitation +'max_visp' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture 'min_vsw' = { discipline = 2 ; @@ -5645,6 +5680,13 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum visibility through precipitation +'min_visp' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture 'std_vsw' = { discipline = 2 ; diff --git a/definitions/grib2/units.def b/definitions/grib2/units.def index 535b1caae..20e3a987b 100644 --- a/definitions/grib2/units.def +++ b/definitions/grib2/units.def @@ -4079,6 +4079,27 @@ parameterNumber = 148 ; typeOfFirstFixedSurface = 1 ; } +#Radar reflectivity +'dB' = { + discipline = 0 ; + parameterCategory = 16 ; + parameterNumber = 4 ; + } +#Pressure at cloud ceiling +'Pa' = { + discipline = 0 ; + parameterCategory = 3 ; + parameterNumber = 0 ; + typeOfFirstFixedSurface = 19 ; + scaledValueOfFirstFixedSurface = 50 ; + scaleFactorOfFirstFixedSurface = 0 ; + } +#Visibility through precipitation +'m' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + } #Burned area '%' = { discipline = 2 ; @@ -5566,6 +5587,13 @@ parameterNumber = 23 ; typeOfStatisticalProcessing = 0 ; } +#Time-mean visibility through precipitation +'m' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 0 ; + } #Time-maximum volumetric soil moisture 'm**3 m**-3' = { discipline = 2 ; @@ -5602,6 +5630,13 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 2 ; } +#Time-maximum visibility through precipitation +'m' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 2 ; + } #Time-minimum volumetric soil moisture 'm**3 m**-3' = { discipline = 2 ; @@ -5645,6 +5680,13 @@ typeOfSecondFixedSurface = 8 ; typeOfStatisticalProcessing = 3 ; } +#Time-minimum visibility through precipitation +'m' = { + discipline = 0 ; + parameterCategory = 19 ; + parameterNumber = 51 ; + typeOfStatisticalProcessing = 3 ; + } #Time-standard-deviation volumetric soil moisture 'm**3 m**-3' = { discipline = 2 ; From b2996f8b6977da06feb809dd4b38016bf0fdb91d Mon Sep 17 00:00:00 2001 From: shahramn Date: Thu, 19 Sep 2024 16:39:05 +0100 Subject: [PATCH 277/277] ECC-1919: Fix type of level --- definitions/grib2/marsLevtypeConcept.def | 131 ++++++++++++----------- definitions/grib2/typeOfLevelConcept.def | 1 + 2 files changed, 67 insertions(+), 65 deletions(-) diff --git a/definitions/grib2/marsLevtypeConcept.def b/definitions/grib2/marsLevtypeConcept.def index ac1854728..5d1d69d85 100644 --- a/definitions/grib2/marsLevtypeConcept.def +++ b/definitions/grib2/marsLevtypeConcept.def @@ -1,69 +1,70 @@ # Concept marsLevtype -'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=8;} -'o2d' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=9;} -'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=162;} -'sfc' = {typeOfFirstFixedSurface=2; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=7; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=8; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=17; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=18; typeOfSecondFixedSurface=255;} -'o2d' = {discipline=10; typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;} -'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=255;} -'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=100;} -'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=100; - scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=80000;} -'sfc' = {typeOfFirstFixedSurface=100; scaleFactorOfFirstFixedSurface=0; scaledValueOfFirstFixedSurface=80000; - typeOfSecondFixedSurface=100; scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=45000;} -'sfc' = {typeOfFirstFixedSurface=100; scaleFactorOfFirstFixedSurface=0; - scaledValueOfFirstFixedSurface=45000; typeOfSecondFixedSurface=8;} -'sfc' = {typeOfFirstFixedSurface=101; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=102; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=103; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=103; typeOfSecondFixedSurface=103;} -'ml' = {typeOfFirstFixedSurface=105; typeOfSecondFixedSurface=255;} -'ml' = {typeOfFirstFixedSurface=105; typeOfSecondFixedSurface=105;} -'sfc' = {typeOfFirstFixedSurface=106; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=106;typeOfSecondFixedSurface=106;} -'pt' = {typeOfFirstFixedSurface=107; typeOfSecondFixedSurface=255;} -'pt' = {typeOfFirstFixedSurface=107; typeOfSecondFixedSurface=107;} -'pv' = {typeOfFirstFixedSurface=109; typeOfSecondFixedSurface=255;} -'sol' = {typeOfFirstFixedSurface=114; typeOfSecondFixedSurface=255;} -'sol' = {typeOfFirstFixedSurface=114; typeOfSecondFixedSurface=114;} -'hhl' = {typeOfFirstFixedSurface=118; typeOfSecondFixedSurface=255;} -'hpl' = {typeOfFirstFixedSurface=119; typeOfSecondFixedSurface=255;} -'sol' = {typeOfFirstFixedSurface=151; typeOfSecondFixedSurface=255;} -'sol' = {typeOfFirstFixedSurface=151; typeOfSecondFixedSurface=151;} -'sol' = {typeOfFirstFixedSurface=152; typeOfSecondFixedSurface=255;} -'sol' = {typeOfFirstFixedSurface=152; typeOfSecondFixedSurface=152;} -'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=160; scaleFactorOfFirstFixedSurface=0; - scaledValueOfFirstFixedSurface=0; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=160;} -'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=9;} -'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=20; - scaledValueOfFirstFixedSurface=0; scaleFactorOfFirstFixedSurface=0;} -'sfc' = {typeOfFirstFixedSurface=162; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=166; typeOfSecondFixedSurface=255;} -'o3d' = {typeOfFirstFixedSurface=168; typeOfSecondFixedSurface=255;} -'o3d' = {typeOfFirstFixedSurface=168; typeOfSecondFixedSurface=168;} -'o2d' = {typeOfFirstFixedSurface=169; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=170; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=171; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=173; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=173; typeOfSecondFixedSurface=175;} -'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=255;} -'sfc' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=255; discipline=1;} -'o2d' = {typeOfFirstFixedSurface=175; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=176; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=160; - scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=0;} -'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=176;} -'sfc' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=176; discipline=1;} -'o2d' = {typeOfFirstFixedSurface=175; typeOfSecondFixedSurface=176;} -'sfc' = {typeOfFirstFixedSurface=177; typeOfSecondFixedSurface=255;} -'o2d' = {typeOfFirstFixedSurface=188; typeOfSecondFixedSurface=189;} +'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=8;} +'o2d' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=9;} +'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=162;} +'sfc' = {typeOfFirstFixedSurface=2; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=7; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=8; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=17; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=18; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=19; typeOfSecondFixedSurface=255;} +'o2d' = {discipline=10; typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;} +'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=255;} +'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=100;} +'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=100; + scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=80000;} +'sfc' = {typeOfFirstFixedSurface=100; scaleFactorOfFirstFixedSurface=0; scaledValueOfFirstFixedSurface=80000; + typeOfSecondFixedSurface=100; scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=45000;} +'sfc' = {typeOfFirstFixedSurface=100; scaleFactorOfFirstFixedSurface=0; + scaledValueOfFirstFixedSurface=45000; typeOfSecondFixedSurface=8;} +'sfc' = {typeOfFirstFixedSurface=101; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=102; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=103; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=103; typeOfSecondFixedSurface=103;} +'ml' = {typeOfFirstFixedSurface=105; typeOfSecondFixedSurface=255;} +'ml' = {typeOfFirstFixedSurface=105; typeOfSecondFixedSurface=105;} +'sfc' = {typeOfFirstFixedSurface=106; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=106;typeOfSecondFixedSurface=106;} +'pt' = {typeOfFirstFixedSurface=107; typeOfSecondFixedSurface=255;} +'pt' = {typeOfFirstFixedSurface=107; typeOfSecondFixedSurface=107;} +'pv' = {typeOfFirstFixedSurface=109; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=114; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=114; typeOfSecondFixedSurface=114;} +'hhl' = {typeOfFirstFixedSurface=118; typeOfSecondFixedSurface=255;} +'hpl' = {typeOfFirstFixedSurface=119; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=151; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=151; typeOfSecondFixedSurface=151;} +'sol' = {typeOfFirstFixedSurface=152; typeOfSecondFixedSurface=255;} +'sol' = {typeOfFirstFixedSurface=152; typeOfSecondFixedSurface=152;} +'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=160; scaleFactorOfFirstFixedSurface=0; + scaledValueOfFirstFixedSurface=0; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=160;} +'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=9;} +'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=20; + scaledValueOfFirstFixedSurface=0; scaleFactorOfFirstFixedSurface=0;} +'sfc' = {typeOfFirstFixedSurface=162; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=166; typeOfSecondFixedSurface=255;} +'o3d' = {typeOfFirstFixedSurface=168; typeOfSecondFixedSurface=255;} +'o3d' = {typeOfFirstFixedSurface=168; typeOfSecondFixedSurface=168;} +'o2d' = {typeOfFirstFixedSurface=169; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=170; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=171; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=173; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=173; typeOfSecondFixedSurface=175;} +'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=255;} +'sfc' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=255; discipline=1;} +'o2d' = {typeOfFirstFixedSurface=175; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=176; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=160; + scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=0;} +'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=176;} +'sfc' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=176; discipline=1;} +'o2d' = {typeOfFirstFixedSurface=175; typeOfSecondFixedSurface=176;} +'sfc' = {typeOfFirstFixedSurface=177; typeOfSecondFixedSurface=255;} +'o2d' = {typeOfFirstFixedSurface=188; typeOfSecondFixedSurface=189;} 'sfc' = {typeOfFirstFixedSurface=5; typeOfSecondFixedSurface=255;} 'sfc' = {typeOfFirstFixedSurface=14; typeOfSecondFixedSurface=255;} diff --git a/definitions/grib2/typeOfLevelConcept.def b/definitions/grib2/typeOfLevelConcept.def index 2f350d663..946b0722d 100644 --- a/definitions/grib2/typeOfLevelConcept.def +++ b/definitions/grib2/typeOfLevelConcept.def @@ -20,6 +20,7 @@ 'neutralBuoyancy' = {typeOfFirstFixedSurface=16; typeOfSecondFixedSurface=255;} 'mostUnstableParcel' = {typeOfFirstFixedSurface=17; typeOfSecondFixedSurface=255;} 'mixedLayerParcel' = {typeOfFirstFixedSurface=18; typeOfSecondFixedSurface=255;} +'lowestLevelOfCloudCoverExceedance' = {typeOfFirstFixedSurface=19; typeOfSecondFixedSurface=255;} 'isothermal' = {typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;} 'isobaricInPa' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=255; pressureUnits='Pa';} 'isobaricInhPa' = {typeOfFirstFixedSurface=100; pressureUnits='hPa'; typeOfSecondFixedSurface=255;}